From 9e6cd153724264ff955d7e398c395db7a33f7e0d Mon Sep 17 00:00:00 2001
From: renhao <renhui.hao@capgemini.com>
Date: 星期三, 13 九月 2023 19:08:26 +0800
Subject: [PATCH] external supply修改 product字段调整
---
_Main/BL/Type_MacroPlan/Method_MappingExternalSupplyData.qbl | 20 +++++----
_Main/BL/Type_Product_MP/StaticMethod_CreateOrUpdate.qbl | 11 ++++-
_Main/BL/Type_MacroPlan/Method_MappingProductData.qbl | 15 ++++---
_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl | 2
_Main/BL/Type_Product_MP/Attribute_KeyProduct.qbl | 7 +++
_Main/BL/Type_Product_MP/Attribute_BusinessTypeCommon.qbl | 7 +++
6 files changed, 43 insertions(+), 19 deletions(-)
diff --git a/_Main/BL/Type_MacroPlan/Method_MappingExternalSupplyData.qbl b/_Main/BL/Type_MacroPlan/Method_MappingExternalSupplyData.qbl
index ea2ad61..1f242ac 100644
--- a/_Main/BL/Type_MacroPlan/Method_MappingExternalSupplyData.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_MappingExternalSupplyData.qbl
@@ -9,8 +9,9 @@
[*
// renhao Aug-14-2023 (created)
- listtodeal := selectset( this,MappingExternalSupply,externalSupply, true );
+ listtodeal := selectset( this,MappingExternalSupply,externalSupply, externalSupply.UserQuantity()>0 );
totalcount := listtodeal.Size();
+ description := "鍦ㄩ�斿湪鍒�";
info( "ExternalSupply has " + totalcount.AsQUILL() + " rows in total" );
count := 0;
@@ -19,10 +20,11 @@
if( count - [Number](count/1000) * 1000 = 0 or count = totalcount ){
info( "Now is dealing with the " + count.AsQUILL() + "ExternalSupply " + "( " + count.AsQUILL() + "/" + totalcount.AsQUILL() + " ) " + (count/totalcount*100).Round( 1 ).AsQUILL() + "%" );
}
- product := select( this,MappingProduct,product,product.ID() = externalSupply.ProductID() and product.KeyProduct() = nuclear,true);
+ product := select( this,MappingProduct,product,product.ID() = externalSupply.ProductID(),true);
+
if( not isnull( product)){
- productMP := select( this,Product_MP,productMP,productMP.ID() = externalSupply.ProductID() ,true);
+ productMP := Product_MP :: FindProductTypeIndex( externalSupply.ProductID());
stockingpoint := select( this,StockingPoint_MP,st,st.ID() = externalSupply.StockingPointID(),true);
if( not isnull(businessTypes)){
@@ -34,25 +36,25 @@
stockingpoint,
externalSupply.Date(),
externalSupply.ManufacturedDate(),
- externalSupply.UserQuantity(),"鍦ㄩ�斿湪鍒�");
+ externalSupply.UserQuantity(),description);
}
}
}else{
- if( not isnull( stockingpoint) and not isnull( productMP)){
- InventorySupply::CreateOrUpdate( externalSupply.ID(),
+ if( not isnull( stockingpoint) and not isnull( productMP)){
+ InventorySupply::CreateOrUpdate( externalSupply.ID(),
productMP,
stockingpoint,
externalSupply.Date(),
externalSupply.ManufacturedDate(),
- externalSupply.UserQuantity(),"鍦ㄩ�斿湪鍒�");
- }
+ externalSupply.UserQuantity(),description);
+ }
}
}else{
info( "Invaild product" );
- }
+ }
}
*]
}
diff --git a/_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl b/_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl
index 98be129..3713cc9 100644
--- a/_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl
@@ -27,7 +27,7 @@
moperation.ProductID() = item.ProductID(),
moperation.SequenceNumber() ).SequenceNumber()
if( item.SequenceNumber() = maxsn ){
- listtodealwithmaxsn.Add( item );
+ listtodealwithmaxsn.Add( item );
}
}
diff --git a/_Main/BL/Type_MacroPlan/Method_MappingProductData.qbl b/_Main/BL/Type_MacroPlan/Method_MappingProductData.qbl
index fa5aa3b..492ebce 100644
--- a/_Main/BL/Type_MacroPlan/Method_MappingProductData.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_MappingProductData.qbl
@@ -23,9 +23,9 @@
} else {
if( iskeyproduct = true ){
listToDeal := selectset( this, MappingProduct, item, item.KeyProduct() = true, businesstypes.Find( item.BusinessType()) > 0 );
- }
+ }
else{
- listToDeal := selectset( this, MappingProduct, item, businesstypes.Find( item.BusinessType()) > 0 );
+ listToDeal := selectset( this, MappingProduct, item, businesstypes.Find( item.BusinessType()) > 0 );
}
}
totalcount := listToDeal.Size();
@@ -38,7 +38,7 @@
"鍏ㄩ儴鐗╂枡浜у搧",
"PCS",
"鍏ㄩ儴鐗╂枡浜у搧",
- 0.0
+ 0.0,false,false
);
count := 0;
// Get the ProductMajorType list & ProductSubclassType list
@@ -54,7 +54,7 @@
item.ProductMajorType(),
"PCS",
item.ProductMajorType(),
- 0.0
+ 0.0,false,false
);
}
productmajortype := item.ProductMajorType();
@@ -69,12 +69,12 @@
item.ProductSubclassType(),
"PCS",
item.ProductSubclassType(),
- 0.0
+ 0.0,false,false
);
}
productsubclasstype := item.ProductSubclassType();
if( productsubclasstype="" ){
- productsubclasstype := productmajortype;
+ productsubclasstype := productmajortype;
}
if( not item.ID() = "" ){
@@ -84,7 +84,8 @@
item.ID(),
item.UnitOfMeasureName(),
item.Name(),
- item.ShelfLife()
+ item.ShelfLife(),
+ item.KeyProduct(),item.IsCommon()
);
}
}
diff --git a/_Main/BL/Type_Product_MP/Attribute_BusinessTypeCommon.qbl b/_Main/BL/Type_Product_MP/Attribute_BusinessTypeCommon.qbl
new file mode 100644
index 0000000..b384b1d
--- /dev/null
+++ b/_Main/BL/Type_Product_MP/Attribute_BusinessTypeCommon.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute BusinessTypeCommon
+{
+ #keys: '3[414480.0.138606036][414480.0.138606035][414480.0.138606037]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_Product_MP/Attribute_KeyProduct.qbl b/_Main/BL/Type_Product_MP/Attribute_KeyProduct.qbl
new file mode 100644
index 0000000..6261b43
--- /dev/null
+++ b/_Main/BL/Type_Product_MP/Attribute_KeyProduct.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute KeyProduct
+{
+ #keys: '3[414480.0.138606008][414480.0.138606007][414480.0.138606009]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_Product_MP/StaticMethod_CreateOrUpdate.qbl b/_Main/BL/Type_Product_MP/StaticMethod_CreateOrUpdate.qbl
index 7d60ea3..2cc1d59 100644
--- a/_Main/BL/Type_Product_MP/StaticMethod_CreateOrUpdate.qbl
+++ b/_Main/BL/Type_Product_MP/StaticMethod_CreateOrUpdate.qbl
@@ -7,7 +7,9 @@
String name,
String unitofmeasurename,
String description,
- Real shelflife
+ Real shelflife,
+ Boolean keyproduct,
+ Boolean businesstypecommon
)
{
TextBody:
@@ -28,7 +30,7 @@
//info( productid );
if( isnull( product ) ){
- Product_MP::Create( owner,
+ product := Product_MP::Create( owner,
productid,
parentid,
name,
@@ -44,6 +46,9 @@
isexcludedfromfulfilmentkpis,
isfromdb
);
+
+ product.KeyProduct(keyproduct);
+ product.BusinessTypeCommon(businesstypecommon);
}else{
product.Update( productid,
name,
@@ -60,6 +65,8 @@
isexcludedfromfulfilmentkpis,
isfromdb
);
+ product.KeyProduct(keyproduct);
+ product.BusinessTypeCommon(businesstypecommon);
}
*]
}
--
Gitblit v1.9.3