hongjli
2023-10-07 221cf86c35ab100bb8d6af6a066c195b3c5560f2
填产优化
已添加5个文件
已修改13个文件
已删除1个文件
590 ■■■■ 文件已修改
_Main/BL/Type_FillingCapacityOrder/Attribute_ID.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_FillingCapacityOrder/TypeIndex_FillingCapacityOrderTypeIndex.qbl 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan#127.qbl 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan.qbl 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/_ROOT_Type_GlobalOTDTable.qbl 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_BrokerExecuteLog/Attribute_ExecutionStatus.qbl 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MappingUnitOfMeasure_MP/StaticMethod_SynchronizeMacroPlanData.qbl 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MatAttrSettingAndPlanningStrategy/StaticMethod_ExportTheFileStream.qbl 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlContent.def 189 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_ClickBtnOk.def 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_Edit.def 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_New.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnOk_OnClick.def 49 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_ListFillingCapacityOrder.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_PanelFillingCapacityOrder.def 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_listContextMenuFillingCapacityOrder.def 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/_ROOT_Component_FormFillingCapacityOrder.def 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_PanelInterfaceTest_ButtonSynchronizeDataToMacroPlan_OnClick.def 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Views/接口测试.vw 197 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_FillingCapacityOrder/Attribute_ID.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
Quintiq file version 2.0
#parent: #root
Attribute ID
{
  #keys: '3[414702.0.525344991][414702.0.525344990][414702.0.525344992]'
  IsReadOnly: true
  ValueType: String
}
_Main/BL/Type_FillingCapacityOrder/TypeIndex_FillingCapacityOrderTypeIndex.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,12 @@
Quintiq file version 2.0
#parent: #root
TypeIndex FillingCapacityOrderTypeIndex
{
  Attributes:
  [
    TypeIndexAttribute
    {
      ModelElement: ID
    }
  ]
}
_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan#127.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
Quintiq file version 2.0
#parent: #root
Method SynchronizeDataToMacroPlan (
  MacroPlan macroPlan,
  Boolean isUnitOfMeasure_MP
)
{
  TextBody:
  [*
    if ( isUnitOfMeasure_MP ) {
      Global_MappingUnitOfMeasure_MP::SynchronizeMacroPlanData( this, macroPlan );
    }
  *]
}
_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan.qbl
ÎļþÒÑɾ³ý
_Main/BL/Type_GlobalDTOTable/_ROOT_Type_GlobalOTDTable.qbl
@@ -5,5 +5,17 @@
{
  #keys: '5[414702.0.83354588][414702.0.83354586][0.0.0][414702.0.83354587][414702.0.83354589]'
  BaseType: Object
  OnCreate:
  [*
    this.BusinessType( relnew, BusinessTypeName := "手机事业部OLED" );
    this.BusinessType( relnew, BusinessTypeName := "专业显示事业部" );
    this.BusinessType( relnew, BusinessTypeName := "外卖CELLOLED" );
    this.BusinessType( relnew, BusinessTypeName := "手机事业部" );
    this.BusinessType( relnew, BusinessTypeName := "汽车电子事业部" );
    this.BusinessType( relnew, BusinessTypeName := "特种显示" );
    this.BusinessType( relnew, BusinessTypeName := "运动健康事业部" );
    this.BusinessType( relnew, BusinessTypeName := "车载显示事业部" );
    this.BusinessType( relnew, BusinessTypeName := "IT事业部" );
  *]
  StructuredName: 'GlobalOTDTables'
}
_Main/BL/Type_Global_BrokerExecuteLog/Attribute_ExecutionStatus.qbl
@@ -3,6 +3,11 @@
Attribute ExecutionStatus
{
  #keys: '3[414702.0.498264686][414702.0.498264685][414702.0.498264687]'
  Description: '执行状态'
  Description:
  [*
    æ‰§è¡ŒçŠ¶æ€
    InOperation
    Complete
  *]
  ValueType: String
}
_Main/BL/Type_Global_MappingUnitOfMeasure_MP/StaticMethod_SynchronizeMacroPlanData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,31 @@
Quintiq file version 2.0
#parent: #root
StaticMethod SynchronizeMacroPlanData (
  GlobalOTDTable globalOTDTable,
  MacroPlan macroPlan
)
{
  TextBody:
  [*
    global_BrokerExecuteLog := globalOTDTable.Global_BrokerExecuteLog( relnew,
                                                                       Name := "同步单位数据",
                                                                       IsSuccess := true
                                                                      );
    try {
      traverse ( globalOTDTable, Global_MappingUnitOfMeasure_MP, gmuommp ) {
        unitOfMeasure_MP := select( macroPlan, UnitOfMeasure_MP, tempUOMMP, tempUOMMP.Name() = gmuommp.Name() );
        if ( isnull( unitOfMeasure_MP ) ) {
          unitOfMeasure_MP := UnitOfMeasure_MP::Create( macroPlan, gmuommp.Name(), false, false );
        }
        if ( gmuommp.IsDefault() ) {
          unitOfMeasure_MP.SetAsDefault();
        }
      }
    } onerror {
      global_BrokerExecuteLog.IsSuccess( false );
      global_BrokerExecuteLog.ErrorNo( e.ErrorNr() );
      global_BrokerExecuteLog.ErrorMessage( e.GeneralInformation() );
    }
  *]
}
_Main/BL/Type_MatAttrSettingAndPlanningStrategy/StaticMethod_ExportTheFileStream.qbl
@@ -31,7 +31,7 @@
    
    xmlDOMSerializer := xmlDOMImplementation.CreateSerializer();
    xmlTableString := xmlDOMSerializer.WriteToString( xmlDOMDocument );
    info( xmlTableString );
    tableHandle := TableHandle::ImportXML( BinaryValue::Construct( xmlTableString ) );
    tableGroupHandle := TableGroupHandle::Create( "物料标签" );
    tableGroupHandle.Add( tableHandle );
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlContent.def
@@ -13,8 +13,10 @@
      [
        AllowEmpty: true
        DataBinding: 'DataHolderFillingCapacityOrder.Data.ProductID'
        Enabled: false
        Label: '商品编码'
        Taborder: 0
        Visible: false
      ]
    }
    Component dropDownStringListSalesSegmentName id:dropDownStringListSalesSegmentName_325
