From acf70acb5438a3358d07978afdc0eb28950f40d5 Mon Sep 17 00:00:00 2001 From: lihongji <3117313295@qq.com> Date: 星期一, 12 八月 2024 16:28:01 +0800 Subject: [PATCH] Merge branch 'dev' of http://47.101.211.7:10101/r/VWED into dev --- _Main/BL/Type_FinancialSalesImportData/DefaultValue_Generation.qbl | 6 _Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultCCALineUnit.qbl | 11 + _Main/BL/Type_FinancialSalesImportData/Attribute_Quantity.qbl | 7 _Main/BL/Type_FinancialSalesSource/StaticMethod_Initialize.qbl | 18 +- _Main/BL/Type_FinancialSalesRow/Method_Initialize.qbl | 13 + _Main/BL/Relations/Relation_FinancialSalesImportData_MacroPlan_MacroPlan_FSImportData.qbl | 23 ++ _Main/BL/Type_FinancialSalesImportData/Attribute_MqbMlb.qbl | 7 _Main/BL/Type_FinancialSalesImportData/Attribute_Power.qbl | 7 _Main/BL/Type_FinancialSalesImportData/DefaultValue_Power.qbl | 6 _Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultDLMPLineUnit.qbl | 11 + _Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultCCALineUnit.qbl | 11 + _Main/BL/Type_FinancialSalesImportData/Function_CalcQuantity.qbl | 13 + _Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultDLALineUnit.qbl | 11 + _Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultDLALineUnit.qbl | 11 + _Main/BL/Type_FinancialSalesReport/Method_IsInUnit.qbl | 2 _Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultDLMPLineUnit.qbl | 11 + _Main/BL/Type_FinancialProductionRow/Method_Initialize#110.qbl | 1 _Main/BL/Type_FinancialSalesImportData/DefaultValue_Unit.qbl | 6 _Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl | 24 +- _Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl | 8 _Main/BL/Type_FinancialSalesReport/Method_GetRow.qbl | 8 _Main/BL/Type_EnginePipelineReport/Method_Generate.qbl | 39 ++++ _Main/BL/Relations/Relation_FinancialSalesImportData_Cell_FinancialSalesCell_FSImportData.qbl | 23 ++ _Main/BL/Type_FinancialSalesImportData/Attribute_StartDate.qbl | 7 _Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl | 16 +- _Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultCCALineUnit.qbl | 11 + _Main/BL/Type_FinancialSalesImportData/_ROOT_Type_FinancialSalesImportData.qbl | 10 + _Main/BL/Type_FinancialSalesImportData/Attribute_ProductID.qbl | 8 + _Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultCCMPLineUnit.qbl | 11 + _Main/BL/Type_FinancialProductionSource/StaticMethod_Initialize.qbl | 10 _Main/BL/Type_FinancialSalesImportData/Attribute_Generation.qbl | 7 _Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultDLALineUnit.qbl | 11 + _Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultCCMPLineUnit.qbl | 11 + _Main/BL/Type_FinancialSalesImportData/DefaultValue_ProductID.qbl | 6 _Main/BL/Type_FinancialSalesImportData/DefaultValue_MqbMlb.qbl | 6 _Main/BL/Type_FinancialSalesImportData/Attribute_Unit.qbl | 8 + _Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultDLMPLineUnit.qbl | 11 + _Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultCCMPLineUnit.qbl | 11 + _Main/BL/Type_FinancialSalesRow/Method_InitializeCell.qbl | 5 39 files changed, 379 insertions(+), 47 deletions(-) diff --git a/_Main/BL/Relations/Relation_FinancialSalesImportData_Cell_FinancialSalesCell_FSImportData.qbl b/_Main/BL/Relations/Relation_FinancialSalesImportData_Cell_FinancialSalesCell_FSImportData.qbl new file mode 100644 index 0000000..ca210bd --- /dev/null +++ b/_Main/BL/Relations/Relation_FinancialSalesImportData_Cell_FinancialSalesCell_FSImportData.qbl @@ -0,0 +1,23 @@ +Quintiq file version 2.0 +#parent: #root +Relation FinancialSalesImportData_Cell_FinancialSalesCell_FSImportData +{ + #keys: '1[415136.0.984654733]' + DefaultRelationStrategy + { + } + RelationSide.LeftSide Cell + { + #keys: '3[415136.0.984654735][415136.0.984654734][415136.0.984654736]' + Cardinality: '0to1' + ObjectDefinition: FinancialSalesImportData + OwningSide: 'Reference' + } + RelationSide.RightSide FSImportData + { + #keys: '3[415136.0.984654738][415136.0.984654737][415136.0.984654739]' + Cardinality: '0to1' + ObjectDefinition: FinancialSalesCell + OwningSide: 'Reference' + } +} diff --git a/_Main/BL/Relations/Relation_FinancialSalesImportData_MacroPlan_MacroPlan_FSImportData.qbl b/_Main/BL/Relations/Relation_FinancialSalesImportData_MacroPlan_MacroPlan_FSImportData.qbl new file mode 100644 index 0000000..6b3fb29 --- /dev/null +++ b/_Main/BL/Relations/Relation_FinancialSalesImportData_MacroPlan_MacroPlan_FSImportData.qbl @@ -0,0 +1,23 @@ +Quintiq file version 2.0 +#parent: #root +Relation FinancialSalesImportData_MacroPlan_MacroPlan_FSImportData +{ + #keys: '1[415136.0.984654720]' + DefaultRelationStrategy + { + } + RelationSide.LeftSide MacroPlan + { + #keys: '3[415136.0.984654722][415136.0.984654721][415136.0.984654723]' + Cardinality: '0to1' + ObjectDefinition: FinancialSalesImportData + OwningSide: 'Reference' + } + RelationSide.RightSide FSImportData + { + #keys: '3[415136.0.984654725][415136.0.984654724][415136.0.984654726]' + Cardinality: '1toN' + ObjectDefinition: MacroPlan + OwningSide: 'Owned' + } +} diff --git a/_Main/BL/Type_EnginePipelineReport/Method_Generate.qbl b/_Main/BL/Type_EnginePipelineReport/Method_Generate.qbl index 846f44a..3c3e269 100644 --- a/_Main/BL/Type_EnginePipelineReport/Method_Generate.qbl +++ b/_Main/BL/Type_EnginePipelineReport/Method_Generate.qbl @@ -9,7 +9,6 @@ [* // 鐢勫叞楦� Jun-25-2024 (created) table := selectobject( this, Source.Report, report, not report.IsShow() ); - //娓呯┖涔嬪墠瀛樺偍鐨勬樉绀烘暟鎹� this.Clear( search.TimeUnit(), search.StartDate(), search.EndDate() ); Transaction::Transaction().Propagate( attribute( EnginePipelineColumn, Index ) ); @@ -44,8 +43,22 @@ showrowccproduction := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), '闀挎槬浜ч噺', rownr + 2, false ); showrowdemand := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), '闇�姹�', rownr + 3, false ); rownr := rownr + 4; - traverse( models, Elements, model ){ - EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), model, rownr, false ); + modelsnr := rownr + 3; + models := construct( Strings ); + uniquemodels := selectuniquevalues( row, Cell.Demand, demand, true, demand.Model() ); + + traverse( uniquemodels, Elements, e ){ + + if( rownr < modelsnr ){ + EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), e, rownr, false ); + models.Add( e ); + rownr := rownr + 1; + } + } + + for( rownr := rownr; rownr < modelsnr; rownr ++ ){ + + EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), '', rownr, false ); rownr := rownr + 1; } showrowinventory := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), '搴撳瓨', rownr, false ); @@ -60,6 +73,7 @@ production := column.CellValue( relnew, Value := [String]cell.ProductionQuantity() ); showrowproduction.CellValue( relinsert, production ); sumproduction := selectobject( column, CellValue, c, c.Row() = sumrowproduction ); + if( isnull( sumproduction ) ){ sumproduction := column.CellValue( relnew, Value := [String]0 ); sumrowproduction.CellValue( relinsert, sumproduction ); @@ -71,6 +85,7 @@ dlproduction := column.CellValue( relnew, Value := [String]dlproductionquantity ); showrowdlproduction.CellValue( relinsert, dlproduction ); sumdlproduction := selectobject( column, CellValue, c, c.Row() = sumrowdlproduction ); + if( isnull( sumdlproduction ) ){ sumdlproduction := column.CellValue( relnew, Value := [String]0 ); sumrowdlproduction.CellValue( relinsert, sumdlproduction ); @@ -82,6 +97,7 @@ ccproduction := column.CellValue( relnew, Value := [String]ccproductionquantity ); showrowccproduction.CellValue( relinsert, ccproduction ); sumccproduction := selectobject( column, CellValue, c, c.Row() = sumrowccproduction ); + if( isnull( sumccproduction ) ){ sumccproduction := column.CellValue( relnew, Value := [String]0 ); sumrowccproduction.CellValue( relinsert, sumccproduction ); @@ -98,21 +114,22 @@ } sumdemand.Value( [String]( [Real]sumdemand.Value() + cell.DemandQuantity() ) ); - traverse( cell, Demand, demand ){ - demandrow := selectobject( this, Row, r, r.Name() = row.Name() and exists( r, CellValue, cv, cv.Value() = demand.Model() ) ); - sumdemandrow := selectobject( this, Row, r, r.Name() = 'SUM' and exists( r, CellValue, cv, cv.Value() = demand.Model() ) ); + traverse( cell, Demand, demand, exists( models, Elements, model, model = demand.Model() ) ){ + demandrow := selectobject( this, Row, r, r.Name() = row.Name() and exists( r, CellValue, cv, cv.Column() = attricolumn and cv.Value() = demand.Model() ) ); + sumdemandrow := selectobject( this, Row, r, r.Name() = 'SUM' and exists( r, CellValue, cv, cv.Column() = attricolumn and cv.Value() = demand.Model() ) ); if( not isnull( demandrow ) ){ demandcell := column.CellValue( relnew, Value := [String]demand.Quantity() ); demandrow.CellValue( relinsert, demandcell ); } - + if( not isnull( sumdemandrow ) ){ sumdemandcell := selectobject( column, CellValue, c, c.Row() = sumdemandrow ); if( isnull( sumdemandcell ) ){ sumdemandcell := column.CellValue( relnew, Value := [String]0 ); sumdemandrow.CellValue( relinsert, sumdemandcell ); } sumdemandcell.Value( [String]( [Real]sumdemandcell.Value() + demand.Quantity() ) ); + } } for( demandr := showrowdemand.RowNr() + 1; demandr < showrowinventory.RowNr(); demandr := demandr + 1 ){ @@ -140,11 +157,19 @@ traverse( this, Column, column ){ for( demandr := sumrowdemand.RowNr() + 1; demandr < sumrowinventory.RowNr(); demandr := demandr + 1 ){ demandrow := selectobject( this, Row, r, r.RowNr() = demandr ); + // info( '------------------14----------------' ); if( not isnull( demandrow ) and not exists( demandrow, CellValue, cv, cv.Column() = column ) ){ demandcell := column.CellValue( relnew, Value := '' ); demandrow.CellValue( relinsert, demandcell ); } } } + + rows := selectsortedset( this, Row, row, row.Name(), row.RowNr() ); + i := 0; + traverse( rows, Elements, e ){ + e.RowNr( i ); + i := i + 1; + } *] } diff --git a/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultCCALineUnit.qbl b/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultCCALineUnit.qbl new file mode 100644 index 0000000..3afba65 --- /dev/null +++ b/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultCCALineUnit.qbl @@ -0,0 +1,11 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod GetDefaultCCALineUnit () const as String +{ + TextBody: + [* + // 鐢勫叞楦� Jun-25-2024 (created) + return '闀挎槬瑁呴厤绾�'; + //return 'Assembly Plant (France)'; + *] +} diff --git a/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultCCMPLineUnit.qbl b/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultCCMPLineUnit.qbl new file mode 100644 index 0000000..0c32fd7 --- /dev/null +++ b/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultCCMPLineUnit.qbl @@ -0,0 +1,11 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod GetDefaultCCMPLineUnit () const as String +{ + TextBody: + [* + // 鐢勫叞楦� Jun-25-2024 (created) + return '闀挎槬鏈哄姞绾�'; + //return 'Assembly Plant (France)'; + *] +} diff --git a/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultDLALineUnit.qbl b/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultDLALineUnit.qbl new file mode 100644 index 0000000..153da57 --- /dev/null +++ b/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultDLALineUnit.qbl @@ -0,0 +1,11 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod GetDefaultDLALineUnit () const as String +{ + TextBody: + [* + // 鐢勫叞楦� Jun-25-2024 (created) + return '澶ц繛瑁呴厤绾�'; + //return 'Assembly Plant (France)'; + *] +} diff --git a/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultDLMPLineUnit.qbl b/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultDLMPLineUnit.qbl new file mode 100644 index 0000000..48e75f8 --- /dev/null +++ b/_Main/BL/Type_EnginePipelineReport/StaticMethod_GetDefaultDLMPLineUnit.qbl @@ -0,0 +1,11 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod GetDefaultDLMPLineUnit () const as String +{ + TextBody: + [* + // 鐢勫叞楦� Jun-25-2024 (created) + return '澶ц繛鏈哄姞绾�'; + //return 'Assembly Plant (France)'; + *] +} diff --git a/_Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl b/_Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl index b18fbac..727038c 100644 --- a/_Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl +++ b/_Main/BL/Type_EnginePipelineSource/StaticMethod_Initialize.qbl @@ -8,8 +8,12 @@ [* // 鐢勫叞楦� Jun-24-2024 (created) owner.EnginePipelineSource( relflush ); - ccunit := EnginePipelineReport::GetDefaultCCUnit(); - dlunit := EnginePipelineReport::GetDefaultDLUnit(); + //ccunit := EnginePipelineReport::GetDefaultCCUnit(); + //dlunit := EnginePipelineReport::GetDefaultDLUnit(); + ccalineunit := FinancialProductionReport::GetDefaultCCALineUnit(); + dlalienunit := FinancialProductionReport::GetDefaultDLALineUnit() + ccmplineunit := FinancialProductionReport::GetDefaultCCMPLineUnit() + dlmplineunit := FinancialProductionReport::GetDefaultDLMPLineUnit(); //allunit := EnginePipelineReport::GetDefaultAllUnit(); source := owner.EnginePipelineSource( relnew, Name := EnginePipelineReport::GetDefaultName() ); table := source.Report( relnew, ID := source.Name(), Name := source.Name() ); @@ -27,9 +31,9 @@ unit := stockingpoint.Unit(); parentunits := unit.GetAllParent(); //鏄惁灞炰簬闀挎槬宸ュ巶 - iscc := unit.ID() = ccunit or exists( parentunits, Elements, punit, punit.ID() = ccunit ); + iscc := unit.ID() = ccalineunit or unit.ID() = ccmplineunit or exists( parentunits, Elements, punit, punit.ID() = ccalineunit or punit.ID() = ccmplineunit ); //鏄惁灞炰簬澶ц繛宸ュ巶 - isdl := unit.ID() = dlunit or exists( parentunits, Elements, punit, punit.ID() = dlunit ); + isdl := unit.ID() = dlalienunit or unit.ID() = dlmplineunit or exists( parentunits, Elements, punit, punit.ID() = dlalienunit or punit.ID() = dlmplineunit ); traverse( stockingpoint, ProductInStockingPoint_MP, pisp, pisp.Product_MP().IsLeaf() and not pisp.IsSystem() ){ weekstart := owner.StartOfPlanning().Date(); @@ -41,20 +45,20 @@ daycolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Day(), pispip.Start().Date() ); //鍛� weekcolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Week(), weekstart ); - supplyquantity := [Real]ceil( pispip.NewSupplyQuantity() );//鍚戜笂鍙栨暣 - inventoryquantity := [Real]ceil( pispip.PlannedInventoryLevelEnd() );//鍚戜笂鍙栨暣 + supplyquantity := [Number]pispip.NewSupplyQuantity();//鍥涜垗浜斿叆 + inventoryquantity := [Number]pispip.PlannedInventoryLevelEnd();//鍥涜垗浜斿叆 //浜ч噺鏄姞鎬� if( iscc or isdl ){ - row.SetCellProductionValue( daycolumn, iscc, supplyquantity ); - row.SetCellProductionValue( weekcolumn, iscc, supplyquantity ); + row.SetCellProductionValue( daycolumn, iscc, [Real]supplyquantity ); + row.SetCellProductionValue( weekcolumn, iscc, [Real]supplyquantity ); } //搴撳瓨闇�瑕佸彇鏈�鍚庝竴澶� - row.SetCellInventoryValue( daycolumn, pispip.PlannedInventoryLevelEnd() ); + row.SetCellInventoryValue( daycolumn, [Real]inventoryquantity ); if( pispip.Start() = weekstart + Duration::Days( 6 ) or pispip.Period_MP() = endperiod ){ weekstart := ( weekstart + Duration::Days( 7 ) ).Date(); - row.SetCellInventoryValue( weekcolumn, inventoryquantity ); + row.SetCellInventoryValue( weekcolumn, [Real]inventoryquantity ); } } } diff --git a/_Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultCCALineUnit.qbl b/_Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultCCALineUnit.qbl new file mode 100644 index 0000000..3afba65 --- /dev/null +++ b/_Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultCCALineUnit.qbl @@ -0,0 +1,11 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod GetDefaultCCALineUnit () const as String +{ + TextBody: + [* + // 鐢勫叞楦� Jun-25-2024 (created) + return '闀挎槬瑁呴厤绾�'; + //return 'Assembly Plant (France)'; + *] +} diff --git a/_Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultCCMPLineUnit.qbl b/_Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultCCMPLineUnit.qbl new file mode 100644 index 0000000..0c32fd7 --- /dev/null +++ b/_Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultCCMPLineUnit.qbl @@ -0,0 +1,11 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod GetDefaultCCMPLineUnit () const as String +{ + TextBody: + [* + // 鐢勫叞楦� Jun-25-2024 (created) + return '闀挎槬鏈哄姞绾�'; + //return 'Assembly Plant (France)'; + *] +} diff --git a/_Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultDLALineUnit.qbl b/_Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultDLALineUnit.qbl new file mode 100644 index 0000000..153da57 --- /dev/null +++ b/_Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultDLALineUnit.qbl @@ -0,0 +1,11 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod GetDefaultDLALineUnit () const as String +{ + TextBody: + [* + // 鐢勫叞楦� Jun-25-2024 (created) + return '澶ц繛瑁呴厤绾�'; + //return 'Assembly Plant (France)'; + *] +} diff --git a/_Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultDLMPLineUnit.qbl b/_Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultDLMPLineUnit.qbl new file mode 100644 index 0000000..48e75f8 --- /dev/null +++ b/_Main/BL/Type_FinancialProductionReport/StaticMethod_GetDefaultDLMPLineUnit.qbl @@ -0,0 +1,11 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod GetDefaultDLMPLineUnit () const as String +{ + TextBody: + [* + // 鐢勫叞楦� Jun-25-2024 (created) + return '澶ц繛鏈哄姞绾�'; + //return 'Assembly Plant (France)'; + *] +} diff --git "a/_Main/BL/Type_FinancialProductionRow/Method_Initialize\043110.qbl" "b/_Main/BL/Type_FinancialProductionRow/Method_Initialize\043110.qbl" index f4e5b45..9f6d003 100644 --- "a/_Main/BL/Type_FinancialProductionRow/Method_Initialize\043110.qbl" +++ "b/_Main/BL/Type_FinancialProductionRow/Method_Initialize\043110.qbl" @@ -6,6 +6,7 @@ String unit ) { + Description: '鍒濆鍖栧崟鍏冩牸' TextBody: [* // 鐢勫叞楦� Jun-24-2024 (created) diff --git a/_Main/BL/Type_FinancialProductionSource/StaticMethod_Initialize.qbl b/_Main/BL/Type_FinancialProductionSource/StaticMethod_Initialize.qbl index 90d0b02..a7ebc07 100644 --- a/_Main/BL/Type_FinancialProductionSource/StaticMethod_Initialize.qbl +++ b/_Main/BL/Type_FinancialProductionSource/StaticMethod_Initialize.qbl @@ -11,6 +11,10 @@ owner.FPImportData( relflush ); ccunit := FinancialProductionReport::GetDefaultCCUnit(); dlunit := FinancialProductionReport::GetDefaultDLUnit(); + ccalineunit := FinancialProductionReport::GetDefaultCCALineUnit(); + dlalienunit := FinancialProductionReport::GetDefaultDLALineUnit() + ccmplineunit := FinancialProductionReport::GetDefaultCCMPLineUnit() + dlmplineunit := FinancialProductionReport::GetDefaultDLMPLineUnit(); allunit := FinancialProductionReport::GetDefaultAllUnit(); source := owner.FinancialProductionSource( relnew, IsImport := false, Name := FinancialProductionReport::GetDefaultName() ); table := source.FinancialProductionReport( relnew, ID := source.Name(), Name := source.Name(), IsImport := false ); @@ -35,9 +39,9 @@ unit := stockingpoint.Unit(); parentunits := unit.GetAllParent(); //鏄惁灞炰簬闀挎槬宸ュ巶 - iscc := unit.ID() = ccunit or exists( parentunits, Elements, punit, punit.ID() = ccunit ); + iscc := unit.ID() = ccalineunit or unit.ID() = ccmplineunit or exists( parentunits, Elements, punit, punit.ID() = ccalineunit or punit.ID() = ccmplineunit ); //鏄惁灞炰簬澶ц繛宸ュ巶 - isdl := unit.ID() = dlunit or exists( parentunits, Elements, punit, punit.ID() = dlunit ); + isdl := unit.ID() = dlalienunit or unit.ID() = dlmplineunit or exists( parentunits, Elements, punit, punit.ID() = dlalienunit or punit.ID() = dlmplineunit ); if( iscc or isdl ){ traverse( stockingpoint, ProductInStockingPoint_MP, pisp, pisp.Product_MP().IsLeaf() ){ //鑾峰彇宸ュ巶琛� @@ -52,7 +56,7 @@ ){ periodtime := pispip.Start().StartOfMonth().Date(); periodname := periodtime.Format( "M2/D2/Y" ); - quantity := ceil( pispip.NewSupplyQuantity() );//鍚戜笂鍙栨暣 + quantity := [Number]pispip.NewSupplyQuantity();//鍥涜垗浜斿叆 column := selectobject( table, FinancialProductionColumn, column, column.Name() = periodname and column.Period() = periodtime ); diff --git a/_Main/BL/Type_FinancialSalesImportData/Attribute_Generation.qbl b/_Main/BL/Type_FinancialSalesImportData/Attribute_Generation.qbl new file mode 100644 index 0000000..9ddab1f --- /dev/null +++ b/_Main/BL/Type_FinancialSalesImportData/Attribute_Generation.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute Generation +{ + #keys: '3[415136.0.984654696][415136.0.984654695][415136.0.984654697]' + ValueType: String +} diff --git a/_Main/BL/Type_FinancialSalesImportData/Attribute_MqbMlb.qbl b/_Main/BL/Type_FinancialSalesImportData/Attribute_MqbMlb.qbl new file mode 100644 index 0000000..904c6ff --- /dev/null +++ b/_Main/BL/Type_FinancialSalesImportData/Attribute_MqbMlb.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute MqbMlb +{ + #keys: '3[415136.0.984654699][415136.0.984654698][415136.0.984654700]' + ValueType: String +} diff --git a/_Main/BL/Type_FinancialSalesImportData/Attribute_Power.qbl b/_Main/BL/Type_FinancialSalesImportData/Attribute_Power.qbl new file mode 100644 index 0000000..415414c --- /dev/null +++ b/_Main/BL/Type_FinancialSalesImportData/Attribute_Power.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute Power +{ + #keys: '3[415136.0.984654702][415136.0.984654701][415136.0.984654703]' + ValueType: String +} diff --git a/_Main/BL/Type_FinancialSalesImportData/Attribute_ProductID.qbl b/_Main/BL/Type_FinancialSalesImportData/Attribute_ProductID.qbl new file mode 100644 index 0000000..67d9741 --- /dev/null +++ b/_Main/BL/Type_FinancialSalesImportData/Attribute_ProductID.qbl @@ -0,0 +1,8 @@ +Quintiq file version 2.0 +#parent: #root +Attribute ProductID +{ + #keys: '3[415136.0.984654705][415136.0.984654704][415136.0.984654706]' + Description: '浜у搧ID' + ValueType: String +} diff --git a/_Main/BL/Type_FinancialSalesImportData/Attribute_Quantity.qbl b/_Main/BL/Type_FinancialSalesImportData/Attribute_Quantity.qbl new file mode 100644 index 0000000..1b2d6cd --- /dev/null +++ b/_Main/BL/Type_FinancialSalesImportData/Attribute_Quantity.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute Quantity +{ + #keys: '3[415136.0.984654708][415136.0.984654707][415136.0.984654709]' + ValueType: Real +} diff --git a/_Main/BL/Type_FinancialSalesImportData/Attribute_StartDate.qbl b/_Main/BL/Type_FinancialSalesImportData/Attribute_StartDate.qbl new file mode 100644 index 0000000..ae1a6f4 --- /dev/null +++ b/_Main/BL/Type_FinancialSalesImportData/Attribute_StartDate.qbl @@ -0,0 +1,7 @@ +Quintiq file version 2.0 +#parent: #root +Attribute StartDate +{ + #keys: '3[415136.0.984654711][415136.0.984654710][415136.0.984654712]' + ValueType: Date +} diff --git a/_Main/BL/Type_FinancialSalesImportData/Attribute_Unit.qbl b/_Main/BL/Type_FinancialSalesImportData/Attribute_Unit.qbl new file mode 100644 index 0000000..900f457 --- /dev/null +++ b/_Main/BL/Type_FinancialSalesImportData/Attribute_Unit.qbl @@ -0,0 +1,8 @@ +Quintiq file version 2.0 +#parent: #root +Attribute Unit +{ + #keys: '3[415136.0.984654714][415136.0.984654713][415136.0.984654715]' + Description: '宸ュ巶鍚嶇О' + ValueType: String +} diff --git a/_Main/BL/Type_FinancialSalesImportData/DefaultValue_Generation.qbl b/_Main/BL/Type_FinancialSalesImportData/DefaultValue_Generation.qbl new file mode 100644 index 0000000..9e5b51e --- /dev/null +++ b/_Main/BL/Type_FinancialSalesImportData/DefaultValue_Generation.qbl @@ -0,0 +1,6 @@ +Quintiq file version 2.0 +#parent: #root +DefaultValue +{ + TargetAttribute: Generation +} diff --git a/_Main/BL/Type_FinancialSalesImportData/DefaultValue_MqbMlb.qbl b/_Main/BL/Type_FinancialSalesImportData/DefaultValue_MqbMlb.qbl new file mode 100644 index 0000000..78982c5 --- /dev/null +++ b/_Main/BL/Type_FinancialSalesImportData/DefaultValue_MqbMlb.qbl @@ -0,0 +1,6 @@ +Quintiq file version 2.0 +#parent: #root +DefaultValue +{ + TargetAttribute: MqbMlb +} diff --git a/_Main/BL/Type_FinancialSalesImportData/DefaultValue_Power.qbl b/_Main/BL/Type_FinancialSalesImportData/DefaultValue_Power.qbl new file mode 100644 index 0000000..4922731 --- /dev/null +++ b/_Main/BL/Type_FinancialSalesImportData/DefaultValue_Power.qbl @@ -0,0 +1,6 @@ +Quintiq file version 2.0 +#parent: #root +DefaultValue +{ + TargetAttribute: Power +} diff --git a/_Main/BL/Type_FinancialSalesImportData/DefaultValue_ProductID.qbl b/_Main/BL/Type_FinancialSalesImportData/DefaultValue_ProductID.qbl new file mode 100644 index 0000000..98649b2 --- /dev/null +++ b/_Main/BL/Type_FinancialSalesImportData/DefaultValue_ProductID.qbl @@ -0,0 +1,6 @@ +Quintiq file version 2.0 +#parent: #root +DefaultValue +{ + TargetAttribute: ProductID +} diff --git a/_Main/BL/Type_FinancialSalesImportData/DefaultValue_Unit.qbl b/_Main/BL/Type_FinancialSalesImportData/DefaultValue_Unit.qbl new file mode 100644 index 0000000..7e60e2c --- /dev/null +++ b/_Main/BL/Type_FinancialSalesImportData/DefaultValue_Unit.qbl @@ -0,0 +1,6 @@ +Quintiq file version 2.0 +#parent: #root +DefaultValue +{ + TargetAttribute: Unit +} diff --git a/_Main/BL/Type_FinancialSalesImportData/Function_CalcQuantity.qbl b/_Main/BL/Type_FinancialSalesImportData/Function_CalcQuantity.qbl new file mode 100644 index 0000000..f8f1de8 --- /dev/null +++ b/_Main/BL/Type_FinancialSalesImportData/Function_CalcQuantity.qbl @@ -0,0 +1,13 @@ +Quintiq file version 2.0 +#parent: #root +Function CalcQuantity +{ + TextBody: + [* + // 鐢勫叞楦� Aug-9-2024 (created) + + value := guard( [Number]this.Cell().Value(), 0 ); + + this.Quantity( value ); + *] +} diff --git a/_Main/BL/Type_FinancialSalesImportData/_ROOT_Type_FinancialSalesImportData.qbl b/_Main/BL/Type_FinancialSalesImportData/_ROOT_Type_FinancialSalesImportData.qbl new file mode 100644 index 0000000..48b4d84 --- /dev/null +++ b/_Main/BL/Type_FinancialSalesImportData/_ROOT_Type_FinancialSalesImportData.qbl @@ -0,0 +1,10 @@ +Quintiq file version 2.0 +#root +#parent: #DomainModel +Type FinancialSalesImportData +{ + #keys: '5[415136.0.984654693][415136.0.984654691][0.0.0][415136.0.984654692][415136.0.984654694]' + BaseType: Object + Description: '璐㈠姟閿�鎶ヨ〃浜岀淮琛�' + StructuredName: 'FinancialSalesImportDatas' +} diff --git a/_Main/BL/Type_FinancialSalesReport/Method_GetRow.qbl b/_Main/BL/Type_FinancialSalesReport/Method_GetRow.qbl index 6cbc77d..82d945f 100644 --- a/_Main/BL/Type_FinancialSalesReport/Method_GetRow.qbl +++ b/_Main/BL/Type_FinancialSalesReport/Method_GetRow.qbl @@ -2,18 +2,18 @@ #parent: #root Method GetRow ( String salessegment, - String product + Product_MP product ) as FinancialSalesRow { TextBody: [* // 鐢勫叞楦� Jun-28-2024 (created) - row := selectobject( this, FinancialSalesRow, row, row.Name() = product and row.Unit() = salessegment ); + row := selectobject( this, FinancialSalesRow, row, row.Name() = product.ID() and row.Unit() = salessegment ); if( isnull( row ) ){ - row := this.FinancialSalesRow( relnew, Name := product, Unit := salessegment ); + row := this.FinancialSalesRow( relnew, Name := product.ID(), Unit := salessegment ); //鍒濆鍖栧崟鍏冩牸 - row.InitializeCell( this ); + row.InitializeCell( this, product ); } return row; diff --git a/_Main/BL/Type_FinancialSalesReport/Method_IsInUnit.qbl b/_Main/BL/Type_FinancialSalesReport/Method_IsInUnit.qbl index 02e06b4..57394ad 100644 --- a/_Main/BL/Type_FinancialSalesReport/Method_IsInUnit.qbl +++ b/_Main/BL/Type_FinancialSalesReport/Method_IsInUnit.qbl @@ -11,6 +11,6 @@ // 鐢勫叞楦� Aug-5-2024 (created) unit := sp.Unit(); parentunits := unit.GetAllParent(); - return unit.ID() = unitname or exists( parentunits, Elements, punit, punit.ID() = unitname ); + return sp.ID() = unitname or unit.ID() = unitname or exists( parentunits, Elements, punit, punit.ID() = unitname ); *] } diff --git a/_Main/BL/Type_FinancialSalesRow/Method_Initialize.qbl b/_Main/BL/Type_FinancialSalesRow/Method_Initialize.qbl index e262727..658b23c 100644 --- a/_Main/BL/Type_FinancialSalesRow/Method_Initialize.qbl +++ b/_Main/BL/Type_FinancialSalesRow/Method_Initialize.qbl @@ -2,14 +2,25 @@ #parent: #root Method Initialize ( FinancialSalesColumn column, + Product_MP product, String unit ) { + Description: '鍒濆鍖栧崟鍏冩牸' TextBody: [* - // 鐢勫叞楦� Jun-24-2024 (created) + // 鐢勫叞楦� Jun-24-2024 (created) cell := column.FinancialSalesCell( relnew, Value := '' ); this.FinancialSalesCell( relinsert, cell ); + if( unit <> FinancialProductionReport::GetDefaultAllUnit() ){ + importdata := product.MacroPlan().FSImportData( relnew, Generation := product.Generation() + , MqbMlb := product.MQBMLB() + , Power := product.Power() + , ProductID := product.ID() + , StartDate := column.Period() + , Unit := unit ); + importdata.Cell( relset, cell ); + } *] } diff --git a/_Main/BL/Type_FinancialSalesRow/Method_InitializeCell.qbl b/_Main/BL/Type_FinancialSalesRow/Method_InitializeCell.qbl index 0c6ebc7..a578477 100644 --- a/_Main/BL/Type_FinancialSalesRow/Method_InitializeCell.qbl +++ b/_Main/BL/Type_FinancialSalesRow/Method_InitializeCell.qbl @@ -1,14 +1,15 @@ Quintiq file version 2.0 #parent: #root Method InitializeCell ( - FinancialSalesReport table + FinancialSalesReport table, + Product_MP product ) { TextBody: [* // 鐢勫叞楦� Jun-28-2024 (created) traverse( table, FinancialSalesColumn, column ){ - this.Initialize( column, this.Unit() ); + this.Initialize( column, product, this.Unit() ); } *] } diff --git a/_Main/BL/Type_FinancialSalesSource/StaticMethod_Initialize.qbl b/_Main/BL/Type_FinancialSalesSource/StaticMethod_Initialize.qbl index cf1176e..e2ac2ed 100644 --- a/_Main/BL/Type_FinancialSalesSource/StaticMethod_Initialize.qbl +++ b/_Main/BL/Type_FinancialSalesSource/StaticMethod_Initialize.qbl @@ -46,9 +46,9 @@ if( ( iscc and forecast.Product_MP().MQBMLB() = 'MLB' ) or isdl ){ product := forecast.Product_MP(); //鑾峰彇鍚堣琛� - allrow := table.GetRow( allunit, product.ID() ); + allrow := table.GetRow( allunit, product ); //鑾峰彇宸ュ巶琛� - factoryrow := table.GetRow( ifexpr( iscc and forecast.Product_MP().MQBMLB() = 'MLB', ccunit, dlunit ), product.ID() ); + factoryrow := table.GetRow( ifexpr( iscc and forecast.Product_MP().MQBMLB() = 'MLB', ccunit, dlunit ), product ); if( products.Find( product ) < 0 ){ products.Add( product ); @@ -59,7 +59,7 @@ // info( '-------------------------', periodname, periodtime ); column := selectobject( table, FinancialSalesColumn, column, column.Name() = periodname and column.Period() = periodtime ); // info( '-------------------------', column.Name() ); - quantity := ceil( psdip.Quantity() );//鍚戜笂鍙栨暣 + quantity := [Number]psdip.Quantity();//鍥涜垗浜斿叆 factoryrow.Initialize( column, quantity ); allrow.Initialize( column, quantity ); @@ -74,13 +74,13 @@ // iscc := unit.ID() = ccspline or exists( parentunits, Elements, punit, punit.ID() = ccspline ); if( table.IsInUnit( stockingpoint, ccspline ) ){ traverse( stockingpoint, ProductInStockingPoint_MP, pisp, pisp.Product_MP().IsLeaf() and pisp.Product_MP().MQBMLB() = 'MQB' ){//浜у搧涓篗QB - allrow := table.GetRow( allunit, pisp.ProductID() ); - ccrow := table.GetRow( ccunit, pisp.ProductID() ); + allrow := table.GetRow( allunit, pisp.Product_MP() ); + ccrow := table.GetRow( ccunit, pisp.Product_MP() ); traverse( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical() and pispip.Period_MP().StartDate() < startofnextyear ){ periodtime := pispip.Start().StartOfMonth().Date(); periodname := periodtime.Format( "M2/D2/Y" ); column := selectobject( table, FinancialSalesColumn, column, column.Name() = periodname and column.Period() = periodtime ); - quantity := ceil( pispip.DependentDemandAndSalesDemandQuantity() );//鍚戜笂鍙栨暣 + quantity := [Number]pispip.DependentDemandAndSalesDemandQuantity();//鍥涜垗浜斿叆 ccrow.Initialize( column, quantity );//鍙朤otal Demand瀛楁鎸夋湀姹囨�婚渶姹傛暟閲� allrow.Initialize( column, quantity ); @@ -104,11 +104,11 @@ column := selectobject( table, FinancialSalesColumn, column, column.Name() = periodname and column.Period() = periodtime ); traverse( trip, ProductInTrip, pit ){ - quantity := ceil( pit.Quantity() );//鍚戜笂鍙栨暣 - dlrow := table.GetRow( dlunit, pit.ProductID() ); + quantity := [Number]pit.Quantity();//鍥涜垗浜斿叆 + dlrow := table.GetRow( dlunit, pit.Product_MP() ); dlrow.Initialize( column, quantity );//姹囨�绘暟閲� - allrow := table.GetRow( allunit, pit.ProductID() ); + allrow := table.GetRow( allunit, pit.Product_MP() ); allrow.Initialize( column, quantity ); } } diff --git a/_Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultCCALineUnit.qbl b/_Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultCCALineUnit.qbl new file mode 100644 index 0000000..3afba65 --- /dev/null +++ b/_Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultCCALineUnit.qbl @@ -0,0 +1,11 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod GetDefaultCCALineUnit () const as String +{ + TextBody: + [* + // 鐢勫叞楦� Jun-25-2024 (created) + return '闀挎槬瑁呴厤绾�'; + //return 'Assembly Plant (France)'; + *] +} diff --git a/_Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultCCMPLineUnit.qbl b/_Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultCCMPLineUnit.qbl new file mode 100644 index 0000000..0c32fd7 --- /dev/null +++ b/_Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultCCMPLineUnit.qbl @@ -0,0 +1,11 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod GetDefaultCCMPLineUnit () const as String +{ + TextBody: + [* + // 鐢勫叞楦� Jun-25-2024 (created) + return '闀挎槬鏈哄姞绾�'; + //return 'Assembly Plant (France)'; + *] +} diff --git a/_Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultDLALineUnit.qbl b/_Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultDLALineUnit.qbl new file mode 100644 index 0000000..153da57 --- /dev/null +++ b/_Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultDLALineUnit.qbl @@ -0,0 +1,11 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod GetDefaultDLALineUnit () const as String +{ + TextBody: + [* + // 鐢勫叞楦� Jun-25-2024 (created) + return '澶ц繛瑁呴厤绾�'; + //return 'Assembly Plant (France)'; + *] +} diff --git a/_Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultDLMPLineUnit.qbl b/_Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultDLMPLineUnit.qbl new file mode 100644 index 0000000..48e75f8 --- /dev/null +++ b/_Main/BL/Type_InventorySummaryReport/StaticMethod_GetDefaultDLMPLineUnit.qbl @@ -0,0 +1,11 @@ +Quintiq file version 2.0 +#parent: #root +StaticMethod GetDefaultDLMPLineUnit () const as String +{ + TextBody: + [* + // 鐢勫叞楦� Jun-25-2024 (created) + return '澶ц繛鏈哄姞绾�'; + //return 'Assembly Plant (France)'; + *] +} diff --git a/_Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl b/_Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl index 47f1246..b5bb158 100644 --- a/_Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl +++ b/_Main/BL/Type_InventorySummarySource/StaticMethod_Initialize.qbl @@ -14,6 +14,10 @@ allunit := InventorySummaryReport::GetDefaultAllUnit(); ccunit := InventorySummaryReport::GetDefaultCCUnit(); dlunit := InventorySummaryReport::GetDefaultDLUnit(); + ccalineunit := FinancialProductionReport::GetDefaultCCALineUnit(); + dlalienunit := FinancialProductionReport::GetDefaultDLALineUnit() + ccmplineunit := FinancialProductionReport::GetDefaultCCMPLineUnit() + dlmplineunit := FinancialProductionReport::GetDefaultDLMPLineUnit(); source := owner.InventorySummarySource( relnew, ID := InventorySummaryReport::GetDefaultName(), Name := InventorySummaryReport::GetDefaultName() ); table := source.InventorySummaryReport( relnew, ID := source.Name(), Name := source.Name() ); @@ -31,9 +35,9 @@ unit := stockingpoint.Unit(); parentunits := unit.GetAllParent(); //鏄惁灞炰簬闀挎槬宸ュ巶 - iscc := unit.ID() = ccunit or exists( parentunits, Elements, punit, punit.ID() = ccunit ); + iscc := unit.ID() = ccalineunit or unit.ID() = ccmplineunit or exists( parentunits, Elements, punit, punit.ID() = ccalineunit or punit.ID() = ccmplineunit ); //鏄惁灞炰簬澶ц繛宸ュ巶 - isdl := unit.ID() = dlunit or exists( parentunits, Elements, punit, punit.ID() = dlunit ); + isdl := unit.ID() = dlalienunit or unit.ID() = dlmplineunit or exists( parentunits, Elements, punit, punit.ID() = dlalienunit or punit.ID() = dlmplineunit ); if( iscc or isdl ){ traverse( stockingpoint, ProductInStockingPoint_MP, pisp, pisp.Product_MP().IsLeaf() ){ //鑾峰彇宸ュ巶琛� diff --git a/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl b/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl index 5776315..1a69f9f 100644 --- a/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl +++ b/_Main/BL/Type_MachiningPipelineSource0/StaticMethod_Initialize.qbl @@ -52,26 +52,26 @@ //鍛� weekcolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Week(), weekstart ); - supplyquantity := [Real]ceil( pispip.NewSupplyQuantity() );//鍚戜笂鍙栨暣 - inventoryquantity := [Real]ceil( pispip.PlannedInventoryLevelEnd() );//鍚戜笂鍙栨暣 + supplyquantity := [Number]pispip.NewSupplyQuantity();//鍥涜垗浜斿叆 + inventoryquantity := [Number]pispip.PlannedInventoryLevelEnd();//鍥涜垗浜斿叆 //瑁呴厤绾� if( isccassemnly or isdlassemnly ){ - row.SetCellAssemblyValue( daycolumn, isccassemnly, supplyquantity ); - row.SetCellAssemblyValue( weekcolumn, isccassemnly, supplyquantity ); + row.SetCellAssemblyValue( daycolumn, isccassemnly, [Real]supplyquantity ); + row.SetCellAssemblyValue( weekcolumn, isccassemnly, [Real]supplyquantity ); } //鏈哄姞绾� if( isccproduction or isdlproduction ){ - row.SetCellProductionValue( daycolumn, isccproduction, supplyquantity ); - row.SetCellProductionValue( weekcolumn, isccproduction, supplyquantity ); + row.SetCellProductionValue( daycolumn, isccproduction, [Real]supplyquantity ); + row.SetCellProductionValue( weekcolumn, isccproduction, [Real]supplyquantity ); } //搴撳瓨 if( iscc or isdl ){ - row.SetCellInventoryValue( daycolumn, iscc, inventoryquantity ); + row.SetCellInventoryValue( daycolumn, iscc, [Real]inventoryquantity ); if( pispip.Start() = weekstart + Duration::Days( 6 ) or pispip.Period_MP() = endperiod ){ weekstart := ( weekstart + Duration::Days( 7 ) ).Date(); - row.SetCellInventoryValue( weekcolumn, iscc, inventoryquantity ); + row.SetCellInventoryValue( weekcolumn, iscc, [Real]inventoryquantity ); } } } -- Gitblit v1.9.3