| Quintiq file version 2.0 | 
| #parent: #root | 
| Method GetHasValidPeggedQuantity ( | 
|   output Strings feedback_o, | 
|   output Strings sanitycheckfeedback_o | 
| ) declarative remote as Boolean | 
| { | 
|   Description: 'Indicate if PISPIP has valid supply quantity for pegging. Return false when the supply quantity is not align with avaiable quantity to peg.' | 
|   TextBody: | 
|   [* | 
|     isvalid := true; | 
|      | 
|     if( this.InventorySupply( relsize ) > 0 // Have inventory supply | 
|         and this.NewSupplyFulfillment( relsize ) > 0 ) // Have pegging | 
|     { | 
|       nspeggedquantity := sum( this, NewSupplyFulfillment, ffm, ffm.Quantity() ); | 
|       supplyqty := sum( this, NewSupply, supply, supply.Quantity() ) + sum( this, InventorySupply, supply, supply.Quantity() ); | 
|      | 
|       isvalid := nspeggedquantity <= supplyqty; | 
|      | 
|       if( not isnull( feedback_o ) and not isvalid ) | 
|       { | 
|         instance := ProductInStockingPointInPeriod::GetInstanceText( this ); | 
|         message := Translations::MP_ProductInStockingPointInPeriod_ViolateHasValidPeggedQuantity( nspeggedquantity, supplyqty ); | 
|      | 
|         feedback_o.Add( SanityCheckMessage::GetFormattedMessage( instance, message ) ); | 
|         sanitycheckfeedback_o.Add( SanityCheckCategoryLevel::GetSanityCheckCategoryDataWarning() ); | 
|       } | 
|     } | 
|      | 
|     return isvalid; | 
|   *] | 
| } |