hongjli
2023-09-18 8c5557b992ac917c11f0f24d9716af1a16045777
_Main/BL/Type_MacroPlan/Method_InitialUnitAndStockingPoint.qbl
@@ -6,105 +6,51 @@
  [*
    // Administrator Sep-1-2023 (created)
    
    unitOfMeasure_MP := UnitOfMeasure_MP::FindByName( this, "PCS" );
    if ( isnull( unitOfMeasure_MP ) ) {
      unitOfMeasure_MP := UnitOfMeasure_MP::Create( this, "PCS", false, false );
    }
    //Set the Default values
    unitofmeasurename := "PCS";
    currencyid := "CNY";
    startdate := Date::Date( 1900, 1, 1 );
    enddate := Date::Date( 9999, 12, 31 );
    capacitytype := "Transport quantity";
    
    if( isnull( Unit::FindById( this, "空运" ) ) ){
      this.Unit( relnew,
                 ID := "空运",
                 Name := "空运",
                 UnitOfMeasureName := unitofmeasurename,
                 CurrencyID := currencyid,
                 StartDate := startdate,
                 EndDate := enddate,
                 CapacityType := capacitytype );
      }
    if ( isnull( Unit::FindById( this, "空运" ) ) ) {
      Unit::Create( "空运", this, "空运", unitOfMeasure_MP, null( Unit ), capacitytype, "", null( SupplyChainView ), 0, 0, false );
    }
    
    if( isnull( Unit::FindById( this, "库存事务处理" ) ) ){
      this.Unit( relnew,
                 ID := "库存事务处理",
                 Name := "库存事务处理",
                 UnitOfMeasureName := unitofmeasurename,
                 CurrencyID := currencyid,
                 StartDate := startdate,
                 EndDate := enddate,
                 CapacityType := capacitytype );
    if ( isnull( Unit::FindById( this, "库存事务处理" ) ) ) {
      Unit::Create( "库存事务处理", this, "库存事务处理", unitOfMeasure_MP, null( Unit ), capacitytype, "", null( SupplyChainView ), 0, 0, false );
    }
    
    unitofmeasurename := "PCS";
    name := "手动创建库存点";
    currencyname := "CNY";
    isplannedinfinite := false;
    datestart := Date::Construct(1900, 1, 1) ;
    dateend := Date::Construct(9999, 12, 31);
    groupname := " ";
    description := " ";
    isfromdb := true;
    
    if( isnull( StockingPoint_MP::FindById( this, "F13_FG_STOCK" ) ) ){
      StockingPoint_MP::Create( this,
                                "F13_FG_STOCK",
                                "F13",
                                name,
                                unitofmeasurename,
                                currencyname,
                                isplannedinfinite,
                                datestart,
                                dateend,
                                groupname,
                                description,
                                isfromdb );
    if ( isnull( StockingPoint_MP::FindById( this, "F13_FG_STOCK" ) ) ) {
      StockingPoint_MP::Create( "F13_FG_STOCK", this, null( Unit ), "F13_FG_STOCK", null( SupplyChainView ), 0, 0, false );
    }
    
    if( isnull( StockingPoint_MP::FindById( this, "H10_SA_STOCK" ) ) ){
      StockingPoint_MP::Create( this,
                                "H10_SA_STOCK",
                                "H10",
                                name,
                                unitofmeasurename,
                                currencyname,
                                isplannedinfinite,
                                datestart,
                                dateend,
                                groupname,
                                description,
                                isfromdb );
    if ( isnull( StockingPoint_MP::FindById( this, "H10_SA_STOCK" ) ) ) {
      StockingPoint_MP::Create( "H10_SA_STOCK", this, null( Unit ), "H10_SA_STOCK", null( SupplyChainView ), 0, 0, false );
    }
    
    if( isnull( StockingPoint_MP::FindById( this, "Q10_FG_STOCK" ) ) ){
      StockingPoint_MP::Create( this,
                                "Q10_FG_STOCK",
                                "Q10",
                                name,
                                unitofmeasurename,
                                currencyname,
                                isplannedinfinite,
                                datestart,
                                dateend,
                                groupname,
                                description,
                                isfromdb );
    if ( isnull( StockingPoint_MP::FindById( this, "Q10_FG_STOCK" ) ) ) {
      StockingPoint_MP::Create( "Q10_FG_STOCK", this, null( Unit ), "Q10_FG_STOCK", null( SupplyChainView ), 0, 0, false );
    }
    
    existcurrency := Currency_MP::FindById( this, "CNY" );
    if( isnull( existcurrency ) ){
      Currency_MP::CreateCurrency( this, "CNY", "CNY", "", true );
      currency := Currency_MP::FindById( this, "EUR" );
      currency.IsBase(false);
      Transaction::Transaction().Propagate();
      }
    if ( isnull( Currency_MP::FindById( this, "CNY" ) ) ) {
      Currency_MP::Create( "CNY", this, "CNY", "", false, false );
    }
    
    isproductcatagory := false;
    isfromdb := false;
    existproductlevel := ProductLevel_MP::FindProductLevelTypeIndex( "2" );
    if( isnull( existproductlevel ) ){
    if ( isnull( ProductLevel_MP::FindProductLevelTypeIndex( "1" ) ) ) {
      ProductLevel_MP::Create( "1", isproductcatagory, this, isfromdb );
    }
    if ( isnull( ProductLevel_MP::FindProductLevelTypeIndex( "2" ) ) ) {
      ProductLevel_MP::Create( "2", isproductcatagory, this, isfromdb );
    }
    if ( isnull( ProductLevel_MP::FindProductLevelTypeIndex( "3" ) ) ) {
      ProductLevel_MP::Create( "3", isproductcatagory, this, isfromdb );
      }
    }
  *]
}