lihongji
2024-07-09 5ed2c2076e3b8a907ac2d271ea627cc9f9c9b3f4
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Quintiq file version 2.0
#parent: #root
Function CalcUpstreamBaseCostPerQuantity
{
  TextBody:
  [*
    value := //Sum up the upstream fulfillment of operation, either by new supply or inventory supply
             sum( this,
                  PeriodTask_MP.astype( PeriodTaskOperation ).DependentDemand.Fulfillment,
                   ff, 
                   ff.IncludeInUpstreamCostCalculation(),
                  guard( ff.NewSupplyCost().GetTotalBaseCostPerQuantity(), 0 ) 
                  + guard( ff.InventorySupply().GetBaseCostPerQuantity(), 0 ) )
             //Sum up the upstream fulfillment of trip, either by new supply or inventory supply
             + sum( this,
                    ProductInTrip.DependentDemand.Fulfillment,
                    ff,
                    ff.IncludeInUpstreamCostCalculation(),
                    guard( ff.NewSupplyCost().GetTotalBaseCostPerQuantity(), 0 ) 
                    + guard( ff.InventorySupply().GetBaseCostPerQuantity(), 0 ) );
    
    this.UpstreamBaseCostPerQuantity( value );
  *]
}