From fa3ad1cf772791f453cf09582fdf2292b9f8468c Mon Sep 17 00:00:00 2001 From: lazhen <17772815105@139.com> Date: 星期五, 22 十一月 2024 16:11:21 +0800 Subject: [PATCH] Merge branch 'dev' of http://47.101.211.7:10101/r/VWED into dev-zlg --- _Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_matrixEditorActionBarPageArchiveShiftPlan.def | 10 _Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/_ROOT_Component_FormTRCForecast.def | 13 _Main/UI/MacroPlannerWebApp/Views/TRCForecastArchive.vw | 226 +++++++++++++++ _Main/UI/MacroPlannerWebApp/Component_FormForecasts/Component_ListSalesDemands.def | 4 _Main/UI/MacroPlannerWebApp/Component_DialogCreateEditForecast/Method_SplitUsingCurve.def | 20 + _Main/UI/MacroPlannerWebApp/Component_FormForecasts/Component_listContextMenuSD.def | 28 + _Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_pContent.def | 14 _Main/UI/MacroPlannerWebApp/Component_FormForecasts/Response_MacroPlanner_ListSalesDemands_MenuSplitUsingCurve_OnClick.def | 19 + _Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_PanelArchiveShiftPlan812.def | 14 _Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/_ROOT_Component_FormArchiveShiftPlan.def | 18 + _Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_pHeader.def | 27 + _Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_listContextMenuTRCForecast#1.def | 10 _Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupArchiveReport_bTRCForecastArchive_OnClic.def | 16 + _Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_MatrixEditorArchiveShiftPlan.def | 98 ++++++ _Main/UI/MacroPlannerWebApp/Views/ArchiveShiftPlan.vw | 233 +++++++++++++++ _Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupArchiveReport.def | 22 + _Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupArchiveReport_ButtonArchiveReport_OnClic.def | 17 + _Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Response_pHeader_bArchive_OnClick.def | 22 + _Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_matrixeditorContextMenuArchiveShiftPlan.def | 10 _Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_listActionBarPageTRCForecast#1.def | 10 _Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_PanelArchiveShiftPlan.def | 11 _Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_ListTRCForecast#715.def | 41 ++ 22 files changed, 883 insertions(+), 0 deletions(-) diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupArchiveReport.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupArchiveReport.def index 269a374..6d2c76c 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupArchiveReport.def +++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupArchiveReport.def @@ -79,9 +79,31 @@ [ Image: 'RSS' Label: '瀹為檯姣忔棩鐢熶骇璁″垝' + Taborder: 7 + ] + } + Component ButtonArchiveReport + { + #keys: '[414996.1.245462991]' + BaseType: 'WebButton' + Properties: + [ + Image: 'KEYBOARD_KEY_SHIFT' + Label: 'Archive shift plan' Taborder: 6 ] } + Component bTRCForecastArchive + { + #keys: '[413988.1.153623307]' + BaseType: 'WebButton' + Properties: + [ + Image: 'CLOUD' + Label: 'TRC 闇�姹傚瓨妗�' + Taborder: 8 + ] + } ] Properties: [ diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupArchiveReport_ButtonArchiveReport_OnClic.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupArchiveReport_ButtonArchiveReport_OnClic.def new file mode 100644 index 0000000..e8d262c --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupArchiveReport_ButtonArchiveReport_OnClic.def @@ -0,0 +1,17 @@ +Quintiq file version 2.0 +#parent: ActionBarGroupArchiveReport/ButtonArchiveReport +Response OnClick () id:Response_MacroPlanner_ActionBarGroupArchiveReport_ButtonArchiveReport_OnClick +{ + #keys: '[414996.1.245463078]' + CanBindMultiple: false + DefinitionID: 'Responsedef_WebButton_OnClick' + QuillAction + { + Body: + [* + // Open view + ApplicationMacroPlanner.OpenView( 'ArchiveShiftPlan', this ); + *] + GroupServerCalls: false + } +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupArchiveReport_bTRCForecastArchive_OnClic.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupArchiveReport_bTRCForecastArchive_OnClic.def new file mode 100644 index 0000000..e6cfa16 --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupArchiveReport_bTRCForecastArchive_OnClic.def @@ -0,0 +1,16 @@ +Quintiq file version 2.0 +#parent: ActionBarGroupArchiveReport/bTRCForecastArchive +Response OnClick () id:Response_MacroPlanner_ActionBarGroupArchiveReport_bTRCForecastArchive_OnClick +{ + #keys: '[413988.1.153703587]' + CanBindMultiple: false + DefinitionID: 'Responsedef_WebButton_OnClick' + QuillAction + { + Body: + [* + ApplicationMacroPlanner.OpenView( 'TRCForecastArchive', this ); + *] + GroupServerCalls: false + } +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditForecast/Method_SplitUsingCurve.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditForecast/Method_SplitUsingCurve.def new file mode 100644 index 0000000..3235720 --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditForecast/Method_SplitUsingCurve.def @@ -0,0 +1,20 @@ +Quintiq file version 2.0 +#parent: #root +Method SplitUsingCurve () id:Method_DialogCreateEditForecast_SplitUsingCurve +{ + #keys: '[414996.1.244251122]' + Body: + [* + // New Sales demand + owner := select( DataHolderProduct.Data(), Elements, e, not e.IsSystem() ); + data := owner.SalesDemand( relshadow, Forecast, ID := "" ); // Temporary set ID to empty, will be set during OnOK + + PanelCurve.Visible( true ); + bSplitUsingCurve.Visible( true ); + btnOk.Visible( false ); + + DataHolderDialogData.Data( &data ); + Form.SetDefaultValue(); + ApplicationMacroPlanner.ShowFormModal( Form ); + *] +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_MatrixEditorArchiveShiftPlan.def b/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_MatrixEditorArchiveShiftPlan.def new file mode 100644 index 0000000..68a79ae --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_MatrixEditorArchiveShiftPlan.def @@ -0,0 +1,98 @@ +Quintiq file version 2.0 +Component MatrixEditorArchiveShiftPlan +{ + #keys: '[414996.1.242621343]' + BaseType: 'WebMatrixEditor' + Children: + [ + Component MatrixEditorCellArchiveShiftPlan + { + #keys: '[414996.1.242621344]' + BaseType: 'WebMatrixEditorCell' + Children: + [ + Component DataExtractorArchiveShiftPlan + { + #keys: '[414996.1.242621345]' + BaseType: 'WebDataExtractor' + Properties: + [ + DataType: 'Archive' + Source: 'Archive' + Taborder: 0 + Transformation: 'ArchiveShiftPlanRow.ArchiveShiftPlanCell' + ] + } + ] + Properties: + [ + Attributes: 'EventType;IsHoliday;Outcome;Remark;MacroPlanName' + Column: 'ArchiveShiftPlanColumn' + Row: 'ArchiveShiftPlanRow' + Taborder: 0 + ] + } + Component MatrixEditorRowsArchiveShiftPlan + { + #keys: '[414996.1.242621348]' + BaseType: 'WebMatrixEditorHeaderLevel' + Children: + [ + Component DataExtractor830 + { + #keys: '[414996.1.242621349]' + BaseType: 'WebDataExtractor' + Properties: + [ + DataType: 'Archive' + Source: 'Archive' + Taborder: 0 + Transformation: 'ArchiveShiftPlanRow' + ] + } + ] + Properties: + [ + Legend: 'UnitID' + SortCriteria: 'UnitID' + Taborder: 1 + ] + } + Component MatrixEditorColumnsArchiveShiftPlan + { + #keys: '[414996.1.242621352]' + BaseType: 'WebMatrixEditorHeaderLevel' + Children: + [ + Component DataExtractor576 + { + #keys: '[414996.1.242621353]' + BaseType: 'WebDataExtractor' + Properties: + [ + DataType: 'Archive' + Source: 'Archive' + Taborder: 0 + Transformation: 'ArchiveShiftPlanColumn' + ] + } + ] + Properties: + [ + Legend: 'StartDate' + SortCriteria: 'StartDate' + Taborder: 2 + ] + } + #child: matrixEditorActionBarPageArchiveShiftPlan + #child: matrixeditorContextMenuArchiveShiftPlan + ] + Properties: + [ + AllowMultipleAttributes: true + Columns: 'MatrixEditorColumnsArchiveShiftPlan' + ContextMenu: 'matrixeditorContextMenuArchiveShiftPlan' + Rows: 'MatrixEditorRowsArchiveShiftPlan' + Taborder: 0 + ] +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_PanelArchiveShiftPlan.def b/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_PanelArchiveShiftPlan.def new file mode 100644 index 0000000..13df5cc --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_PanelArchiveShiftPlan.def @@ -0,0 +1,11 @@ +Quintiq file version 2.0 +Component PanelArchiveShiftPlan +{ + #keys: '[414996.1.242621266]' + BaseType: 'WebPanel' + Properties: + [ + FixedSize: true + Taborder: 0 + ] +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_PanelArchiveShiftPlan812.def b/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_PanelArchiveShiftPlan812.def new file mode 100644 index 0000000..fa097a3 --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_PanelArchiveShiftPlan812.def @@ -0,0 +1,14 @@ +Quintiq file version 2.0 +Component PanelArchiveShiftPlan812 +{ + #keys: '[414996.1.242621284]' + BaseType: 'WebPanel' + Children: + [ + #child: MatrixEditorArchiveShiftPlan + ] + Properties: + [ + Taborder: 1 + ] +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_matrixEditorActionBarPageArchiveShiftPlan.def b/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_matrixEditorActionBarPageArchiveShiftPlan.def new file mode 100644 index 0000000..b46f52d --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_matrixEditorActionBarPageArchiveShiftPlan.def @@ -0,0 +1,10 @@ +Quintiq file version 2.0 +Component matrixEditorActionBarPageArchiveShiftPlan +{ + #keys: '[414996.1.242621356]' + BaseType: 'matrixEditorActionBarPage' + Properties: + [ + Taborder: 3 + ] +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_matrixeditorContextMenuArchiveShiftPlan.def b/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_matrixeditorContextMenuArchiveShiftPlan.def new file mode 100644 index 0000000..c06b193 --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/Component_matrixeditorContextMenuArchiveShiftPlan.def @@ -0,0 +1,10 @@ +Quintiq file version 2.0 +Component matrixeditorContextMenuArchiveShiftPlan +{ + #keys: '[414996.1.242621359]' + BaseType: 'matrixeditorContextMenu' + Properties: + [ + Taborder: 4 + ] +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/_ROOT_Component_FormArchiveShiftPlan.def b/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/_ROOT_Component_FormArchiveShiftPlan.def new file mode 100644 index 0000000..1ec637a --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_FormArchiveShiftPlan/_ROOT_Component_FormArchiveShiftPlan.def @@ -0,0 +1,18 @@ +Quintiq file version 2.0 +#root +#parent: MacroPlannerWebApp +OrphanComponent FormArchiveShiftPlan +{ + #keys: '[414996.1.242621193]' + BaseType: 'WebForm' + Children: + [ + #child: PanelArchiveShiftPlan + #child: PanelArchiveShiftPlan812 + ] + Properties: + [ + Image: 'KEYBOARD_KEY_SHIFT' + Title: 'Archive Shift Plan' + ] +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormForecasts/Component_ListSalesDemands.def b/_Main/UI/MacroPlannerWebApp/Component_FormForecasts/Component_ListSalesDemands.def index 5fc2143..1411531 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormForecasts/Component_ListSalesDemands.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormForecasts/Component_ListSalesDemands.def @@ -5,6 +5,10 @@ [ Component DataSetLevelSalesDemands #extension { + Children: + [ + #child: listContextMenuSD + ] Properties: [ Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeAllConstraint","columnid":"All constraints","title":"All constraints","subtotals":"","tooltip":"","width":1,"display":"shown"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ImgNotLinkedToPeriod","title":"ImgNotLinkedToPeriod","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"ImgNotLinkedToPeriod"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ImgIsPostponed","title":"ImgIsPostponed","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"ImgIsPostponed"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StockingPoint_MP.ID","title":"Stocking point","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"StockingPoint_MP.ID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SalesSegment_MP.Name","title":"Sales segment","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"SalesSegment_MP.Name"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Product_MP.ID","title":"Product","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"Product_MP.ID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"Start","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"EndDate","title":"End","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"EndDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"UnitOfMeasure_MP.Name","title":"Quantity UoM","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"UnitOfMeasure_MP.Name"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"Original Qty","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"NettedQuantity","title":"Quantity","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"NettedQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"FulfilledQuantity","title":"Fulfilled","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"FulfilledQuantity"}},{"attribute":{"classtype":"WebApiDefinitionAttributeChart","columnid":"Fulfillment Illustration","title":"Fulfillment","subtotals":"","tooltip":"","width":-1,"display":"shown","type":"stackbar","relative":true,"attributes":[{"name":"Fulfilled demand","color":"rgb(87,184,71)","expression":{"classtype":"WebApiDefinitionAttributeExpression","columnid":"Fulfillment","title":"Fulfilled demand","subtotals":"","tooltip":"","width":-1,"display":"shown","expressionbody":"object.FulfilledQuantity().Round(2)"}},{"name":"Unfulfilled demand","color":"rgb(232,123,0)","expression":{"classtype":"WebApiDefinitionAttributeExpression","columnid":"Unfulfilled demand","title":"Unfulfilled demand","subtotals":"","tooltip":"","width":-1,"display":"shown","expressionbody":"maxvalue(object.NettedQuantity()-object.FulfilledQuantity(),0.0).Round(2)"}}]}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Price","title":"Price","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Price"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PriceUoM","title":"PriceUoM","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"PriceUoM"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Priority.Name","title":"Priority","subtotals":"","tooltip":"","width":-1,"display":"shown","attribute":"Priority.Name"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"DemandUncertaintyPercentage","title":"Uncertainty","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"DemandUncertaintyPercentage"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Origin","title":"Origin","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Origin"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Differnce","title":"Differnce","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Differnce"}}]' diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormForecasts/Component_listContextMenuSD.def b/_Main/UI/MacroPlannerWebApp/Component_FormForecasts/Component_listContextMenuSD.def new file mode 100644 index 0000000..a228488 --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_FormForecasts/Component_listContextMenuSD.def @@ -0,0 +1,28 @@ +Quintiq file version 2.0 +Component listContextMenuSD #extension +{ + Children: + [ + Component MenuSeparator2 + { + #keys: '[414996.1.244250822]' + BaseType: 'WebMenu' + Properties: + [ + Separator: true + Taborder: 10 + ] + } + Component MenuSplitUsingCurve + { + #keys: '[414996.1.244250869]' + BaseType: 'WebMenu' + Properties: + [ + Image: 'GRAPH_FORK' + Taborder: 11 + Title: 'Split using curve' + ] + } + ] +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormForecasts/Response_MacroPlanner_ListSalesDemands_MenuSplitUsingCurve_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormForecasts/Response_MacroPlanner_ListSalesDemands_MenuSplitUsingCurve_OnClick.def new file mode 100644 index 0000000..5651dd8 --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_FormForecasts/Response_MacroPlanner_ListSalesDemands_MenuSplitUsingCurve_OnClick.def @@ -0,0 +1,19 @@ +Quintiq file version 2.0 +#parent: ListSalesDemands +Response OnClick () id:Response_MacroPlanner_ListSalesDemands_MenuSplitUsingCurve_OnClick +{ + #keys: '[414996.1.245583277]' + CanBindMultiple: false + DefinitionID => //FormSalesDemands/ListSalesDemands/Responsedef_ListSalesDemands_WebMenu_OnClick + GroupServerCalls: true + Initiator: 'MenuSplitUsingCurve' + QuillAction + { + Body: + [* + //Create new sales demand + dlg := construct( DialogCreateEditForecast ); + dlg.SplitUsingCurve(); + *] + } +} diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_ListTRCForecast\043715.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_ListTRCForecast\043715.def" new file mode 100644 index 0000000..7318244 --- /dev/null +++ "b/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_ListTRCForecast\043715.def" @@ -0,0 +1,41 @@ +Quintiq file version 2.0 +Component ListTRCForecast id:ListTRCForecast_715 +{ + #keys: '[413988.1.153585043]' + BaseType: 'WebList' + Children: + [ + Component DataExtractorTRCForecast + { + #keys: '[413988.1.153585044]' + BaseType: 'WebDataExtractor' + Properties: + [ + DataType: 'InterfaceDataset' + Source: 'InterfaceDataset' + Taborder: 0 + Transformation: 'InterfaceTRCForecast' + ] + } + #child: listActionBarPageTRCForecast_1 + Component DataSetLevelTRCForecast + { + #keys: '[413988.1.153585046]' + BaseType: 'WebDataSetLevel' + Children: + [ + #child: listContextMenuTRCForecast_1 + ] + Properties: + [ + Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Date","title":"Date","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Date"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Factory","title":"Factory","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Factory"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Generation","title":"Generation","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Generation"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"MLBMQB","title":"MLBMQB","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"MLBMQB"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"PartNumber","title":"PartNumber","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"PartNumber"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Power","title":"Power","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Power"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"Quantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}}]' + ContextMenu: 'listContextMenuTRCForecast' + Taborder: 2 + ] + } + ] + Properties: + [ + Taborder: 0 + ] +} diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_listActionBarPageTRCForecast\0431.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_listActionBarPageTRCForecast\0431.def" new file mode 100644 index 0000000..b4d51e6 --- /dev/null +++ "b/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_listActionBarPageTRCForecast\0431.def" @@ -0,0 +1,10 @@ +Quintiq file version 2.0 +Component listActionBarPageTRCForecast id:listActionBarPageTRCForecast_1 +{ + #keys: '[413988.1.153585045]' + BaseType: 'listActionBarPage' + Properties: + [ + Taborder: 1 + ] +} diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_listContextMenuTRCForecast\0431.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_listContextMenuTRCForecast\0431.def" new file mode 100644 index 0000000..5a6ef17 --- /dev/null +++ "b/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_listContextMenuTRCForecast\0431.def" @@ -0,0 +1,10 @@ +Quintiq file version 2.0 +Component listContextMenuTRCForecast id:listContextMenuTRCForecast_1 +{ + #keys: '[413988.1.153585047]' + BaseType: 'listContextMenu' + Properties: + [ + Taborder: 0 + ] +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_pContent.def b/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_pContent.def new file mode 100644 index 0000000..eb38c4d --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_pContent.def @@ -0,0 +1,14 @@ +Quintiq file version 2.0 +Component pContent +{ + #keys: '[413988.1.153584900]' + BaseType: 'WebPanel' + Children: + [ + #child: ListTRCForecast_715 + ] + Properties: + [ + Taborder: 1 + ] +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_pHeader.def b/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_pHeader.def new file mode 100644 index 0000000..82c332f --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Component_pHeader.def @@ -0,0 +1,27 @@ +Quintiq file version 2.0 +Component pHeader +{ + #keys: '[413988.1.153584890]' + BaseType: 'WebPanel' + Children: + [ + Component bArchive + { + #keys: '[413988.1.153585113]' + BaseType: 'WebButton' + Properties: + [ + Image: 'DOCUMENT_ZIP' + Label: '瀛樻。' + Taborder: 0 + ] + } + ] + Properties: + [ + Border: true + FixedSize: true + Orientation: 'horizontal' + Taborder: 0 + ] +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Response_pHeader_bArchive_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Response_pHeader_bArchive_OnClick.def new file mode 100644 index 0000000..20458b9 --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/Response_pHeader_bArchive_OnClick.def @@ -0,0 +1,22 @@ +Quintiq file version 2.0 +#parent: pHeader/bArchive +Response OnClick () id:Response_pHeader_bArchive_OnClick +{ + #keys: '[413988.1.153530591]' + CanBindMultiple: false + DefinitionID: 'Responsedef_WebButton_OnClick' + Precondition: + [* + return not isnull( InterfaceDataset ) and not isnull( MacroPlan ); + *] + QuillAction + { + Body: + [* + InterfaceTRCForecast::ArchivedData( InterfaceDataset, MacroPlan ); + + WebMessageBox::Success( Translations::A_VWED_Success() ); + *] + GroupServerCalls: false + } +} diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/_ROOT_Component_FormTRCForecast.def b/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/_ROOT_Component_FormTRCForecast.def new file mode 100644 index 0000000..6879088 --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Component_FormTRCForecast/_ROOT_Component_FormTRCForecast.def @@ -0,0 +1,13 @@ +Quintiq file version 2.0 +#root +#parent: MacroPlannerWebApp +OrphanComponent FormTRCForecast +{ + #keys: '[413988.1.153584709]' + BaseType: 'WebForm' + Children: + [ + #child: pHeader + #child: pContent + ] +} diff --git a/_Main/UI/MacroPlannerWebApp/Views/ArchiveShiftPlan.vw b/_Main/UI/MacroPlannerWebApp/Views/ArchiveShiftPlan.vw new file mode 100644 index 0000000..55a716f --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Views/ArchiveShiftPlan.vw @@ -0,0 +1,233 @@ +Quintiq file version 2.0 +{ + viewcontents + { + forms + { + form_FormArchiveShiftPlan + { + title: 'QMacroPlanner::FormArchiveShiftPlan' + shown: true + componentID: 'QMacroPlanner::FormArchiveShiftPlan' + layout + { + mode: 'open' + rowPosition: 1 + rowSpan: 25 + columnPosition: 1 + columnSpan: 9 + } + components + { + FormArchiveShiftPlan_PanelArchiveShiftPlan + { + sizeRatio: 1 + } + FormArchiveShiftPlan_PanelArchiveShiftPlan812 + { + sizeRatio: 1 + } + FormArchiveShiftPlan_MatrixEditorArchiveShiftPlan + { + gridColor: '#c4c4c4' + totalHeaderWidth: 200 + attributeHeaderWidthRatio: 0.6 + nameHeaderWidthRatio: 0.4 + columnWidth: 100 + horizontalGrid: true + verticalGrid: true + backendState + { + componentId: 'QMacroPlanner::FormArchiveShiftPlan.MatrixEditorArchiveShiftPlan' + state + { + cells + { + attributes + { + attribute_EventType + { + type: 'MatrixEditorWebApiCellDataModelInterest' + index: 0 + rowsubtotal: '' + columnsubtotal: '' + attribute: 'EventType' + } + attribute_IsHoliday + { + type: 'MatrixEditorWebApiCellDataModelInterest' + index: 1 + rowsubtotal: '' + columnsubtotal: '' + attribute: 'IsHoliday' + } + attribute_Outcome + { + type: 'MatrixEditorWebApiCellDataModelInterest' + index: 2 + rowsubtotal: '' + columnsubtotal: '' + attribute: 'Outcome' + } + attribute_Remark + { + type: 'MatrixEditorWebApiCellDataModelInterest' + index: 3 + rowsubtotal: '' + columnsubtotal: '' + attribute: 'Remark' + } + attribute_MacroPlanName + { + type: 'MatrixEditorWebApiCellDataModelInterest' + index: 4 + rowsubtotal: '' + columnsubtotal: '' + attribute: 'MacroPlanName' + } + } + } + columns + { + sorting + { + criteria: "datamember:'StartDate'" + } + } + rows + { + sorting + { + criteria: "datamember:'UnitID'" + } + } + } + } + } + } + } + form_FormOptimizerPuzzles + { + title: 'Optimizer Puzzles' + shown: false + componentID: 'FormOptimizerPuzzles' + layout + { + mode: 'dockright' + index: 0 + } + components + { + FormOptimizerPuzzles_ListOptimizerPuzzles + { + } + FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles + { + groupDepth: -1 + column_All_constraints + { + columnId: 'All constraints' + dataPath: 'All constraints' + dataType: 'string' + title: 'All constraints' + index: 0 + subtotals: '' + width: 32 + } + column_Name + { + columnId: 'Name' + dataPath: 'Name' + dataType: 'string' + title: 'Name' + index: 1 + subtotals: '' + width: 109 + } + column_Description + { + columnId: 'Description' + dataPath: 'Description' + dataType: 'string' + title: 'Description' + index: 2 + subtotals: '' + width: 207 + } + } + } + } + form_FormKPI + { + title: 'KPI Dashboard' + shown: true + componentID: 'FormKPI' + layout + { + mode: 'dockright' + index: 1 + } + components + { + FormKPI_PanelKPI + { + sizeRatio: 1 + activeChild: 'PanelKPISelection' + } + FormKPI_PanelKPIDashboard + { + sizeRatio: 1 + } + FormKPI_PanelKPISelection + { + sizeRatio: 1 + } + FormKPI_ListKPISelection + { + QuillViewData + { + Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' + } + } + FormKPI_DataSetLevelKPISelection + { + groupDepth: -1 + column_All_constraints + { + columnId: 'All constraints' + dataPath: 'All constraints' + dataType: 'string' + title: 'All constraints' + index: 0 + subtotals: '' + width: 32 + } + column_Name + { + columnId: 'Name' + dataPath: 'Name' + dataType: 'string' + title: 'Name' + index: 1 + subtotals: '' + width: 200 + } + } + } + } + } + userconfigurableinformation + { + } + image: 'KEYBOARD_KEY_SHIFT' + page: '' + group: '' + index: 0 + description: '' + } + formatversion: 2 + id: 'ArchiveShiftPlan' + name: 'ArchiveShiftPlan' + isglobal: false + isroot: true +} diff --git a/_Main/UI/MacroPlannerWebApp/Views/TRCForecastArchive.vw b/_Main/UI/MacroPlannerWebApp/Views/TRCForecastArchive.vw new file mode 100644 index 0000000..228c90a --- /dev/null +++ b/_Main/UI/MacroPlannerWebApp/Views/TRCForecastArchive.vw @@ -0,0 +1,226 @@ +Quintiq file version 2.0 +{ + viewcontents + { + forms + { + form_FormTRCForecast + { + title: 'QMacroPlanner::FormTRCForecast' + shown: true + componentID: 'QMacroPlanner::FormTRCForecast' + layout + { + mode: 'open' + rowPosition: 1 + rowSpan: 14 + columnPosition: 1 + columnSpan: 12 + } + components + { + FormTRCForecast_pHeader + { + sizeRatio: 1 + } + FormTRCForecast_pContent + { + sizeRatio: 1 + } + FormTRCForecast_ListTRCForecast + { + } + FormTRCForecast_DataSetLevelTRCForecast + { + groupDepth: -1 + column_Date + { + columnId: 'Date' + dataPath: 'Date' + dataType: 'date' + index: 0 + subtotals: '' + width: 150 + } + column_Factory + { + columnId: 'Factory' + dataPath: 'Factory' + dataType: 'string' + index: 1 + subtotals: '' + width: 150 + } + column_Generation + { + columnId: 'Generation' + dataPath: 'Generation' + dataType: 'string' + index: 2 + subtotals: '' + width: 150 + } + column_MLBMQB + { + columnId: 'MLBMQB' + dataPath: 'MLBMQB' + dataType: 'string' + index: 3 + subtotals: '' + width: 150 + } + column_PartNumber + { + columnId: 'PartNumber' + dataPath: 'PartNumber' + dataType: 'string' + index: 4 + subtotals: '' + width: 150 + } + column_Power + { + columnId: 'Power' + dataPath: 'Power' + dataType: 'string' + index: 5 + subtotals: '' + width: 150 + } + column_Quantity + { + columnId: 'Quantity' + dataPath: 'Quantity' + dataType: 'real' + index: 6 + subtotals: '' + width: 150 + } + } + } + } + form_FormOptimizerPuzzles + { + title: 'Optimizer Puzzles' + shown: false + componentID: 'FormOptimizerPuzzles' + layout + { + mode: 'dockright' + index: 0 + } + components + { + FormOptimizerPuzzles_ListOptimizerPuzzles + { + } + FormOptimizerPuzzles_DataSetLevelOptimizerPuzzles + { + groupDepth: -1 + column_All_constraints + { + columnId: 'All constraints' + dataPath: 'All constraints' + dataType: 'string' + title: 'All constraints' + index: 0 + subtotals: '' + width: 32 + } + column_Name + { + columnId: 'Name' + dataPath: 'Name' + dataType: 'string' + title: 'Name' + index: 1 + subtotals: '' + width: 109 + } + column_Description + { + columnId: 'Description' + dataPath: 'Description' + dataType: 'string' + title: 'Description' + index: 2 + subtotals: '' + width: 207 + } + } + } + } + form_FormKPI + { + title: 'KPI Dashboard' + shown: true + componentID: 'FormKPI' + layout + { + mode: 'dockright' + index: 1 + } + components + { + FormKPI_PanelKPI + { + sizeRatio: 1 + activeChild: 'PanelKPISelection' + } + FormKPI_PanelKPIDashboard + { + sizeRatio: 1 + } + FormKPI_PanelKPISelection + { + sizeRatio: 1 + } + FormKPI_ListKPISelection + { + QuillViewData + { + Food_KPISetting: 'Cost of sales;Fulfillment;Fulfillment target;Inventory holding cost;Labor cost;Margin;Safety stock;Sales;Sourcing cost;Total CO2 emission;Transportation cost;Volume' + } + } + FormKPI_DataSetLevelKPISelection + { + groupDepth: -1 + column_All_constraints + { + columnId: 'All constraints' + dataPath: 'All constraints' + dataType: 'string' + title: 'All constraints' + index: 0 + subtotals: '' + width: 32 + } + column_Name + { + columnId: 'Name' + dataPath: 'Name' + dataType: 'string' + title: 'Name' + index: 1 + subtotals: '' + width: 200 + } + } + } + } + } + userconfigurableinformation + { + } + page: '' + group: '' + index: 0 + image: 'CLOUD' + description: '' + } + formatversion: 2 + id: 'TRCForecastArchive' + name: 'TRCForecastArchive' + isglobal: false + isroot: true +} -- Gitblit v1.9.3