From 4c2024c5a521c44b1b35c490fa98e84918840fcc Mon Sep 17 00:00:00 2001
From: hongjli <3117313295@qq.com>
Date: 星期三, 13 九月 2023 10:44:43 +0800
Subject: [PATCH] 物料标签同步库存规范
---
/dev/null | 23 -------
_Main/BL/Type_GlobalDTOTable/Method_RefreshPanelMaterialData.qbl | 12 ++--
_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Component_PanelMaterialExportAndImport#136.def | 1
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_PanelFunctionButtons_ButtonRefresh_OnClick.def | 2
_Main/BL/Type_MatAttrSettingAndPlanningStrategy/StaticMethod_SynchronizeInventoryTargets.qbl | 35 +++++++++++
_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Response_PanelMaterialExportAndImport_136_ButtonSynchronizeInventoryTargets_.def | 8 ++
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_New.def | 2
_Main/BL/Relations/Relation_PanelMaterial_MacroPlan_MacroPlan_PanelMaterial.qbl | 23 +++++++
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlActions_btnOk_OnClick.def | 10 +-
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_ListData.def | 4
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_Edit.def | 2
_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuCreate_OnClick.def | 4 +
12 files changed, 85 insertions(+), 41 deletions(-)
diff --git a/_Main/BL/Relations/Relation_PanelMaterial_GlobalOTDTable_GlobalOTDTable_PanelMaterial.qbl b/_Main/BL/Relations/Relation_PanelMaterial_GlobalOTDTable_GlobalOTDTable_PanelMaterial.qbl
deleted file mode 100644
index 60dc422..0000000
--- a/_Main/BL/Relations/Relation_PanelMaterial_GlobalOTDTable_GlobalOTDTable_PanelMaterial.qbl
+++ /dev/null
@@ -1,23 +0,0 @@
-Quintiq file version 2.0
-#parent: #root
-Relation PanelMaterial_GlobalOTDTable_GlobalOTDTable_PanelMaterial
-{
- #keys: '1[414702.0.155921958]'
- DefaultRelationStrategy
- {
- }
- RelationSide.LeftSide GlobalOTDTable
- {
- #keys: '3[414702.0.155921960][414702.0.155921959][414702.0.155921961]'
- Cardinality: '0to1'
- ObjectDefinition: PanelMaterial
- OwningSide: 'Reference'
- }
- RelationSide.RightSide PanelMaterial
- {
- #keys: '3[414702.0.155921963][414702.0.155921962][414702.0.155921964]'
- Cardinality: '1toN'
- ObjectDefinition: GlobalOTDTable
- OwningSide: 'Owned'
- }
-}
diff --git a/_Main/BL/Relations/Relation_PanelMaterial_MacroPlan_MacroPlan_PanelMaterial.qbl b/_Main/BL/Relations/Relation_PanelMaterial_MacroPlan_MacroPlan_PanelMaterial.qbl
new file mode 100644
index 0000000..fd1e173
--- /dev/null
+++ b/_Main/BL/Relations/Relation_PanelMaterial_MacroPlan_MacroPlan_PanelMaterial.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation PanelMaterial_MacroPlan_MacroPlan_PanelMaterial
+{
+ #keys: '1[414702.0.162969760]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide MacroPlan
+ {
+ #keys: '3[414702.0.162969762][414702.0.162969761][414702.0.162969763]'
+ Cardinality: '0to1'
+ ObjectDefinition: PanelMaterial
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide PanelMaterial
+ {
+ #keys: '3[414702.0.162969765][414702.0.162969764][414702.0.162969766]'
+ Cardinality: '1toN'
+ ObjectDefinition: MacroPlan
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Type_GlobalDTOTable/Method_RefreshPanelMaterialData.qbl b/_Main/BL/Type_GlobalDTOTable/Method_RefreshPanelMaterialData.qbl
index f81023f..6c98026 100644
--- a/_Main/BL/Type_GlobalDTOTable/Method_RefreshPanelMaterialData.qbl
+++ b/_Main/BL/Type_GlobalDTOTable/Method_RefreshPanelMaterialData.qbl
@@ -10,12 +10,12 @@
traverse ( pto, DependentDemand, dd, true ) {
product_MP := dd.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().Product_MP();
if ( product_MP.IsPanelMaterial() ) {
- this.PanelMaterial( relnew,
- PanelModel := product_MP.ID(),
- MaterialDescription := product_MP.ID(),
- StartDate := dd.Start().Date(),
- DemandQuantity := dd.Quantity()
- );
+ macroPlan.PanelMaterial( relnew,
+ PanelModel := product_MP.ID(),
+ MaterialDescription := product_MP.ID(),
+ StartDate := dd.Start().Date(),
+ DemandQuantity := dd.Quantity()
+ );
}
}
}
diff --git a/_Main/BL/Type_MatAttrSettingAndPlanningStrategy/StaticMethod_SynchronizeInventoryTargets.qbl b/_Main/BL/Type_MatAttrSettingAndPlanningStrategy/StaticMethod_SynchronizeInventoryTargets.qbl
new file mode 100644
index 0000000..00a686b
--- /dev/null
+++ b/_Main/BL/Type_MatAttrSettingAndPlanningStrategy/StaticMethod_SynchronizeInventoryTargets.qbl
@@ -0,0 +1,35 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod SynchronizeInventoryTargets (
+ GlobalOTDTable globalOTDTable,
+ MacroPlan macroPlan
+)
+{
+ TextBody:
+ [*
+ traverse ( globalOTDTable, MatAttrSettingAndPlanStrategy, masaps ) {
+ hasMaxLevel := masaps.MaximumNumberOfDaysInInventory() <> 0;
+ product_MP := select( macroPlan, Product_MP, tempPMP, tempPMP.ID() = masaps.MatCode() );
+ if ( not isnull( product_MP ) ) {
+ traverse ( product_MP, ProductInStockingPoint_MP, pispmp ) {
+ InventorySpecification::Create( product_MP,
+ pispmp.StockingPoint_MP(),
+ macroPlan.StartOfPlanning().Date(),
+ false,
+ 0.0,
+ 0.0,
+ true,
+ [Real]masaps.MinimumNumberOfDaysInStock(),
+ 0.0,
+ hasMaxLevel,
+ true,
+ [Real]masaps.MaximumNumberOfDaysInInventory(),
+ 0.0,
+ false,
+ false
+ );
+ }
+ }
+ }
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_Edit.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_Edit.def
index 1ae7777..5a8abdf 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_Edit.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_Edit.def
@@ -10,7 +10,7 @@
data := shadow( selection );
DataHolderDialogData.Data( &data );
-
+ info( "hello world" );
ApplicationMacroPlanner.ShowFormModal( this );
*]
}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_New.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_New.def
index 17084d2..7832386 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_New.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Method_New.def
@@ -5,7 +5,7 @@
#keys: '[414702.0.158084611]'
Body:
[*
- panelMaterial := GlobalOTDTable.PanelMaterial( relshadow );
+ panelMaterial := MacroPlan.PanelMaterial( relshadow );
DataHolderDialogData.Data( &panelMaterial );
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlActions_btnOk_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlActions_btnOk_OnClick.def
index f7acc22..555058d 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlActions_btnOk_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditPanelPullPlanReport/Response_pnlActions_btnOk_OnClick.def
@@ -16,11 +16,11 @@
data := DataHolderDialogData.Data();
panelMaterial := data.WrappedInstance();
if ( isnull( panelMaterial ) ) {
- GlobalOTDTable.PanelMaterial( relnew,
- PanelModel := ddslPanelModel.Text(),
- MaterialDescription := efMaterialDescription.Text(),
- StartDate := dsStartDate.Date(),
- DemandQuantity := npDemandQuantity.Number() );
+ MacroPlan.PanelMaterial( relnew,
+ PanelModel := ddslPanelModel.Text(),
+ MaterialDescription := efMaterialDescription.Text(),
+ StartDate := dsStartDate.Date(),
+ DemandQuantity := npDemandQuantity.Number() );
} else {
panelMaterial.PanelModel( ddslPanelModel.Text() );
panelMaterial.MaterialDescription( efMaterialDescription.Text() );
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Component_PanelMaterialExportAndImport\043136.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Component_PanelMaterialExportAndImport\043136.def"
index 636f952..eb69dc7 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Component_PanelMaterialExportAndImport\043136.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Component_PanelMaterialExportAndImport\043136.def"
@@ -36,7 +36,6 @@
Image: 'CLOUD_REFRESH'
Label: '鍚屾搴撳瓨鐩爣'
Taborder: 0
- Visible: false
]
}
]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Response_PanelMaterialExportAndImport_136_ButtonSynchronizeInventoryTargets_.def b/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Response_PanelMaterialExportAndImport_136_ButtonSynchronizeInventoryTargets_.def
index a7731ca..072efb9 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Response_PanelMaterialExportAndImport_136_ButtonSynchronizeInventoryTargets_.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormMaterialLabelingAndPlanningStrategy/Response_PanelMaterialExportAndImport_136_ButtonSynchronizeInventoryTargets_.def
@@ -5,11 +5,17 @@
#keys: '[414702.0.141615322]'
CanBindMultiple: false
DefinitionID: 'Responsedef_WebButton_OnClick'
+ Precondition:
+ [*
+ return not isnull( GlobalOTDTable ) and not isnull( MacroPlan );
+ *]
QuillAction
{
Body:
[*
- WebMessageBox::Success( "鍚屾鎴愬姛", true );
+ MatAttrSettingAndPlanStrategy::SynchronizeInventoryTargets( GlobalOTDTable, MacroPlan );
+
+ WebMessageBox::Success( "搴撳瓨鐩爣鍚屾鎴愬姛", true );
*]
GroupServerCalls: false
}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_ListData.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_ListData.def
index ad2a8b8..1b59d94 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_ListData.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Component_ListData.def
@@ -11,8 +11,8 @@
BaseType: 'WebDataExtractor'
Properties:
[
- DataType: 'GlobalOTDTable'
- Source: 'GlobalOTDTable'
+ DataType: 'MacroPlan'
+ Source: 'MacroPlan'
Taborder: 0
Transformation: 'PanelMaterial'
]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuCreate_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuCreate_OnClick.def
index cb713ad..4e4e76b 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuCreate_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_ListData_MenuCreate_OnClick.def
@@ -6,6 +6,10 @@
CanBindMultiple: false
DefinitionID => /ListData/Responsedef_ListData_WebMenu_OnClick
Initiator: 'MenuCreate'
+ Precondition:
+ [*
+ return not isnull( MacroPlan );
+ *]
QuillAction
{
Body:
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_PanelFunctionButtons_ButtonRefresh_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_PanelFunctionButtons_ButtonRefresh_OnClick.def
index 9084aa6..7b93559 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_PanelFunctionButtons_ButtonRefresh_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormPanelPullPlanReport/Response_PanelFunctionButtons_ButtonRefresh_OnClick.def
@@ -13,7 +13,7 @@
{
Body:
[*
- GlobalOTDTable.PanelMaterial( relflush );
+ MacroPlan.PanelMaterial( relflush );
GlobalOTDTable.RefreshPanelMaterialData( MacroPlan );
--
Gitblit v1.9.3