hongjli
2023-09-14 ae9e8bebf79b54a003ce474d82a942f6a58433fa
_Main/BL/Type_MatAttrSettingAndPlanStrategyDataTable/Method_CreateOrUpdateData.qbl
@@ -30,10 +30,97 @@
    //    finishedProductDeliveryMinLTDays  := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "成品交付Min-LT(天)" ).value();
        longAndShortCycleLabels           := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "长短周期标签" ).value();
        genericSpecialLabels              := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "通用专用标签" ).value();
    //    automaticMaterialPlanningPolicies := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "自动物料计划策略" ).value();
        automaticMaterialPlanningPolicies := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "自动物料计划策略" ).value();
        usersManuallySchedulePolicies     := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "用户手动计划策略" ).value();
        minimumNumberOfDaysInStock        := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "库存最小天数" ).value();
        maximumNumberOfDaysInInventory    := select( masapsdr, MatAttrSettingAndPlanStrategyDataCell, tempMASAPSDC, tempMASAPSDC.MatAttrSettingAndPlanStrategyDataColumn().name() = "库存最大天数" ).value();
        if ( businessType = "集团面板" ) {
          if ( createItemCode.StartsWith( "103" ) ) {
            if( longAndShortCycleLabels = "长周期" ) {
              if ( genericSpecialLabels = "专用" ) {
                if ( automaticMaterialPlanningPolicies <> "JIT" ) {
                  error( "导入的自动计划策略值出错:", createItemCode );
                }
              } else if ( genericSpecialLabels = "通用" ) {
                if ( automaticMaterialPlanningPolicies <> "安全库存" ) {
                  error( "导入的自动计划策略值出错:", createItemCode );
                }
              } else {
                error( "专通用标签的值出错:", createItemCode );
              }
            } else if ( longAndShortCycleLabels = "短周期" ) {
              if ( genericSpecialLabels = "专用" ) {
                if ( automaticMaterialPlanningPolicies <> "JIT" ) {
                  error( "导入的自动计划策略值出错:", createItemCode );
                }
              } else if ( genericSpecialLabels = "通用" ) {
                if ( automaticMaterialPlanningPolicies <> "安全库存" ) {
                  error( "导入的自动计划策略值出错:", createItemCode );
                }
              } else {
                error( "专通用标签的值出错:", createItemCode );
              }
            } else {
              error( "长短周期的值出错:", createItemCode );
            }
          } else {
            if( longAndShortCycleLabels = "长周期" ) {
              if ( genericSpecialLabels = "专用" ) {
                if ( automaticMaterialPlanningPolicies <> "JIT" ) {
                  error( "导入的自动计划策略值出错:", createItemCode );
                }
              } else if ( genericSpecialLabels = "通用" ) {
                if ( automaticMaterialPlanningPolicies <> "JIT" ) {
                  error( "导入的自动计划策略值出错:", createItemCode );
                }
              } else {
                error( "专通用标签的值出错:", createItemCode );
              }
            } else if ( longAndShortCycleLabels = "短周期" ) {
              if ( genericSpecialLabels = "专用" ) {
                if ( automaticMaterialPlanningPolicies <> "JIT" ) {
                  error( "导入的自动计划策略值出错:", createItemCode );
                }
              } else if ( genericSpecialLabels = "通用" ) {
                if ( automaticMaterialPlanningPolicies <> "JIT" ) {
                  error( "导入的自动计划策略值出错:", createItemCode );
                }
              } else {
                error( "专通用标签的值出错:", createItemCode );
              }
            } else {
              error( "长短周期的值出错:", createItemCode );
            }
          }
        } else {
          if( longAndShortCycleLabels = "长周期" ) {
            if ( genericSpecialLabels = "专用" ) {
              if ( automaticMaterialPlanningPolicies <> "JIT" ) {
                error( "导入的自动计划策略值出错:", createItemCode );
              }
            } else if ( genericSpecialLabels = "通用" ) {
              if ( automaticMaterialPlanningPolicies <> "安全库存" ) {
                error( "导入的自动计划策略值出错:", createItemCode );
              }
            } else {
              error( "专通用标签的值出错:", createItemCode );
            }
          } else if ( longAndShortCycleLabels = "短周期" ) {
            if ( genericSpecialLabels = "专用" ) {
              if ( automaticMaterialPlanningPolicies <> "JIT" ) {
                error( "导入的自动计划策略值出错:", createItemCode );
              }
            } else if ( genericSpecialLabels = "通用" ) {
              if ( automaticMaterialPlanningPolicies <> "VMI" ) {
                error( "导入的自动计划策略值出错:", createItemCode );
              }
            } else {
              error( "专通用标签的值出错:", createItemCode );
            }
          } else {
            error( "长短周期的值出错:", createItemCode );
          }
        }
        try {
          matAttrSettingAndPlanStrategy := globalOTDTable.MatAttrSettingAndPlanStrategy( relnew,
                                                                                         BusinessType := businessType,