陈清红
2025-04-14 880f3c0257eeb8c37761d484258fdd102a369a19
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
39
40
41
Quintiq file version 2.0
#parent: #root
Method InitConstraintsForGoals_TypeA (
  CapacityPlanningSuboptimizer_CapacityPlanningAlgorithm program,
  const RunContextForCapacityPlanning runcontext,
  const LibOpt_Scope scope,
  const constcontent ProductInStockingPointInPeriodPlannings pispipsinrun,
  constcontent ProductInStockingPointInPeriodPlanningLeafs leafpispipsinrun,
  const constcontent ProductInStockingPoint_MPs pispsinrun,
  const constcontent ProductInTrips pitinrun
) const
{
  Description: 'Initialize constraints for calculating goal value'
  TextBody:
  [*
    if ( this.GetInitializeFinancialConstraints( runcontext ) )
    {
      // Accounts kpi
      //this.InitConstraintsGoalsForDriverInventoryHolding( program, runcontext, scope, pispsinrun );
      this.InitConstraintsGoalsForDriverSales( program, scope );
      this.InitConstraintsGoalsForDriverVolume( program, scope, pitinrun );
      this.InitConstraintsGoalsForDriverTime( program, scope );
      this.InitConstraintsGoalsForDriverLot( program, runcontext, scope );
      this.InitConstraintsGoalsForDriverChangeover( program, scope );
      this.InitConstraintsGoalsForDriverOneTime( program, runcontext, scope ); 
      this.InitConstraintsGoalsForDriverStaffing( program, runcontext, scope );
    }
    // non financial kpi
    this.InitConstraintsGoalsForPISPIPs( program, runcontext, scope, leafpispipsinrun, pispsinrun );
    this.InitConstraintsGoalsForServiceLevels( program, runcontext, scope );
    this.InitConstraintsGoalsForUnitPeriods( program, runcontext, scope, pitinrun ); // alg only needed for tabbed definition - remove
    // type B this.InitConstraintsGoalsForStockingPointInPeriods( program, runcontext, scope );
    this.InitConstraintsGoalsForSupplySpecifications( program, runcontext, scope );
    this.InitConstraintsGoalsForShiftPatterns( program, runcontext, scope );
    
    // Slacks
    this.InitConstraintsGoalsForSlacks( program, runcontext, scope, pispipsinrun );
    this.InitConstraintsGoalsForTotalSlacks( program, runcontext, scope, leafpispipsinrun, pispsinrun );
  *]
  InterfaceProperties { Accessibility: 'Module' }
}