From 4c72f83c738dd9ade71b8349a153330472e5bcdc Mon Sep 17 00:00:00 2001
From: xiaoding721 <33130084+xiaoding721@users.noreply.github.com>
Date: 星期三, 06 十一月 2024 12:05:14 +0800
Subject: [PATCH] Merge branch 'dev' of http://47.101.211.7:10101/r/VWED into dev
---
_Main/BL/Type_InventoryPlanArchiveCell/Attribute_ActualQuantity.qbl | 7
_Main/BL/Type_InventoryPlanArchiveColumn/DefaultValue_TimeUnit.qbl | 6
_Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterfaceForSAPGet.qbl | 2
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelUnit_ddslUnit_OnSelectionChanged.def | 19
_Main/BL/Type_OfflinePlanArchiveVersionRow/Attribute_Name.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_MatrixEditorTable.def | 2
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelProduct_133_ddslProduct_OnSelectionChanged.def | 19
_Main/BL/Type_InventoryPlanArchiveRow/Attribute_Name.qbl | 8
_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelHeader#952.def | 1
_Main/BL/Type_AssemblyOnlinePlanRow/Attribute_Name.qbl | 7
_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_EndDate.qbl | 8
_Main/BL/Type_OfflinePlanArchiveVersion/StaticMethod_RefreshData.qbl | 12
_Main/BL/Type_OfflinePlanArchiveVersion/Method_GenerateColumn.qbl | 77 +--
_Main/BL/Type_InventoryPlanArchiveVersion/_ROOT_Type_InventoryPlanArchiveVersion.qbl | 10
_Main/BL/Type_InventoryPlanArchiveVersionSearch/_ROOT_Type_InventoryPlanArchiveVersionSearch.qbl | 10
_Main/BL/Type_InventoryPlanArchiveRow/Attribute_Unit.qbl | 8
_Main/BL/Type_InventoryPlanArchiveCell/_ROOT_Type_InventoryPlanArchiveCell.qbl | 10
_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_TimeUnit.qbl | 8
_Main/BL/Type_InventoryPlanArchiveCell/Attribute_PlanQuantity.qbl | 7
_Main/BL/Type_InventoryPlanArchiveVersion/Attribute_Name.qbl | 8
_Main/BL/Relations/Relation_InventoryPlanArchiveVersionSearch_InterfaceDataset_InterfaceDataset.qbl | 23 +
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelPeriod_DateSelectorEnd_OnChanged.def | 24 +
_Main/BL/Relations/Relation_InventoryPlanArchiveRow_Cell_InventoryPlanArchiveCell_Row.qbl | 23 +
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelOperation#414.def | 24 +
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelUnit.def | 24 +
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelPeriod.def | 35 +
_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_MatrixEditorTable#384.def | 2
_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_TimeUnit.qbl | 8
_Main/BL/Relations/Relation_InventoryPlanArchiveColumn_Version_InventoryPlanArchiveVersion_Colu.qbl | 23 +
_Main/BL/Type_InventoryPlanArchiveRow/_ROOT_Type_InventoryPlanArchiveRow.qbl | 10
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelHeader#503.def | 20
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/Component_MatrixEditorTable.def | 2
_Main/BL/Type_InventoryPlanArchiveRow/Method_SetQuantity.qbl | 16
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_matrixeditorContextMenuTable#1.def | 10
_Main/BL/Type_InventoryPlanArchiveVersion/DefaultValue_IsShow.qbl | 7
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelProduct_133_ddslProduct_OnCreated.def | 23 +
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelUnit_ddslUnit_OnCreated.def | 18
_Main/BL/Type_InventoryPlanArchiveColumn/_ROOT_Type_InventoryPlanArchiveColumn.qbl | 10
_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_Name.qbl | 7
_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GetDefaultName.qbl | 10
_Main/BL/Type_InventoryPlanArchiveVersion/Attribute_IsShow.qbl | 8
_Main/BL/Type_InventoryPlanArchiveVersion/Method_GetColumnByTimeUnit.qbl | 17
_Main/BL/Type_AssemblyOnlinePlanVersion/Method_GenerateColumn.qbl | 77 +--
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_matrixEditorActionBarPageTable#1.def | 10
_Main/BL/Type_InventoryPlanArchiveVersion/Attribute_ID.qbl | 8
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelTimeUnit_805_RadioButtonGroupUseForTimeUnit_OnCreated.def | 16
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelTimeUnit_805_RadioButtonGroupUseForTimeUnit_OnChanged.def | 20
_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GenerateData.qbl | 72 +++
_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_Unit.qbl | 8
_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_StartDate.qbl | 8
_Main/BL/Type_InventoryPlanArchiveVersion/Method_GenerateColumn.qbl | 41 +
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelProduct#133.def | 26 +
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/Component_PanelHeader.def | 1
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelTimeUnit#805.def | 26 +
_Main/BL/Type_AssemblyOnlinePlanVersion/Method_GetRow.qbl | 2
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/_ROOT_Component_FormInventoryPlanArchive.def | 43 +
_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_EndDate.qbl | 8
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelTable#881.def | 14
_Main/BL/Type_InventoryPlanArchiveRow/Method_Initialize.qbl | 15
_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_StartDate.qbl | 8
_Main/BL/Type_InventoryPlanArchiveVersion/Method_GetRowByUnit.qbl | 21
_Main/BL/Relations/Relation_InventoryPlanArchiveVersion_InterfaceDataset_InterfaceDataset_Inven.qbl | 23 +
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelPeriod_DateSelectorStart_OnChanged.def | 24 +
_Main/BL/Type_OfflinePlanArchiveVersionRow/DefaultValue_Name.qbl | 6
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupArchiveReport_ButtonInventoryPlanArchive.def | 16
_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_Product.qbl | 8
_Main/BL/Relations/Relation_InventoryPlanArchiveColumn_Cell_InventoryPlanArchiveCell_Column.qbl | 23 +
_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/_ROOT_Component_FormOfflinePlanArchive.def | 2
_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_MatrixEditorTable#791.def | 105 ++++
_Main/UI/MacroPlannerWebApp/Views/Inventory_plan_archive_report.vw | 77 +++
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupArchiveReport.def | 13
_Main/BL/Relations/Relation_InventoryPlanArchiveRow_Version_InventoryPlanArchiveVersion_Row.qbl | 23 +
_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl | 32
73 files changed, 1,225 insertions(+), 131 deletions(-)
diff --git a/_Main/BL/Relations/Relation_InventoryPlanArchiveColumn_Cell_InventoryPlanArchiveCell_Column.qbl b/_Main/BL/Relations/Relation_InventoryPlanArchiveColumn_Cell_InventoryPlanArchiveCell_Column.qbl
new file mode 100644
index 0000000..85e09b7
--- /dev/null
+++ b/_Main/BL/Relations/Relation_InventoryPlanArchiveColumn_Cell_InventoryPlanArchiveCell_Column.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation InventoryPlanArchiveColumn_Cell_InventoryPlanArchiveCell_Column
+{
+ #keys: '1[415136.0.1275901429]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide Cell
+ {
+ #keys: '3[415136.0.1275901431][415136.0.1275901430][415136.0.1275901432]'
+ Cardinality: '1toN'
+ ObjectDefinition: InventoryPlanArchiveColumn
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide Column
+ {
+ #keys: '3[415136.0.1275901434][415136.0.1275901433][415136.0.1275901435]'
+ Cardinality: '0to1'
+ ObjectDefinition: InventoryPlanArchiveCell
+ OwningSide: 'Reference'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_InventoryPlanArchiveColumn_Version_InventoryPlanArchiveVersion_Colu.qbl b/_Main/BL/Relations/Relation_InventoryPlanArchiveColumn_Version_InventoryPlanArchiveVersion_Colu.qbl
new file mode 100644
index 0000000..0394c09
--- /dev/null
+++ b/_Main/BL/Relations/Relation_InventoryPlanArchiveColumn_Version_InventoryPlanArchiveVersion_Colu.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation InventoryPlanArchiveColumn_Version_InventoryPlanArchiveVersion_Column
+{
+ #keys: '1[415136.0.1275901416]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide Version
+ {
+ #keys: '3[415136.0.1275901418][415136.0.1275901417][415136.0.1275901419]'
+ Cardinality: '0to1'
+ ObjectDefinition: InventoryPlanArchiveColumn
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide Column
+ {
+ #keys: '3[415136.0.1275901421][415136.0.1275901420][415136.0.1275901422]'
+ Cardinality: '1toN'
+ ObjectDefinition: InventoryPlanArchiveVersion
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_InventoryPlanArchiveRow_Cell_InventoryPlanArchiveCell_Row.qbl b/_Main/BL/Relations/Relation_InventoryPlanArchiveRow_Cell_InventoryPlanArchiveCell_Row.qbl
new file mode 100644
index 0000000..25bc0aa
--- /dev/null
+++ b/_Main/BL/Relations/Relation_InventoryPlanArchiveRow_Cell_InventoryPlanArchiveCell_Row.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation InventoryPlanArchiveRow_Cell_InventoryPlanArchiveCell_Row
+{
+ #keys: '1[415136.0.1275901400]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide Cell
+ {
+ #keys: '3[415136.0.1275901402][415136.0.1275901401][415136.0.1275901403]'
+ Cardinality: '1toN'
+ ObjectDefinition: InventoryPlanArchiveRow
+ OwningSide: 'Owned'
+ }
+ RelationSide.RightSide Row
+ {
+ #keys: '3[415136.0.1275901405][415136.0.1275901404][415136.0.1275901406]'
+ Cardinality: '0to1'
+ ObjectDefinition: InventoryPlanArchiveCell
+ OwningSide: 'Reference'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_InventoryPlanArchiveRow_Version_InventoryPlanArchiveVersion_Row.qbl b/_Main/BL/Relations/Relation_InventoryPlanArchiveRow_Version_InventoryPlanArchiveVersion_Row.qbl
new file mode 100644
index 0000000..83d30ae
--- /dev/null
+++ b/_Main/BL/Relations/Relation_InventoryPlanArchiveRow_Version_InventoryPlanArchiveVersion_Row.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation InventoryPlanArchiveRow_Version_InventoryPlanArchiveVersion_Row
+{
+ #keys: '1[415136.0.1275901387]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide Version
+ {
+ #keys: '3[415136.0.1275901389][415136.0.1275901388][415136.0.1275901390]'
+ Cardinality: '0to1'
+ ObjectDefinition: InventoryPlanArchiveRow
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide Row
+ {
+ #keys: '3[415136.0.1275901392][415136.0.1275901391][415136.0.1275901393]'
+ Cardinality: '1toN'
+ ObjectDefinition: InventoryPlanArchiveVersion
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_InventoryPlanArchiveVersionSearch_InterfaceDataset_InterfaceDataset.qbl b/_Main/BL/Relations/Relation_InventoryPlanArchiveVersionSearch_InterfaceDataset_InterfaceDataset.qbl
new file mode 100644
index 0000000..73c8df5
--- /dev/null
+++ b/_Main/BL/Relations/Relation_InventoryPlanArchiveVersionSearch_InterfaceDataset_InterfaceDataset.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation InventoryPlanArchiveVersionSearch_InterfaceDataset_InterfaceDataset_InventoryPlanArchiveVersionSearch
+{
+ #keys: '1[415136.0.1275930069]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide InterfaceDataset
+ {
+ #keys: '3[415136.0.1275930071][415136.0.1275930070][415136.0.1275930072]'
+ Cardinality: '0to1'
+ ObjectDefinition: InventoryPlanArchiveVersionSearch
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide InventoryPlanArchiveVersionSearch
+ {
+ #keys: '3[415136.0.1275930074][415136.0.1275930073][415136.0.1275930075]'
+ Cardinality: '0to1'
+ ObjectDefinition: InterfaceDataset
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_InventoryPlanArchiveVersion_InterfaceDataset_InterfaceDataset_Inven.qbl b/_Main/BL/Relations/Relation_InventoryPlanArchiveVersion_InterfaceDataset_InterfaceDataset_Inven.qbl
new file mode 100644
index 0000000..a7a5783
--- /dev/null
+++ b/_Main/BL/Relations/Relation_InventoryPlanArchiveVersion_InterfaceDataset_InterfaceDataset_Inven.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation InventoryPlanArchiveVersion_InterfaceDataset_InterfaceDataset_InventoryPlanArchiveVersion
+{
+ #keys: '1[415136.0.1275901359]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide InterfaceDataset
+ {
+ #keys: '3[415136.0.1275901361][415136.0.1275901360][415136.0.1275901362]'
+ Cardinality: '0to1'
+ ObjectDefinition: InventoryPlanArchiveVersion
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide InventoryPlanArchiveVersion
+ {
+ #keys: '3[415136.0.1275901364][415136.0.1275901363][415136.0.1275901365]'
+ Cardinality: '1toN'
+ ObjectDefinition: InterfaceDataset
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanRow/Attribute_Name.qbl b/_Main/BL/Type_AssemblyOnlinePlanRow/Attribute_Name.qbl
new file mode 100644
index 0000000..bc7a2b4
--- /dev/null
+++ b/_Main/BL/Type_AssemblyOnlinePlanRow/Attribute_Name.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Name
+{
+ #keys: '3[415136.0.1275901593][415136.0.1275901592][415136.0.1275901594]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_GenerateColumn.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_GenerateColumn.qbl
index 92c1367..b617de1 100644
--- a/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_GenerateColumn.qbl
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_GenerateColumn.qbl
@@ -1,65 +1,40 @@
Quintiq file version 2.0
#parent: #root
Method GenerateColumn (
- Dates periods,
- String timeunit,
- Date starttime,
- Date endtime
+ Dates periods
)
{
TextBody:
[*
// 鐢勫叞楦� Jun-25-2024 (created)
- mindate := min( periods, Elements, period, period );
- maxdate := max( periods, Elements, period, period );
- //鏌ヨ鏃ユ湡杩斿洖闇�瑕佸湪璁″垝鏃ユ湡涔嬪唴
- if( starttime < mindate and endtime > maxdate ){
- if( starttime < mindate ){
- starttime := mindate;
+ weekstart := periods.Element( 0 );
+
+ monthstart := periods.Element( 0 );
+ traverse( periods, Elements, periodtime ){
+ periodname := periodtime.Format( "M2/D2/Y" );
+
+ this.Column( relnew, ColumnName := periodname, StartDate := periodtime, EndDate := periodtime, TimeUnit := Translations::MP_GlobalParameters_Day() );
+
+ weekend := ( weekstart + Duration::Days( 6 ) ).Date();
+ if( ( weekend.Year() <> periodtime.Year() and weekend.Month() > 1 ) or ( abs( weekstart.Week() - periodtime.Week() ) > 1 and weekend.Year() = periodtime.Year() ) ){
+ weekstart := periodtime;
}
- if( endtime > maxdate ){
- endtime := maxdate;
+ if( periodtime = weekstart ){
+ weekperiodname := weekstart.Format( "M2/D2/Y" );
+ this.Column( relnew, ColumnName := weekperiodname, StartDate := weekstart, EndDate := ( weekstart.StartOfNextWeek() - Duration::Days( 1 ) ).Date(), TimeUnit := Translations::MP_GlobalParameters_Week() );
+
}
- if( timeunit = Translations::MP_GlobalParameters_Day() ){
- for( start := starttime; start <= endtime; start := start.DateTime().StartOfNextDay().Date() ){
- periodname := start.Format( "M2/D2/Y" );
- if( not exists( this, Column, column, column.StartDate() = start ) ){
- this.Column( relnew, ColumnName := periodname, StartDate := start, EndDate := start, TimeUnit := Translations::MP_GlobalParameters_Day() );
- }
- }
- }else if( timeunit = Translations::MP_GlobalParameters_Week() ){
- // weekstartstr := ' KW';
- for( start := starttime; start <= endtime; start := start.StartOfNextWeek() ){
- weekend := ( start.StartOfNextWeek() - Duration::Days( 1 ) ).Date();//.Concat( weekstartstr.Concat( weekend.Week().Format( 'N(LPad0(2))' ) ) )
-
- this.Column( relnew, ColumnName := weekend.Format( "M2/D2/Y" ), StartDate := start, EndDate := weekend, TimeUnit := Translations::MP_GlobalParameters_Week() );
- }
- }else if( timeunit = Translations::MP_GlobalParameters_Month() ){
- for( start := starttime; start <= endtime; start := start.StartOfNextMonth() ){
- monthend := ( start.StartOfNextMonth() - Duration::Days( 1 ) ).Date();//.Concat( ' ' ).Concat( monthend.Format( "MM", us_locale ).Concat( '/').Concat( [String]monthend.Month() ).Concat( '鏈�' ) )
- // us_locale := Locale::Construct( 'en_us' );
- this.Column( relnew, ColumnName := monthend.Format( "M2/D2/Y" ), StartDate := start, EndDate := monthend, TimeUnit := Translations::MP_GlobalParameters_Month() );
- }
+ if( ( monthstart.Year() <> periodtime.Year() and abs( monthstart.Month() - periodtime.Month() ) <> 11 ) or ( abs( monthstart.Month() - periodtime.Month() ) > 1 and monthstart.Year() = periodtime.Year() ) ){
+ monthstart := periodtime;
}
+ if( periodtime = monthstart ){
+ monthperiodname := monthstart.Format( "M2/D2/Y" );
+ enddate := ( monthstart.StartOfNextMonth() - Duration::Days( 1 ) ).Date();
+ this.Column( relnew, ColumnName := monthperiodname, StartDate := monthstart, EndDate := enddate, TimeUnit := Translations::MP_GlobalParameters_Month() );
+
+ }
+ weekstart := periodtime.StartOfNextWeek();
+ monthstart := periodtime.StartOfNextMonth();
}
- //weekstart := periods.Element( 0 );
- //monthstart := periods.Element( 0 );
- //traverse( periods, Elements, periodtime ){
- // periodname := periodtime.Format( "M2/D2/Y" );
- //
- // this.Column( relnew, Name := periodname, StartDate := periodtime, EndDate := periodtime, TimeUnit := Translations::MP_GlobalParameters_Day() );
- //
- // if( periodtime = weekstart ){
- // weekperiodname := weekstart.Format( "M2/D2/Y" );
- // this.Column( relnew, Name := weekperiodname, StartDate := weekstart, EndDate := ( weekstart + Duration::Days( 6 ) ).Date(), TimeUnit := Translations::MP_GlobalParameters_Week() );
- // weekstart := ( weekstart + Duration::Days( 7 ) ).Date();
- // }
- // if( periodtime = monthstart ){
- // monthperiodname := monthstart.Format( "M2/D2/Y" );
- // enddate := ( monthstart.StartOfNextMonth() - Duration::Days( 1 ) ).Date();
- // this.Column( relnew, Name := monthperiodname, StartDate := monthstart, EndDate := enddate, TimeUnit := Translations::MP_GlobalParameters_Month() );
- // monthstart := monthstart.StartOfNextMonth();
- // }
- //}
*]
}
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_GetRow.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_GetRow.qbl
index 46d2d9a..3777a40 100644
--- a/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_GetRow.qbl
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersion/Method_GetRow.qbl
@@ -1,7 +1,7 @@
Quintiq file version 2.0
#parent: #root
Method GetRow (
- const AssemblyOnlinePlanRow aoprow
+ const NewAssemblyOnlinePlanRow aoprow
) as AssemblyOnlinePlanVersionRow
{
TextBody:
diff --git a/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl b/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl
index 559e5c3..82afd96 100644
--- a/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl
+++ b/_Main/BL/Type_AssemblyOnlinePlanVersion/StaticMethod_RefreshData.qbl
@@ -8,31 +8,31 @@
TextBody:
[*
//鏍规嵁褰撳墠鐗堟湰鐨勮閰嶄笂绾胯鍒�
- //interface.AssemblyOnlinePlanVersion( relflush );
+ interface.AssemblyOnlinePlanVersion( relflush );
allunit := AssemblyOnlinePlanVersion::GetDefaultAllUnit();
- name := AssemblyOnlinePlanVersion::GetDefaultName();
- search := interface.AssemblyOnlinePlanVersionSearch( relnew, Product := allunit, ProductionLine := allunit, TimeUnit := Translations::MP_GlobalParameters_Day(), Unit := allunit, StartDate := Date::MinDate(), EndDate := Date::MaxDate() );
+ name := AssemblyOnlinePlanVersion::GetDefaultName();//search :=
+ interface.AssemblyOnlinePlanVersionSearch( relnew, Product := allunit, ProductionLine := allunit, TimeUnit := Translations::MP_GlobalParameters_Day(), Unit := allunit, StartDate := Date::MinDate(), EndDate := Date::MaxDate() );
table := selectobject( interface, AssemblyOnlinePlanVersion, version, not version.IsShow() );
if( isnull( table ) ){
table := interface.AssemblyOnlinePlanVersion( relnew, ID := name, Name := name );
}
- showtable := selectobject( interface, AssemblyOnlinePlanVersion, version, version.IsShow() );
- if( isnull( table ) ){
- showtable := interface.AssemblyOnlinePlanVersion( relnew, ID := name, Name := name, IsShow := true );
- }
- aopcolumns := selectuniquevalues( macroPlan, AssemblyOnlinePlanColumn, aopcolumn, aopcolumn.ColumnIndex() > 1 and not exists( table, Column, column, column.TimeUnit() = Translations::MP_GlobalParameters_Day() and column.StartDate() = aopcolumn.ColumnDate() ), aopcolumn.ColumnDate() );
- table.GenerateColumn( aopcolumns, search.TimeUnit(), search.StartDate(), search.EndDate() );
- traverse( macroPlan, AssemblyOnlinePlanRow, aoprow, aoprow.Type() = '1' ){
+ //showtable := selectobject( interface, AssemblyOnlinePlanVersion, version, version.IsShow() );
+ //if( isnull( table ) ){
+ // showtable := interface.AssemblyOnlinePlanVersion( relnew, ID := name, Name := name, IsShow := true );
+ //}
+ aopcolumns := selectuniquevalues( macroPlan, NewAssemblyOnlinePlanColumn, aopcolumn, not exists( table, Column, column, column.TimeUnit() = Translations::MP_GlobalParameters_Day() and column.StartDate() = aopcolumn.StartDate() ), aopcolumn.StartDate() );
+ table.GenerateColumn( aopcolumns );
+ traverse( macroPlan, NewAssemblyOnlinePlanRow, aoprow, aoprow.Type() = '1' ){
row := table.GetRow( aoprow );
- info( '---------------------', row.Type() );
- traverse( aoprow, AssemblyOnlinePlanCell, aopcell, aopcell.AssemblyOnlinePlanColumn().ColumnIndex() > 1 ){
- column := selectobject( table, Column, column, column.TimeUnit() = Translations::MP_GlobalParameters_Day() and column.StartDate() = aopcell.AssemblyOnlinePlanColumn().ColumnDate() );
+ info( '------------------------', row.Type() );
+ traverse( aoprow, NewAssemblyOnlinePlanCell, aopcell ){
+ column := selectobject( table, Column, column, column.TimeUnit() = Translations::MP_GlobalParameters_Day() and column.StartDate() = aopcell.NewAssemblyOnlinePlanColumn().StartDate() );
cell := selectobject( row, Cell, cell, cell.Column() = column );
cell.InventoryWeight( aopcell.InventoryWeight() );
- cell.ProductionSerialNumber( aopcell.ProductionSerialNumber() );
+ // cell.ProductionSerialNumber( aopcell.ProductionSerialNumber() );
cell.Quantity( aopcell.Quantity() );
- cell.Shift( aopcell.Shift() );
- cell.Value( aopcell.Value() );
+ // cell.Shift( aopcell.Shift() );
+ // cell.Value( aopcell.Value() );
}
}
//showtable.Generate( search, products );
diff --git a/_Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterfaceForSAPGet.qbl b/_Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterfaceForSAPGet.qbl
index 8a5e8c8..284443c 100644
--- a/_Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterfaceForSAPGet.qbl
+++ b/_Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterfaceForSAPGet.qbl
@@ -10,7 +10,7 @@
[*
// 鐢勫叞楦� Jul-22-2024 (created)
address := Translations::InterfaceDataset_SAP_Address();
- httpinterface := HTTPInterface::Create( address,80);
+ httpinterface := HTTPInterface::Create( address,8080);
httpinterface.PostMethod( false );
httpinterface.MediaType( Translations::InterfaceDataset_ContentType() );
try{
diff --git a/_Main/BL/Type_InventoryPlanArchiveCell/Attribute_ActualQuantity.qbl b/_Main/BL/Type_InventoryPlanArchiveCell/Attribute_ActualQuantity.qbl
new file mode 100644
index 0000000..bbfc303
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveCell/Attribute_ActualQuantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ActualQuantity
+{
+ #keys: '3[415136.0.1275901529][415136.0.1275901528][415136.0.1275901530]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveCell/Attribute_PlanQuantity.qbl b/_Main/BL/Type_InventoryPlanArchiveCell/Attribute_PlanQuantity.qbl
new file mode 100644
index 0000000..8bdb8a6
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveCell/Attribute_PlanQuantity.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute PlanQuantity
+{
+ #keys: '3[415136.0.1275901522][415136.0.1275901521][415136.0.1275901523]'
+ ValueType: Real
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveCell/_ROOT_Type_InventoryPlanArchiveCell.qbl b/_Main/BL/Type_InventoryPlanArchiveCell/_ROOT_Type_InventoryPlanArchiveCell.qbl
new file mode 100644
index 0000000..742cb0f
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveCell/_ROOT_Type_InventoryPlanArchiveCell.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type InventoryPlanArchiveCell
+{
+ #keys: '5[415136.0.1275901384][415136.0.1275901382][0.0.0][415136.0.1275901383][415136.0.1275901385]'
+ BaseType: Object
+ Description: '璁″垝搴撳瓨瀛樻。鍗曞厓鏍�'
+ StructuredName: 'InventoryPlanArchiveCells'
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_EndDate.qbl b/_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_EndDate.qbl
new file mode 100644
index 0000000..eb77522
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_EndDate.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute EndDate
+{
+ #keys: '3[415136.0.1275930135][415136.0.1275930134][415136.0.1275930136]'
+ Description: '缁撴潫鏃ユ湡'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_Name.qbl b/_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_Name.qbl
new file mode 100644
index 0000000..86e1cc9
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_Name.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Name
+{
+ #keys: '3[415136.0.1275930151][415136.0.1275930150][415136.0.1275930152]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_StartDate.qbl b/_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_StartDate.qbl
new file mode 100644
index 0000000..e109f62
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_StartDate.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StartDate
+{
+ #keys: '3[415136.0.1275930125][415136.0.1275930124][415136.0.1275930126]'
+ Description: '寮�濮嬫棩鏈�'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_TimeUnit.qbl b/_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_TimeUnit.qbl
new file mode 100644
index 0000000..4b0f996
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveColumn/Attribute_TimeUnit.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute TimeUnit
+{
+ #keys: '3[415136.0.1275930121][415136.0.1275930120][415136.0.1275930122]'
+ Description: '鏃ユ湡绫诲瀷'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveColumn/DefaultValue_TimeUnit.qbl b/_Main/BL/Type_InventoryPlanArchiveColumn/DefaultValue_TimeUnit.qbl
new file mode 100644
index 0000000..e29979e
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveColumn/DefaultValue_TimeUnit.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: TimeUnit
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveColumn/_ROOT_Type_InventoryPlanArchiveColumn.qbl b/_Main/BL/Type_InventoryPlanArchiveColumn/_ROOT_Type_InventoryPlanArchiveColumn.qbl
new file mode 100644
index 0000000..6cd7167
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveColumn/_ROOT_Type_InventoryPlanArchiveColumn.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type InventoryPlanArchiveColumn
+{
+ #keys: '5[415136.0.1275901379][415136.0.1275901377][0.0.0][415136.0.1275901378][415136.0.1275901380]'
+ BaseType: Object
+ Description: '璁″垝搴撳瓨瀛樻。鍒�'
+ StructuredName: 'InventoryPlanArchiveColumns'
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveRow/Attribute_Name.qbl b/_Main/BL/Type_InventoryPlanArchiveRow/Attribute_Name.qbl
new file mode 100644
index 0000000..b730b0e
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveRow/Attribute_Name.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Name
+{
+ #keys: '3[415136.0.1275901545][415136.0.1275901544][415136.0.1275901546]'
+ Description: '浜у搧鍚嶇О'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveRow/Attribute_Unit.qbl b/_Main/BL/Type_InventoryPlanArchiveRow/Attribute_Unit.qbl
new file mode 100644
index 0000000..bb40800
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveRow/Attribute_Unit.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Unit
+{
+ #keys: '3[415136.0.1275930165][415136.0.1275930164][415136.0.1275930166]'
+ Description: '宸ュ巶'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveRow/Method_Initialize.qbl b/_Main/BL/Type_InventoryPlanArchiveRow/Method_Initialize.qbl
new file mode 100644
index 0000000..ca2650c
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveRow/Method_Initialize.qbl
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: #root
+Method Initialize (
+ InventoryPlanArchiveColumn column
+)
+{
+ Description: '鍒濆鍖栧崟鍏冩牸'
+ TextBody:
+ [*
+ // 鐢勫叞楦� Jun-24-2024 (created)
+ cell := this.Cell( relnew, PlanQuantity := 0, ActualQuantity := 0 );
+
+ column.Cell( relinsert, cell );
+ *]
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveRow/Method_SetQuantity.qbl b/_Main/BL/Type_InventoryPlanArchiveRow/Method_SetQuantity.qbl
new file mode 100644
index 0000000..9896048
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveRow/Method_SetQuantity.qbl
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: #root
+Method SetQuantity (
+ InventoryPlanArchiveColumn column,
+ Real planqty,
+ Real actualaty
+)
+{
+ TextBody:
+ [*
+ // 鐢勫叞楦� Jun-24-2024 (created)
+ cell := selectobject( this, Cell, cell, cell.Column() = column );
+ cell.PlanQuantity( cell.PlanQuantity() + planqty );
+ cell.ActualQuantity( cell.ActualQuantity() + actualaty );
+ *]
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveRow/_ROOT_Type_InventoryPlanArchiveRow.qbl b/_Main/BL/Type_InventoryPlanArchiveRow/_ROOT_Type_InventoryPlanArchiveRow.qbl
new file mode 100644
index 0000000..18e1d6b
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveRow/_ROOT_Type_InventoryPlanArchiveRow.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type InventoryPlanArchiveRow
+{
+ #keys: '5[415136.0.1275901374][415136.0.1275901372][0.0.0][415136.0.1275901373][415136.0.1275901375]'
+ BaseType: Object
+ Description: '璁″垝搴撳瓨瀛樻。琛�'
+ StructuredName: 'InventoryPlanArchiveRows'
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/Attribute_ID.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/Attribute_ID.qbl
new file mode 100644
index 0000000..37fc517
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/Attribute_ID.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ID
+{
+ #keys: '3[415136.0.1275901479][415136.0.1275901478][415136.0.1275901480]'
+ IsReadOnly: true
+ ValueType: String
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/Attribute_IsShow.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/Attribute_IsShow.qbl
new file mode 100644
index 0000000..7391149
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/Attribute_IsShow.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute IsShow
+{
+ #keys: '3[415136.0.1275901487][415136.0.1275901486][415136.0.1275901488]'
+ Description: '鏄惁鏄剧ず'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/Attribute_Name.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/Attribute_Name.qbl
new file mode 100644
index 0000000..4d05186
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/Attribute_Name.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Name
+{
+ #keys: '3[415136.0.1275930106][415136.0.1275930105][415136.0.1275930107]'
+ Description: '鍚嶇О'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/DefaultValue_IsShow.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/DefaultValue_IsShow.qbl
new file mode 100644
index 0000000..8bd79cf
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/DefaultValue_IsShow.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ ISOValue: 'true'
+ TargetAttribute: IsShow
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/Method_GenerateColumn.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/Method_GenerateColumn.qbl
new file mode 100644
index 0000000..7a591b4
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/Method_GenerateColumn.qbl
@@ -0,0 +1,41 @@
+Quintiq file version 2.0
+#parent: #root
+Method GenerateColumn (
+ Dates periods
+)
+{
+ Description: '鐢熸垚鏃ユ湡鍒�'
+ TextBody:
+ [*
+ // 鐢勫叞楦� Jun-25-2024 (created)
+ weekstart := periods.Element( 0 );
+
+ monthstart := periods.Element( 0 );
+ traverse( periods, Elements, periodtime ){
+ periodname := periodtime.Format( "M2/D2/Y" );
+
+ this.Column( relnew, Name := periodname, StartDate := periodtime, EndDate := periodtime, TimeUnit := Translations::MP_GlobalParameters_Day() );
+
+ weekend := ( weekstart + Duration::Days( 6 ) ).Date();
+ if( ( weekend.Year() <> periodtime.Year() and weekend.Month() > 1 ) or ( abs( weekstart.Week() - periodtime.Week() ) > 1 and weekend.Year() = periodtime.Year() ) ){
+ weekstart := periodtime;
+ }
+ if( periodtime = weekstart ){
+ weekperiodname := weekstart.Format( "M2/D2/Y" );
+ this.Column( relnew, Name := weekperiodname, StartDate := weekstart, EndDate := ( weekstart.StartOfNextWeek() - Duration::Days( 1 ) ).Date(), TimeUnit := Translations::MP_GlobalParameters_Week() );
+
+ }
+ if( ( monthstart.Year() <> periodtime.Year() and abs( monthstart.Month() - periodtime.Month() ) <> 11 ) or ( abs( monthstart.Month() - periodtime.Month() ) > 1 and monthstart.Year() = periodtime.Year() ) ){
+ monthstart := periodtime;
+ }
+ if( periodtime = monthstart ){
+ monthperiodname := monthstart.Format( "M2/D2/Y" );
+ enddate := ( monthstart.StartOfNextMonth() - Duration::Days( 1 ) ).Date();
+ this.Column( relnew, Name := monthperiodname, StartDate := monthstart, EndDate := enddate, TimeUnit := Translations::MP_GlobalParameters_Month() );
+
+ }
+ weekstart := periodtime.StartOfNextWeek();
+ monthstart := periodtime.StartOfNextMonth();
+ }
+ *]
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/Method_GetColumnByTimeUnit.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/Method_GetColumnByTimeUnit.qbl
new file mode 100644
index 0000000..b4886eb
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/Method_GetColumnByTimeUnit.qbl
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: #root
+Method GetColumnByTimeUnit (
+ String unit,
+ Date period
+) as InventoryPlanArchiveColumn
+{
+ TextBody:
+ [*
+ // 鐢勫叞楦� Aug-7-2024 (created)
+ //periodname := period.Format( "M2/D2/Y" );
+
+ column := selectobject( this, Column, column, column.StartDate() <= period and column.EndDate() >= period and column.TimeUnit() = unit );
+
+ return column;
+ *]
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/Method_GetRowByUnit.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/Method_GetRowByUnit.qbl
new file mode 100644
index 0000000..e9db693
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/Method_GetRowByUnit.qbl
@@ -0,0 +1,21 @@
+Quintiq file version 2.0
+#parent: #root
+Method GetRowByUnit (
+ String product,
+ String unit
+) as InventoryPlanArchiveRow
+{
+ TextBody:
+ [*
+ // 鐢勫叞楦� Sep-6-2024 (created)
+ row := selectobject( this, Row, row, row.Name() = product and row.Unit() = unit );
+ if( isnull( row ) ){
+ //鍒濆鍖栧崟鍏冩牸
+ row := this.Row( relnew, Name := product, Unit := unit );
+ traverse( this, Column, column ){
+ row.Initialize( column );
+ }
+ }
+ return row;
+ *]
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GenerateData.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GenerateData.qbl
new file mode 100644
index 0000000..4c2dabe
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GenerateData.qbl
@@ -0,0 +1,72 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GenerateData (
+ MacroPlan macroPlan,
+ InterfaceDataset interfaceDataset
+)
+{
+ Description: '鐢熸垚璁″垝搴撳瓨瀛樻。鏁版嵁'
+ TextBody:
+ [*
+ interfaceDataset.InventoryPlanArchiveVersion( relflush );
+ info( '-------------------------Start---------------------');
+ allunit := AssemblyOnlinePlanVersion::GetDefaultAllUnit();
+ name := InventoryPlanArchiveVersion::GetDefaultName();
+ interfaceDataset.InventoryPlanArchiveVersionSearch( relnew, Product := allunit, TimeUnit := Translations::MP_GlobalParameters_Day(), Unit := allunit, StartDate := Date::MinDate(), EndDate := Date::MaxDate() );
+ table := selectobject( interfaceDataset, InventoryPlanArchiveVersion, version, not version.IsShow() );
+ if( isnull( table ) ){
+ table := interfaceDataset.InventoryPlanArchiveVersion( relnew, ID := name, Name := name );
+ }
+ //showtable := selectobject( interfaceDataset, InventoryPlanArchiveVersion, version, version.IsShow() );
+ //if( isnull( table ) ){
+ // showtable := interfaceDataset.AssemblyOnlinePlanVersion( relnew, ID := name, Name := name, IsShow := true );
+ //}
+ periods := selectuniquevalues( macroPlan, Period_MP, period, not period.IsHistorical() and period.TimeUnit() = Translations::MP_GlobalParameters_Day()
+ and not exists( table, Column, column, column.TimeUnit() = Translations::MP_GlobalParameters_Day() and column.StartDate() = period.StartDate() ), period.StartDate() );
+ table.GenerateColumn( periods );
+ actinventorytree := NamedValueTree::Create();
+ inventoryqrys := construct( Reals );
+ inventoryindex := 0;
+ traverse( interfaceDataset,InterfaceLoginfo.MachineStockData, actinventory ){
+ inventoryqrys.Add( actinventory.Total() );
+ actinventoryKey := actinventory.MaterialNo() + actinventory.DDay().AsQUILL();
+ actinventoryhandle := actinventorytree.GetHandle( actinventoryKey );
+ actinventorytree.Root().AddChild( actinventoryhandle,inventoryindex );
+ inventoryindex := inventoryindex + 1;
+ }
+ traverse( interfaceDataset,InterfaceLoginfo.FinishedEngineInventory,actinventory ){
+ product := selectobject( macroPlan, Product_MP, product, product.Notes() = actinventory.FourCode() );
+ if( not isnull( product ) ){
+ inventoryqrys.Add( actinventory.Total() );
+ actinventoryKey := actinventory.FourCode() + actinventory.DDay().AsQUILL();
+ actinventoryhandle := actinventorytree.GetHandle( actinventoryKey );
+ actinventorytree.Root().AddChild( actinventoryhandle,inventoryindex );
+ inventoryindex := inventoryindex + 1;
+ }
+ }
+ traverse ( macroPlan, Product_MP.ProductInStockingPoint_MP, pispmp, not pispmp.IsSystem() and pispmp.IsLeaf() ) {
+ unit := ifexpr( pispmp.StockingPointID().Regex( "澶ц繛" ) or pispmp.StockingPointID().Regex( "DL" ), FinancialProductionReport::GetDefaultDLUnit(), FinancialProductionReport::GetDefaultCCUnit() );
+ inventoryrow := table.GetRowByUnit( pispmp.ProductID(), unit );
+ traverse ( pispmp, ProductInStockingPointInPeriodPlanning.astype( ProductInStockingPointInPeriodPlanningLeaf ), pispippl, not pispippl.IsPeriodFrozen() ) {
+ startdate := pispippl.Start().Date();
+ daycolumn := table.GetColumnByTimeUnit( Translations::MP_GlobalParameters_Day(), startdate );
+ weekcolumn := table.GetColumnByTimeUnit( Translations::MP_GlobalParameters_Week(), startdate );
+ monthcolumn := table.GetColumnByTimeUnit( Translations::MP_GlobalParameters_Month(), startdate );
+ actinventoryKey := pispmp.ProductID() + startdate.AsQUILL();
+ actinventoryhandle := actinventorytree.GetHandle( actinventoryKey );
+ actinventoryindex := guard( actinventorytree.Root().Child( actinventoryhandle ),null( NamedValue ));
+
+ actinventoryqty := 0.0;
+ if( not isnull( actinventoryindex )){
+ actinventoryqty := inventoryqrys.Element( actinventoryindex.GetValueAsNumber() );
+ }
+ inventoryrow.SetQuantity( daycolumn, pispippl.InventoryLevelEnd(), actinventoryqty );
+ inventoryrow.SetQuantity( weekcolumn, pispippl.InventoryLevelEnd(), actinventoryqty );
+ inventoryrow.SetQuantity( monthcolumn, pispippl.InventoryLevelEnd(), actinventoryqty );
+
+ }
+ }
+
+ info( '-------------------------End---------------------');
+ *]
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GetDefaultName.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GetDefaultName.qbl
new file mode 100644
index 0000000..c0971f3
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GetDefaultName.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetDefaultName () const as String
+{
+ TextBody:
+ [*
+ // 鐢勫叞楦� Jun-25-2024 (created)
+ return 'Inventory plan archive';
+ *]
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/_ROOT_Type_InventoryPlanArchiveVersion.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/_ROOT_Type_InventoryPlanArchiveVersion.qbl
new file mode 100644
index 0000000..aa7a9f0
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/_ROOT_Type_InventoryPlanArchiveVersion.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type InventoryPlanArchiveVersion
+{
+ #keys: '5[415136.0.1275901356][415136.0.1275901354][0.0.0][415136.0.1275901355][415136.0.1275901357]'
+ BaseType: Object
+ Description: '璁″垝搴撳瓨瀛樻。'
+ StructuredName: 'InventoryPlanArchiveVersions'
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_EndDate.qbl b/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_EndDate.qbl
new file mode 100644
index 0000000..44a6a94
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_EndDate.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute EndDate
+{
+ #keys: '3[415136.0.1275930091][415136.0.1275930090][415136.0.1275930092]'
+ Description: '缁撴潫鏃ユ湡'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_Product.qbl b/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_Product.qbl
new file mode 100644
index 0000000..8d2d7a9
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_Product.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Product
+{
+ #keys: '3[415136.0.1275930083][415136.0.1275930082][415136.0.1275930084]'
+ Description: '浜у搧'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_StartDate.qbl b/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_StartDate.qbl
new file mode 100644
index 0000000..911b29c
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_StartDate.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute StartDate
+{
+ #keys: '3[415136.0.1275901469][415136.0.1275901468][415136.0.1275901470]'
+ Description: '寮�濮嬫椂闂�'
+ ValueType: Date
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_TimeUnit.qbl b/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_TimeUnit.qbl
new file mode 100644
index 0000000..b41ce64
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_TimeUnit.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute TimeUnit
+{
+ #keys: '3[415136.0.1275901459][415136.0.1275901458][415136.0.1275901460]'
+ Description: '鏃ユ湡绫诲瀷'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_Unit.qbl b/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_Unit.qbl
new file mode 100644
index 0000000..4cc4e18
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersionSearch/Attribute_Unit.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Unit
+{
+ #keys: '3[415136.0.1275901449][415136.0.1275901448][415136.0.1275901450]'
+ Description: '宸ュ巶'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersionSearch/_ROOT_Type_InventoryPlanArchiveVersionSearch.qbl b/_Main/BL/Type_InventoryPlanArchiveVersionSearch/_ROOT_Type_InventoryPlanArchiveVersionSearch.qbl
new file mode 100644
index 0000000..9fa4088
--- /dev/null
+++ b/_Main/BL/Type_InventoryPlanArchiveVersionSearch/_ROOT_Type_InventoryPlanArchiveVersionSearch.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type InventoryPlanArchiveVersionSearch
+{
+ #keys: '5[415136.0.1275930066][415136.0.1275930064][0.0.0][415136.0.1275930065][415136.0.1275930067]'
+ BaseType: Object
+ Description: '璁″垝搴撳瓨瀛樻。鏌ヨ鏉′欢'
+ StructuredName: 'InventoryPlanArchiveVersionSearchs'
+}
diff --git a/_Main/BL/Type_OfflinePlanArchiveVersion/Method_GenerateColumn.qbl b/_Main/BL/Type_OfflinePlanArchiveVersion/Method_GenerateColumn.qbl
index 1a0e80f..5e80a3f 100644
--- a/_Main/BL/Type_OfflinePlanArchiveVersion/Method_GenerateColumn.qbl
+++ b/_Main/BL/Type_OfflinePlanArchiveVersion/Method_GenerateColumn.qbl
@@ -1,65 +1,40 @@
Quintiq file version 2.0
#parent: #root
Method GenerateColumn (
- Dates periods,
- String timeunit,
- Date starttime,
- Date endtime
+ Dates periods
)
{
TextBody:
[*
// 鐢勫叞楦� Jun-25-2024 (created)
- mindate := min( periods, Elements, period, period );
- maxdate := max( periods, Elements, period, period );
- //鏌ヨ鏃ユ湡杩斿洖闇�瑕佸湪璁″垝鏃ユ湡涔嬪唴
- if( starttime < mindate and endtime > maxdate ){
- if( starttime < mindate ){
- starttime := mindate;
+ weekstart := periods.Element( 0 );
+
+ monthstart := periods.Element( 0 );
+ traverse( periods, Elements, periodtime ){
+ periodname := periodtime.Format( "M2/D2/Y" );
+
+ this.Column( relnew, ColumnName := periodname, StartDate := periodtime, EndDate := periodtime, TimeUnit := Translations::MP_GlobalParameters_Day() );
+
+ weekend := ( weekstart + Duration::Days( 6 ) ).Date();
+ if( ( weekend.Year() <> periodtime.Year() and weekend.Month() > 1 ) or ( abs( weekstart.Week() - periodtime.Week() ) > 1 and weekend.Year() = periodtime.Year() ) ){
+ weekstart := periodtime;
}
- if( endtime > maxdate ){
- endtime := maxdate;
+ if( periodtime = weekstart ){
+ weekperiodname := weekstart.Format( "M2/D2/Y" );
+ this.Column( relnew, ColumnName := weekperiodname, StartDate := weekstart, EndDate := ( weekstart.StartOfNextWeek() - Duration::Days( 1 ) ).Date(), TimeUnit := Translations::MP_GlobalParameters_Week() );
+
}
- if( timeunit = Translations::MP_GlobalParameters_Day() ){
- for( start := starttime; start <= endtime; start := start.DateTime().StartOfNextDay().Date() ){
- periodname := start.Format( "M2/D2/Y" );
- if( not exists( this, Column, column, column.StartDate() = start ) ){
- this.Column( relnew, ColumnName := periodname, StartDate := start, EndDate := start, TimeUnit := Translations::MP_GlobalParameters_Day() );
- }
- }
- }else if( timeunit = Translations::MP_GlobalParameters_Week() ){
- // weekstartstr := ' KW';
- for( start := starttime; start <= endtime; start := start.StartOfNextWeek() ){
- weekend := ( start.StartOfNextWeek() - Duration::Days( 1 ) ).Date();//.Concat( weekstartstr.Concat( weekend.Week().Format( 'N(LPad0(2))' ) ) )
-
- this.Column( relnew, ColumnName := weekend.Format( "M2/D2/Y" ), StartDate := start, EndDate := weekend, TimeUnit := Translations::MP_GlobalParameters_Week() );
- }
- }else if( timeunit = Translations::MP_GlobalParameters_Month() ){
- for( start := starttime; start <= endtime; start := start.StartOfNextMonth() ){
- monthend := ( start.StartOfNextMonth() - Duration::Days( 1 ) ).Date();//.Concat( ' ' ).Concat( monthend.Format( "MM", us_locale ).Concat( '/').Concat( [String]monthend.Month() ).Concat( '鏈�' ) )
- // us_locale := Locale::Construct( 'en_us' );
- this.Column( relnew, ColumnName := monthend.Format( "M2/D2/Y" ), StartDate := start, EndDate := monthend, TimeUnit := Translations::MP_GlobalParameters_Month() );
- }
+ if( ( monthstart.Year() <> periodtime.Year() and abs( monthstart.Month() - periodtime.Month() ) <> 11 ) or ( abs( monthstart.Month() - periodtime.Month() ) > 1 and monthstart.Year() = periodtime.Year() ) ){
+ monthstart := periodtime;
}
+ if( periodtime = monthstart ){
+ monthperiodname := monthstart.Format( "M2/D2/Y" );
+ enddate := ( monthstart.StartOfNextMonth() - Duration::Days( 1 ) ).Date();
+ this.Column( relnew, ColumnName := monthperiodname, StartDate := monthstart, EndDate := enddate, TimeUnit := Translations::MP_GlobalParameters_Month() );
+
+ }
+ weekstart := periodtime.StartOfNextWeek();
+ monthstart := periodtime.StartOfNextMonth();
}
- //weekstart := periods.Element( 0 );
- //monthstart := periods.Element( 0 );
- //traverse( periods, Elements, periodtime ){
- // periodname := periodtime.Format( "M2/D2/Y" );
- //
- // this.Column( relnew, Name := periodname, StartDate := periodtime, EndDate := periodtime, TimeUnit := Translations::MP_GlobalParameters_Day() );
- //
- // if( periodtime = weekstart ){
- // weekperiodname := weekstart.Format( "M2/D2/Y" );
- // this.Column( relnew, Name := weekperiodname, StartDate := weekstart, EndDate := ( weekstart + Duration::Days( 6 ) ).Date(), TimeUnit := Translations::MP_GlobalParameters_Week() );
- // weekstart := ( weekstart + Duration::Days( 7 ) ).Date();
- // }
- // if( periodtime = monthstart ){
- // monthperiodname := monthstart.Format( "M2/D2/Y" );
- // enddate := ( monthstart.StartOfNextMonth() - Duration::Days( 1 ) ).Date();
- // this.Column( relnew, Name := monthperiodname, StartDate := monthstart, EndDate := enddate, TimeUnit := Translations::MP_GlobalParameters_Month() );
- // monthstart := monthstart.StartOfNextMonth();
- // }
- //}
*]
}
diff --git a/_Main/BL/Type_OfflinePlanArchiveVersion/StaticMethod_RefreshData.qbl b/_Main/BL/Type_OfflinePlanArchiveVersion/StaticMethod_RefreshData.qbl
index 63b0a65..4424042 100644
--- a/_Main/BL/Type_OfflinePlanArchiveVersion/StaticMethod_RefreshData.qbl
+++ b/_Main/BL/Type_OfflinePlanArchiveVersion/StaticMethod_RefreshData.qbl
@@ -11,17 +11,17 @@
//鏍规嵁褰撳墠鐗堟湰鐨勪笅绾胯鍒�
allunit := OfflinePlanArchiveVersion::GetDefaultAllUnit();
name := OfflinePlanArchiveVersion::GetDefaultName();
- search := interface.OfflinePlanArchiveSearch( relnew, Product := allunit, ProductionLine := allunit, TimeUnit := Translations::MP_GlobalParameters_Day(), Unit := allunit, StartDate := Date::MinDate(), EndDate := Date::MaxDate() );
+ interface.OfflinePlanArchiveSearch( relnew, Product := allunit, ProductionLine := allunit, TimeUnit := Translations::MP_GlobalParameters_Day(), Unit := allunit, StartDate := Date::MinDate(), EndDate := Date::MaxDate() );
table := selectobject( interface, OfflinePlanArchiveVersion, version, not version.IsShow() );
if( isnull( table ) ){
table := interface.OfflinePlanArchiveVersion( relnew, ID := name, Name := name );
}
- showtable := selectobject( interface, OfflinePlanArchiveVersion, version, version.IsShow() );
- if( isnull( table ) ){
- showtable := interface.OfflinePlanArchiveVersion( relnew, ID := name, Name := name, IsShow := true );
- }
+ //showtable := selectobject( interface, OfflinePlanArchiveVersion, version, version.IsShow() );
+ //if( isnull( table ) ){
+ // showtable := interface.OfflinePlanArchiveVersion( relnew, ID := name, Name := name, IsShow := true );
+ //}
nopcolumns := selectuniquevalues( macroPlan, NewOfflinePlanTable.NewOfflinePlanColumn, nopcolumn, not exists( table, Column, column, column.TimeUnit() = Translations::MP_GlobalParameters_Day() and column.StartDate() = nopcolumn.StartDate() ), nopcolumn.StartDate() );
- table.GenerateColumn( nopcolumns, search.TimeUnit(), search.StartDate(), search.EndDate() );
+ table.GenerateColumn( nopcolumns );
noptable := maxobject( macroPlan, NewOfflinePlanTable, noptable, noptable.SaveDateTime() );
actproductiondatas := selectset( archive,ActualDailyProductionData,data,true );
actproductiontree := NamedValueTree::Create();
diff --git a/_Main/BL/Type_OfflinePlanArchiveVersionRow/Attribute_Name.qbl b/_Main/BL/Type_OfflinePlanArchiveVersionRow/Attribute_Name.qbl
new file mode 100644
index 0000000..89ce709
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanArchiveVersionRow/Attribute_Name.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Name
+{
+ #keys: '3[415136.0.1275901603][415136.0.1275901602][415136.0.1275901604]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_OfflinePlanArchiveVersionRow/DefaultValue_Name.qbl b/_Main/BL/Type_OfflinePlanArchiveVersionRow/DefaultValue_Name.qbl
new file mode 100644
index 0000000..86c3d59
--- /dev/null
+++ b/_Main/BL/Type_OfflinePlanArchiveVersionRow/DefaultValue_Name.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+ TargetAttribute: Name
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupArchiveReport.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupArchiveReport.def
index 5298ee8..e9f7f81 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupArchiveReport.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ActionBarGroupArchiveReport.def
@@ -34,7 +34,7 @@
Properties:
[
Image: 'PAPER_JET'
- Label: 'Offline plan archive'
+ Label: '涓嬬嚎璁″垝瀛樻。'
Taborder: 2
]
}
@@ -49,6 +49,17 @@
Taborder: 3
]
}
+ Component ButtonInventoryPlanArchiveReport
+ {
+ #keys: '[415136.0.1277502282]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Image: 'WAREHOUSE'
+ Label: '璁″垝搴撳瓨瀛樻。'
+ Taborder: 4
+ ]
+ }
]
Properties:
[
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupArchiveReport_ButtonInventoryPlanArchive.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupArchiveReport_ButtonInventoryPlanArchive.def
new file mode 100644
index 0000000..9d01171
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ActionBarGroupArchiveReport_ButtonInventoryPlanArchive.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: ActionBarGroupArchiveReport/ButtonInventoryPlanArchiveReport
+Response OnClick () id:Response_MacroPlanner_ActionBarGroupArchiveReport_ButtonInventoryPlanArchiveReport_OnClick
+{
+ #keys: '[415136.0.1277502334]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ QuillAction
+ {
+ Body:
+ [*
+ ApplicationScope.ViewManager().ResetUserViewById( "Inventory_plan_archive_report", true);
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_MatrixEditorTable\043384.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_MatrixEditorTable\043384.def"
index 02e669b..6e51dc0 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_MatrixEditorTable\043384.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_MatrixEditorTable\043384.def"
@@ -49,7 +49,7 @@
DataType: 'InterfaceDataset'
Description: "( search.Generation() = '<All>' or object.Product_MP().Generation() = search.Generation() ) and ( search.MqbMlb() = '<All>' or object.Product_MP().MQBMLB() = search.MqbMlb() ) and ( search.Power() = '<All>' or object.Product_MP().Power() = search.Power() )"
FilterArguments: 'search:QMacroPlanner::FormAssemblyOnlinePlanVersion.dhSearch'
- FixedFilter: "( search.Product() = '<All>' or object.ProductID() = search.Product() ) and ( search.ProductionLine() = '<All>' or object.ProductionLine() = search.ProductionLine() )"
+ FixedFilter: "( search.Product() = '<All>' or object.ProductID() = search.Product() ) and ( search.ProductionLine() = '<All>' or object.ProductionLine() = search.ProductionLine() ) and ( search.Unit() = '<All>' or object.Unit() = search.Unit() )"
Source: 'InterfaceDataset'
Taborder: 0
Transformation: 'AssemblyOnlinePlanVersion.Row'
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelHeader\043952.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelHeader\043952.def"
index 9268559..5d41390 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelHeader\043952.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormAssemblyOnlinePlanVersion/Component_PanelHeader\043952.def"
@@ -14,6 +14,7 @@
]
Properties:
[
+ FixedSize: true
Orientation: 'horizontal'
Taborder: 1
]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_MatrixEditorTable.def b/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_MatrixEditorTable.def
index f6b9390..f23ea10 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_MatrixEditorTable.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormCustomerDemandPPAIDS/Component_MatrixEditorTable.def
@@ -49,7 +49,7 @@
DataType: 'InterfaceDataset'
Description: "( search.Generation() = '<All>' or object.Product_MP().Generation() = search.Generation() ) and ( search.MqbMlb() = '<All>' or object.Product_MP().MQBMLB() = search.MqbMlb() ) and ( search.Power() = '<All>' or object.Product_MP().Power() = search.Power() )"
FilterArguments: 'search:QMacroPlanner::FormCustomerDemandPPAIDS.dhSearch'
- FixedFilter: "search.Product() = '<All>' or object.Name() = search.Product()"
+ FixedFilter: "search.Product() = '<All>' or object.Name() = search.Product() and ( search.Unit() = '<All>' or object.Factory() = search.Unit() )"
Source: 'InterfaceDataset'
Taborder: 0
Transformation: 'CustomerDemandIDS.Row'
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_MatrixEditorTable\043791.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_MatrixEditorTable\043791.def"
new file mode 100644
index 0000000..f9b1aa3
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_MatrixEditorTable\043791.def"
@@ -0,0 +1,105 @@
+Quintiq file version 2.0
+Component MatrixEditorTable id:MatrixEditorTable_791
+{
+ #keys: '[415136.0.1277502045]'
+ BaseType: 'WebMatrixEditor'
+ Children:
+ [
+ Component MatrixEditorCellTable
+ {
+ #keys: '[415136.0.1277502046]'
+ BaseType: 'WebMatrixEditorCell'
+ Children:
+ [
+ Component DataExtractorCells
+ {
+ #keys: '[415136.0.1277502047]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'InterfaceDataset'
+ FilterArguments: 'search:QMacroPlanner::FormAssemblyOnlinePlanVersion.dhSearch'
+ FixedFilter: 'object.Column().TimeUnit() = search.TimeUnit() and object.Column().StartDate() >= search.StartDate() and object.Column().StartDate() <= search.EndDate()'
+ Source: 'InterfaceDataset'
+ Taborder: 0
+ Transformation: 'InventoryPlanArchiveVersion.Row.Cell'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Attributes: 'PlanQuantity;ActualQuantity'
+ Column: 'Column'
+ Row: 'Row'
+ Taborder: 0
+ ]
+ }
+ Component MatrixEditorRowsTable
+ {
+ #keys: '[415136.0.1277502048]'
+ BaseType: 'WebMatrixEditorHeaderLevel'
+ Children:
+ [
+ Component DataExtractorRows
+ {
+ #keys: '[415136.0.1277502049]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'InterfaceDataset'
+ Description: "( search.Generation() = '<All>' or object.Product_MP().Generation() = search.Generation() ) and ( search.MqbMlb() = '<All>' or object.Product_MP().MQBMLB() = search.MqbMlb() ) and ( search.Power() = '<All>' or object.Product_MP().Power() = search.Power() )"
+ FilterArguments: 'search:QMacroPlanner::FormAssemblyOnlinePlanVersion.dhSearch'
+ FixedFilter: "( search.Product() = '<All>' or object.Name() = search.Product() ) and ( search.Unit() = '<All>' or object.Unit() = search.Unit() )"
+ Source: 'InterfaceDataset'
+ Taborder: 0
+ Transformation: 'InventoryPlanArchiveVersion.Row'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Legend: 'Name'
+ SortCriteria: 'Name'
+ Taborder: 1
+ ]
+ }
+ Component MatrixEditorColumnsTable
+ {
+ #keys: '[415136.0.1277502050]'
+ BaseType: 'WebMatrixEditorHeaderLevel'
+ Children:
+ [
+ Component DataExtractorColumns
+ {
+ #keys: '[415136.0.1277502051]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'InterfaceDataset'
+ FilterArguments: 'search:QMacroPlanner::FormAssemblyOnlinePlanVersion.dhSearch'
+ FixedFilter: 'object.TimeUnit() = search.TimeUnit() and ( search.StartDate().IsMinInfinity() or object.StartDate() >= search.StartDate() ) and ( search.EndDate().IsMaxInfinity() or object.StartDate() <= search.EndDate() )'
+ Source: 'InterfaceDataset'
+ Taborder: 0
+ Transformation: 'InventoryPlanArchiveVersion.Column'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Legend: 'Name'
+ SortCriteria: 'StartDate'
+ Taborder: 2
+ ]
+ }
+ #child: matrixEditorActionBarPageTable_1
+ #child: matrixeditorContextMenuTable_1
+ ]
+ Properties:
+ [
+ AllowMultipleAttributes: true
+ Columns: 'MatrixEditorColumnsTable'
+ ContextMenu: 'matrixeditorContextMenuTable'
+ Rows: 'MatrixEditorRowsTable'
+ Taborder: 0
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelHeader\043503.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelHeader\043503.def"
new file mode 100644
index 0000000..3996feb
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelHeader\043503.def"
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+Component PanelHeader id:PanelHeader_503
+{
+ #keys: '[415136.0.1277502010]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ #child: PanelUnit
+ #child: PanelOperation_414
+ #child: PanelTimeUnit_805
+ #child: PanelPeriod
+ #child: PanelProduct_133
+ ]
+ Properties:
+ [
+ FixedSize: true
+ Orientation: 'horizontal'
+ Taborder: 1
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelOperation\043414.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelOperation\043414.def"
new file mode 100644
index 0000000..2b58ea0
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelOperation\043414.def"
@@ -0,0 +1,24 @@
+Quintiq file version 2.0
+Component PanelOperation id:PanelOperation_414
+{
+ #keys: '[415136.0.1277502018]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component ButtonSearch
+ {
+ #keys: '[415136.0.1277502019]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Image: 'VIEW'
+ Taborder: 0
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 4
+ Visible: false
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelPeriod.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelPeriod.def
new file mode 100644
index 0000000..5e11bd8
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelPeriod.def
@@ -0,0 +1,35 @@
+Quintiq file version 2.0
+Component PanelPeriod
+{
+ #keys: '[415136.0.1277502013]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component DateSelectorStart
+ {
+ #keys: '[415136.0.1277502014]'
+ BaseType: 'WebDateSelector'
+ Properties:
+ [
+ Label: 'Start date'
+ Taborder: 0
+ ]
+ }
+ Component DateSelectorEnd
+ {
+ #keys: '[415136.0.1277502015]'
+ BaseType: 'WebDateSelector'
+ Properties:
+ [
+ Date: 9999-12-31
+ Label: 'End date'
+ Taborder: 1
+ ]
+ }
+ ]
+ Properties:
+ [
+ Orientation: 'horizontal'
+ Taborder: 2
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelProduct\043133.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelProduct\043133.def"
new file mode 100644
index 0000000..213e535
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelProduct\043133.def"
@@ -0,0 +1,26 @@
+Quintiq file version 2.0
+Component PanelProduct id:PanelProduct_133
+{
+ #keys: '[415136.0.1277502011]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component ddslProduct
+ {
+ #keys: '[415136.0.1277502012]'
+ BaseType: 'WebDropDownStringList'
+ Properties:
+ [
+ FixedSize: false
+ Label: 'Product'
+ Sorting: 'none'
+ Taborder: 0
+ ]
+ }
+ ]
+ Properties:
+ [
+ FixedSize: true
+ Taborder: 1
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelTable\043881.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelTable\043881.def"
new file mode 100644
index 0000000..e265e3f
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelTable\043881.def"
@@ -0,0 +1,14 @@
+Quintiq file version 2.0
+Component PanelTable id:PanelTable_881
+{
+ #keys: '[415136.0.1277502044]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ #child: MatrixEditorTable_791
+ ]
+ Properties:
+ [
+ Taborder: 2
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelTimeUnit\043805.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelTimeUnit\043805.def"
new file mode 100644
index 0000000..2e212a8
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelTimeUnit\043805.def"
@@ -0,0 +1,26 @@
+Quintiq file version 2.0
+Component PanelTimeUnit id:PanelTimeUnit_805
+{
+ #keys: '[415136.0.1277502016]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component RadioButtonGroupUseForTimeUnit
+ {
+ #keys: '[415136.0.1277502017]'
+ BaseType: 'WebRadioButtonGroup'
+ Properties:
+ [
+ ButtonLabels: 'Day;Week;Month'
+ ButtonValues: 'Day;Week;Month'
+ Orientation: 'horizontal'
+ Taborder: 0
+ Title: 'Periods'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 3
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelUnit.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelUnit.def
new file mode 100644
index 0000000..df6d463
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_PanelUnit.def
@@ -0,0 +1,24 @@
+Quintiq file version 2.0
+Component PanelUnit
+{
+ #keys: '[415136.0.1277502022]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component ddslUnit
+ {
+ #keys: '[415136.0.1277502023]'
+ BaseType: 'WebDropDownStringList'
+ Properties:
+ [
+ Label: 'Unit'
+ Taborder: 0
+ ]
+ }
+ ]
+ Properties:
+ [
+ FixedSize: true
+ Taborder: 0
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_matrixEditorActionBarPageTable\0431.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_matrixEditorActionBarPageTable\0431.def"
new file mode 100644
index 0000000..4f11591
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_matrixEditorActionBarPageTable\0431.def"
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component matrixEditorActionBarPageTable id:matrixEditorActionBarPageTable_1
+{
+ #keys: '[415136.0.1277502052]'
+ BaseType: 'matrixEditorActionBarPage'
+ Properties:
+ [
+ Taborder: 3
+ ]
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_matrixeditorContextMenuTable\0431.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_matrixeditorContextMenuTable\0431.def"
new file mode 100644
index 0000000..310365e
--- /dev/null
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Component_matrixeditorContextMenuTable\0431.def"
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component matrixeditorContextMenuTable id:matrixeditorContextMenuTable_1
+{
+ #keys: '[415136.0.1277502053]'
+ BaseType: 'matrixeditorContextMenu'
+ Properties:
+ [
+ Taborder: 4
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelPeriod_DateSelectorEnd_OnChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelPeriod_DateSelectorEnd_OnChanged.def
new file mode 100644
index 0000000..6d722a4
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelPeriod_DateSelectorEnd_OnChanged.def
@@ -0,0 +1,24 @@
+Quintiq file version 2.0
+#parent: PanelPeriod/DateSelectorEnd
+Response OnChanged () id:Response_PanelPeriod_DateSelectorEnd_OnChanged
+{
+ #keys: '[415136.0.1277502006]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebDateTimeFieldBase_OnChanged'
+ QuillAction
+ {
+ Body:
+ [*
+ //鏃ユ湡鏀瑰彉鍚庡埛鏂版樉绀�
+ if( this.Date() < DateSelectorStart.Date() ){
+ this.HintError( 'The end date cannot be less than the start date!' );
+ }else{
+ if( dhSearch.Data().EndDate() <> this.Date() ){
+ dhSearch.Data().EndDate( this.Date() );
+ // DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
+ }
+ }
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelPeriod_DateSelectorStart_OnChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelPeriod_DateSelectorStart_OnChanged.def
new file mode 100644
index 0000000..2c1808f
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelPeriod_DateSelectorStart_OnChanged.def
@@ -0,0 +1,24 @@
+Quintiq file version 2.0
+#parent: PanelPeriod/DateSelectorStart
+Response OnChanged () id:Response_PanelPeriod_DateSelectorStart_OnChanged
+{
+ #keys: '[415136.0.1277502007]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebDateTimeFieldBase_OnChanged'
+ QuillAction
+ {
+ Body:
+ [*
+ //鏃ユ湡鏀瑰彉鍚庡埛鏂版樉绀�
+ if( this.Date() > DateSelectorEnd.Date() ){
+ this.HintError( 'The start date cannot be later than the end date!' );
+ }else{
+ if( dhSearch.Data().StartDate() <> this.Date() ){
+ dhSearch.Data().StartDate( this.Date() );
+ // DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
+ }
+ }
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelProduct_133_ddslProduct_OnCreated.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelProduct_133_ddslProduct_OnCreated.def
new file mode 100644
index 0000000..46a0ff9
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelProduct_133_ddslProduct_OnCreated.def
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: PanelProduct_133/ddslProduct
+Response OnCreated () id:Response_PanelProduct_133_ddslProduct_OnCreated
+{
+ #keys: '[415136.0.1277502009]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebComponent_OnCreated'
+ QuillAction
+ {
+ Body:
+ [*
+ values := selectuniquevalues( InterfaceDataset, AssemblyOnlinePlanVersion.Row, row, true, row.ProductID() );
+
+ valueString := values.Concatenate( ";" );
+ valueString := selectuniquevalues( valueString.Tokenize( ";" ), Elements, tempS, true, tempS ).Concatenate( ";" );
+
+ valueString := "<All>" + ifexpr( valueString = "", "", ";" ) + valueString;
+
+ this.Strings( valueString );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelProduct_133_ddslProduct_OnSelectionChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelProduct_133_ddslProduct_OnSelectionChanged.def
new file mode 100644
index 0000000..dd4d1b6
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelProduct_133_ddslProduct_OnSelectionChanged.def
@@ -0,0 +1,19 @@
+Quintiq file version 2.0
+#parent: PanelProduct_133/ddslProduct
+Response OnSelectionChanged () id:Response_PanelProduct_133_ddslProduct_OnSelectionChanged
+{
+ #keys: '[415136.0.1277502008]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebDropDownStringList_OnSelectionChanged'
+ QuillAction
+ {
+ Body:
+ [*
+ if( not isnull( dhSearch.Data() ) and dhSearch.Data().Product() <> selection ){
+ dhSearch.Data().Product( selection );
+ // DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
+ }
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelTimeUnit_805_RadioButtonGroupUseForTimeUnit_OnChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelTimeUnit_805_RadioButtonGroupUseForTimeUnit_OnChanged.def
new file mode 100644
index 0000000..ca64cd0
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelTimeUnit_805_RadioButtonGroupUseForTimeUnit_OnChanged.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: PanelTimeUnit_805/RadioButtonGroupUseForTimeUnit
+Response OnChanged () id:Response_PanelTimeUnit_805_RadioButtonGroupUseForTimeUnit_OnChanged
+{
+ #keys: '[415136.0.1277502005]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebRadioButtonGroup_OnChanged'
+ QuillAction
+ {
+ Body:
+ [*
+ //鍖洪棿鏀瑰彉鍚庡埛鏂版樉绀�
+ if( dhSearch.Data().TimeUnit() <> this.BoundValue() ){
+ dhSearch.Data().TimeUnit( this.BoundValue() );
+ // DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
+ }
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelTimeUnit_805_RadioButtonGroupUseForTimeUnit_OnCreated.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelTimeUnit_805_RadioButtonGroupUseForTimeUnit_OnCreated.def
new file mode 100644
index 0000000..9e663e5
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelTimeUnit_805_RadioButtonGroupUseForTimeUnit_OnCreated.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: PanelTimeUnit_805/RadioButtonGroupUseForTimeUnit
+Response OnCreated () id:Response_PanelTimeUnit_805_RadioButtonGroupUseForTimeUnit_OnCreated
+{
+ #keys: '[415136.0.1277502004]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebComponent_OnCreated'
+ QuillAction
+ {
+ Body:
+ [*
+ this.ButtonValues( Translations::MP_GlobalParameters_Day() + ';' + Translations::MP_GlobalParameters_Week() + ';' + Translations::MP_GlobalParameters_Month() );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelUnit_ddslUnit_OnCreated.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelUnit_ddslUnit_OnCreated.def
new file mode 100644
index 0000000..d3b45c5
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelUnit_ddslUnit_OnCreated.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: PanelUnit/ddslUnit
+Response OnCreated () id:Response_PanelUnit_ddslUnit_OnCreated
+{
+ #keys: '[415136.0.1277502001]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebComponent_OnCreated'
+ QuillAction
+ {
+ Body:
+ [*
+ valueString := "All";
+
+ this.Strings( valueString.Concat( ";" ).Concat( FinancialProductionReport::GetDefaultCCUnit().Concat( ";" ) ).Concat( FinancialProductionReport::GetDefaultDLUnit() ) );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelUnit_ddslUnit_OnSelectionChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelUnit_ddslUnit_OnSelectionChanged.def
new file mode 100644
index 0000000..d90934c
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/Response_PanelUnit_ddslUnit_OnSelectionChanged.def
@@ -0,0 +1,19 @@
+Quintiq file version 2.0
+#parent: PanelUnit/ddslUnit
+Response OnSelectionChanged () id:Response_PanelUnit_ddslUnit_OnSelectionChanged
+{
+ #keys: '[415136.0.1277502000]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebDropDownStringList_OnSelectionChanged'
+ QuillAction
+ {
+ Body:
+ [*
+ if( not isnull( dhSearch.Data() ) and dhSearch.Data().Unit() <> selection ){
+ dhSearch.Data().Unit( selection );
+ // DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() );
+ }
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/_ROOT_Component_FormInventoryPlanArchive.def b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/_ROOT_Component_FormInventoryPlanArchive.def
new file mode 100644
index 0000000..0df74a2
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInventoryPlanArchive/_ROOT_Component_FormInventoryPlanArchive.def
@@ -0,0 +1,43 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent FormInventoryPlanArchive
+{
+ #keys: '[415136.0.1277501873]'
+ BaseType: 'WebForm'
+ Children:
+ [
+ Component dhSearch
+ {
+ #keys: '[415136.0.1277501926]'
+ BaseType: 'WebDataHolder'
+ Databinding: 'InventoryPlanArchiveVersionSearch'
+ Children:
+ [
+ Component deSearch id:deSearch_426
+ {
+ #keys: '[415136.0.1277501927]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'InterfaceDataset'
+ Source: 'InterfaceDataset'
+ Taborder: 0
+ Transformation: 'InventoryPlanArchiveVersionSearch'
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+ }
+ #child: PanelHeader_503
+ #child: PanelTable_881
+ ]
+ Properties:
+ [
+ Image: 'WAREHOUSE'
+ Title: '璁″垝搴撳瓨瀛樻。'
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/Component_MatrixEditorTable.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/Component_MatrixEditorTable.def
index 7849640..d73afda 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/Component_MatrixEditorTable.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/Component_MatrixEditorTable.def
@@ -49,7 +49,7 @@
DataType: 'InterfaceDataset'
Description: "( search.Generation() = '<All>' or object.Product_MP().Generation() = search.Generation() ) and ( search.MqbMlb() = '<All>' or object.Product_MP().MQBMLB() = search.MqbMlb() ) and ( search.Power() = '<All>' or object.Product_MP().Power() = search.Power() )"
FilterArguments: 'search:QMacroPlanner::FormAssemblyOnlinePlanVersion.dhSearch'
- FixedFilter: "( search.Product() = '<All>' or object.ProductID() = search.Product() ) and ( search.ProductionLine() = '<All>' or object.ProductionLine() = search.ProductionLine() )"
+ FixedFilter: "( search.Product() = '<All>' or object.ProductID() = search.Product() ) and ( search.ProductionLine() = '<All>' or object.ProductionLine() = search.ProductionLine() ) and ( search.Unit() = '<All>' or object.Unit() = search.Unit() )"
Source: 'InterfaceDataset'
Taborder: 0
Transformation: 'OfflinePlanArchiveVersion.Row'
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/Component_PanelHeader.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/Component_PanelHeader.def
index c507369..9799f95 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/Component_PanelHeader.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/Component_PanelHeader.def
@@ -14,6 +14,7 @@
]
Properties:
[
+ FixedSize: true
Orientation: 'horizontal'
Taborder: 1
]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/_ROOT_Component_FormOfflinePlanArchive.def b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/_ROOT_Component_FormOfflinePlanArchive.def
index df873ef..49b088f 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/_ROOT_Component_FormOfflinePlanArchive.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormOfflinePlanArchive/_ROOT_Component_FormOfflinePlanArchive.def
@@ -38,6 +38,6 @@
Properties:
[
Image: 'PAPER_JET'
- Title: 'Offline plan archive'
+ Title: '涓嬬嚎璁″垝瀛樻。'
]
}
diff --git a/_Main/UI/MacroPlannerWebApp/Views/Inventory_plan_archive_report.vw b/_Main/UI/MacroPlannerWebApp/Views/Inventory_plan_archive_report.vw
new file mode 100644
index 0000000..a8856d6
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Views/Inventory_plan_archive_report.vw
@@ -0,0 +1,77 @@
+Quintiq file version 2.0
+{
+ viewcontents
+ {
+ forms
+ {
+ form_FormInventoryPlanArchive
+ {
+ title: 'QMacroPlanner::FormInventoryPlanArchive'
+ shown: true
+ componentID: 'QMacroPlanner::FormInventoryPlanArchive'
+ layout
+ {
+ mode: 'open'
+ rowPosition: 1
+ rowSpan: 15
+ columnPosition: 1
+ columnSpan: 12
+ }
+ components
+ {
+ FormInventoryPlanArchive_PanelHeader
+ {
+ sizeRatio: 1
+ }
+ FormInventoryPlanArchive_PanelUnit
+ {
+ sizeRatio: 1
+ }
+ FormInventoryPlanArchive_PanelProduct
+ {
+ sizeRatio: 1
+ }
+ FormInventoryPlanArchive_PanelPeriod
+ {
+ sizeRatio: 1
+ }
+ FormInventoryPlanArchive_PanelTimeUnit
+ {
+ sizeRatio: 1
+ }
+ FormInventoryPlanArchive_PanelOperation
+ {
+ sizeRatio: 1
+ }
+ FormInventoryPlanArchive_PanelTable
+ {
+ sizeRatio: 1
+ }
+ FormInventoryPlanArchive_MatrixEditorTable
+ {
+ totalHeaderWidth: 200
+ attributeHeaderWidthRatio: 0.6
+ nameHeaderWidthRatio: 0.4
+ columnWidth: 100
+ horizontalGrid: true
+ verticalGrid: true
+ gridColor: '#c4c4c4'
+ }
+ }
+ }
+ }
+ userconfigurableinformation
+ {
+ }
+ page: ''
+ group: ''
+ index: 31
+ image: 'WAREHOUSE'
+ description: ''
+ }
+ formatversion: 2
+ id: 'Inventory_plan_archive_report'
+ name: 'Inventory plan archive report'
+ isglobal: false
+ isroot: true
+}
--
Gitblit v1.9.3