yanweiyuan3
2023-08-09 588bc7829387dfc761cc25f06f77d4c81818bd10
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Quintiq file version 2.0
#parent: #root
DeclarativeReferenceRelation CalcNewSupplyCost
{
  #keys: '1[134266.1.16794768]'
  Expression:
  [*
    /* We add this relation for cost calculation to avoid circular
       e.g: Prime, Scrap -> [Caster] -> Molten -> [Hot mil] -> Hot roll, Scrap
            If we include by product (Scrap), we will get circular when traversing upstream product
    */
    ns := this.NewSupply();
    
    if( guard( this.NewSupply().ProductInStockingPointInPeriodPlanning().ProductInStockingPoint_MP().Product_MP().IsDerivedByProduct(), false ) )
    {
      ns := null( NewSupply );
    }
    
    return ns;
  *]
  Relation: NewSupplyCost
}