yypsybs
2023-09-09 3cb5a54def670d97301f07170fcaad213bfc54f2
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
Quintiq file version 2.0
#parent: #root
Method MappingExternalSupplyData (
  Strings businessTypes,
  Boolean nuclear
)
{
  TextBody:
  [*
    //// renhao Aug-14-2023 (created)
    //
    //listtodeal := selectset( this,MappingExternalSupply,externalSupply, 
    //                         not isnull( StockingPoint_MP::FindById( this, externalSupply.StockingPointID() ) ) and not isnull( Product_MP::FindById( this, externalSupply.ProductID() ) ) );
    //totalcount := listtodeal.Size();
    //info( "ExternalSupply has " + totalcount.AsQUILL() + " rows in total" );
    //
    //count := 0;
    //traverse( listtodeal,Elements,externalSupply){
    //  count := count + 1;
    //  if( count - [Number](count/100) * 100 = 0 or count = totalcount ){
    //    info( "Now is dealing with the " + count.AsQUILL() + "ExternalSupply " + "( " + count.AsQUILL() + "/" + totalcount.AsQUILL() + " ) " + (count/totalcount*100).Round( 1 ).AsQUILL() + "%" );
    //    }
    //  product := select( this,MappingProduct,product,product.ID() = externalSupply.ProductID() and product.KeyProduct() = nuclear,true);
    //  
    //  if( not isnull( product)){
    //    productMP :=  select( this,Product_MP,productMP,productMP.ID() = externalSupply.ProductID() ,true);
    //    stockingpoint := select( this,StockingPoint_MP,st,st.ID() = externalSupply.StockingPointID(),true);
    //    if( not isnull(businessTypes)){
    //    
    //      for( i :=0 ;i < businessTypes.Size();i++ ){
    //        businessType := businessTypes.Element( i);
    //        if( product.BusinessType() = businessType and not product.IsCommon()){
    //          InventorySupply::CreateOrUpdate( externalSupply.ID(),
    //                                           productMP,
    //                                           stockingpoint,
    //                                           externalSupply.Date(),
    //                                           externalSupply.ManufacturedDate(),
    //                                           externalSupply.UserQuantity(),"在途在制");
    //        }
    //      }
    //      
    //    }else{
    //    if( not isnull( stockingpoint) and not isnull( productMP)){
    //      InventorySupply::CreateOrUpdate( externalSupply.ID(),
    //                                       productMP,
    //                                       stockingpoint,
    //                                       externalSupply.Date(),
    //                                       externalSupply.ManufacturedDate(),
    //                                       externalSupply.UserQuantity(),"在途在制");
    //    }
    //  
    //    }
    //    
    //  }else{
    //    info( "Invaild product" );
    //    }
    //}
  *]
}