@@ -25,8 +27,10 @@
      [
        AllowEmpty: true
        DataBinding: 'DataHolderFillingCapacityOrder.Data.SalesSegmentName'
        Enabled: false
        Label: '销售部门'
        Taborder: 1
        Visible: false
      ]
    }
    Component dropDownStringListStockPointID id:dropDownStringListStockPointID_801
@@ -37,8 +41,10 @@
      [
        AllowEmpty: true
        DataBinding: 'DataHolderFillingCapacityOrder.Data.StockingPointID'
        Enabled: false
        Label: '库存点'
        Taborder: 2
        Visible: false
      ]
    }
    Component dropDownStringListCustomer id:dropDownStringListCustomer_957
@@ -49,8 +55,10 @@
      [
        AllowEmpty: true
        DataBinding: 'DataHolderFillingCapacityOrder.Data.Customer'
        Enabled: false
        Label: '客户'
        Taborder: 3
        Visible: false
      ]
    }
    Component edtQuantity id:edtQuantity_995
@@ -62,7 +70,7 @@
        DataBinding: 'DataHolderFillingCapacityOrder.Data.Quantity'
        Label: '数量'
        Mask: 'REAL'
        Taborder: 4
        Taborder: 12
      ]
    }
    Component dropDownStringListUnitOfMeasureName id:dropDownStringListUnitOfMeasureName_750
@@ -73,9 +81,11 @@
      [
        AllowEmpty: true
        DataBinding: 'DataHolderFillingCapacityOrder.Data.UnitOfMeasureName'
        Enabled: false
        Label: '数量单位'
        Strings: 'UnitName'
        Taborder: 5
        Taborder: 4
        Visible: false
      ]
    }
    Component edtSalesAmount id:edtSalesAmount_608
@@ -87,7 +97,7 @@
        DataBinding: 'DataHolderFillingCapacityOrder.Data.SalesAmount'
        Label: '销售额'
        Mask: 'NUMBER'
        Taborder: 6
        Taborder: 13
      ]
    }
    Component dsDemandDate
@@ -98,7 +108,7 @@
      [
        DataBinding: 'DataHolderFillingCapacityOrder.Data.DemandDate'
        Label: '需求日期'
        Taborder: 8
        Taborder: 15
      ]
    }
    Component dsForecastDemandDate
