hongji.li
2023-11-07 1a1ba3ad5ed9e4380185aa1ccad20204a0e5f115
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Quintiq file version 2.0
#parent: #root
StaticMethod RecursiveGeneration (
  MacroPlan macroPlan,
  ProductInStockingPoint_MP outputPISP,
  ProductInStockingPoint_MP firstPISP,
  Date startDate
)
{
  TextBody:
  [*
    traverse ( outputPISP, ProcessOutput.AsProcessOutput, pmp ) {
      
      ontype( pmp ) {
        
        Operation as o : {  
          traverse ( o, OperationInput, oi ) {
            oiPISP := oi.ProductInStockingPoint_MP();
            CapacityAllocationResultsRuleConfiguration::RecursiveGeneration( macroPlan, oiPISP, firstPISP, startDate );
            info( "输入PISP:", oiPISP.Name(), "    输出PISP:", outputPISP.Name(), "    第一次PISP:", firstPISP.Name() );
          }
        }
        
        LaneLeg as ll : {
          traverse ( ll, LaneLegInput, lli ) {
            lliPISP := lli.ProductInStockingPoint_MP();
            if ( lliPISP.ProductID() = outputPISP.ProductID() ) {
              CapacityAllocationResultsRuleConfiguration::RecursiveGeneration( macroPlan, lliPISP, firstPISP, startDate );
              info( "输入PISP:", lliPISP.Name(), "    输出PISP:", outputPISP.Name(), "    第一次PISP:", firstPISP.Name() );
            }
          }
        }
        
      }
      
    }
  *]
}