| Quintiq file version 2.0 | 
| #parent: #root | 
| Method CreateOperationNewSupplies ( | 
|   Operation operation, | 
|   Real quantity, | 
|   Boolean hasuser | 
| ) | 
| { | 
|   Description: 'Create new supplies for the leaf level from the aggregated supplies matrix' | 
|   TextBody: | 
|   [* | 
|     // soh yee Nov-10-2015 (created) | 
|     childoperations := construct( Operations ); | 
|      | 
|     if( this.ProductInStockingPoint_MP().IsLeaf() ) | 
|     { | 
|       childoperations.Add( operation ); | 
|     } | 
|     else | 
|     { | 
|       // The supply will be created at the lowest level, if the children of this unit produces the output for the leaf pispip. | 
|       childoperations := selectset( operation, Unit.AllChildren.AsChildren.Operation, childoperation, | 
|                                     childoperation.Unit().IsLowestLevelWithProcesses() ) | 
|     } | 
|      | 
|     traverse( childoperations, Elements, childoperation ) | 
|     { | 
|       traverse( this.GetLeavesOfProductDimension(), Elements, leafpispip, | 
|                 leafpispip.ProductInStockingPoint_MP().GetIsSuppliedByProcess( childoperation ) ) | 
|       { | 
|         leafpispip.CreateOperationNewSupply( childoperation, 0.0, hasuser ); | 
|       } | 
|     } | 
|   *] | 
| } |