@@ -109,9 +119,180 @@
      [
        DataBinding: 'DataHolderFillingCapacityOrder.Data.ForecastDemandDate'
        Label: '预期需求日期'
        Taborder: 14
      ]
    }
    Component ddlSalesSegment
    {
      #keys: '[414702.0.525040441]'
      BaseType: 'WebDropDownList'
      Databinding: 'SalesSegment_MP'
      Children:
      [
        Component deSalesSegment
        {
          #keys: '[414702.0.525040443]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'structured[SalesSegment_MP]'
            FixedFilter: 'object.Child(relsize)=0'
            Source: 'ApplicationMacroPlanner.DataHolderSalesSegment'
            Taborder: 0
            Transformation: 'Elements'
          ]
        }
      ]
      Properties:
      [
        DisplayField: 'Name'
        Label: '销售部门'
        Taborder: 5
      ]
    }
    Component ddlProduct_MP
    {
      #keys: '[414702.0.525462899]'
      BaseType: 'WebDropDownList'
      Databinding: 'Product_MP'
      Children:
      [
        Component deContent
        {
          #keys: '[414702.0.525462901]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'structured[Product_MP]'
            FixedFilter: 'not object.IsSystem()'
            Source: 'ApplicationMacroPlanner.DataHolderProduct'
            Taborder: 0
            Transformation: 'Elements'
          ]
        }
      ]
      Properties:
      [
        DisplayField: 'Name'
        Label: '产品'
        Taborder: 6
      ]
    }
    Component ddlStockingPoint_MP
    {
      #keys: '[414702.0.525462922]'
      BaseType: 'WebDropDownList'
      Databinding: 'StockingPoint_MP'
      Children:
      [
        Component deContent345
        {
          #keys: '[414702.0.525462924]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'structured[StockingPoint_MP]'
            FixedFilter: 'not object.IsSystem()'
            Source: 'ApplicationMacroPlanner.DataHolderStockingPoint'
            Taborder: 0
            Transformation: 'Elements'
          ]
        }
      ]
      Properties:
      [
        DisplayField: 'Name'
        Label: '库存点'
        Taborder: 7
      ]
    }
    Component ddlBusinessType
    {
      #keys: '[414702.0.525012300]'
      BaseType: 'WebDropDownList'
      Databinding: 'BusinessType'
      Children:
      [
        Component deContent989
        {
          #keys: '[414702.0.525012302]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'GlobalOTDTable'
            Source: 'GlobalOTDTable'
            Taborder: 0
            Transformation: 'BusinessType'
          ]
        }
      ]
      Properties:
      [
        DisplayField: 'BusinessTypeName'
        Label: '事业部'
        Taborder: 8
      ]
    }
    Component ddlUnitOfMeasure_MP
    {
      #keys: '[414702.0.525669735]'
      BaseType: 'WebDropDownList'
      Databinding: 'UnitOfMeasure_MP'
      Children:
      [
        Component deContent703
        {
          #keys: '[414702.0.525669737]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'MacroPlan'
            Source: 'MacroPlan'
            Taborder: 0
            Transformation: 'UnitOfMeasure_MP'
          ]
        }
      ]
      Properties:
      [
        DisplayField: 'Name'
        Label: '单位'
        Taborder: 9
      ]
    }
    Component efCustomerName
    {
      #keys: '[414702.0.525734924]'
      BaseType: 'WebEditField'
      Properties:
      [
        DataBinding: 'DataHolderFillingCapacityOrder.Data.Customer'
        Label: 'Customer name'
        Taborder: 10
      ]
    }
    Component efCustomID
    {
      #keys: '[414702.0.525734943]'
      BaseType: 'WebEditField'
      Properties:
      [
        Label: 'Customer ID'
        Taborder: 11
      ]
    }
    Component ddslOrderType
    {
      #keys: '[414702.0.526239841]'
      BaseType: 'WebDropDownStringList'
      Properties:
      [
        DataBinding: 'DataHolderFillingCapacityOrder.Data.OrderType'
        Label: '订单类型'
        Strings: '反签;授权'
        Taborder: 16
      ]
    }
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_ClickBtnOk.def
@@ -7,12 +7,12 @@
  [*
    // Disabled button to prevent the possibility of multiple firing
    
    btnOk.Enabled(false,'');
    //btnOk.Enabled(false,'');
    
    // OnOk
    this.ApplyChanges();
    
    DataHolderFillingCapacityOrder.Data().Commit();
    //DataHolderFillingCapacityOrder.Data().Commit();
    
    //if( not isnull( DataHolderForm.Data() ) )
    //{
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_Edit.def
@@ -12,6 +12,21 @@
    
    DataHolderFillingCapacityOrder.Data( &data );
    
    salesSegment_MP := select( MacroPlan, SalesSegment_MP, tempSSMP, tempSSMP.Name() = selection.SalesSegmentName() );
    ddlSalesSegment.Data( salesSegment_MP );
    product_MP := select( MacroPlan, Product_MP, tempPMP, tempPMP.ID() = selection.ProductID() );
    ddlProduct_MP.Data( product_MP );
    stockingPoint_MP := select( MacroPlan, StockingPoint_MP, tempSPMP, tempSPMP.ID() = selection.StockingPointID() );
    ddlStockingPoint_MP.Data( stockingPoint_MP );
    businessType := select( GlobalOTDTable, BusinessType, tempBT, tempBT.BusinessTypeName() = selection.BusinessType() );
    ddlBusinessType.Data( businessType );
    unitOfMeasure_MP := select( MacroPlan, UnitOfMeasure_MP, tempUOMMP, tempUOMMP.Name() = selection.UnitOfMeasureName() );
    ddlUnitOfMeasure_MP.Data( unitOfMeasure_MP );
    ApplicationMacroPlanner.ShowFormModal( this );
  *]
}
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Method_New.def
@@ -9,7 +9,7 @@
  [*
    
    data := owner.FillingCapacityOrder(relshadow);
    data.OrderType("提拉")
    //data.OrderType("提拉")
    
    DataHolderFillingCapacityOrder.Data(&data);
    
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnOk_OnClick.def
@@ -6,20 +6,51 @@
  DefinitionID: 'Responsedef_WebButton_OnClick'
  Precondition:
  [*
    feedback := Translations::FilllingCapacity_ValidateInput();
    checkValue := not dropDownStringListProductID.Text() = '' and not dropDownStringListSalesSegmentName.Text() = ''
                  and not dropDownStringListStockPointID.Text() = '' and not dropDownStringListCustomer.Text() = ''
                  and not edtQuantity.Text() = '' and not dropDownStringListUnitOfMeasureName.Text() = ''
                  and not edtSalesAmount.Text() = ''
    return checkValue;
    //feedback := Translations::FilllingCapacity_ValidateInput();
    //
    //checkValue := not dropDownStringListProductID.Text() = '' and not dropDownStringListSalesSegmentName.Text() = ''
    //              and not dropDownStringListStockPointID.Text() = '' and not dropDownStringListCustomer.Text() = ''
    //              and not edtQuantity.Text() = '' and not dropDownStringListUnitOfMeasureName.Text() = ''
    //              and not edtSalesAmount.Text() = ''
    //
    //return checkValue;
  *]
  QuillAction
  {
    Body:
    [*
      Form.ClickBtnOk()
      Form.ApplyChanges();
      data := guard( DataHolderFillingCapacityOrder.Data().WrappedInstance(), null( FillingCapacityOrder ) );;
      if ( isnull( data ) ) {
        MacroPlan.FillingCapacityOrder( relnew,
                                        ProductID          := guard( ddlProduct_MP.Data().ID(), "null" ),
                                        BusinessType       := guard( ddlBusinessType.Data().BusinessTypeName(), "null" ),
                                        SalesSegmentName   := guard( ddlSalesSegment.Data().Name(), "null" ),
                                        StockingPointID    := guard( ddlStockingPoint_MP.Data().ID(), "null" ),
                                        Customer           := efCustomerName.Text(),
                                        Quantity           := [Real]edtQuantity.Text(),
                                        UnitOfMeasureName  := ddlUnitOfMeasure_MP.Data().Name(),
                                        ForecastDemandDate := dsForecastDemandDate.Date(),
                                        DemandDate         := dsDemandDate.Date(),
                                        OrderType          := ddslOrderType.Text(),
                                        SalesAmount        := [Number]edtSalesAmount.Text()
                                       );
      } else {
        data.ProductID( guard( ddlProduct_MP.Data().ID(), "null" ) );
        data.BusinessType( guard( ddlBusinessType.Data().BusinessTypeName(), "null" ) );
        data.SalesSegmentName( guard( ddlSalesSegment.Data().Name(), "null" ) );
        data.StockingPointID( guard( ddlStockingPoint_MP.Data().ID(), "null" ) );
        data.Customer( efCustomerName.Text() );
        data.Quantity( [Real]edtQuantity.Text() );
        data.UnitOfMeasureName( ddlUnitOfMeasure_MP.Data().Name() );
        data.ForecastDemandDate( dsForecastDemandDate.Date() );
        data.DemandDate( dsDemandDate.Date() );
        data.OrderType( ddslOrderType.Text() );
        data.SalesAmount( [Number]edtSalesAmount.Text() );
      }
      Form.Close();
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_ListFillingCapacityOrder.def
@@ -37,7 +37,7 @@
  ]
  Properties:
  [
    Taborder: 0
    Taborder: 1
  ]
  ResponseDefinitions:
  [
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_PanelFillingCapacityOrder.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,26 @@
Quintiq file version 2.0
Component PanelFillingCapacityOrder
{
  #keys: '[414702.0.526129526]'
  BaseType: 'WebPanel'
  Children:
  [
    Component ButtonDeduct
    {
      #keys: '[414702.0.523642357]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'EDITOR_ACCESSIBILITY_LOCAL'
        Label: '冲减'
        Taborder: 0
      ]
    }
  ]
  Properties:
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Component_listContextMenuFillingCapacityOrder.def
@@ -22,6 +22,7 @@
      BaseType: 'WebMenu'
      Properties:
      [
        BindOnDoubleClick: true
        Image: 'PENCIL'
        Taborder: 4
        Title: 'Edit'
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/_ROOT_Component_FormFillingCapacityOrder.def
@@ -8,6 +8,7 @@
  Children:
  [
    #child: ListFillingCapacityOrder
    #child: PanelFillingCapacityOrder
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_PanelInterfaceTest_ButtonSynchronizeDataToMacroPlan_OnClick.def
@@ -14,8 +14,7 @@
    Body:
    [*
      GlobalOTDTable.SynchronizeDataToMacroPlan( MacroPlan, 
                                                 CheckboxCustomOrder.Checked(),
                                                 CheckboxForecast.Checked()
                                                 CheckboxUnitOfMeasure_MP.Checked()
                                                );
      
      WebMessageBox::Success( "同步成功!", true );
_Main/UI/MacroPlannerWebApp/Views/½Ó¿Ú²âÊÔ.vw
@@ -13,13 +13,25 @@
        {
          mode: 'open'
          rowPosition: 1
          rowSpan: 10
          rowSpan: 16
          columnPosition: 1
          columnSpan: 6
        }
        components
        {
          FormInterfaceTest_PanelInterfaceOptions
          FormInterfaceTest_PanelInterfaceOption1
          {
            sizeRatio: 1
          }
          FormInterfaceTest_PanelInterfaceOption2
          {
            sizeRatio: 1
          }
          FormInterfaceTest_PanelInterfaceOption3
          {
            sizeRatio: 1
          }
          FormInterfaceTest_PanelInterfaceOption4
          {
            sizeRatio: 1
          }
@@ -27,7 +39,7 @@
          {
            sizeRatio: 1
          }
          FormInterfaceTest_PanelInterfaceTest981
          FormInterfaceTest_PanelInterfaceGlobal_BrokerExecuteLog
          {
            sizeRatio: 1
          }
@@ -37,66 +49,85 @@
          FormInterfaceTest_DataSetLevelInterfaceTest
          {
            groupDepth: -1
            column_BrokerName
            sort: 'IsSuccess'
            column_ImageExecutionStatus
            {
              columnId: 'BrokerName'
              dataPath: 'BrokerName'
              columnId: 'ImageExecutionStatus'
              dataPath: 'ImageExecutionStatus'
              dataType: 'string'
              index: 0
              subtotals: ''
              width: 150
              width: 37
            }
            column_ElementTotal
            column_ExecuteUser
            {
              columnId: 'ElementTotal'
              dataPath: 'ElementTotal'
              dataType: 'number'
              columnId: 'ExecuteUser'
              dataPath: 'ExecuteUser'
              dataType: 'string'
              index: 1
              subtotals: ''
              width: 150
            }
            column_ErrorDateTime
            {
              columnId: 'ErrorDateTime'
              dataPath: 'ErrorDateTime'
              dataType: 'string'
              index: 2
              subtotals: ''
              width: 150
            }
            column_ErrorMessage
            {
              columnId: 'ErrorMessage'
              dataPath: 'ErrorMessage'
              dataType: 'string'
              index: 3
              subtotals: ''
              width: 150
            }
            column_ErrorNo
            {
              columnId: 'ErrorNo'
              dataPath: 'ErrorNo'
              dataType: 'number'
              index: 4
              subtotals: ''
              width: 150
              width: 110
            }
            column_IsSuccess
            {
              columnId: 'IsSuccess'
              dataPath: 'IsSuccess'
              dataType: 'boolean'
              index: 2
              subtotals: ''
              width: 96
            }
            column_BrokerName
            {
              columnId: 'BrokerName'
              dataPath: 'BrokerName'
              dataType: 'string'
              index: 3
              subtotals: ''
              width: 229
            }
            column_ElementTotal
            {
              columnId: 'ElementTotal'
              dataPath: 'ElementTotal'
              dataType: 'number'
              index: 4
              subtotals: ''
              width: 87
            }
            column_ErrorDateTime
            {
              columnId: 'ErrorDateTime'
              dataPath: 'ErrorDateTime'
              dataType: 'string'
              index: 5
              subtotals: ''
              width: 150
              width: 121
            }
            column_ErrorMessage
            {
              columnId: 'ErrorMessage'
              dataPath: 'ErrorMessage'
              dataType: 'string'
              index: 6
              subtotals: ''
              width: 86
            }
            column_ErrorNo
            {
              columnId: 'ErrorNo'
              dataPath: 'ErrorNo'
              dataType: 'number'
              index: 7
              subtotals: ''
              width: 86
            }
            column_Name
            {
              columnId: 'Name'
              dataPath: 'Name'
              dataType: 'string'
              index: 6
              index: 8
              subtotals: ''
              width: 150
            }
@@ -105,40 +136,7 @@
              columnId: 'SuccessDateTime'
              dataPath: 'SuccessDateTime'
              dataType: 'string'
              index: 7
              subtotals: ''
              width: 150
            }
          }
        }
      }
      form_FormBusinessType
      {
        title: 'QTIANMA_JITUAN::FormBusinessType'
        shown: true
        componentID: 'QTIANMA_JITUAN::FormBusinessType'
        layout
        {
          mode: 'open'
          rowPosition: 11
          rowSpan: 6
          columnPosition: 1
          columnSpan: 6
        }
        components
        {
          FormBusinessType_ListBusinessType
          {
          }
          FormBusinessType_DataSetLevelBusinessType
          {
            groupDepth: -1
            column_BusinessTypeName
            {
              columnId: 'BusinessTypeName'
              dataPath: 'BusinessTypeName'
              dataType: 'string'
              index: 0
              index: 9
              subtotals: ''
              width: 150
            }
@@ -158,7 +156,54 @@
          columnPosition: 7
          columnSpan: 6
        }
        components: null
        components
        {
          FormShowInterfaceData_MatrixEditorShowInterfaceData
          {
            gridColor: '#c4c4c4'
            totalHeaderWidth: 200
            attributeHeaderWidthRatio: 0.6
            nameHeaderWidthRatio: 0.4
            columnWidth: 100
            horizontalGrid: true
            verticalGrid: true
            backendState
            {
              componentId: 'QTIANMA_JITUAN::FormShowInterfaceData.MatrixEditorShowInterfaceData'
              state
              {
                cells
                {
                  attributes
                  {
                    attribute_Value
                    {
                      type: 'MatrixEditorWebApiCellDataModelInterest'
                      index: 0
                      rowsubtotal: ''
                      columnsubtotal: ''
                      attribute: 'Value'
                    }
                  }
                }
                columns
                {
                  sorting
                  {
                    criteria: "datamember:'ColumnIndex'"
                  }
                }
                rows
                {
                  sorting
                  {
                    criteria: "datamember:'RowNr'"
                  }
                }
              }
            }
          }
        }
      }
    }
    userconfigurableinformation