hongjli
2023-10-12 eb1bd2a543a8964ac3b4a2c6269f61001ed53a09
产能分配优化
已添加5个文件
已修改9个文件
已删除4个文件
1153 ■■■■■ 文件已修改
_Main/BL/Type_CapacityAllocationResults/StaticMethod_IterativeGeneration3.qbl 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAllocationResults/StaticMethod_Test.qbl 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAllocationResultsRuleConfiguration/StaticMethod_AutomaticallyGenerateRule.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CustomerAndForecastOrder/StaticMethod_CreateData.qbl 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CustomerAndForecastOrder/StaticMethod_CreateFillingCapacityOrder.qbl 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupSalesViews#633.def 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuSalesFillingCapacity.def 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_cmTestAttempt.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ActionBarGroupSalesViews_ButtonSalesFillingCapacity_O.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingCapac.def 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingS#360.def 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingSchem.def 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAllocationResultsRuleConfiguration/Component_listContextMenuCapacityAllocationResultsRuleConfiguration.def 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAllocationResultsRuleConfiguration/Response_listContextMenuCapacityAllocationResultsRuleConfiguration_MenuAutoC.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Response_PanelButton_ButtonTransform_OnClick.def 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPanelMaterialSpecializedDisplay/_ROOT_Component_FormPanelMaterialSpecializedDisplay.def 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Views/Test.vw 285 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Views/填产.vw 607 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CapacityAllocationResults/StaticMethod_IterativeGeneration3.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,54 @@
Quintiq file version 2.0
#parent: #root
StaticMethod IterativeGeneration3 (
  Supply_MP smp,
  Number numberOfPlies,
  Real fulfillmentQuantity
)
{
  TextBody:
  [*
    info( "层数:", numberOfPlies );
    ontype ( smp ) {
      NewSupply as ns : {
        info( "供应类型(NewSupply)", "    ä¾›åº”量:", ns.Quantity(), "    å®žé™…用量:", fulfillmentQuantity );
        ontype ( ns.PeriodTask_MP() ) {
          PeriodTaskOperation as pto : {
            info( "操作周期任务    ", "供应时间:", ns.Start().Format( "Y-M2-D2" ), "    å‘¨æœŸä»»åŠ¡KEY:", pto.Key(), "    ",
                  ns.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().Name() );
            traverse ( pto, DependentDemand, dd, dd.Quantity() > 0 ) {
              traverse ( dd, Fulfillment, f ) {
                smp1 := f.Supply_MP();
                numberOfPlies++;
                info( "--------------------------------------------------------------" );
                fulfillmentQuantity := fulfillmentQuantity * ns.ProcessOutput().astype( OperationOutput ).Quantity() *
                                                             dd.ProcessInput().astype( OperationInput ).Quantity();
                CapacityAllocationResults::IterativeGeneration3( smp1, numberOfPlies, fulfillmentQuantity );
                numberOfPlies--;
              }
            }
          }
          PeriodTaskLaneLeg as ptll : {
            targetDependentDemand := select( ptll, DependentDemand, dd, dd.ProcessInput().ProductInStockingPoint_MP().ProductID() = ns.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().ProductID() and
                                             dd.Quantity() = ns.Quantity() );
            info( "车道周期任务    ", "供应时间:", ns.Start().Format( "Y-M2-D2" ), "    å‘¨æœŸä»»åŠ¡KEY:", ptll.Key(), "    ",
                  targetDependentDemand.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().Name() );
            traverse ( targetDependentDemand, Fulfillment, f ) {
              smp1 := f.Supply_MP();
              numberOfPlies++;
              info( "--------------------------------------------------------------" );
              CapacityAllocationResults::IterativeGeneration3( smp1, numberOfPlies, f.Quantity() );
              numberOfPlies--;
            }
          }
        }
      }
      InventorySupply as is : {
        info( "供应类型(InventorySupply)    ", "供应时间:", is.Date().Format( "Y-M2-D2" ), "    ä¾›åº”量:", is.Quantity(),
              "    å®žé™…用量:", fulfillmentQuantity, "    ", is.ProductInStockingPoint_MP().Name() );
      }
    }
  *]
}
_Main/BL/Type_CapacityAllocationResults/StaticMethod_Test.qbl
@@ -6,10 +6,13 @@
{
  TextBody:
  [*
    traverse ( macroPlan, SalesDemand, sd, sd.ProductID() = "ProXOver 1 D2.6 A" and
                                           sd.StockingPointID() = "Carco Philadelphia" and
                                           sd.StartDate() = Date::Construct( 2020, 4, 1 ) ) {
      info( "数量:", sd.Quantity() );
    traverse ( macroPlan, Product_MP.ProductInStockingPoint_MP, pisp, pisp.ProductID() = "ProXOver 1 D2.6 A"        and
                                                                      pisp.StockingPointID() = "Carco Philadelphia" ) {
      traverse ( pisp, ProductInStockingPointInPeriodPlanning.astype( ProductInStockingPointInPeriodPlanningLeaf ).Supply_MP, smp,
               smp.ProductInStockingPointInPeriodPlanning().Start().Date() = Date::Construct( 2020, 4, 7 ) and
               smp.Quantity() > 0 ) {
        CapacityAllocationResults::IterativeGeneration3( smp, 1, smp.Quantity() );
      }
    }
  *]
}
_Main/BL/Type_CapacityAllocationResultsRuleConfiguration/StaticMethod_AutomaticallyGenerateRule.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
StaticMethod AutomaticallyGenerateRule (
  MacroPlan macroPlan,
  GlobalOTDTable globalOTDTable
)
{
}
_Main/BL/Type_CustomerAndForecastOrder/StaticMethod_CreateData.qbl
@@ -1,13 +1,17 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateData (
  MacroPlan macroPlan
  MacroPlan macroPlan,
  Scenario scenario
)
{
  TextBody:
  [*
    macroPlan.CustomerAndForecastOrder( relflush );
    traverse ( macroPlan, SalesDemand.astype( CustomerOrder ), co, true ) {
      macroPlan.CustomerAndForecastOrder( relnew,
                                          VerNo             := scenario.Name(),
                                          OrderID := co.OrderID(),
                                          ProductID := co.ProductID(),
                                          BusinessType := co.BusinessType(),
_Main/BL/Type_CustomerAndForecastOrder/StaticMethod_CreateFillingCapacityOrder.qbl
@@ -9,9 +9,9 @@
  [*
    // NBoTk Sep-13-2023 (created)
    
    owner.FillingCapacityOrder(relnew,ProductID := data.ProductID(),BusinessType := data.BusinessType(),Customer := data.Customer(),CustomerID := data.CustomerID(),
                                    Quantity := data.Quantity(),UnitOfMeasureName := data.UnitOfMeasureName(),PanelBigSheetQuantity := data.PanelBigSheetQuantity(),SalesAmount := data.SalesAmount(),
                                    ForecastDemandDate := data.ForecastDemandDate(),DemandDate := data.DemandDate(),VerNo := data.VerNo(),SalesSegmentName := data.SalesSegmentName()
                                    );
    //owner.FillingCapacityOrder(relnew,ProductID := data.ProductID(),BusinessType := data.BusinessType(),Customer := data.Customer(),CustomerID := data.CustomerID(),
    //                                Quantity := data.Quantity(),UnitOfMeasureName := data.UnitOfMeasureName(),PanelBigSheetQuantity := data.PanelBigSheetQuantity(),SalesAmount := data.SalesAmount(),
    //                                ForecastDemandDate := data.ForecastDemandDate(),DemandDate := data.DemandDate(),VerNo := data.VerNo(),SalesSegmentName := data.SalesSegmentName()
    //                                );
  *]
}
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupSalesViews#633.def
@@ -7,10 +7,6 @@
    {
      #keys: '[414382.0.436830247]'
      BaseType: 'WebButton'
      Children:
      [
        #child: ContextMenuSalesFillingCapacity
      ]
      Properties:
      [
        Image: 'BLOT'
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuSalesFillingCapacity.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_cmTestAttempt.def
@@ -13,7 +13,7 @@
      [
        Image: 'WATER_FISH'
        Taborder: 0
        Title: '产能分配&填产'
        Title: '产能分配'
      ]
    }
    Component mnAnnualProductionAndSalesReview
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ActionBarGroupSalesViews_ButtonSalesFillingCapacity_O.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: ActionBarGroupSalesViews/ButtonSalesFillingCapacity
Response OnClick () id:Response_TIANMA_JITUAN_ActionBarGroupSalesViews_ButtonSalesFillingCapacity_OnClick
{
  #keys: '[414702.1.55424758]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      ApplicationScope.ViewManager().ResetUserViewById( "填产", true );
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingCapac.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingS#360.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_TIANMA_JITUAN_ContextMenuSalesFillingCapacity_MenuSalesFillingSchem.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAllocationResultsRuleConfiguration/Component_listContextMenuCapacityAllocationResultsRuleConfiguration.def
@@ -51,6 +51,27 @@
        Title: '全选'
      ]
    }
    Component Menu666
    {
      #keys: '[414702.1.55207187]'
      BaseType: 'WebMenu'
      Properties:
      [
        Separator: true
        Taborder: 7
      ]
    }
    Component MenuAutoCreate
    {
      #keys: '[414702.1.55207442]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'COMPONENT'
        Taborder: 8
        Title: '自动创建规则'
      ]
    }
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormCapacityAllocationResultsRuleConfiguration/Response_listContextMenuCapacityAllocationResultsRuleConfiguration_MenuAutoC.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: listContextMenuCapacityAllocationResultsRuleConfiguration/MenuAutoCreate
Response OnClick () id:Response_listContextMenuCapacityAllocationResultsRuleConfiguration_MenuAutoCreate_OnClick
{
  #keys: '[414702.1.55268133]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebMenu_OnClick'
  GroupServerCalls: true
  Precondition:
  [*
    return not isnull( MacroPlan ) and not isnull( GlobalOTDTable );
  *]
  QuillAction
  {
    Body:
    [*
      //CapacityAllocationResultsRuleConfiguration::AutomaticallyGenerateRule( MacroPlan, GlobalOTDTable );
    *]
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityScheme/Response_PanelButton_ButtonTransform_OnClick.def
@@ -13,7 +13,14 @@
  {
    Body:
    [*
      CustomerAndForecastOrder::CreateData( MacroPlan );
      CustomerAndForecastOrder::CreateData( MacroPlan, DataHolderActiveScenario.Data() );
      message := "总订单个数:"                                                               +
                [String]counter( MacroPlan, SalesDemand.astype( CustomerOrder ), cs, true )  +
                 "    æˆåŠŸè½¬æ¢ä¸ªæ•°ï¼š"                                                         +
                 [String]counter( MacroPlan, SalesDemand.astype( CustomerOrder ), cs, true )
      WebMessageBox::Success( message, true );
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_FormPanelMaterialSpecializedDisplay/_ROOT_Component_FormPanelMaterialSpecializedDisplay.def
@@ -32,7 +32,6 @@
  ]
  Properties:
  [
    Description: '专显'
    Image: 'LAPTOP2'
    Title: '专显'
  ]
_Main/UI/MacroPlannerWebApp/Views/Test.vw
@@ -159,300 +159,19 @@
          }
        }
      }
      form_FormCustomerAndForecastOrder
      {
        title: 'QTIANMA_JITUAN::FormCustomerAndForecastOrder'
        shown: true
        componentID: 'QTIANMA_JITUAN::FormCustomerAndForecastOrder'
        layout
        {
          mode: 'open'
          rowPosition: 16
          rowSpan: 16
          columnPosition: 1
          columnSpan: 4
        }
        components
        {
          FormCustomerAndForecastOrder_PanelButton
          {
            sizeRatio: 1
          }
          FormCustomerAndForecastOrder_ListCustomerAndFillingCapacityOrder
          {
          }
          FormCustomerAndForecastOrder_DataSetLevelCustomerAndFillingCapacityOrder
          {
            groupDepth: -1
            column_VerNo
            {
              columnId: 'VerNo'
              dataPath: 'VerNo'
              dataType: 'string'
              index: 0
              subtotals: ''
              width: 150
            }
            column_OrderID
            {
              columnId: 'OrderID'
              dataPath: 'OrderID'
              dataType: 'string'
              index: 1
              subtotals: ''
              width: 150
            }
            column_ProductID
            {
              columnId: 'ProductID'
              dataPath: 'ProductID'
              dataType: 'string'
              index: 2
              subtotals: ''
              width: 150
            }
            column_BusinessType
            {
              columnId: 'BusinessType'
              dataPath: 'BusinessType'
              dataType: 'string'
              index: 3
              subtotals: ''
              width: 150
            }
            column_Customer
            {
              columnId: 'Customer'
              dataPath: 'Customer'
              dataType: 'string'
              index: 4
              subtotals: ''
              width: 150
            }
            column_ServiceType
            {
              columnId: 'ServiceType'
              dataPath: 'ServiceType'
              dataType: 'string'
              index: 5
              subtotals: ''
              width: 150
            }
            column_Quantity
            {
              columnId: 'Quantity'
              dataPath: 'Quantity'
              dataType: 'real'
              index: 6
              subtotals: ''
              width: 150
            }
            column_UnitOfMeasureName
            {
              columnId: 'UnitOfMeasureName'
              dataPath: 'UnitOfMeasureName'
              dataType: 'string'
              index: 7
              subtotals: ''
              width: 150
            }
            column_PanelBigSheetQuantity
            {
              columnId: 'PanelBigSheetQuantity'
              dataPath: 'PanelBigSheetQuantity'
              dataType: 'real'
              index: 8
              subtotals: ''
              width: 150
            }
            column_SalesAmount
            {
              columnId: 'SalesAmount'
              dataPath: 'SalesAmount'
              dataType: 'number'
              index: 9
              subtotals: ''
              width: 150
            }
            column_ForecastDemandDate
            {
              columnId: 'ForecastDemandDate'
              dataPath: 'ForecastDemandDate'
              dataType: 'date'
              index: 10
              subtotals: ''
              width: 150
            }
            column_DemandDate
            {
              columnId: 'DemandDate'
              dataPath: 'DemandDate'
              dataType: 'date'
              index: 11
              subtotals: ''
              width: 150
            }
          }
        }
      }
      form_FormFillingCapacityOrder
      {
        title: 'QTIANMA_JITUAN::FormFillingCapacityOrder'
        shown: true
        componentID: 'QTIANMA_JITUAN::FormFillingCapacityOrder'
        layout
        {
          mode: 'open'
          rowPosition: 16
          rowSpan: 16
          columnPosition: 5
          columnSpan: 8
        }
        components
        {
          FormFillingCapacityOrder_PanelFillingCapacityOrder
          {
            sizeRatio: 1
          }
          FormFillingCapacityOrder_ListFillingCapacityOrder
          {
          }
          FormFillingCapacityOrder_DataSetLevelFillingCapacityOrder
          {
            groupDepth: -1
            column_VerNo
            {
              columnId: 'VerNo'
              dataPath: 'VerNo'
              dataType: 'string'
              index: 0
              subtotals: ''
              width: 150
            }
            column_ProductID
            {
              columnId: 'ProductID'
              dataPath: 'ProductID'
              dataType: 'string'
              index: 1
              subtotals: ''
              width: 150
            }
            column_BusinessType
            {
              columnId: 'BusinessType'
              dataPath: 'BusinessType'
              dataType: 'string'
              index: 2
              subtotals: ''
              width: 150
            }
            column_SalesSegmentName
            {
              columnId: 'SalesSegmentName'
              dataPath: 'SalesSegmentName'
              dataType: 'string'
              index: 3
              subtotals: ''
              width: 150
            }
            column_StockingPointID
            {
              columnId: 'StockingPointID'
              dataPath: 'StockingPointID'
              dataType: 'string'
              index: 4
              subtotals: ''
              width: 150
            }
            column_Customer
            {
              columnId: 'Customer'
              dataPath: 'Customer'
              dataType: 'string'
              index: 5
              subtotals: ''
              width: 150
            }
            column_Quantity
            {
              columnId: 'Quantity'
              dataPath: 'Quantity'
              dataType: 'real'
              index: 6
              subtotals: ''
              width: 150
            }
            column_UnitOfMeasureName
            {
              columnId: 'UnitOfMeasureName'
              dataPath: 'UnitOfMeasureName'
              dataType: 'string'
              index: 7
              subtotals: ''
              width: 150
            }
            column_PanelBigSheetQuantity
            {
              columnId: 'PanelBigSheetQuantity'
              dataPath: 'PanelBigSheetQuantity'
              dataType: 'real'
              index: 8
              subtotals: ''
              width: 150
            }
            column_SalesAmount
            {
              columnId: 'SalesAmount'
              dataPath: 'SalesAmount'
              dataType: 'number'
              index: 9
              subtotals: ''
              width: 150
            }
            column_ForecastDemandDate
            {
              columnId: 'ForecastDemandDate'
              dataPath: 'ForecastDemandDate'
              dataType: 'date'
              index: 10
              subtotals: ''
              width: 150
            }
            column_DemandDate
            {
              columnId: 'DemandDate'
              dataPath: 'DemandDate'
              dataType: 'date'
              index: 11
              subtotals: ''
              width: 150
            }
            column_OrderType
            {
              columnId: 'OrderType'
              dataPath: 'OrderType'
              dataType: 'string'
              index: 12
              subtotals: ''
              width: 150
            }
          }
        }
      }
    }
    userconfigurableinformation
    {
    }
    image: 'BEAR'
    page: ''
    group: ''
    index: 0
    image: 'BEAR'
    description: ''
  }
  formatversion: 2
  id: 'Test'
  name: '产能分配_填产'
  name: '产能分配'
  isglobal: false
  isroot: true
}
_Main/UI/MacroPlannerWebApp/Views/Ìî²ú.vw
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,607 @@
Quintiq file version 2.0
{
  viewcontents
  {
    forms
    {
      form_FormCustomerAndForecastOrder
      {
        title: 'QTIANMA_JITUAN::FormCustomerAndForecastOrder'
        shown: true
        componentID: 'QTIANMA_JITUAN::FormCustomerAndForecastOrder'
        layout
        {
          mode: 'open'
          rowPosition: 1
          rowSpan: 16
          columnPosition: 1
          columnSpan: 4
        }
        components
        {
          FormCustomerAndForecastOrder_PanelButton
          {
            sizeRatio: 1
          }
          FormCustomerAndForecastOrder_ListCustomerAndFillingCapacityOrder
          {
          }
          FormCustomerAndForecastOrder_DataSetLevelCustomerAndFillingCapacityOrder
          {
            groupDepth: -1
            column_VerNo
            {
              columnId: 'VerNo'
              dataPath: 'VerNo'
              dataType: 'string'
              index: 0
              subtotals: ''
              width: 150
            }
            column_OrderID
            {
              columnId: 'OrderID'
              dataPath: 'OrderID'
              dataType: 'string'
              index: 1
              subtotals: ''
              width: 150
            }
            column_ProductID
            {
              columnId: 'ProductID'
              dataPath: 'ProductID'
              dataType: 'string'
              index: 2
              subtotals: ''
              width: 150
            }
            column_BusinessType
            {
              columnId: 'BusinessType'
              dataPath: 'BusinessType'
              dataType: 'string'
              index: 3
              subtotals: ''
              width: 150
            }
            column_Customer
            {
              columnId: 'Customer'
              dataPath: 'Customer'
              dataType: 'string'
              index: 4
              subtotals: ''
              width: 150
            }
            column_ServiceType
            {
              columnId: 'ServiceType'
              dataPath: 'ServiceType'
              dataType: 'string'
              index: 5
              subtotals: ''
              width: 150
            }
            column_Quantity
            {
              columnId: 'Quantity'
              dataPath: 'Quantity'
              dataType: 'real'
              index: 6
              subtotals: ''
              width: 150
            }
            column_UnitOfMeasureName
            {
              columnId: 'UnitOfMeasureName'
              dataPath: 'UnitOfMeasureName'
              dataType: 'string'
              index: 7
              subtotals: ''
              width: 150
            }
            column_PanelBigSheetQuantity
            {
              columnId: 'PanelBigSheetQuantity'
              dataPath: 'PanelBigSheetQuantity'
              dataType: 'real'
              index: 8
              subtotals: ''
              width: 150
            }
            column_SalesAmount
            {
              columnId: 'SalesAmount'
              dataPath: 'SalesAmount'
              dataType: 'number'
              index: 9
              subtotals: ''
              width: 150
            }
            column_ForecastDemandDate
            {
              columnId: 'ForecastDemandDate'
              dataPath: 'ForecastDemandDate'
              dataType: 'date'
              index: 10
              subtotals: ''
              width: 150
            }
            column_DemandDate
            {
              columnId: 'DemandDate'
              dataPath: 'DemandDate'
              dataType: 'date'
              index: 11
              subtotals: ''
              width: 150
            }
          }
        }
      }
      form_FormFillingCapacityOrder
      {
        title: 'QTIANMA_JITUAN::FormFillingCapacityOrder'
        shown: true
        componentID: 'QTIANMA_JITUAN::FormFillingCapacityOrder'
        layout
        {
          mode: 'open'
          rowPosition: 1
          rowSpan: 16
          columnPosition: 5
          columnSpan: 8
        }
        components
        {
          FormFillingCapacityOrder_PanelFillingCapacityOrder
          {
            sizeRatio: 1
          }
          FormFillingCapacityOrder_ListFillingCapacityOrder
          {
          }
          FormFillingCapacityOrder_DataSetLevelFillingCapacityOrder
          {
            groupDepth: -1
            column_VerNo
            {
              columnId: 'VerNo'
              dataPath: 'VerNo'
              dataType: 'string'
              index: 0
              subtotals: ''
              width: 150
            }
            column_ProductID
            {
              columnId: 'ProductID'
              dataPath: 'ProductID'
              dataType: 'string'
              index: 1
              subtotals: ''
              width: 150
            }
            column_BusinessType
            {
              columnId: 'BusinessType'
              dataPath: 'BusinessType'
              dataType: 'string'
              index: 2
              subtotals: ''
              width: 150
            }
            column_SalesSegmentName
            {
              columnId: 'SalesSegmentName'
              dataPath: 'SalesSegmentName'
              dataType: 'string'
              index: 3
              subtotals: ''
              width: 150
            }
            column_StockingPointID
            {
              columnId: 'StockingPointID'
              dataPath: 'StockingPointID'
              dataType: 'string'
              index: 4
              subtotals: ''
              width: 150
            }
            column_Customer
            {
              columnId: 'Customer'
              dataPath: 'Customer'
              dataType: 'string'
              index: 5
              subtotals: ''
              width: 150
            }
            column_Quantity
            {
              columnId: 'Quantity'
              dataPath: 'Quantity'
              dataType: 'real'
              index: 6
              subtotals: ''
              width: 150
            }
            column_UnitOfMeasureName
            {
              columnId: 'UnitOfMeasureName'
              dataPath: 'UnitOfMeasureName'
              dataType: 'string'
              index: 7
              subtotals: ''
              width: 150
            }
            column_PanelBigSheetQuantity
            {
              columnId: 'PanelBigSheetQuantity'
              dataPath: 'PanelBigSheetQuantity'
              dataType: 'real'
              index: 8
              subtotals: ''
              width: 150
            }
            column_SalesAmount
            {
              columnId: 'SalesAmount'
              dataPath: 'SalesAmount'
              dataType: 'number'
              index: 9
              subtotals: ''
              width: 150
            }
            column_ForecastDemandDate
            {
              columnId: 'ForecastDemandDate'
              dataPath: 'ForecastDemandDate'
              dataType: 'date'
              index: 10
              subtotals: ''
              width: 150
            }
            column_DemandDate
            {
              columnId: 'DemandDate'
              dataPath: 'DemandDate'
              dataType: 'date'
              index: 11
              subtotals: ''
              width: 150
            }
            column_OrderType
            {
              columnId: 'OrderType'
              dataPath: 'OrderType'
              dataType: 'string'
              index: 12
              subtotals: ''
              width: 150
            }
          }
        }
      }
      form_FormCustomerOrders
      {
        title: 'QLibMacroPlannerWebUI::FormCustomerOrders'
        shown: true
        componentID: 'QLibMacroPlannerWebUI::FormCustomerOrders'
        layout
        {
          mode: 'open'
          rowPosition: 17
          rowSpan: 17
          columnPosition: 1
          columnSpan: 12
        }
        components
        {
          FormCustomerOrders_PanelSalesDemands
          {
            sizeRatio: 1
          }
          FormCustomerOrders_PanelAllSalesDemands
          {
            sizeRatio: 2
          }
          FormCustomerOrders_ListSalesDemands
          {
          }
          FormCustomerOrders_DataSetLevelSalesDemands
          {
            groupDepth: -1
            column_All_constraints
            {
              columnId: 'All constraints'
              dataPath: 'All constraints'
              dataType: 'string'
              index: 0
              subtotals: ''
              width: 32
            }
            column_StockingPoint_MP_ID
            {
              columnId: 'StockingPoint_MP.ID'
              dataPath: 'StockingPoint_MP.ID'
              dataType: 'string'
              index: 1
              subtotals: ''
              width: 150
            }
            column_SalesSegment_MP_Name
            {
              columnId: 'SalesSegment_MP.Name'
              dataPath: 'SalesSegment_MP.Name'
              dataType: 'string'
              index: 2
              subtotals: ''
              width: 150
            }
            column_CustomerName
            {
              columnId: 'CustomerName'
              dataPath: 'CustomerName'
              dataType: 'string'
              index: 3
              subtotals: ''
              width: 150
            }
            column_CustomerID
            {
              columnId: 'CustomerID'
              dataPath: 'CustomerID'
              dataType: 'string'
              index: 4
              subtotals: ''
              width: 150
            }
            column_OrderID
            {
              columnId: 'OrderID'
              dataPath: 'OrderID'
              dataType: 'string'
              index: 5
              subtotals: ''
              width: 150
            }
            column_OrderLineID
            {
              columnId: 'OrderLineID'
              dataPath: 'OrderLineID'
              dataType: 'string'
              index: 6
              subtotals: ''
              width: 150
            }
            column_StartDate
            {
              columnId: 'StartDate'
              dataPath: 'StartDate'
              dataType: 'date'
              index: 7
              subtotals: ''
              width: 150
            }
            column_Product_MP_ID
            {
              columnId: 'Product_MP.ID'
              dataPath: 'Product_MP.ID'
              dataType: 'string'
              index: 8
              subtotals: ''
              width: 150
            }
            column_UnitOfMeasure_MP_Name
            {
              columnId: 'UnitOfMeasure_MP.Name'
              dataPath: 'UnitOfMeasure_MP.Name'
              dataType: 'string'
              index: 9
              subtotals: ''
              width: 150
            }
            column_Quantity
            {
              columnId: 'Quantity'
              dataPath: 'Quantity'
              dataType: 'real'
              index: 10
              subtotals: ''
              width: 150
            }
            column_FulfilledQuantity
            {
              columnId: 'FulfilledQuantity'
              dataPath: 'FulfilledQuantity'
              dataType: 'real'
              index: 11
              subtotals: ''
              width: 150
            }
            column_Fulfillment
            {
              columnId: 'Fulfillment'
              dataPath: 'Fulfillment'
              dataType: 'string'
              index: 12
              subtotals: ''
              width: 150
            }
            column_IsFirmed
            {
              columnId: 'IsFirmed'
              dataPath: 'IsFirmed'
              dataType: 'boolean'
              index: 13
              subtotals: ''
              width: 150
            }
            column_IsEligibleForNetting
            {
              columnId: 'IsEligibleForNetting'
              dataPath: 'IsEligibleForNetting'
              dataType: 'boolean'
              index: 14
              subtotals: ''
              width: 150
            }
            column_Price
            {
              columnId: 'Price'
              dataPath: 'Price'
              dataType: 'real'
              index: 15
              subtotals: ''
              width: 150
            }
            column_PriceUoM
            {
              columnId: 'PriceUoM'
              dataPath: 'PriceUoM'
              dataType: 'string'
              index: 16
              subtotals: ''
              width: 150
            }
            column_OrderTag
            {
              columnId: 'OrderTag'
              dataPath: 'OrderTag'
              dataType: 'string'
              index: 17
              subtotals: ''
              width: 150
            }
          }
          FormCustomerOrders_PanelSDIP
          {
            sizeRatio: 1
          }
          FormCustomerOrders_ListSDIP
          {
          }
          FormCustomerOrders_DataSetLevelSDIP
          {
            groupDepth: -1
            column_All_constraints
            {
              columnId: 'All constraints'
              dataPath: 'All constraints'
              dataType: 'string'
              index: 0
              subtotals: ''
              width: 32
            }
            column_ImgIsRestricted
            {
              columnId: 'ImgIsRestricted'
              dataPath: 'ImgIsRestricted'
              dataType: 'string'
              index: 1
              subtotals: ''
              width: 150
            }
            column_SalesSegmentName
            {
              columnId: 'SalesSegmentName'
              dataPath: 'SalesSegmentName'
              dataType: 'string'
              index: 2
              subtotals: ''
              width: 150
            }
            column_ProductID
            {
              columnId: 'ProductID'
              dataPath: 'ProductID'
              dataType: 'string'
              index: 3
              subtotals: ''
              width: 150
            }
            column_StockingPointID
            {
              columnId: 'StockingPointID'
              dataPath: 'StockingPointID'
              dataType: 'string'
              index: 4
              subtotals: ''
              width: 150
            }
            column_StartDate
            {
              columnId: 'StartDate'
              dataPath: 'StartDate'
              dataType: 'date'
              index: 5
              subtotals: ''
              width: 150
            }
            column_EndDate
            {
              columnId: 'EndDate'
              dataPath: 'EndDate'
              dataType: 'date'
              index: 6
              subtotals: ''
              width: 150
            }
            column_MasterSalesDemand_UnitOfMeasureName
            {
              columnId: 'MasterSalesDemand.UnitOfMeasureName'
              dataPath: 'MasterSalesDemand.UnitOfMeasureName'
              dataType: 'string'
              index: 7
              subtotals: ''
              width: 150
            }
            column_QuantityInSalesDemandUOM
            {
              columnId: 'QuantityInSalesDemandUOM'
              dataPath: 'QuantityInSalesDemandUOM'
              dataType: 'real'
              index: 8
              subtotals: ''
              width: 150
            }
            column_FulfilledQuantityInSalesDemandUOM
            {
              columnId: 'FulfilledQuantityInSalesDemandUOM'
              dataPath: 'FulfilledQuantityInSalesDemandUOM'
              dataType: 'real'
              index: 9
              subtotals: ''
              width: 150
            }
            column_Fulfillment
            {
              columnId: 'Fulfillment'
              dataPath: 'Fulfillment'
              dataType: 'string'
              index: 10
              subtotals: ''
              width: 150
            }
          }
        }
      }
    }
    userconfigurableinformation
    {
    }
    image: 'BOOK_BLUE_VIEW'
    page: ''
    group: ''
    index: 0
    description: ''
  }
  formatversion: 2
  id: '填产'
  name: '填产'
  isglobal: false
  isroot: true
}