From c74a399f02c4c4a9b3ef5c2d67fc48feb1a2406f Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期四, 14 十一月 2024 10:58:02 +0800
Subject: [PATCH] 计划库存去掉紧缺件数据
---
_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GenerateData.qbl | 44 ++++++++++++++++++++++++--------------------
1 files changed, 24 insertions(+), 20 deletions(-)
diff --git a/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GenerateData.qbl b/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GenerateData.qbl
index b664b69..9c03d40 100644
--- a/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GenerateData.qbl
+++ b/_Main/BL/Type_InventoryPlanArchiveVersion/StaticMethod_GenerateData.qbl
@@ -8,8 +8,10 @@
Description: '鐢熸垚璁″垝搴撳瓨瀛樻。鏁版嵁'
TextBody:
[*
- //interfaceDataset.InventoryPlanArchiveVersion( relflush );
+ interfaceDataset.InventoryPlanArchiveVersion( relflush );
info( '-------------------------Start---------------------');
+ machineproductparent := MachiningPipelineReport::GetDefaultProductParent();
+ engineproductparent := EnginePipelineReport::GetDefaultProductParent();
allunit := AssemblyOnlinePlanVersion::GetDefaultAllUnit();
name := InventoryPlanArchiveVersion::GetDefaultName();
search := interfaceDataset.InventoryPlanArchiveVersionSearch( relnew, Product := allunit, TimeUnit := Translations::MP_GlobalParameters_Day(), Unit := allunit, StartDate := Date::MinDate(), EndDate := Date::MaxDate() );
@@ -46,26 +48,28 @@
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.Product_MP(), 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() );
+ traverse( macroPlan, Product_MP, product, exists( product.GetAllParent(), Elements, e, e.ID() = machineproductparent or e.ID() = engineproductparent ) ){
+ traverse ( product, 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.Product_MP(), 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 );
+
}
- inventoryrow.SetQuantity( daycolumn, pispippl.InventoryLevelEnd(), actinventoryqty );
- inventoryrow.SetQuantity( weekcolumn, pispippl.InventoryLevelEnd(), actinventoryqty );
- inventoryrow.SetQuantity( monthcolumn, pispippl.InventoryLevelEnd(), actinventoryqty );
-
}
}
--
Gitblit v1.9.3