From 6a9c7ad8915554e72e22fea43e05fa10dbd9b36d Mon Sep 17 00:00:00 2001
From: admin <admin@admin.com>
Date: 星期日, 20 十月 2024 14:18:47 +0800
Subject: [PATCH] 调拨整班优化
---
_Main/BL/Type_Unit/Method_WholeShiftFiltering.qbl | 2 +-
_Main/BL/Type_WholeShift/Method_IsRoundingOrZeroFilling4.qbl | 32 +++++++++++---------------------
2 files changed, 12 insertions(+), 22 deletions(-)
diff --git a/_Main/BL/Type_Unit/Method_WholeShiftFiltering.qbl b/_Main/BL/Type_Unit/Method_WholeShiftFiltering.qbl
index b110d74..e56a1d9 100644
--- a/_Main/BL/Type_Unit/Method_WholeShiftFiltering.qbl
+++ b/_Main/BL/Type_Unit/Method_WholeShiftFiltering.qbl
@@ -2,5 +2,5 @@
#parent: #root
Method WholeShiftFiltering () declarative remote as Boolean
{
- TextBody: 'return this.HasCapacityTypeTime() or this.HasCapacityTypeTransportQuantity();'
+ TextBody: 'return this.HasCapacityTypeTime() or ( this.HasCapacityTypeTransportQuantity() and this.Name().Regex( "Transport" ) );'
}
diff --git a/_Main/BL/Type_WholeShift/Method_IsRoundingOrZeroFilling4.qbl b/_Main/BL/Type_WholeShift/Method_IsRoundingOrZeroFilling4.qbl
index 2155752..e2d567d 100644
--- a/_Main/BL/Type_WholeShift/Method_IsRoundingOrZeroFilling4.qbl
+++ b/_Main/BL/Type_WholeShift/Method_IsRoundingOrZeroFilling4.qbl
@@ -8,27 +8,17 @@
Description: '杞﹂亾鏁寸彮'
TextBody:
[*
- traverse ( unit, Lane.LaneLeg.Trip, t ) {
- traverse ( t, ProductInTrip, pit, pit.Quantity() > 0.0 ) {
- info( pit.Product_MP().ParentID() );
- // 鑾峰彇浜у搧lotsize鍊嶆暟
- lotsize := 1;
- if ( pit.Product_MP().ParentID().Regex( "ZKG" ) ) {
- lotsize := macroPlan.CylinderBlock();
- } else if ( pit.Product_MP().ParentID().Regex( "ZKM" ) ) {
- lotsize := macroPlan.CylinderHead();
- } else if ( pit.Product_MP().ParentID().Regex( "PL" ) ) {
- lotsize := macroPlan.ConnectingRod();
- } else if ( pit.Product_MP().ParentID().Regex( "KW" ) ) {
- lotsize := macroPlan.Crankshaft();
- } else if ( pit.Product_MP().ParentID().Regex( "AGW" ) ) {
- lotsize := macroPlan.BalanceAxis();
- }
-
- if ( lotsize > 1 ) {
- debuginfo( "浜у搧ID锛�", pit.ProductID(), " 浜у搧鏁伴噺锛�", pit.Quantity(), " lotsize锛�", lotsize );
- quantityToBeSupplemented := lotsize - ( pit.Quantity() mod lotsize );
- pit.Update( pit.Quantity() + quantityToBeSupplemented, true );
+ us := unit.Name().Tokenize( " " );
+ tmq := select( macroPlan, TransferMinimumQuantity, tempTMQ, tempTMQ.FactoryAbbreviation() = us.Element( 0 ) and tempTMQ.ProductID() = us.Element( 3 ) );
+
+ if ( not isnull( tmq ) ) {
+ // info( "鏈�灏忓寘瑁卨otsize锛�", tmq.Quantity() );
+ traverse ( unit, Lane.LaneLeg.Trip, t ) {
+ needRoundTransferQuantity := tmq.Quantity() - ( [Number]t.Quantity() mod tmq.Quantity() );
+ if ( needRoundTransferQuantity <> 0 and needRoundTransferQuantity <> tmq.Quantity() ) {
+ // info( "鏃堕棿锛�", t.Departure().Date().Format( "Y-M2-D2" ), " 浣欐暟锛�", needRoundTransferQuantity );
+ pit := minselect( t, ProductInTrip, tempPIT, tempPIT.Quantity() > 0, tempPIT.Quantity() );
+ pit.Update( pit.Quantity() + needRoundTransferQuantity, true );
}
}
}
--
Gitblit v1.9.3