hongjli
2023-10-25 cb2628a2dd3039f9f3f1582bc599b70bd74dbe08
数据分发增加日志优化
已修改18个文件
已添加21个文件
已删除14个文件
1043 ■■■■ 文件已修改
_Main/BL/Type_DataInterfaceLog/StaticMethod_Create.qbl 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_DataInterfaceLog/StaticMethod_OnException.qbl 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_DataInterfaceLog/StaticMethod_Success.qbl 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/StaticMethod_DeleteAllCategoryData.qbl 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/StaticMethod_DeleteAllCategoryDataStream.qbl 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/StaticMethod_DeleteAllMappingData.qbl 27 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_GlobalDTOTable/StaticMethod_DeleteAllMappingDataStream.qbl 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_InventorySupplyCategory/StaticMethod_Create.qbl 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_InventorySupplyCategory/StaticMethod_CreateStream.qbl 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MAPISPIPCategory/StaticMethod_Create.qbl 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_MAPISPIPCategory/StaticMethod_CreateStream.qbl 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_ProductCategory/StaticMethod_Create.qbl 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_ProductCategory/StaticMethod_CreateStream.qbl 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_ProductInLineCategory/StaticMethod_Create.qbl 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_ProductInLineCategory/StaticMethod_CreateStream.qbl 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_StockingPointCostCategory/StaticMethod_Create.qbl 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_Global_StockingPointCostCategory/StaticMethod_CreateStream.qbl 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Component_ListDataInterfaceLog.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Component_Panel1.def 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Component_Panel3.def 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Component_Panel4#2.def 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Component_PanelDataInterfaceLog.def 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_Panel1_Button1_OnClick#673.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_Panel1_ButtonGenerateProductCategory_OnClick#902.def 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_Panel3_Button2_OnClick#836.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_Panel3_Button3_OnClick#918.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_Panel3_Button4_OnClick#249.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_Panel4_Button5_OnClick#605.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_Panel4_ButtonDeleteMappingData_OnClick#608.def 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_PanelDataInterfaceLog_ButtonDeleteMappingData_OnClick.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/_ROOT_Component_FormDataInterfaceLog.def 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_ListHistoricalSalesOrders.def 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_listActionBarPageHistoricalSalesOrders.def 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_listContextMenuHistoricalSalesOrders.def 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuDelete_OnClick.def 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuEdit_OnClick.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuNew_OnClick.def 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/_ROOT_Component_FormHistoricalSalesOrders.def 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceGlobal_BrokerExecuteLog#981.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceOption1.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceOption2.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceOption3.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceOption4.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceTest.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_Button1_OnClick.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_Button2_OnClick.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_Button3_OnClick.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_Button4_OnClick.def 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_Button5_OnClick.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_ButtonGenerateProductCategory_OnClick.def 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_CheckSelectAll_OnChanged.def 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_PanelInterfaceTest_ButtonPullInterfaceDataToIntermediateTable_OnCli.def 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/_ROOT_Component_FormInterfaceTest.def 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_DataInterfaceLog/StaticMethod_Create.qbl
@@ -2,14 +2,20 @@
#parent: #root
StaticMethod Create (
  GlobalOTDLog globalOTDLog,
  String executeUser
)
  String executeUser,
  String message
) as String
{
  TextBody:
  [*
    globalOTDLog.DataDistributionLog( relnew,
                                      ExecuteStatus  := "Running",
                                      ExecuteUser    := executeUser
                                     );
    dataInterfaceLog := globalOTDLog.DataInterfaceLog( relnew,
                                                       ID            := OS::GenerateGUIDAsString(),
                                                       ExecuteStatus := "Running",
                                                       ExecuteUser   := executeUser,
                                                       Message       := message,
                                                       CreateDate    := DateTime::ActualTime()
                                                      );
    return dataInterfaceLog.ID();
  *]
}
_Main/BL/Type_DataInterfaceLog/StaticMethod_OnException.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: #root
StaticMethod OnException (
  Exception e,
  String dataInterfaceLogID
)
{
  TextBody:
  [*
    options := DatasetFindOptions::Construct( "GlobalOTDLog" ).IncludeOffline( true );
    mdskey := DatasetController::FindUnique( options );
    MDSGlobalOTDLog::Root( mdskey ) -> DataInterfaceLog::OnError( e.ErrorNumber(), e.Message(), dataInterfaceLogID );
  *]
}
_Main/BL/Type_DataInterfaceLog/StaticMethod_Success.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Success (
  GlobalOTDTable globalOTDTable,
  String dataInterfaceLogID
)
{
  TextBody:
  [*
    options := DatasetFindOptions::Construct( "GlobalOTDLog" ).IncludeOffline( true );
    mdskey := DatasetController::FindUnique( options );
    MDSGlobalOTDLog::Root( mdskey ) -> DataInterfaceLog::OnSuccess( dataInterfaceLogID );
  *]
}
_Main/BL/Type_GlobalDTOTable/StaticMethod_DeleteAllCategoryData.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
Quintiq file version 2.0
#parent: #root
StaticMethod DeleteAllCategoryData (
  GlobalOTDTable globalOTDTable,
  String dataInterfaceLogID
)
{
  TextBody:
  [*
    globalOTDTable -> GlobalOTDTable::DeleteAllCategoryDataStream()
                   -> DataInterfaceLog::Success( dataInterfaceLogID )
                   -> Exception()
                   -> DataInterfaceLog::OnException( dataInterfaceLogID );
  *]
}
_Main/BL/Type_GlobalDTOTable/StaticMethod_DeleteAllCategoryDataStream.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: #root
StaticMethod DeleteAllCategoryDataStream (
  GlobalOTDTable globalOTDTable
) as stream[GlobalOTDTable]
{
  TextBody:
  [*
    globalOTDTable.Global_ProductCategory( relflush );
    globalOTDTable.Global_ProductInLineCategory( relflush );
    globalOTDTable.Global_InventorySupplyCategory( relflush );
    globalOTDTable.Global_StockingPointCostCategory( relflush );
    globalOTDTable.Global_MAPISPIPCategory( relflush );
    return emit( globalOTDTable );
  *]
}
_Main/BL/Type_GlobalDTOTable/StaticMethod_DeleteAllMappingData.qbl
@@ -1,30 +1,15 @@
Quintiq file version 2.0
#parent: #root
StaticMethod DeleteAllMappingData (
  GlobalOTDTable globalOTDTable
  GlobalOTDTable globalOTDTable,
  String dataInterfaceLogID
)
{
  TextBody:
  [*
    globalOTDTable.Global_MappingCustomOrder( relflush );
    globalOTDTable.Global_MappingForecast( relflush );
    globalOTDTable.Global_MappingUnitOfMeasure_MP( relflush );
    globalOTDTable.Global_MappingSalesSegment_MP( relflush );
    globalOTDTable.Global_MappingProduct_MP( relflush );
    globalOTDTable.Global_MappingConversionFactor( relflush );
    globalOTDTable.Global_MappingOperation( relflush );
    globalOTDTable.Global_MappingOperationBOM( relflush );
    globalOTDTable.Global_MappingProductInLane( relflush );
    globalOTDTable.Global_MappingActualProductInStockingPointInPeriod( relflush );
    globalOTDTable.Global_MappingInventorySupply( relflush );
    globalOTDTable.Global_MappingStockingPointCost( relflush );
    globalOTDTable.Global_MappingOperationCost( relflush );
    globalOTDTable.Global_MappingDOI_DSI( relflush );
    globalOTDTable.Global_MappingCustomerGrade( relflush );
    globalOTDTable.Global_MappingStockingPoint_MP( relflush );
    globalOTDTable.Global_MappingCurrency_MP( relflush );
    globalOTDTable.Global_MappingCurrencyRate_MP( relflush );
    globalOTDTable.Global_MappingLane( relflush );
    globalOTDTable.Global_MappingLaneLeg( relflush );
    globalOTDTable -> GlobalOTDTable::DeleteAllMappingDataStream()
                   -> DataInterfaceLog::Success( dataInterfaceLogID )
                   -> Exception()
                   -> DataInterfaceLog::OnException( dataInterfaceLogID );
  *]
}
_Main/BL/Type_GlobalDTOTable/StaticMethod_DeleteAllMappingDataStream.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,32 @@
Quintiq file version 2.0
#parent: #root
StaticMethod DeleteAllMappingDataStream (
  GlobalOTDTable globalOTDTable
) as stream[GlobalOTDTable]
{
  TextBody:
  [*
    globalOTDTable.Global_MappingCustomOrder( relflush );
    globalOTDTable.Global_MappingForecast( relflush );
    globalOTDTable.Global_MappingUnitOfMeasure_MP( relflush );
    globalOTDTable.Global_MappingSalesSegment_MP( relflush );
    globalOTDTable.Global_MappingProduct_MP( relflush );
    globalOTDTable.Global_MappingConversionFactor( relflush );
    globalOTDTable.Global_MappingOperation( relflush );
    globalOTDTable.Global_MappingOperationBOM( relflush );
    globalOTDTable.Global_MappingProductInLane( relflush );
    globalOTDTable.Global_MappingActualProductInStockingPointInPeriod( relflush );
    globalOTDTable.Global_MappingInventorySupply( relflush );
    globalOTDTable.Global_MappingStockingPointCost( relflush );
    globalOTDTable.Global_MappingOperationCost( relflush );
    globalOTDTable.Global_MappingDOI_DSI( relflush );
    globalOTDTable.Global_MappingCustomerGrade( relflush );
    globalOTDTable.Global_MappingStockingPoint_MP( relflush );
    globalOTDTable.Global_MappingCurrency_MP( relflush );
    globalOTDTable.Global_MappingCurrencyRate_MP( relflush );
    globalOTDTable.Global_MappingLane( relflush );
    globalOTDTable.Global_MappingLaneLeg( relflush );
    return emit( globalOTDTable );
  *]
}
_Main/BL/Type_Global_InventorySupplyCategory/StaticMethod_Create.qbl
@@ -1,18 +1,15 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Create (
  GlobalOTDTable globalOTDTable
  GlobalOTDTable globalOTDTable,
  String dataInterfaceLogID
)
{
  TextBody:
  [*
    globalOTDTable.Global_InventorySupplyCategory( relflush );
    productIDs := selectuniquevalues( globalOTDTable, Global_MappingInventorySupply,
                                      tempGMIS, true, tempGMIS.ProductID() );
    traverse ( productIDs, Elements, id ) {
      globalOTDTable.Global_InventorySupplyCategory( relnew, ProductID := id );
    }
    globalOTDTable -> Global_InventorySupplyCategory::CreateStream()
                   -> DataInterfaceLog::Success( dataInterfaceLogID )
                   -> Exception()
                   -> DataInterfaceLog::OnException( dataInterfaceLogID );
  *]
}
_Main/BL/Type_Global_InventorySupplyCategory/StaticMethod_CreateStream.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateStream (
  GlobalOTDTable globalOTDTable
) as stream[GlobalOTDTable]
{
  TextBody:
  [*
    globalOTDTable.Global_InventorySupplyCategory( relflush );
    productIDs := selectuniquevalues( globalOTDTable, Global_MappingInventorySupply,
                                      tempGMIS, true, tempGMIS.ProductID() );
    traverse ( productIDs, Elements, id ) {
      globalOTDTable.Global_InventorySupplyCategory( relnew, ProductID := id );
    }
    return emit( globalOTDTable );
  *]
}
_Main/BL/Type_Global_MAPISPIPCategory/StaticMethod_Create.qbl
@@ -1,18 +1,15 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Create (
  GlobalOTDTable globalOTDTable
  GlobalOTDTable globalOTDTable,
  String dataInterfaceLogID
)
{
  TextBody:
  [*
    globalOTDTable.Global_MAPISPIPCategory( relflush );
    productIDs := selectuniquevalues( globalOTDTable, Global_MappingActualProductInStockingPointInPeriod,
                                      tempGMAPISPIP, true, tempGMAPISPIP.ProductID() );
    traverse ( productIDs, Elements, id ) {
      globalOTDTable.Global_MAPISPIPCategory( relnew, ProductID := id );
    }
    globalOTDTable -> Global_MAPISPIPCategory::CreateStream()
                   -> DataInterfaceLog::Success( dataInterfaceLogID )
                   -> Exception()
                   -> DataInterfaceLog::OnException( dataInterfaceLogID );
  *]
}
_Main/BL/Type_Global_MAPISPIPCategory/StaticMethod_CreateStream.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateStream (
  GlobalOTDTable globalOTDTable
) as stream[GlobalOTDTable]
{
  TextBody:
  [*
    globalOTDTable.Global_MAPISPIPCategory( relflush );
    productIDs := selectuniquevalues( globalOTDTable, Global_MappingActualProductInStockingPointInPeriod,
                                      tempGMAPISPIP, true, tempGMAPISPIP.ProductID() );
    traverse ( productIDs, Elements, id ) {
      globalOTDTable.Global_MAPISPIPCategory( relnew, ProductID := id );
    }
    return emit( globalOTDTable );
  *]
}
_Main/BL/Type_Global_ProductCategory/StaticMethod_Create.qbl
@@ -1,17 +1,15 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Create (
  GlobalOTDTable globalOTDTable
  GlobalOTDTable globalOTDTable,
  String dataInterfaceLogID
)
{
  TextBody:
  [*
    globalOTDTable.Global_ProductCategory( relflush );
    businessTypes := selectuniquevalues( globalOTDTable, Global_MappingProduct_MP, tempGMPMP, true, tempGMPMP.BusinessType() );
    traverse ( businessTypes, Elements, bt ) {
      globalOTDTable.Global_ProductCategory( relnew, BusinessTypeName := bt );
    }
    globalOTDTable -> Global_ProductCategory::CreateStream()
                   -> DataInterfaceLog::Success( dataInterfaceLogID )
                   -> Exception()
                   -> DataInterfaceLog::OnException( dataInterfaceLogID );
  *]
}
_Main/BL/Type_Global_ProductCategory/StaticMethod_CreateStream.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateStream (
  GlobalOTDTable globalOTDTable
) as stream[GlobalOTDTable]
{
  TextBody:
  [*
    globalOTDTable.Global_ProductCategory( relflush );
    businessTypes := selectuniquevalues( globalOTDTable, Global_MappingProduct_MP, tempGMPMP, true, tempGMPMP.BusinessType() );
    traverse ( businessTypes, Elements, bt ) {
      globalOTDTable.Global_ProductCategory( relnew, BusinessTypeName := bt );
    }
    return emit( globalOTDTable );
  *]
}
_Main/BL/Type_Global_ProductInLineCategory/StaticMethod_Create.qbl
@@ -1,17 +1,15 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Create (
  GlobalOTDTable globalOTDTable
  GlobalOTDTable globalOTDTable,
  String dataInterfaceLogID
)
{
  TextBody:
  [*
    globalOTDTable.Global_ProductInLineCategory( relflush );
    productIDs := selectuniquevalues( globalOTDTable, Global_MappingProductInLane, tempGMPIL, true, tempGMPIL.ProductID() );
    traverse ( productIDs, Elements, id ) {
      globalOTDTable.Global_ProductInLineCategory( relnew, ProductID := id );
    }
    globalOTDTable -> Global_ProductInLineCategory::CreateStream()
                   -> DataInterfaceLog::Success( dataInterfaceLogID )
                   -> Exception()
                   -> DataInterfaceLog::OnException( dataInterfaceLogID );
  *]
}
_Main/BL/Type_Global_ProductInLineCategory/StaticMethod_CreateStream.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateStream (
  GlobalOTDTable globalOTDTable
) as stream[GlobalOTDTable]
{
  TextBody:
  [*
    globalOTDTable.Global_ProductInLineCategory( relflush );
    productIDs := selectuniquevalues( globalOTDTable, Global_MappingProductInLane, tempGMPIL, true, tempGMPIL.ProductID() );
    traverse ( productIDs, Elements, id ) {
      globalOTDTable.Global_ProductInLineCategory( relnew, ProductID := id );
    }
    return emit( globalOTDTable );
  *]
}
_Main/BL/Type_Global_StockingPointCostCategory/StaticMethod_Create.qbl
@@ -1,17 +1,15 @@
Quintiq file version 2.0
#parent: #root
StaticMethod Create (
  GlobalOTDTable globalOTDTable
  GlobalOTDTable globalOTDTable,
  String dataInterfaceLogID
)
{
  TextBody:
  [*
    globalOTDTable.Global_StockingPointCostCategory( relflush );
    productIDs := selectuniquevalues( globalOTDTable, Global_MappingStockingPointCost, tempGMSPC, true, tempGMSPC.ProductID() );
    traverse ( productIDs, Elements, id ) {
      globalOTDTable.Global_StockingPointCostCategory( relnew, ProductID := id );
    }
    globalOTDTable -> Global_StockingPointCostCategory::CreateStream()
                   -> DataInterfaceLog::Success( dataInterfaceLogID )
                   -> Exception()
                   -> DataInterfaceLog::OnException( dataInterfaceLogID );
  *]
}
_Main/BL/Type_Global_StockingPointCostCategory/StaticMethod_CreateStream.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
Quintiq file version 2.0
#parent: #root
StaticMethod CreateStream (
  GlobalOTDTable globalOTDTable
) as stream[GlobalOTDTable]
{
  TextBody:
  [*
    globalOTDTable.Global_StockingPointCostCategory( relflush );
    productIDs := selectuniquevalues( globalOTDTable, Global_MappingStockingPointCost, tempGMSPC, true, tempGMSPC.ProductID() );
    traverse ( productIDs, Elements, id ) {
      globalOTDTable.Global_StockingPointCostCategory( relnew, ProductID := id );
    }
    return emit( globalOTDTable );
  *]
}
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Component_ListDataInterfaceLog.def
@@ -36,7 +36,7 @@
  ]
  Properties:
  [
    Taborder: 1
    Taborder: 3
  ]
  ResponseDefinitions:
  [
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Component_Panel1.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,37 @@
Quintiq file version 2.0
Component Panel1
{
  #keys: '[414702.1.241718154]'
  BaseType: 'WebPanel'
  Children:
  [
    Component ButtonGenerateProductCategory id:ButtonGenerateProductCategory_943
    {
      #keys: '[414702.1.245048887]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'TELEPHONE2'
        Label: '根据事业部生成产品分类'
        Taborder: 0
      ]
    }
    Component Button1 id:Button1_838
    {
      #keys: '[414702.1.247625600]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'BRUSH2'
        Label: '根据产品ID生成ProductInLine分类'
        Taborder: 1
      ]
    }
  ]
  Properties:
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 0
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Component_Panel3.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,48 @@
Quintiq file version 2.0
Component Panel3
{
  #keys: '[414702.1.247664260]'
  BaseType: 'WebPanel'
  Children:
  [
    Component Button2 id:Button2_925
    {
      #keys: '[414702.1.242541029]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'INDUSTRIAL_ROBOT'
        Label: '根据产品ID生成StockingPoingCost分类'
        Taborder: 0
      ]
    }
    Component Button3 id:Button3_414
    {
      #keys: '[414702.1.247559425]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'BANANA'
        Label: '根据产品ID生成MAPISPIP分类'
        Taborder: 1
      ]
    }
    Component Button4 id:Button4_433
    {
      #keys: '[414702.1.247870242]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'BEER_GLASS'
        Label: '根据产品ID生成InventorySupply分类'
        Taborder: 2
      ]
    }
  ]
  Properties:
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Component_Panel4#2.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,37 @@
Quintiq file version 2.0
Component Panel4
{
  #keys: '[414702.1.246784986]'
  BaseType: 'WebPanel'
  Children:
  [
    Component Button5 id:Button5_56
    {
      #keys: '[414702.1.247191910]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'BROOM'
        Label: '清空分类'
        Taborder: 1
      ]
    }
    Component ButtonDeleteMappingData id:ButtonDeleteMappingData_928
    {
      #keys: '[414702.1.247703528]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'GARBAGE'
        Label: '删除所有中间表数据'
        Taborder: 0
      ]
    }
  ]
  Properties:
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 2
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Component_PanelDataInterfaceLog.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_Panel1_Button1_OnClick#673.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: Panel1/Button1_838
Response OnClick () id:Response_FormInterfaceTest_Button1_OnClick_673
{
  #keys: '[414702.1.247625599]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  QuillAction
  {
    Body:
    [*
      WebMessageBox::Information( "任务开始执行,仅限一人操作!", true );
      id := DataInterfaceLog::Create( GlobalOTDLog, guard( ApplicationMacroPlanner.GetUserName(), "账号异常" ), "生成产品在车道分类" );
      Global_ProductInLineCategory::Create( GlobalOTDTable, id );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_Panel1_ButtonGenerateProductCategory_OnClick#902.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
Quintiq file version 2.0
#parent: Panel1/ButtonGenerateProductCategory_943
Response OnClick () id:Response_Panel1_ButtonGenerateProductCategory_OnClick_902
{
  #keys: '[414702.1.245048886]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  Precondition:
  [*
    return not isnull( GlobalOTDTable );
  *]
  QuillAction
  {
    Body:
    [*
      WebMessageBox::Information( "任务开始执行,仅限一人操作!", true );
      id := DataInterfaceLog::Create( GlobalOTDLog, guard( ApplicationMacroPlanner.GetUserName(), "账号异常" ), "生成产品分类" );
      Global_ProductCategory::Create( GlobalOTDTable, id );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_Panel3_Button2_OnClick#836.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: Panel3/Button2_925
Response OnClick () id:Response_FormInterfaceTest_Button2_OnClick_836
{
  #keys: '[414702.1.242541028]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  QuillAction
  {
    Body:
    [*
      WebMessageBox::Information( "任务开始执行,仅限一人操作!", true );
      id := DataInterfaceLog::Create( GlobalOTDLog, guard( ApplicationMacroPlanner.GetUserName(), "账号异常" ), "生成库存成本分类" );
      Global_StockingPointCostCategory::Create( GlobalOTDTable, id );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_Panel3_Button3_OnClick#918.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: Panel3/Button3_414
Response OnClick () id:Response_FormInterfaceTest_Button3_OnClick_918
{
  #keys: '[414702.1.247559424]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  QuillAction
  {
    Body:
    [*
      WebMessageBox::Information( "任务开始执行,仅限一人操作!", true );
      id := DataInterfaceLog::Create( GlobalOTDLog, guard( ApplicationMacroPlanner.GetUserName(), "账号异常" ), "生成实际库存分类" );
      Global_MAPISPIPCategory::Create( GlobalOTDTable, id );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_Panel3_Button4_OnClick#249.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: Panel3/Button4_433
Response OnClick () id:Response_FormInterfaceTest_Button4_OnClick_249
{
  #keys: '[414702.1.247870241]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  QuillAction
  {
    Body:
    [*
      WebMessageBox::Information( "任务开始执行,仅限一人操作!", true );
      id := DataInterfaceLog::Create( GlobalOTDLog, guard( ApplicationMacroPlanner.GetUserName(), "账号异常" ), "生成外部库存分类" );
      Global_InventorySupplyCategory::Create( GlobalOTDTable, id );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_Panel4_Button5_OnClick#605.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
Quintiq file version 2.0
#parent: Panel4/Button5_56
Response OnClick () id:Response_Panel4_Button5_OnClick_605
{
  #keys: '[414702.1.247191909]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  QuillAction
  {
    Body:
    [*
      WebMessageBox::Information( "任务开始执行,仅限一人操作!", true )
      id := DataInterfaceLog::Create( GlobalOTDLog, guard( ApplicationMacroPlanner.GetUserName(), "账号异常" ), "清空分类数据" );
      GlobalOTDTable::DeleteAllCategoryData( GlobalOTDTable, id );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_Panel4_ButtonDeleteMappingData_OnClick#608.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,30 @@
Quintiq file version 2.0
#parent: Panel4/ButtonDeleteMappingData_928
Response OnClick () id:Response_Panel1_ButtonDeleteMappingData_OnClick_608
{
  #keys: '[414702.1.247703527]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebButton_OnClick'
  Precondition:
  [*
    isExists := exists( GlobalOTDLog, DataInterfaceLog, tempDIL, tempDIL.Message() = "清空中间表数据" and tempDIL.ExecuteStatus() = "Running" );
    if ( isExists ) {
      feedback := "已有正在运行的任务!";
    }
    return not isnull( GlobalOTDTable ) and not isnull( GlobalOTDLog ) and not isExists;
  *]
  QuillAction
  {
    Body:
    [*
      WebMessageBox::Information( "任务开始执行,仅限一人操作!", true )
      id := DataInterfaceLog::Create( GlobalOTDLog, guard( ApplicationMacroPlanner.GetUserName(), "账号异常" ), "删除所有中间表数据" );
      GlobalOTDTable::DeleteAllMappingData( GlobalOTDTable, id );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/Response_PanelDataInterfaceLog_ButtonDeleteMappingData_OnClick.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormDataInterfaceLog/_ROOT_Component_FormDataInterfaceLog.def
@@ -8,7 +8,9 @@
  Children:
  [
    #child: ListDataInterfaceLog
    #child: PanelDataInterfaceLog
    #child: Panel1
    #child: Panel4
    #child: Panel3
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_ListHistoricalSalesOrders.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_listActionBarPageHistoricalSalesOrders.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Component_listContextMenuHistoricalSalesOrders.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuDelete_OnClick.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuEdit_OnClick.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/Response_ListHistoricalSalesOrders_MenuNew_OnClick.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormHistoricalSalesOrders/_ROOT_Component_FormHistoricalSalesOrders.def
@@ -5,10 +5,6 @@
{
  #keys: '[414382.0.386940324]'
  BaseType: 'WebForm'
  Children:
  [
    #child: ListHistoricalSalesOrders
  ]
  Properties:
  [
    Title: '外卖CELL历史订单'
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceGlobal_BrokerExecuteLog#981.def
@@ -9,6 +9,6 @@
  ]
  Properties:
  [
    Taborder: 5
    Taborder: 6
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceOption1.def
@@ -60,6 +60,6 @@
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 0
    Taborder: 1
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceOption2.def
@@ -60,6 +60,6 @@
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 1
    Taborder: 2
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceOption3.def
@@ -60,6 +60,6 @@
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 2
    Taborder: 3
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceOption4.def
@@ -60,6 +60,6 @@
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 3
    Taborder: 4
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Component_PanelInterfaceTest.def
@@ -32,6 +32,6 @@
  [
    FixedSize: true
    Orientation: 'horizontal'
    Taborder: 4
    Taborder: 5
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_Button1_OnClick.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_Button2_OnClick.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_Button3_OnClick.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_Button4_OnClick.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_Button5_OnClick.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_ButtonGenerateProductCategory_OnClick.def
ÎļþÒÑɾ³ý
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_CheckSelectAll_OnChanged.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,35 @@
Quintiq file version 2.0
#parent: CheckSelectAll
Response OnChanged () id:Response_FormInterfaceTest_CheckSelectAll_OnChanged
{
  #keys: '[414702.1.245944876]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebCheckbox_OnChanged'
  QuillAction
  {
    Body:
    [*
      CheckboxCustomOrder.Checked( this.Checked() );
      CheckboxForecast.Checked( this.Checked() );
      CheckboxUnitOfMeasure_MP.Checked( this.Checked() );
      CheckboxSalesSegment_MP.Checked( this.Checked() );
      CheckboxProduct_MP.Checked( this.Checked() );
      CheckboxConversionFactor.Checked( this.Checked() );
      CheckboxOperation.Checked( this.Checked() );
      CheckboxOperationBOM.Checked( this.Checked() );
      CheckboxProductInLane.Checked( this.Checked() );
      CheckboxAIPISPIP.Checked( this.Checked() );
      CheckboxInventorySupply.Checked( this.Checked() );
      CheckboxStockingPointCost.Checked( this.Checked() );
      CheckboxOperationCost.Checked( this.Checked() );
      CheckboxDOI_DSI.Checked( this.Checked() );
      CheckboxCustomerGrade.Checked( this.Checked() );
      CheckboxStockingPoint_MP.Checked( this.Checked() );
      CheckboxCurrency_MP.Checked( this.Checked() );
      CheckboxCurrencyRate_MP.Checked( this.Checked() );
      CheckboxLane.Checked( this.Checked() );
      CheckboxLaneLeg.Checked( this.Checked() );
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_PanelInterfaceTest_ButtonPullInterfaceDataToIntermediateTable_OnCli.def
@@ -19,6 +19,8 @@
  {
    Body:
    [*
      WebMessageBox::Information( "数据开始拉取中!(仅限一人操作)", true );
      GlobalOTDTable.SynchronizationAllMappingBrokerAndAPIByOption( ApplicationMacroPlanner.GetUserName(),
                                                                    CheckboxCustomOrder.Checked(),
                                                                    CheckboxForecast.Checked(),
@@ -40,8 +42,6 @@
                                                                    CheckboxCurrencyRate_MP.Checked(),
                                                                    CheckboxLane.Checked(),
                                                                    CheckboxLaneLeg.Checked() );
      WebMessageBox::Information( "数据开始拉取中!(仅限一人操作)", true );
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/_ROOT_Component_FormInterfaceTest.def
@@ -13,70 +13,14 @@
    #child: PanelInterfaceOption3
    #child: PanelInterfaceOption2
    #child: PanelInterfaceOption1
    Component ButtonGenerateProductCategory
    Component CheckSelectAll
    {
      #keys: '[414702.1.220980872]'
      BaseType: 'WebButton'
      #keys: '[414702.1.245944647]'
      BaseType: 'WebCheckbox'
      Properties:
      [
        Image: 'TELEPHONE2'
        Label: '根据事业部生成产品分类'
        Taborder: 6
      ]
    }
    Component Button1
    {
      #keys: '[414702.1.225920560]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'BRUSH2'
        Label: '根据产品ID生成ProductInLine分类'
        Taborder: 7
      ]
    }
    Component Button2
    {
      #keys: '[414702.1.225920577]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'INDUSTRIAL_ROBOT'
        Label: '根据产品ID生成StockingPoingCost分类'
        Taborder: 8
      ]
    }
    Component Button3
    {
      #keys: '[414702.1.226882098]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'BANANA'
        Label: '根据产品ID生成MAPISPIP分类'
        Taborder: 9
      ]
    }
    Component Button4
    {
      #keys: '[414702.1.226891739]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'BEER_GLASS'
        Label: '根据产品ID生成InventorySupply分类'
        Taborder: 10
      ]
    }
    Component Button5
    {
      #keys: '[414702.1.228751221]'
      BaseType: 'WebButton'
      Properties:
      [
        Image: 'BROOM'
        Label: '清空分类'
        Taborder: 11
        Label: '全选'
        Taborder: 0
      ]
    }
  ]