xiaoding721
2024-08-27 f17217ea2bcfb6a63037a37cb77f208956157e03
Merge branch 'dev' of http://47.101.211.7:10101/r/VWED into dev
已修改12个文件
已添加24个文件
已删除4个文件
1126 ■■■■ 文件已修改
_Main/BL/InfoMessages.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_AOnlineAndMOfflinePlanMS64_InterfaceLoginfo_InterfaceLoginfo_AOnlin.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Relations/Relation_AOnlineAndMOfflinePlanPIR_InterfaceLoginfo_InterfaceLoginfo_AOnline.qbl 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AOnlineAndMOfflinePlanMS64/Attribute_IsActive.qbl 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AOnlineAndMOfflinePlanMS64/Attribute_Product.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AOnlineAndMOfflinePlanMS64/Attribute_Version.qbl 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AOnlineAndMOfflinePlanMS64/DefaultValue_Version.qbl 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AOnlineAndMOfflinePlanMS64/StaticMethod_GenerateData.qbl 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AOnlineAndMOfflinePlanPIR/Attribute_ZPPPSCode.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_AOnlineAndMOfflinePlanPIR/StaticMethod_GenerateData.qbl 72 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_CC_EngineRackCell/StaticMethod_Export.qbl 123 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_MachineLogisticsCostReportCell/StaticMethod_Export.qbl 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuInterface.def 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuInterface_MenuAOnlineAndMOfflinePlanMS64_On.def 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuInterface_MenuIAOnlineAndMOfflinePlanPIR_On.def 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuInterface_MenuIAssemblyOnlinePlanPPPS_OnCli.def 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogCustomerDemandPPAIDS/Method_OnOK.def 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_abpRight.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_cmRight.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_lstRight.def 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_pnlActions.def 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_pnlContent.def 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_pnlDialog.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_pnlLeft#88.def 142 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_pnlRight.def 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Method_New.def 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Method_OnOk.def 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Response_lstRight_OnCheckedChanged#648.def 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Response_lstRight_OnCheckedChanged.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Response_pnlActions_btnApply_OnClick.def 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Response_pnlActions_btnOk_OnClick.def 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Component_pnlContent.def 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Component_pnlLeft.def 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Method_New.def 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Method_OnOk.def 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Response_pnlActions_btnOk_OnClick.def 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCC_EngineRackReport/Component_pHeader.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormCC_EngineRackReport/Response_pHeader_bExport_OnClick.def 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_pHeader.def 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Response_pHeader_bExport_OnClick.def 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/InfoMessages.qbl
@@ -86,6 +86,14 @@
  {
    DefaultText: 'There are duplicate three digit codes present'
  }
  InfoMessage InterfaceDataset_AOnlineAndMOfflinePlanMS64_Name
  {
    DefaultText: 'Assembly online plan + Machine offline plan - MS64'
  }
  InfoMessage InterfaceDataset_AOnlineAndMOfflinePlanPIR_Name
  {
    DefaultText: 'Assembly online plan + Machine offline plan - PIR'
  }
  InfoMessage InterfaceDataset_ActualDailyProductionData_Name
  {
    DefaultText: 'Actual daily production data'
_Main/BL/Relations/Relation_AOnlineAndMOfflinePlanMS64_InterfaceLoginfo_InterfaceLoginfo_AOnlin.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation AOnlineAndMOfflinePlanMS64_InterfaceLoginfo_InterfaceLoginfo_AOnlineAndMOfflinePlanMS64
{
  #keys: '1[415136.0.1044616285]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide InterfaceLoginfo
  {
    #keys: '3[415136.0.1044616287][415136.0.1044616286][415136.0.1044616288]'
    Cardinality: '0to1'
    ObjectDefinition: AOnlineAndMOfflinePlanMS64
    OwningSide: 'Reference'
  }
  RelationSide.RightSide AOnlineAndMOfflinePlanMS64
  {
    #keys: '3[415136.0.1044616290][415136.0.1044616289][415136.0.1044616291]'
    Cardinality: '1toN'
    ObjectDefinition: InterfaceLoginfo
    OwningSide: 'Reference'
  }
}
_Main/BL/Relations/Relation_AOnlineAndMOfflinePlanPIR_InterfaceLoginfo_InterfaceLoginfo_AOnline.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: #root
Relation AOnlineAndMOfflinePlanPIR_InterfaceLoginfo_InterfaceLoginfo_AOnlineAndMOfflinePlanPIR
{
  #keys: '1[415136.0.1044616244]'
  DefaultRelationStrategy
  {
  }
  RelationSide.LeftSide InterfaceLoginfo
  {
    #keys: '3[415136.0.1044616246][415136.0.1044616245][415136.0.1044616247]'
    Cardinality: '0to1'
    ObjectDefinition: AOnlineAndMOfflinePlanPIR
    OwningSide: 'Reference'
  }
  RelationSide.RightSide AOnlineAndMOfflinePlanPIR
  {
    #keys: '3[415136.0.1044616249][415136.0.1044616248][415136.0.1044616250]'
    Cardinality: '1toN'
    ObjectDefinition: InterfaceLoginfo
    OwningSide: 'Reference'
  }
}
_Main/BL/Type_AOnlineAndMOfflinePlanMS64/Attribute_IsActive.qbl
@@ -4,5 +4,5 @@
{
  #keys: '3[415136.0.1039640227][415136.0.1039640226][415136.0.1039640228]'
  Description: '是否激活'
  ValueType: Number
  ValueType: Boolean
}
_Main/BL/Type_AOnlineAndMOfflinePlanMS64/Attribute_Product.qbl
ÎļþÒÑɾ³ý
_Main/BL/Type_AOnlineAndMOfflinePlanMS64/Attribute_Version.qbl
ÎļþÒÑɾ³ý
_Main/BL/Type_AOnlineAndMOfflinePlanMS64/DefaultValue_Version.qbl
ÎļþÒÑɾ³ý
_Main/BL/Type_AOnlineAndMOfflinePlanMS64/StaticMethod_GenerateData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,48 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GenerateData (
  InterfaceDataset owner,
  String werk,
  Date startdate,
  Date enddate,
  String versionfrom,
  String versionto,
  Boolean versionflag,
  const Product_MPs products,
  String executor
)
{
  TextBody:
  [*
    // ç”„兰鸽 Aug-23-2024 (created)
    cdlast                 := maxobject( owner, AOnlineAndMOfflinePlanMS64, cd, cd.StartDate(), cd.EndDate(), cd.Werk() );
    if( not isnull( cdlast ) ){
      loginfo              := cdlast.InterfaceLoginfo();
      if( not loginfo.IsShow() ){
        loginfo.Delete();
      }else{
        loginfo.Last( false );
      }
      owner.AOnlineAndMOfflinePlanMS64( relflush );
    }
    nowdate                := DateTime::ActualTime();
    loginfo                := owner.InterfaceLoginfo( relnew, ExecuteUser := executor
                                                      , Name := Translations::InterfaceDataset_AOnlineAndMOfflinePlanMS64_Name()
                                                      , InterfaceDateTime := nowdate
                                                      , Message := '装配上线计划 + æœºåŠ ä¸‹çº¿è®¡åˆ’ - MS64'
                                                      , IsShow := false
                                                      , Last := true
                                                      , ReturnSuccess := true
                                                      , ReturnMsg := 'Success'
                                                      , Success := true
                                                      );
    ms64                   := owner.AOnlineAndMOfflinePlanMS64( relnew, Werk := werk, StartDate := startdate, EndDate := enddate
                                                                , VersionFrom := versionfrom
                                                                , VersionTo := versionto, IsActive := versionflag );
    loginfo.AOnlineAndMOfflinePlanMS64( relinsert, ms64 );
    traverse( products, Elements, product, product.IsLeaf() ){
      ms64.MS64Data( relnew, Product := product.ID() );
    }
    loginfo.TotalRow( ms64.MS64Data( relsize ) );
  *]
}
_Main/BL/Type_AOnlineAndMOfflinePlanPIR/Attribute_ZPPPSCode.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
Attribute ZPPPSCode
{
  #keys: '3[415136.0.1046220023][415136.0.1046220022][415136.0.1046220024]'
  ValueType: String
}
_Main/BL/Type_AOnlineAndMOfflinePlanPIR/StaticMethod_GenerateData.qbl
@@ -5,26 +5,78 @@
  String werk,
  const MacroPlan macroplan,
  Date startdate,
  Date enddate
  Date enddate,
  String executor
)
{
  TextBody:
  [*
    // ç”„兰鸽 Aug-23-2024 (created)
    owner.AOnlineAndMOfflinePlanPIR( relflush );
    pir                    := owner.AOnlineAndMOfflinePlanPIR( relnew, Werk := werk, Version := macroplan.ScenarioName(), StartDate := startdate, EndDate := enddate );
    totalrows              := 0;
    traverse( macroplan, AssemblyOnlinePlanColumn, column ){
      traverse( column, AssemblyOnlinePlanCell, cell, cell.Value() <> '' and cell.AssemblyOnlinePlanRow().RowNr() = '1' ){
    cdlast                 := maxobject( owner, AOnlineAndMOfflinePlanPIR, cd, cd.StartDate(), cd.EndDate(), cd.Werk() );
    if( not isnull( cdlast ) ){
      loginfo              := cdlast.InterfaceLoginfo();
      if( not loginfo.IsShow() ){
        loginfo.Delete();
      }else{
        loginfo.Last( false );
      }
      owner.AOnlineAndMOfflinePlanPIR( relflush );
    }
    nowdate                := DateTime::ActualTime();
    productids             := construct( Strings );
    loginfo                := owner.InterfaceLoginfo( relnew, ExecuteUser := executor
                                                      , Name := Translations::InterfaceDataset_AOnlineAndMOfflinePlanPIR_Name()
                                                      , InterfaceDateTime := nowdate
                                                      , Message := '装配上线计划 + æœºåŠ ä¸‹çº¿è®¡åˆ’ - PIR'
                                                      , IsShow := false
                                                      , Last := true
                                                      , ReturnSuccess := true
                                                      , ReturnMsg := 'Success'
                                                      , Success := true
                                                      );
    pir                    := owner.AOnlineAndMOfflinePlanPIR( relnew, ZPPPSCode := OS::GenerateGUIDAsString(), Werk := werk, Version := macroplan.ScenarioName(), StartDate := startdate, EndDate := enddate );
    loginfo.AOnlineAndMOfflinePlanPIR( relinsert, pir );
    traverse( macroplan, AssemblyOnlinePlanColumn, column, column.ColumnDate() >= startdate and column.ColumnDate() <= enddate ){
      traverse( column, AssemblyOnlinePlanCell, cell, ( werk = 'All' or cell.AssemblyOnlinePlanRow().ProductionLine().FindString( werk, 0 ) > -1 )
                and cell.AssemblyOnlinePlanRow().RowNr() = '1' ){
        quantityrow        := cell.AssemblyOnlinePlanRow();
        if( not exists( productids, Elements, e, e = quantityrow.ProductID() ) ){
          productids.Add( quantityrow.ProductID() );
        }
    
        pir.PIRData( relnew, Product           := quantityrow.ProductID()
                                           , PlanningDate            := column.ColumnDate()
                                           , PlanningQty             := [Number]cell.Value());
                     , PlanningDate            := column.ColumnDate()
                     , PlanningQty             := [Number]cell.Value());
      }
    }
    totalrows              := totalrows + pir.PIRData( relsize );
    
    //traverse( macroplan, OfflinePlanTable
    traverse( macroplan, OfflinePlanTable, table ){
      traverse( table, OfflinePlanColumn, column, column.ColumnDate() >= startdate and column.ColumnDate() <= enddate ){
        traverse( column, OfflinePlanCell, cell, ( werk = 'All' or cell.OfflinePlanRow().ProductionLine().FindString( werk, 0 ) > -1 )
                  and ( cell.OfflinePlanRow().ProductionLine() <> 'DL_MOMO' or cell.OfflinePlanRow().ProductionLine() <> 'CC_MOMO' ) ){
          row              := cell.OfflinePlanRow();
          if( not exists( productids, Elements, e, e = row.ProductID() ) ){
            productids.Add( row.ProductID() );
          }
          pirdata          := selectobject(  pir, PIRData, pirdata, pirdata.Product() = row.ProductID() and pirdata.PlanningDate() = column.ColumnDate() );
          if( isnull( pir ) ){
            pirdata          := pir.PIRData( relnew, Product         := row.ProductID()
                                             , PlanningDate            := column.ColumnDate()
                                             , PlanningQty             := 0 );
          }
          pirdata.PlanningQty( pirdata.PlanningQty() + [Number]cell.Value() );
        }
      }
    }
    traverse( productids, Elements, e ){
      for( date := startdate.StartOfWeek(); date <= enddate; date := ( date + Duration::Days( 1 ) ).Date() ){
        if( not exists( pir, PIRData, pirdata, pirdata.Product() = e and pirdata.PlanningDate() = date ) ){
          pir.PIRData( relnew, Product         := e
                     , PlanningDate            := date
                     , PlanningQty             := 0 );
        }
      }
    }
    loginfo.TotalRow( pir.PIRData( relsize ) );
  *]
}
_Main/BL/Type_CC_EngineRackCell/StaticMethod_Export.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,123 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Export (
  MacroPlan macroPlan
) as BinaryValue
{
  TextBody:
  [*
    xmlDOMI      := XMLDOMImplementation::Create();
    xmlDOM       := xmlDOMI.CreateDocumentFromString( '<?xml version="1.0" encoding="UTF-16"?><table><name>Sheet1</name></table>' );
    tableElement := xmlDOM.GetElementByTagName( "table", 0 );
    // ç¬¬ä¸€åˆ—(名称)
    cerrs       := selectsortedset( macroPlan, CC_EngineRackRow, tempCERR, true, tempCERR.Name() );
    firstColumn := xmlDOM.CreateElement( "column" );
    firstName   := xmlDOM.CreateElement( "name" );
    firstType   := xmlDOM.CreateElement( "type" );
    firstName.TextContent( "" );
    firstType.TextContent( "String" );
    firstColumn.AppendChild( firstName );
    firstColumn.AppendChild( firstType );
    traverse ( cerrs, Elements, cerr ) {
      firstCell := xmlDOM.CreateElement( "cell" );
      firstCell.SetAttribute( "value", cerr.Name() );
      firstColumn.AppendChild( firstCell );
      for ( i := 0; i < 9; i++ ) {
        firstCell := xmlDOM.CreateElement( "cell" );
        firstCell.SetAttribute( "value", "" );
        firstColumn.AppendChild( firstCell );
      }
    }
    tableElement.AppendChild( firstColumn );
    // ç¬¬äºŒåˆ—
    attrs        := construct( Strings ); attrs.Add( "料架空数量" ); attrs.Add( "空料架数量" ); attrs.Add( "外租库入库费用" ); attrs.Add( "外租库出库费用" ); attrs.Add( "外租库运输费用" );
                                          attrs.Add( "外租库仓储费用" ); attrs.Add( "清洗费用" ); attrs.Add( "预计总费用" ); attrs.Add( "系数" ); attrs.Add( "总费用" );
    secondColumn := xmlDOM.CreateElement( "column" );
    secondName   := xmlDOM.CreateElement( "name" );
    secondType   := xmlDOM.CreateElement( "type" );
    secondName.TextContent( "" );
    secondType.TextContent( "String" );
    secondColumn.AppendChild( secondName );
    secondColumn.AppendChild( secondType );
    for ( i := 0; i < cerrs.Size(); i++ ) {
      traverse ( attrs, Elements, attr ) {
        secondCell := xmlDOM.CreateElement( "cell" );
        secondCell.SetAttribute( "value", attr );
        secondColumn.AppendChild( secondCell );
      }
    }
    tableElement.AppendChild( secondColumn );
    // æ—¶é—´åˆ—
    cercs := selectsortedset( macroPlan, CC_EngineRackColumn, tempCERC, true, tempCERC.StartDate() );
    traverse ( cercs, Elements, cerc ) {
      cellColumn := xmlDOM.CreateElement( "column" );
      cellName   := xmlDOM.CreateElement( "name" );
      cellType   := xmlDOM.CreateElement( "type" );
      cellName.TextContent( cerc.StartDate().Format( "M2/D2/Y" ) );
      cellType.TextContent( "Number" );
      cellColumn.AppendChild( cellName );
      cellColumn.AppendChild( cellType );
      cells := selectsortedset( cerc, CC_EngineRackCell, tempCELL, true, tempCELL.CC_EngineRackRow().Name() );
      traverse ( cells, Elements, c ) {
        cell := xmlDOM.CreateElement( "cell" );
        cell.SetAttribute( "value", [String]c.TotalQuantityOfMaterialRacks() ); // æ–™æž¶æ€»æ•°é‡
        cellColumn.AppendChild( cell );
        cell := xmlDOM.CreateElement( "cell" );
        cell.SetAttribute( "value", [String]c.NumberOfEmptyShelves() ); // ç©ºæ–™æž¶æ•°é‡
        cellColumn.AppendChild( cell );
        cell := xmlDOM.CreateElement( "cell" );
        cell.SetAttribute( "value", [String]c.StorageFeesForRentedWarehouses() ); // å¤–租库入库费用
        cellColumn.AppendChild( cell );
        cell := xmlDOM.CreateElement( "cell" );
        cell.SetAttribute( "value", [String]c.OutboundExpensesForRentedWarehouses() ); // å¤–租库出库费用
        cellColumn.AppendChild( cell );
        cell := xmlDOM.CreateElement( "cell" );
        cell.SetAttribute( "value", [String]c.ExternalRentalWarehouseTransportationCosts() ); // å¤–租库运输费用
        cellColumn.AppendChild( cell );
        cell := xmlDOM.CreateElement( "cell" );
        cell.SetAttribute( "value", [String]c.RentalWarehouseStorageFees() ); // å¤–租库仓储费用
        cellColumn.AppendChild( cell );
        cell := xmlDOM.CreateElement( "cell" );
        cell.SetAttribute( "value", [String]c.CleaningCost() ); // æ¸…洗费用
        cellColumn.AppendChild( cell );
        cell := xmlDOM.CreateElement( "cell" );
        cell.SetAttribute( "value", [String]c.EstimatedTotalCost() ); // é¢„计总费用
        cellColumn.AppendChild( cell );
        cell := xmlDOM.CreateElement( "cell" );
        cell.SetAttribute( "value", [String]c.Coefficient() ); // ç³»æ•°
        cellColumn.AppendChild( cell );
        cell := xmlDOM.CreateElement( "cell" );
        cell.SetAttribute( "value", [String]c.TotalCost() ); // æ€»è´¹ç”¨
        cellColumn.AppendChild( cell );
      }
      tableElement.AppendChild( cellColumn );
    }
    xmlString := xmlDOMI.CreateSerializer().WriteToString( xmlDOM )
    //info( xmlString );
    tableGroupHandle := TableGroupHandle::Create( "Sheet1" );
    tableHandle      := TableHandle::ImportXML( BinaryValue::Construct( xmlString ) );
    tableGroupHandle.Add( tableHandle );
    binaryData := XLS::SaveTableGroupToBinaryData( tableGroupHandle, true );
    return binaryData.AsBinaryValue();
  *]
}
_Main/BL/Type_MachineLogisticsCostReportCell/StaticMethod_Export.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Export (
  MachineLogisticsCostReportRows mlcrrs
)
{
}
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuInterface.def
@@ -64,9 +64,10 @@
      BaseType: 'WebMenu'
      Properties:
      [
        Description: 'Customer demand(PPA + IDS)'
        Image: 'FLAG_AMBER'
        Taborder: 6
        Title: 'Customer demand(PPA + IDS)'
        Title: '客户需求(PPA+IDS)-PPPS'
      ]
    }
    Component mInterfaceProductionSchedulingPlanPush
@@ -79,6 +80,39 @@
        Title: '生产排程计划数据推送接口测试'
      ]
    }
    Component MenuIAssemblyOnlinePlanPPPS
    {
      #keys: '[415136.0.1044250211]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'DELIVERY_AMBER'
        Taborder: 7
        Title: '装配上线计划-PPPS'
      ]
    }
    Component MenuIAOnlineAndMOfflinePlanPIR
    {
      #keys: '[415136.0.1044250378]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'DELIVERY_BLUE'
        Taborder: 8
        Title: '装配上线计划+机加下线计划-PIR'
      ]
    }
    Component MenuAOnlineAndMOfflinePlanMS64
    {
      #keys: '[415136.0.1044210780]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'DELIVERY_CYAN'
        Taborder: 9
        Title: '装配上线计划+机加下线计划-MS64'
      ]
    }
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuInterface_MenuAOnlineAndMOfflinePlanMS64_On.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
Quintiq file version 2.0
#parent: ContextMenuInterface/MenuAOnlineAndMOfflinePlanMS64
Response OnClick () id:Response_MacroPlanner_ContextMenuInterface_MenuAOnlineAndMOfflinePlanMS64_OnClick
{
  #keys: '[415136.0.1044250720]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebMenu_OnClick'
  Precondition:
  [*
    return not isnull( MacroPlan ) and not isnull( InterfaceDataset );
  *]
  QuillAction
  {
    Body:
    [*
      dlg := construct( DialogZEDPPSMS64 );
      dlg.New();
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuInterface_MenuIAOnlineAndMOfflinePlanPIR_On.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
Quintiq file version 2.0
#parent: ContextMenuInterface/MenuIAOnlineAndMOfflinePlanPIR
Response OnClick () id:Response_MacroPlanner_ContextMenuInterface_MenuIAOnlineAndMOfflinePlanPIR_OnClick
{
  #keys: '[415136.0.1044210948]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebMenu_OnClick'
  Precondition:
  [*
    return not isnull( MacroPlan ) and not isnull( InterfaceDataset );
  *]
  QuillAction
  {
    Body:
    [*
      dlg := construct( DialogZEDPPSPIR );
      //dlg.Title( Translations::InterfaceDataset_AssemblyOnlinePlanPPPSPush_Name() );
      dlg.New();
      //dlg.New( Translations::InterfaceDataset_AssemblyOnlinePlanPPPSPush_Name() );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuInterface_MenuIAssemblyOnlinePlanPPPS_OnCli.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
Quintiq file version 2.0
#parent: ContextMenuInterface/MenuIAssemblyOnlinePlanPPPS
Response OnClick () id:Response_MacroPlanner_ContextMenuInterface_MenuIAssemblyOnlinePlanPPPS_OnClick
{
  #keys: '[415136.0.1044210507]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebMenu_OnClick'
  Precondition:
  [*
    return not isnull( MacroPlan ) and not isnull( InterfaceDataset );
  *]
  QuillAction
  {
    Body:
    [*
      dlg := construct( DialogCustomerDemandPPAIDS );
      dlg.Title( Translations::InterfaceDataset_AssemblyOnlinePlanPPPSPush_Name() );
      dlg.New( Translations::InterfaceDataset_AssemblyOnlinePlanPPPSPush_Name() );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_DialogCustomerDemandPPAIDS/Method_OnOK.def
@@ -8,9 +8,15 @@
    // On ok
    Form.ApplyChanges();
    
    if( efInterfacename.Text() = Translations::InterfaceDataset_CustomerDemandPPAIDS_Name() ){
      CustomerDemandPPAIDS::GenerateData( MacroPlan, InterfaceDataset, QuintiqUser::CurrentUser().DisplayName(), ifexpr( rbgVersionFlag.BoundValue() = "true", true, false ) );
    currentuser  := QuintiqUser::CurrentUser().DisplayName();
    isactive     := ifexpr( rbgVersionFlag.BoundValue() = "true", true, false );
    if( efInterfacename.Text() = Translations::InterfaceDataset_CustomerDemandPPAIDS_Name() ){//客户需求
      CustomerDemandPPAIDS::GenerateData( MacroPlan, InterfaceDataset, currentuser, isactive );
    }
    if( efInterfacename.Text() = Translations::InterfaceDataset_AssemblyOnlinePlanPPPSPush_Name()){//装配上线
      AssemblyOnlinePlanPPPSPush::GenerateData( MacroPlan, InterfaceDataset, currentuser, isactive );
    }
    
    Form.Close();
  *]
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_abpRight.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component abpRight
{
  #keys: '[415136.0.1044211333]'
  BaseType: 'listActionBarPage'
  Properties:
  [
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_cmRight.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
Quintiq file version 2.0
Component cmRight
{
  #keys: '[415136.0.1044211335]'
  BaseType: 'listContextMenu'
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_lstRight.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,57 @@
Quintiq file version 2.0
Component lstRight
{
  #keys: '[415136.0.1044211331]'
  BaseType: 'WebList'
  Children:
  [
    Component deRight
    {
      #keys: '[415136.0.1044211332]'
      BaseType: 'WebDataExtractor'
      Properties:
      [
        DataType: 'external[MacroPlan]'
        Source: 'MacroPlan'
        Taborder: 0
        Transformation: 'Product_MP'
      ]
    }
    #child: abpRight
    Component dslRight
    {
      #keys: '[415136.0.1044211334]'
      BaseType: 'WebDataSetLevel'
      Children:
      [
        #child: cmRight
        Component dslRightChild
        {
          #keys: '[415136.0.1044211336]'
          BaseType: 'WebDataSetLevel'
          Properties:
          [
            Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ID","title":"ID","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"ID"}}]'
            ContextMenu: 'cmRight'
            RelationFromParent: 'Child'
            RelationRepeating: 'Child'
            Taborder: 1
          ]
        }
      ]
      Properties:
      [
        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ID","title":"ID","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"ID"}}]'
        ContextMenu: 'cmRight'
        SortCriteria: 'ID'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    CheckboxBehavior: 'include children'
    SelectionCheckboxes: true
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_pnlActions.def
@@ -5,16 +5,6 @@
  BaseType: 'WebPanel'
  Children:
  [
    Component btnApply
    {
      #keys: '[415136.0.1033612184]'
      BaseType: 'WebButton'
      Properties:
      [
        Label: 'Apply'
        Taborder: 0
      ]
    }
    Component btnOk
    {
      #keys: '[415136.0.1033612186]'
@@ -22,7 +12,7 @@
      Properties:
      [
        Label: 'OK'
        Taborder: 1
        Taborder: 0
      ]
    }
    Component btnCancel
@@ -32,7 +22,7 @@
      Properties:
      [
        Label: 'Cancel'
        Taborder: 2
        Taborder: 1
      ]
    }
  ]
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_pnlContent.def
@@ -5,95 +5,7 @@
  BaseType: 'WebPanel'
  Children:
  [
    Component efFactory id:efFactory_891
    {
      #keys: '[415136.0.1033612218]'
      BaseType: 'WebEditField'
      Properties:
      [
        Label: '工厂代码'
        Taborder: 0
      ]
    }
    Component dsStartDate id:dsStartDate_57
    {
      #keys: '[415136.0.1033612231]'
      BaseType: 'WebDateSelector'
      Properties:
      [
        Label: '开始日期'
        Taborder: 1
      ]
    }
    Component dsEndDate id:dsEndDate_963
    {
      #keys: '[415136.0.1033612244]'
      BaseType: 'WebDateSelector'
      Properties:
      [
        Label: '结束日期'
        Taborder: 2
      ]
    }
    Component efOriginMacroPlan
    {
      #keys: '[415136.0.1033612274]'
      BaseType: 'WebEditField'
      Properties:
      [
        Label: '从版本'
        Taborder: 3
      ]
    }
    Component efDestinationMacroPlan
    {
      #keys: '[415136.0.1033612302]'
      BaseType: 'WebEditField'
      Properties:
      [
        Label: '到版本'
        Taborder: 4
      ]
    }
    Component cbActiveVersion
    {
      #keys: '[415136.0.1033612322]'
      BaseType: 'WebCheckbox'
      Properties:
      [
        Checked: true
        Label: '是否激活版本'
        Taborder: 5
      ]
    }
    Component ddlProduct
    {
      #keys: '[415136.0.1034848130]'
      BaseType: 'WebDropDownList'
      Databinding: 'Product_MP'
      Children:
      [
        Component deContent
        {
          #keys: '[415136.0.1034848132]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'MacroPlan'
            FixedFilter: 'object.IsLeaf()'
            Source: 'MacroPlan'
            Taborder: 0
            Transformation: 'Product_MP'
          ]
        }
      ]
      Properties:
      [
        DisplayField: 'Name'
        Label: '物料号'
        Taborder: 6
      ]
    }
    #child: pnlDialog
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_pnlDialog.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
Component pnlDialog
{
  #keys: '[415136.0.1044211250]'
  BaseType: 'WebPanel'
  Children:
  [
    #child: pnlLeft_88
    #child: pnlRight
  ]
  Properties:
  [
    Orientation: 'horizontal'
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_pnlLeft#88.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,142 @@
Quintiq file version 2.0
Component pnlLeft id:pnlLeft_88
{
  #keys: '[415136.0.1044211286]'
  BaseType: 'WebPanel'
  Children:
  [
    Component efFactory
    {
      #keys: '[415136.0.1044211287]'
      BaseType: 'WebEditField'
      Properties:
      [
        Label: '工厂代码'
        Taborder: 0
        Visible: false
      ]
    }
    Component dsStartDate
    {
      #keys: '[415136.0.1044211288]'
      BaseType: 'WebDateSelector'
      Properties:
      [
        Label: '开始日期'
        Taborder: 2
      ]
    }
    Component dsEndDate
    {
      #keys: '[415136.0.1044211289]'
      BaseType: 'WebDateSelector'
      Properties:
      [
        Label: '结束日期'
        Taborder: 3
      ]
    }
    Component cbActiveVersion
    {
      #keys: '[415136.0.1044211292]'
      BaseType: 'WebCheckbox'
      Properties:
      [
        Checked: true
        Label: '是否激活版本'
        Taborder: 8
      ]
    }
    Component ddlOriginMacroPlan
    {
      #keys: '[415136.0.1043064647]'
      BaseType: 'WebDropDownList'
      Databinding: 'ScenarioMP'
      Children:
      [
        Component deMacroPlan id:deMacroPlan_640
        {
          #keys: '[415136.0.1043064648]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'ScenarioManager'
            Source: 'ScenarioManager'
            Taborder: 0
            Transformation: 'ScenarioMP'
          ]
        }
      ]
      Properties:
      [
        DisplayField: 'Name'
        Label: '从版本'
        Taborder: 4
        Visible: false
      ]
    }
    Component ddlDestinationMacroPlan
    {
      #keys: '[415136.0.1043064790]'
      BaseType: 'WebDropDownList'
      Databinding: 'ScenarioMP'
      Children:
      [
        Component deMacroPlan950
        {
          #keys: '[415136.0.1043064791]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'ScenarioManager'
            Source: 'ScenarioManager'
            Taborder: 0
            Transformation: 'ScenarioMP'
          ]
        }
      ]
      Properties:
      [
        DisplayField: 'Name'
        Label: '到版本'
        Taborder: 6
        Visible: false
      ]
    }
    Component efVersionFrom
    {
      #keys: '[415136.0.1047640864]'
      BaseType: 'WebEditField'
      Properties:
      [
        Label: '从版本'
        Taborder: 5
      ]
    }
    Component efVersionTo
    {
      #keys: '[415136.0.1047640919]'
      BaseType: 'WebEditField'
      Properties:
      [
        Label: '到版本'
        Taborder: 7
      ]
    }
    Component ddslFactory
    {
      #keys: '[415136.0.1047641023]'
      BaseType: 'WebDropDownStringList'
      Properties:
      [
        Label: '工厂代码'
        Strings: 'All;DL;CC'
        Taborder: 1
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Component_pnlRight.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,25 @@
Quintiq file version 2.0
Component pnlRight
{
  #keys: '[415136.0.1044211330]'
  BaseType: 'WebPanel'
  Children:
  [
    Component dhProducts
    {
      #keys: '[415136.0.1044211337]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[Product_MP]*'
      Properties:
      [
        Taborder: 0
      ]
    }
    #child: lstRight
  ]
  Properties:
  [
    Taborder: 1
    Title: '产品'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Method_New.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
Quintiq file version 2.0
#parent: #root
Method New () id:Method_DialogZEDPPSMS64_New
{
  #keys: '[415136.0.1047779759]'
  Body:
  [*
    // To create a new product
    dsStartDate.Date( Date::ActualDate() );
    dsEndDate.Date( Date::ActualDate() );
    ApplicationMacroPlanner.ShowFormModal( this );
  *]
}
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Method_OnOk.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
Quintiq file version 2.0
#parent: #root
Method OnOk () id:Method_DialogZEDPPSMS64_OnOk
{
  #keys: '[415136.0.1043064582]'
  Body:
  [*
    Form.ApplyChanges();
    //componentmds    := ApplicationScope.ComponentMDS();
    //mdsinstanceF    := select( componentmds, ComponentMDSKinds.ComponentMDSInstances, m, m.MDSID().MDSKey() = ddlOriginMacroPlan.Data().DatasetMDSID() );
    //handleF         := mdsinstanceF.GetMDSHandle()
    //macroplanF      := handleF.AsMacroPlan();
    //
    //mdsinstanceT    := select( componentmds, ComponentMDSKinds.ComponentMDSInstances, m, m.MDSID().MDSKey() = ddlDestinationMacroPlan.Data().DatasetMDSID() );
    //handleT         := mdsinstanceT.GetMDSHandle()
    //macroplanT      := handleT.AsMacroPlan();
    currentuser     := QuintiqUser::CurrentUser().DisplayName();
    AOnlineAndMOfflinePlanMS64::GenerateData( InterfaceDataset, efFactory.Text(), dsStartDate.Date(), dsEndDate.Date(), efVersionFrom.Text(), efVersionTo.Text(), cbActiveVersion.Checked(), dhProducts.Data(), currentuser );
    Form.Close();
  *]
}
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Response_lstRight_OnCheckedChanged#648.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
Quintiq file version 2.0
#parent: lstRight
Response OnCheckedChanged (
  structured[Product_MP] checkeditems
) id:Response_lstRight_OnCheckedChanged_648
{
  #keys: '[415136.0.1044211326]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnCheckedChanged'
  QuillAction
  {
    Body:
    [*
      products := checkeditems.Copy();
      dhProducts.Data( &products );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Response_lstRight_OnCheckedChanged.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: lstRight
Response OnCheckedChanged () id:Response_lstRight_OnCheckedChanged
{
  #keys: '[415136.0.1044211327]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebList_OnCheckedChanged'
  QuillAction
  {
    Body:
    [*
      dhProducts.Data().Flush();
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Response_pnlActions_btnApply_OnClick.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Response_pnlActions_btnOk_OnClick.def
@@ -4,13 +4,12 @@
{
  #keys: '[415136.0.1033612191]'
  DefinitionID: 'Responsedef_WebButton_OnClick'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      Form.ApplyChanges();
      Form.Close();
      Form.OnOk();
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Component_pnlContent.def
@@ -5,46 +5,7 @@
  BaseType: 'WebPanel'
  Children:
  [
    Component efFactory
    {
      #keys: '[415136.0.1033611885]'
      BaseType: 'WebEditField'
      Properties:
      [
        Label: '工厂代码'
        Taborder: 0
      ]
    }
    Component efMacroPlan
    {
      #keys: '[415136.0.1033611906]'
      BaseType: 'WebEditField'
      Properties:
      [
        Label: '版本'
        Taborder: 1
      ]
    }
    Component dsStartDate
    {
      #keys: '[415136.0.1033611945]'
      BaseType: 'WebDateSelector'
      Properties:
      [
        Label: '计划开始时间'
        Taborder: 2
      ]
    }
    Component dsEndDate
    {
      #keys: '[415136.0.1033611978]'
      BaseType: 'WebDateSelector'
      Properties:
      [
        Label: '计划结束时间'
        Taborder: 3
      ]
    }
    #child: pnlLeft
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Component_pnlLeft.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,82 @@
Quintiq file version 2.0
Component pnlLeft
{
  #keys: '[415136.0.1043000500]'
  BaseType: 'WebPanel'
  Children:
  [
    Component efFactory id:efFactory_672
    {
      #keys: '[415136.0.1043000546]'
      BaseType: 'WebEditField'
      Properties:
      [
        Label: '工厂代码'
        Taborder: 0
        Visible: false
      ]
    }
    Component dsStartDate id:dsStartDate_60
    {
      #keys: '[415136.0.1043000586]'
      BaseType: 'WebDateSelector'
      Properties:
      [
        Label: '计划开始时间'
        Taborder: 3
      ]
    }
    Component dsEndDate id:dsEndDate_236
    {
      #keys: '[415136.0.1043000606]'
      BaseType: 'WebDateSelector'
      Properties:
      [
        Label: '计划结束时间'
        Taborder: 4
      ]
    }
    Component ddlMacroPlan
    {
      #keys: '[415136.0.1043063334]'
      BaseType: 'WebDropDownList'
      Databinding: 'ScenarioMP'
      Children:
      [
        Component deMacroPlan
        {
          #keys: '[415136.0.1043063336]'
          BaseType: 'WebDataExtractor'
          Properties:
          [
            DataType: 'ScenarioManager'
            Source: 'ScenarioManager'
            Taborder: 0
            Transformation: 'ScenarioMP'
          ]
        }
      ]
      Properties:
      [
        DisplayField: 'Name'
        Label: '版本'
        Taborder: 2
      ]
    }
    Component ddslFactory id:ddslFactory_424
    {
      #keys: '[415136.0.1047641312]'
      BaseType: 'WebDropDownStringList'
      Properties:
      [
        Label: '工厂代码'
        Strings: 'All;DL;CC'
        Taborder: 1
      ]
    }
  ]
  Properties:
  [
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Method_New.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
Quintiq file version 2.0
#parent: #root
Method New () id:Method_DialogZEDPPSPIR_New
{
  #keys: '[415136.0.1047779645]'
  Body:
  [*
    // To create a new product
    dsStartDate.Date( Date::ActualDate() );
    dsEndDate.Date( Date::ActualDate() );
    ApplicationMacroPlanner.ShowFormModal( this );
  *]
}
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Method_OnOk.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: #root
Method OnOk () id:Method_DialogZEDPPSPIR_OnOk
{
  #keys: '[415136.0.1044120442]'
  Body:
  [*
    Form.ApplyChanges();
    componentmds    := ApplicationScope.ComponentMDS();
    mdsinstance     := select( componentmds, ComponentMDSKinds.ComponentMDSInstances, m, m.MDSID().MDSKey() = ddlMacroPlan.Data().DatasetMDSID() );
    handle          := mdsinstance.GetMDSHandle()
    macroplan       := handle.AsMacroPlan();
    AOnlineAndMOfflinePlanPIR::GenerateData( InterfaceDataset, efFactory.Text(), macroplan, dsStartDate.Date(), dsEndDate.Date(), QuintiqUser::CurrentUser().DisplayName() );
    Form.Close();
  *]
}
_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Response_pnlActions_btnOk_OnClick.def
@@ -4,13 +4,12 @@
{
  #keys: '[415136.0.1033611826]'
  DefinitionID: 'Responsedef_WebButton_OnClick'
  GroupServerCalls: true
  QuillAction
  {
    Body:
    [*
      Form.ApplyChanges();
      Form.Close();
      Form.OnOk()
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormCC_EngineRackReport/Component_pHeader.def
@@ -15,6 +15,16 @@
        Taborder: 0
      ]
    }
    Component bExport
    {
      #keys: '[415754.0.151340681]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'EXPORT1'
        Taborder: 1
      ]
    }
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormCC_EngineRackReport/Response_pHeader_bExport_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
Quintiq file version 2.0
#parent: pHeader/bExport
Response OnClick () id:Response_pHeader_bExport_OnClick
{
  #keys: '[415754.0.151312042]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  Precondition:
  [*
    return not isnull( MacroPlan );
  *]
  QuillAction
  {
    Body:
    [*
      binaryValue := CC_EngineRackCell::Export( MacroPlan );
      Application.Download( "长春发动机料架报表.xlsx", binaryValue.AsBinaryData() );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Component_pHeader.def
@@ -26,14 +26,13 @@
        Taborder: 1
      ]
    }
    Component Button655
    Component bExport
    {
      #keys: '[413988.0.1467011030]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'PIG'
        Label: 'Button655'
        Image: 'EXPORT1'
        Taborder: 2
      ]
    }
_Main/UI/MacroPlannerWebApp/Component_FormMachineLogisticsCostReport/Response_pHeader_bExport_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
Quintiq file version 2.0
#parent: pHeader/bExport
Response OnClick () id:Response_pHeader_bExport_OnClick
{
  #keys: '[413988.0.1503619865]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  Precondition:
  [*
    return not isnull( MacroPlan );
  *]
  QuillAction
  {
    Body:
    [*
      mlcrrs := selectset( MacroPlan, MachineLogisticsCostReportRow, tempMLCRR, true );
      MachineLogisticsCostReportCell::Export( mlcrrs );
    *]
    GroupServerCalls: false
  }
}