From fd58c70e0631bdd09806ead43a573ced43f704f1 Mon Sep 17 00:00:00 2001
From: limj <limj@taizhitech.com>
Date: 星期日, 08 十月 2023 19:57:43 +0800
Subject: [PATCH] Merge branch 'dev' of http://47.101.211.7:10101/r/TIANMA_JITUAN into dev_lmj
---
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_ListInterfaceTest_MenuCreateShowData_OnClick.def | 10
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnOk_OnClick.def | 4
_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlContent.def | 41 +
_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_PanelInterfaceTest_ButtonSynchronizeDataToMacroPlan_OnClick.def | 4
_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetUnitOfMeasure_MP.qbl | 16
_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Response_Panel391_Button655_OnClick.def | 39 ++
_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetSalesSegment_MP.qbl | 16
_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetStockingPoing_MP.qbl | 17
_Main/BL/Type_H_FunctionClass/StaticMethod_SM_OrderHedgingEx.qbl | 181 ++++++++++
_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_CreateCustomOrder.qbl | 45 ++
_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Component_List710.def | 2
_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl | 18
_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_PanelFillingCapacityOrder_ButtonDeduct_OnClick.def | 20 +
_Main/UI/MacroPlannerWebApp/Views/Test.vw | 521 ----------------------------
_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetCurrency_MP.qbl | 16
_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetMaterialData.qbl | 12
_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan#127.qbl | 8
_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_SynchronizeMacroPlanData.qbl | 30 +
_Main/UI/MacroPlannerWebApp/Component_FrmAuthorizeAndCountersign_Order/Response_OnCreated.def | 10
_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Component_Panel391.def | 24 +
_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetProduct_MP.qbl | 17
_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/_ROOT_Component_FrmErrorLogs.def | 3
_Main/BL/Type_FillingCapacityOrder/Attribute_CurrencyID.qbl | 7
_Main/BL/Type_H_FunctionClass/StaticMethod_SM_OrderReverseOrAuthorize.qbl | 2
_Main/BL/Type_FillingCapacityOrder/Attribute_UnitOfMeasure_MPID.qbl | 7
25 files changed, 515 insertions(+), 555 deletions(-)
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_CurrencyID.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_CurrencyID.qbl
new file mode 100644
index 0000000..5a202bb
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_CurrencyID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute CurrencyID
+{
+ #keys: '3[414502.0.397320037][414502.0.397320036][414502.0.397320038]'
+ ValueType: String
+}
diff --git a/_Main/BL/Type_FillingCapacityOrder/Attribute_UnitOfMeasure_MPID.qbl b/_Main/BL/Type_FillingCapacityOrder/Attribute_UnitOfMeasure_MPID.qbl
new file mode 100644
index 0000000..938000c
--- /dev/null
+++ b/_Main/BL/Type_FillingCapacityOrder/Attribute_UnitOfMeasure_MPID.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute UnitOfMeasure_MPID
+{
+ #keys: '3[414502.0.397254634][414502.0.397254633][414502.0.397254635]'
+ ValueType: String
+}
diff --git "a/_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan\043127.qbl" "b/_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan\043127.qbl"
index c1d4c3f..ff774ec 100644
--- "a/_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan\043127.qbl"
+++ "b/_Main/BL/Type_GlobalDTOTable/Method_SynchronizeDataToMacroPlan\043127.qbl"
@@ -2,7 +2,9 @@
#parent: #root
Method SynchronizeDataToMacroPlan (
MacroPlan macroPlan,
- Boolean isUnitOfMeasure_MP
+ String executionUser,
+ Boolean isUnitOfMeasure_MP,
+ Boolean isCustomOrder
)
{
TextBody:
@@ -10,5 +12,9 @@
if ( isUnitOfMeasure_MP ) {
Global_MappingUnitOfMeasure_MP::SynchronizeMacroPlanData( this, macroPlan );
}
+
+ if ( isCustomOrder ) {
+ Global_MappingCustomOrder::SynchronizeMacroPlanData( this, macroPlan, executionUser );
+ }
*]
}
diff --git a/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_CreateCustomOrder.qbl b/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_CreateCustomOrder.qbl
new file mode 100644
index 0000000..f07437b
--- /dev/null
+++ b/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_CreateCustomOrder.qbl
@@ -0,0 +1,45 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod CreateCustomOrder (
+ GlobalOTDTable globalOTDTable,
+ MacroPlan macroPlan
+)
+{
+ TextBody:
+ [*
+ traverse ( globalOTDTable, Global_MappingCustomOrder, gmco ) {
+ targetProduct_MP := Global_MappingCustomOrder::GetProduct_MP( macroPlan, gmco );
+ targetStockingPoint_MP := Global_MappingCustomOrder::GetStockingPoing_MP( macroPlan, gmco );
+ Global_MappingCustomOrder::GetSalesSegment_MP( macroPlan, gmco );
+ Global_MappingCustomOrder::GetCurrency_MP( macroPlan, gmco );
+ Global_MappingCustomOrder::GetUnitOfMeasure_MP( macroPlan, gmco );
+
+ targetCustomerOrder := CustomerOrder::Create( targetProduct_MP,
+ targetStockingPoint_MP,
+ gmco.ID(),
+ gmco.OrderDate(),
+ gmco.Quantity(),
+ gmco.Price(),
+ "Normal",
+ gmco.SalesSegmentName(),
+ gmco.CurrencyID(),
+ gmco.UnitOfMeasureName(),
+ false,
+ gmco.Customer(),
+ gmco.CustomerID(),
+ gmco.OrderID(),
+ gmco.OrderLineID(),
+ true,
+ true,
+ false
+ );
+ targetCustomerOrder.BusinessType( gmco.BusinessType() );
+ targetCustomerOrder.OrderType( gmco.OrderType() );
+ targetCustomerOrder.IsAvailable( gmco.IsAvailable() );
+ targetCustomerOrder.ProductGrade( gmco.ProductGrade() );
+ targetCustomerOrder.SegmentPriority( gmco.SegmentPriority() );
+ targetCustomerOrder.SheetProfitability( gmco.SheetProfitability() );
+ targetCustomerOrder.OrderTime( gmco.OrderTime() );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetCurrency_MP.qbl b/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetCurrency_MP.qbl
new file mode 100644
index 0000000..f4d504d
--- /dev/null
+++ b/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetCurrency_MP.qbl
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetCurrency_MP (
+ MacroPlan macroPlan,
+ Global_MappingCustomOrder gmco
+)
+{
+ TextBody:
+ [*
+ isExists := exists( macroPlan, Currency_MP, tempCMP, tempCMP.ID() = gmco.CurrencyID() );
+
+ if ( not isExists ) {
+ Currency_MP::Create( gmco.CurrencyID(), macroPlan, gmco.CurrencyID(), "", false, false );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetProduct_MP.qbl b/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetProduct_MP.qbl
new file mode 100644
index 0000000..ba6e469
--- /dev/null
+++ b/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetProduct_MP.qbl
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetProduct_MP (
+ MacroPlan macroPlan,
+ Global_MappingCustomOrder gmco
+) as Product_MP
+{
+ TextBody:
+ [*
+ targetProduct_MP := select( macroPlan, Product_MP, tempPMP, tempPMP.ID() = gmco.ProductID() );
+ if ( isnull( targetProduct_MP ) ) {
+ targetProduct_MP := Product_MP::Create( gmco.ProductID(), macroPlan, null( Product_MP ), gmco.ProductID(), null( SupplyChainView ), 0, 0, false );
+ }
+
+ return targetProduct_MP;
+ *]
+}
diff --git a/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetSalesSegment_MP.qbl b/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetSalesSegment_MP.qbl
new file mode 100644
index 0000000..2e2e473
--- /dev/null
+++ b/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetSalesSegment_MP.qbl
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetSalesSegment_MP (
+ MacroPlan macroPlan,
+ Global_MappingCustomOrder gmco
+)
+{
+ TextBody:
+ [*
+ isExists := exists( macroPlan, SalesSegment_MP, tempSSMP, tempSSMP.Name() = gmco.SalesSegmentName() );
+
+ if ( not isExists ) {
+ SalesSegment_MP::Create( macroPlan, "", gmco.SalesSegmentName(), 0, false );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetStockingPoing_MP.qbl b/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetStockingPoing_MP.qbl
new file mode 100644
index 0000000..37d8b42
--- /dev/null
+++ b/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetStockingPoing_MP.qbl
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetStockingPoing_MP (
+ MacroPlan macroPlan,
+ Global_MappingCustomOrder gmco
+) as StockingPoint_MP
+{
+ TextBody:
+ [*
+ targetStockingPoint_MP := select( macroPlan, StockingPoint_MP, tempSPMP, tempSPMP.ID() = gmco.StockingPointID() );
+ if ( isnull( targetStockingPoint_MP ) ) {
+ targetStockingPoint_MP := StockingPoint_MP::Create( gmco.StockingPointID(), macroPlan, null( Unit ), gmco.StockingPointID(), null( SupplyChainView ), 0, 0, false );
+ }
+
+ return targetStockingPoint_MP;
+ *]
+}
diff --git a/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetUnitOfMeasure_MP.qbl b/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetUnitOfMeasure_MP.qbl
new file mode 100644
index 0000000..b85c24d
--- /dev/null
+++ b/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetUnitOfMeasure_MP.qbl
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetUnitOfMeasure_MP (
+ MacroPlan macroPlan,
+ Global_MappingCustomOrder gmco
+)
+{
+ TextBody:
+ [*
+ isExists := exists( macroPlan, UnitOfMeasure_MP, tempUOMMP, tempUOMMP.Name() = gmco.UnitOfMeasureName() );
+
+ if ( not isExists ) {
+ UnitOfMeasure_MP::Create( macroPlan, gmco.UnitOfMeasureName(), false, false );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_SynchronizeMacroPlanData.qbl b/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_SynchronizeMacroPlanData.qbl
new file mode 100644
index 0000000..5365af6
--- /dev/null
+++ b/_Main/BL/Type_Global_MappingCustomOrder/StaticMethod_SynchronizeMacroPlanData.qbl
@@ -0,0 +1,30 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod SynchronizeMacroPlanData (
+ GlobalOTDTable globalOTDTable,
+ MacroPlan macroPlan,
+ String executionUser
+)
+{
+ TextBody:
+ [*
+ global_BrokerExecuteLog := globalOTDTable.Global_BrokerExecuteLog( relnew,
+ Name := "鍚屾璁㈠崟鏁版嵁",
+ IsSuccess := true,
+ ExecuteUser := executionUser
+ );
+
+ Global_MappingCustomOrder::CreateCustomOrder( globalOTDTable, macroPlan );
+ try {
+
+ global_BrokerExecuteLog.ExecutionStatus( "Complete" );
+ global_BrokerExecuteLog.SuccessDateTime( DateTime::ActualTime().Format( "Y-M-D H2:m:s" ) );
+ } onerror {
+ global_BrokerExecuteLog.IsSuccess( false );
+ global_BrokerExecuteLog.ErrorNo( e.ErrorNr() );
+ global_BrokerExecuteLog.ErrorMessage( e.GeneralInformation() );
+ global_BrokerExecuteLog.ErrorDateTime( DateTime::ActualTime().Format( "Y-M-D H2:m:s" ) );
+ global_BrokerExecuteLog.ExecutionStatus( "Complete" );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetMaterialData.qbl b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetMaterialData.qbl
index 850417c..2f75b5f 100644
--- a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetMaterialData.qbl
+++ b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetMaterialData.qbl
@@ -24,10 +24,10 @@
strMsg :="";
try{
- if( Owner.MappingBOM(relsize )>0)
+ if( GlobData.Global_MappingOperationBOM(relsize )>0)
{
// 寰楀埌涓嬩竴绾ф暟鎹�
- AllData:= selectset( GlobData, Global_MappingOperationBOM,object,object.ComponentCode()=ParentSKU);
+ AllData:= selectset( GlobData, Global_MappingOperationBOM,object,object.ProductCode()=ParentSKU);
ObjProduct := null( Product_MP,constcontent );
ObjUnit := null( Unit,constcontent );
MaterialType:="";
@@ -51,24 +51,24 @@
traverse( AllData,Elements,Obj,not isnull( Obj))
{
// 寰楀埌褰撳墠宸插瓨鍦ㄧ殑鐗╂枡淇℃伅锛堣鍗旾D + SKU锛�
- ObjMaterial := select( Owner,H_MaterialInfo,ObjM,ObjM.ForecastID()=ForecastId and ObjM.SKU()=Obj.ProductCode());
+ ObjMaterial := select( Owner,H_MaterialInfo,ObjM,ObjM.ForecastID()=ForecastId and ObjM.SKU()=Obj.ComponentCode());
if( isnull( ObjMaterial))
{
// 鐗╂枡绫诲瀷
MaterialType := Obj.ProductType();
// 寰楀埌鐗╂枡淇℃伅
- ObjProduct:= H_FunctionClass::SM_GetProductInfo(Owner,Obj.ProductCode());
+ ObjProduct:= H_FunctionClass::SM_GetProductInfo(Owner,Obj.ComponentCode());
if( not isnull( ObjProduct))
{
MaterialType:= ObjProduct.ParentID();
MaterialName:=ObjProduct.Name();
}
- ObjUnit:= H_FunctionClass::SM_GetUnitBySKU( Owner,Obj.ProductCode());
+ ObjUnit:= H_FunctionClass::SM_GetUnitBySKU( Owner,Obj.ComponentCode());
if( not isnull( ObjUnit))
{
StockPoint:= ObjUnit.Name();
}
- Owner.H_MaterialInfo(relnew,ParentSKU := Obj.ComponentCode(),SKU := Obj.ProductCode(),ForecastID := ForecastId,OrgCode := Obj.OrganCode(),VCode := VCode
+ Owner.H_MaterialInfo(relnew,ParentSKU := ParentSKU,SKU := Obj.ComponentCode(),ForecastID := ForecastId,OrgCode := Obj.OrganCode(),VCode := VCode
,ID := H_FunctionClass::SM_GenerateID( "MI"),MaterialType := MaterialType,NeedDate := NDate
,NeedQty := [Number](ProductQty/NRate*NComponentsUsed).Round( 0),Unit := Obj.UnitOfMeasureName()
,StockPoint :=StockPoint,MaterialName := MaterialName );
diff --git a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_OrderHedgingEx.qbl b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_OrderHedgingEx.qbl
new file mode 100644
index 0000000..4379bdc
--- /dev/null
+++ b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_OrderHedgingEx.qbl
@@ -0,0 +1,181 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod SM_OrderHedgingEx (
+ MacroPlan Owner,
+ String Operator
+) as owning JSON
+{
+ Description: '濉骇鍚庡啿鍑�'
+ TextBody:
+ [*
+ /*******************************濉骇鍚庤鍗曞啿鍑�***********************
+ *鍑芥暟鍚嶇О锛歋M_OrderHedgingEx
+ *鍒� 寤� 浜猴細yunying
+ *鍒涘缓鏃堕棿锛�2023-09-27
+ *鎻� 杩帮細濉骇鍚庤鍗曞啿鍑�,濉骇鍚庣殑琛細Owner.FillingCapacityOrder
+ *鍙� 鏁帮細Operator 鎿嶄綔浜�
+ *杩� 鍥� 鍊硷細JSON {Status: true 鎴愬姛/false 澶辫触,Msg:"鎻愮ず娑堟伅",Count: 0锛堝啿鍑忚鍗曠殑鏁伴噺锛墋
+ *******************************************************************/
+ // 鍒濆鍖栫粨鏋�
+ bStatus := false;
+ strMsg :="";
+ // 鍐插噺鎴愬姛鏉℃暟
+ nCount:=0;
+ try
+ {
+ if(not isnull( Owner))
+ {
+ // 鑾峰彇鎿嶄綔璁㈠崟
+ NewOrders := selectset( Owner,FillingCapacityOrder,Obj,Obj.State() = "鏈啿鍑�" or Obj.State() ="");
+ if(NewOrders.Size()>0)
+ {
+ // 鏂拌鍗曚笌鍘熻鍗曞啿鍑�
+ traverse( NewOrders,Elements,Obj)
+ {
+ if( (Obj.OrderType()="鍙嶇" or Obj.OrderType()="鎺堟潈") and Obj.Quantity()>0 )
+ {
+ // 寰楀埌鎿嶄綔鐩稿叧鐨勫弽绛捐鍗�
+ ROrders:= select( Owner,SalesDemand.astype( CustomerOrder ),ObjOrder,
+ ObjOrder.CustomerName() = Obj.Customer()
+ and ObjOrder.ProductID()=Obj.ProductID()
+ and ObjOrder.OrderTag() ="鍙嶇"
+ );
+ // 鍙嶇鏃犲啿鍑忥紝鐩存帴鍚戣鍗曚腑鍔犲叆鍙嶇鏁版嵁
+ if( Obj.OrderType()="鍙嶇")
+ {
+ if( not isnull( ROrders))
+ {
+ ROrders.Quantity(ROrders.Quantity()+Obj.Quantity());
+ }
+ else
+ {
+ // 鏂板璁㈠崟
+ error( "----------------璇峰疄鐜版柊澧炲弽绛捐鍗曞姛鑳戒唬鐮�---------------------");
+ // 璁㈠崟蹇呰淇℃伅濡備笅锛�
+ // OrderTag = "鍙嶇"
+ // Quantity = Obj.Quantity()
+ // 鍏朵粬淇℃伅缁ф壙褰撳墠鐨勮鍗�
+ }
+ }
+ else if(Obj.OrderType()="鎺堟潈")
+ {
+ // 寰楀埌鎿嶄綔鐩稿叧鐨勬巿鏉冭鍗�
+ AOrders:= select( Owner,SalesDemand.astype( CustomerOrder ),ObjOrder,
+ ObjOrder.CustomerName() = Obj.Customer()
+ and ObjOrder.ProductID()=Obj.ProductID()
+ and ObjOrder.OrderTag() ="鎺堟潈"
+ );
+ if( not isnull( ROrders))
+ {
+ // 褰撳墠鍙嶇鏁伴噺
+ RQty:=ROrders.Quantity();
+ // 璁$畻鏂扮殑鎺堟潈鏁伴噺
+ AQty:= Obj.Quantity() - ROrders.Quantity();
+ // 鎺堟潈澶т簬0锛屽弽绛捐鍐叉病,鍚﹀垯鎺堟潈琚啿锛屽弽绛剧瓑浜嶢Qty鐨勭粷瀵瑰��
+ if( AQty>=0)
+ {
+ RQty:=0;
+ }
+ else
+ {
+ RQty :=ROrders.Quantity() - Obj.Quantity();
+ AQty :=0;
+ }
+ // 鏇存柊鍙嶇鏁版嵁
+ if( RQty>=0)
+ {
+ ROrders.Quantity(RQty);
+ }
+ else
+ {
+ ROrders.Delete();
+ }
+ // 鏇存柊鎺堟潈鏁版嵁
+ if(AQty>0 )
+ {
+ if( not isnull( AOrders))
+ {
+ AOrders.Quantity(AOrders.Quantity()+AQty);
+ }
+ // 鏂板鎺堟潈璁㈠崟
+ // error( "----------------璇峰疄鐜版柊澧炴巿鏉冭鍗曞姛鑳戒唬鐮�---------------------");
+ customOrder := CustomerOrder::Create( select( Owner, Product_MP, tmepPMP, tmepPMP.ID() = Obj.ProductID() ),
+ select( Owner, StockingPoint_MP, tempSPMP, tempSPMP.ID() = Obj.StockingPointID() ),
+ OS::GenerateGUIDAsString(),
+ Obj.OrderDate(),
+ AQty,
+ 0.0,
+ "Normal",
+ Obj.SalesSegmentName(),
+ Obj.CurrencyID(),
+ Obj.UnitOfMeasureName(),
+ false,
+ Obj.Customer(),
+ Obj.CustomerID(),
+ "",
+ "",
+ true,
+ true,
+ false
+ );
+ customOrder.OrderTag( "鎺堟潈" );
+ // 璁㈠崟蹇呰淇℃伅濡備笅锛�
+ // OrderTag = "鎺堟潈"
+ // Quantity = AQty
+ // 鍏朵粬淇℃伅缁ф壙褰撳墠鐨勮鍗�
+ }
+ }
+ else
+ {
+ // 灏嗘柊鎺堟潈鏁版嵁绱姞鍒拌鍗曚腑
+ if( not isnull( AOrders))
+ {
+ AOrders.Quantity(AOrders.Quantity()+Obj.Quantity());
+ }
+ else
+ {
+ // 鏂板鎺堟潈璁㈠崟
+ error( "----------------璇峰疄鐜版柊澧炴巿鏉冭鍗曞姛鑳戒唬鐮�---------------------");
+ // 璁㈠崟蹇呰淇℃伅濡備笅锛�
+ // OrderTag = "鎺堟潈"
+ // Quantity = Obj.Quantity()
+ // 鍏朵粬淇℃伅缁ф壙褰撳墠鐨勮鍗�
+ }
+ }
+ }
+ // 鏇存柊鍐插噺鐘舵��
+ Obj.State("宸插啿鍑�");
+ nCount++;
+ }
+ else
+ {
+ // 鏃犳硶璇嗗埆鐨勭被鍨嬶紝鎴栨暟閲忎负0鏃舵殏涓嶅鐞�
+ //strMsg :="璁㈠崟绫诲瀷锛�" + Obj.OrderType() + "鏃犳硶鍐插噺锛�";
+ }
+ }
+ bStatus:=true;
+ strMsg :="濉骇鍚庡啿鍑忓畬鎴愶紒";
+ }
+ else
+ {
+ strMsg :="鏃犲彲鍐插噺鐨勬暟鎹紒";
+ }
+ }
+ else
+ {
+ strMsg :="鍔犺浇鏁版嵁澶辫触锛岃鍒涘缓鎴栭�夋嫨鍦烘櫙鍚庡啀鎿嶄綔锛�";
+ }
+ }
+ onerror
+ {
+ strMsg :="濉骇鍚庤鍗曞啿鍑忓彂鐢熼敊璇紝璇疯仈绯荤郴缁熺鐞嗗憳锛�";
+ // 璁板綍閿欒鏃ュ織
+ // Owner.H_ErrorLogs(relnew,EClassName := "H_FunctionClass",EDateTime := DateTime::ActualGMTTime(),EFunctionName := "SM_OrderHedgingEx",
+ // DeveloperInformation := e.DeveloperInformation(),ErrorNr := e.ErrorNr(),DetailedInformation := e.DetailedInformation(),
+ // GeneralInformation := e.GeneralInformation());
+ }
+ return JSON::Object().Add( "Status",bStatus)
+ .Add( "Count",nCount)
+ .Add( "Msg",strMsg).Build();
+ *]
+}
diff --git a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_OrderReverseOrAuthorize.qbl b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_OrderReverseOrAuthorize.qbl
index a74b90f..2b201ca 100644
--- a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_OrderReverseOrAuthorize.qbl
+++ b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_OrderReverseOrAuthorize.qbl
@@ -39,7 +39,7 @@
nReverseQtyNew :=0; //璁$畻鍚庣殑鍙嶇鏁伴噺
nAuthorizeQtyNew :=0; //璁$畻鍚庣殑鎺堟潈鏁伴噺
nHaveForecastQty :=0; //鏈夐娴嬫暟閲�
- nNoHaveForecastQty:=0;//浜旈娴嬫暟閲�
+ nNoHaveForecastQty:=0;//鏃犻娴嬫暟閲�
// 鑾峰彇棰勬祴鏁伴噺锛堝鎴�+SKU+鏈堜唤 鐞嗚鏄病鏈夌墿鏂欓娴嬶級
OrderForecast := select(Owner, H_OrderForecastRealQty , Obj, Obj.SKU() = SKU
and Obj.CustomCode() = CustomerCode
diff --git a/_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl b/_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl
index 9a458dd..219bbfc 100644
--- a/_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl
+++ b/_Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl
@@ -10,24 +10,22 @@
[*
// Administrator Aug-21-2023 (created)
// list to deal
- listtodeal := construct( structured[MappingOperation] );
+ listtodeal := construct( structured[Global_MappingOperation] );
if( isnull( businesstypes ) or businesstypes.Size() = 0 ) {
- listtodeal := selectset( this, MappingOperation, item, true );
+ listtodeal := selectset( globalOTDTable, Global_MappingOperation, item, true );
} else {
organcodelist := selectvalues( globalOTDTable, BusinessType.OrganCode, organ, businesstypes.Find( organ.BusinessType().BusinessTypeName() ) <> -1, organ.OrganCodeName() );
- listtodeal := selectset( this,
- MappingOperation,
+ listtodeal := selectset( globalOTDTable, Global_MappingOperation,
item,
( businesstypes.Find( item.BusinessType() ) <> -1 ) and
( organcodelist.Find( item.OrganCode() ) >= 0 ) );
}
// Get the list to deal with max sequence number
- listtodealwithmaxsn := construct( structured[MappingOperation] );
+ listtodealwithmaxsn := construct( structured[Global_MappingOperation] );
traverse( listtodeal, Elements, item ){
- maxsn := maxselect( this,
- MappingOperation,
+ maxsn := maxselect( globalOTDTable, Global_MappingOperation,
moperation,
moperation.OrganCode() = item.OrganCode(),
moperation.ProductID() = item.ProductID(),
@@ -47,7 +45,7 @@
if( count - [Number](count/1000) * 1000 = 0 or count = totalcount ){
info( "Now is dealing with the " + count.AsQUILL() + "OperationCost " + "( " + count.AsQUILL() + "/" + totalcount.AsQUILL() + " ) " + (count/totalcount*100).Round( 1 ).AsQUILL() + "%" );
}
- id := item.OrganCode() + "_" + item.ProductID() + "_" + item.ProcessSection();
+ id := item.OrganCode() + "_" + item.ProductID() + "_" + item.ProcessSection()+"_" + [String]item.SequenceNumber();
if( guard( item.Line(), "" ).Length() > 0 ) {
id := id + "_" + item.Line();
}
@@ -56,8 +54,8 @@
isfromdb := false;
existoperationcost := OperationCost::FindOperationCostTypeIndex( id );
if( isnull( existoperationcost ) ){
- connecteditem := select( this,
- MappingOperationCost,
+ connecteditem := select( globalOTDTable,
+ Global_MappingOperationCost,
moperationcost,
moperationcost.OrgCode() = item.OrganCode(),
moperationcost.ProductID() = item.ProductID() );
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlContent.def
index 911ba95..f2ee867 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlContent.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlContent.def
@@ -70,7 +70,7 @@
DataBinding: 'DataHolderFillingCapacityOrder.Data.Quantity'
Label: '鏁伴噺'
Mask: 'REAL'
- Taborder: 12
+ Taborder: 13
]
}
Component dropDownStringListUnitOfMeasureName id:dropDownStringListUnitOfMeasureName_750
@@ -97,7 +97,7 @@
DataBinding: 'DataHolderFillingCapacityOrder.Data.SalesAmount'
Label: '閿�鍞'
Mask: 'NUMBER'
- Taborder: 13
+ Taborder: 14
]
}
Component dsDemandDate
@@ -108,7 +108,7 @@
[
DataBinding: 'DataHolderFillingCapacityOrder.Data.DemandDate'
Label: '闇�姹傛棩鏈�'
- Taborder: 15
+ Taborder: 16
]
}
Component dsForecastDemandDate
@@ -119,7 +119,7 @@
[
DataBinding: 'DataHolderFillingCapacityOrder.Data.ForecastDemandDate'
Label: '棰勬湡闇�姹傛棩鏈�'
- Taborder: 14
+ Taborder: 15
]
}
Component ddlSalesSegment
@@ -268,7 +268,7 @@
[
DataBinding: 'DataHolderFillingCapacityOrder.Data.Customer'
Label: 'Customer name'
- Taborder: 10
+ Taborder: 11
]
}
Component efCustomID
@@ -278,7 +278,7 @@
Properties:
[
Label: 'Customer ID'
- Taborder: 11
+ Taborder: 12
]
}
Component ddslOrderType
@@ -290,7 +290,34 @@
DataBinding: 'DataHolderFillingCapacityOrder.Data.OrderType'
Label: '璁㈠崟绫诲瀷'
Strings: '鍙嶇;鎺堟潈'
- Taborder: 16
+ Taborder: 17
+ ]
+ }
+ Component ddlCurrency_MP
+ {
+ #keys: '[414502.0.395021898]'
+ BaseType: 'WebDropDownList'
+ Databinding: 'Currency_MP'
+ Children:
+ [
+ Component deContent593
+ {
+ #keys: '[414502.0.395021900]'
+ BaseType: 'WebDataExtractor'
+ Properties:
+ [
+ DataType: 'MacroPlan'
+ Source: 'MacroPlan'
+ Taborder: 0
+ Transformation: 'Currency_MP'
+ ]
+ }
+ ]
+ Properties:
+ [
+ DisplayField: 'Name'
+ Label: '璐у竵'
+ Taborder: 10
]
}
]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnOk_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnOk_OnClick.def
index 184dfb0..bf61706 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnOk_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Response_pnlActions_btnOk_OnClick.def
@@ -35,7 +35,8 @@
ForecastDemandDate := dsForecastDemandDate.Date(),
DemandDate := dsDemandDate.Date(),
OrderType := ddslOrderType.Text(),
- SalesAmount := [Number]edtSalesAmount.Text()
+ SalesAmount := [Number]edtSalesAmount.Text(),
+ CurrencyID := ddlCurrency_MP.Data().ID()
);
} else {
data.ProductID( guard( ddlProduct_MP.Data().ID(), "null" ) );
@@ -49,6 +50,7 @@
data.DemandDate( dsDemandDate.Date() );
data.OrderType( ddslOrderType.Text() );
data.SalesAmount( [Number]edtSalesAmount.Text() );
+ data.CurrencyID( ddlCurrency_MP.Data().ID() );
}
Form.Close();
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_PanelFillingCapacityOrder_ButtonDeduct_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_PanelFillingCapacityOrder_ButtonDeduct_OnClick.def
new file mode 100644
index 0000000..1ea13f8
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_PanelFillingCapacityOrder_ButtonDeduct_OnClick.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: PanelFillingCapacityOrder/ButtonDeduct
+Response OnClick () id:Response_PanelFillingCapacityOrder_ButtonDeduct_OnClick
+{
+ #keys: '[414502.0.395021805]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ Precondition:
+ [*
+ return not isnull( MacroPlan );
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ H_FunctionClass::SM_OrderHedgingEx( MacroPlan, ApplicationMacroPlanner.GetUserName() );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_ListInterfaceTest_MenuCreateShowData_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_ListInterfaceTest_MenuCreateShowData_OnClick.def
index 052d40d..afeef73 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_ListInterfaceTest_MenuCreateShowData_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_ListInterfaceTest_MenuCreateShowData_OnClick.def
@@ -8,6 +8,16 @@
CanBindMultiple: false
DefinitionID => /ListInterfaceTest/Responsedef_ListInterfaceTest_WebMenu_OnClick
Initiator: 'MenuCreateShowData'
+ Precondition:
+ [*
+ flag := selection.BrokerName() = "GlobalOTDTable_CustomOrder"
+
+ if ( not flag ) {
+ feedback := "鏆備笉鏀寔锛侊紒锛�";
+ }
+
+ return flag;
+ *]
QuillAction
{
Body:
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_PanelInterfaceTest_ButtonSynchronizeDataToMacroPlan_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_PanelInterfaceTest_ButtonSynchronizeDataToMacroPlan_OnClick.def
index 0b714ed..4596f3c 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_PanelInterfaceTest_ButtonSynchronizeDataToMacroPlan_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_PanelInterfaceTest_ButtonSynchronizeDataToMacroPlan_OnClick.def
@@ -14,7 +14,9 @@
Body:
[*
GlobalOTDTable.SynchronizeDataToMacroPlan( MacroPlan,
- CheckboxUnitOfMeasure_MP.Checked()
+ ApplicationMacroPlanner.GetUserName(),
+ CheckboxUnitOfMeasure_MP.Checked(),
+ CheckboxCustomOrder.Checked()
);
WebMessageBox::Success( "鍚屾鎴愬姛锛�", true );
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FrmAuthorizeAndCountersign_Order/Response_OnCreated.def b/_Main/UI/MacroPlannerWebApp/Component_FrmAuthorizeAndCountersign_Order/Response_OnCreated.def
index 7c4d5f5..76d2c45 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FrmAuthorizeAndCountersign_Order/Response_OnCreated.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FrmAuthorizeAndCountersign_Order/Response_OnCreated.def
@@ -23,18 +23,10 @@
lb_SKUCode_FAAC.Text(SelForecast.Get( "SKU").GetString());
lb_SKUName_FAAC.Text("浜у搧");
lb_Util_FAAC.Text(SelForecast.Get( "Util").GetString());
+ lb_SKUName_FAAC.Text(SelForecast.Get( "SKUName").GetString());
txt_CustomID_FAAC.Text(SelForecast.Get( "CustomCode").GetString());
txt_CustomName_FAAC.Text(SelForecast.Get( "CustomName").GetString());
lb_Operator_FAAC.Text(ApplicationMacroPlanner.GetUserName());
-
- // StrValue := SelectItem.Value().Tokenize( ";");
- // lb_SKUCode_FAAC.Text(StrValue.Element( 0));
- // lb_SKUName_FAAC.Text("浜у搧");
- // lb_Operator_FAAC.Text("");
- // lb_Util_FAAC.Text(StrValue.Element( 1));
- // txt_CustomID_FAAC.Text(StrValue.Element( 2));
- // txt_CustomName_FAAC.Text(StrValue.Element( 3));
- // lb_Operator_FAAC.Text(ApplicationMacroPlanner.GetUserName());
}
}
*]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Component_List710.def b/_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Component_List710.def
index 975cea9..bd6d61d 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Component_List710.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Component_List710.def
@@ -36,6 +36,6 @@
]
Properties:
[
- Taborder: 1
+ Taborder: 2
]
}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Component_Panel391.def b/_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Component_Panel391.def
new file mode 100644
index 0000000..c27e0ed
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Component_Panel391.def
@@ -0,0 +1,24 @@
+Quintiq file version 2.0
+Component Panel391
+{
+ #keys: '[414724.0.193860534]'
+ BaseType: 'WebPanel'
+ Children:
+ [
+ Component Button655
+ {
+ #keys: '[414724.0.193860558]'
+ BaseType: 'WebButton'
+ Properties:
+ [
+ Image: 'BULL'
+ Label: '濉骇鍐插噺'
+ Taborder: 0
+ ]
+ }
+ ]
+ Properties:
+ [
+ Taborder: 0
+ ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Response_Panel391_Button655_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Response_Panel391_Button655_OnClick.def
new file mode 100644
index 0000000..821d8ed
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Response_Panel391_Button655_OnClick.def
@@ -0,0 +1,39 @@
+Quintiq file version 2.0
+#parent: Panel391/Button655
+Response OnClick () id:Response_Panel391_Button655_OnClick
+{
+ #keys: '[414724.0.194975663]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebButton_OnClick'
+ Precondition:
+ [*
+ return not isnull( MacroPlan);
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ HResult := H_FunctionClass::SM_OrderHedgingEx( MacroPlan,"娴嬭瘯鐢ㄦ埛" );
+ Msg := HResult.Get( "Msg").GetString();
+ if( HResult.Get( "Status").GetBoolean())
+ {
+ if( Msg.Length()>0)
+ {
+ WebMessageBox::Information(Msg);
+ }
+ }
+ else
+ {
+ if( Msg.Length()>0)
+ {
+ WebMessageBox::Warning(Msg);
+ }
+ else
+ {
+ WebMessageBox::Information("杩愯閿欒锛�");
+ }
+ }
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/_ROOT_Component_FrmErrorLogs.def b/_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/_ROOT_Component_FrmErrorLogs.def
index 23776ce..81eec9c 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/_ROOT_Component_FrmErrorLogs.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/_ROOT_Component_FrmErrorLogs.def
@@ -30,9 +30,10 @@
]
Properties:
[
- Taborder: 0
+ Taborder: 1
]
}
+ #child: Panel391
]
Properties:
[
diff --git a/_Main/UI/MacroPlannerWebApp/Views/Test.vw b/_Main/UI/MacroPlannerWebApp/Views/Test.vw
index 36dff5d..1a6fe97 100644
--- a/_Main/UI/MacroPlannerWebApp/Views/Test.vw
+++ b/_Main/UI/MacroPlannerWebApp/Views/Test.vw
@@ -310,6 +310,10 @@
}
components
{
+ FormFillingCapacityOrder_PanelFillingCapacityOrder
+ {
+ sizeRatio: 1
+ }
FormFillingCapacityOrder_ListFillingCapacityOrder
{
}
@@ -430,523 +434,6 @@
dataPath: 'OrderType'
dataType: 'string'
index: 12
- subtotals: ''
- width: 150
- }
- }
- }
- }
- form_FormPriorityPolicy
- {
- title: 'QTIANMA_JITUAN::FormPriorityPolicy'
- shown: true
- componentID: 'QTIANMA_JITUAN::FormPriorityPolicy'
- layout
- {
- mode: 'open'
- rowPosition: 32
- rowSpan: 13
- columnPosition: 5
- columnSpan: 8
- }
- components
- {
- FormPriorityPolicy_ListPriorityPolicy
- {
- }
- FormPriorityPolicy_DataSetLevelPriorityPolicy
- {
- groupDepth: -1
- column_Name
- {
- columnId: 'Name'
- dataPath: 'Name'
- dataType: 'string'
- index: 0
- subtotals: ''
- width: 150
- }
- column_Formula
- {
- columnId: 'Formula'
- dataPath: 'Formula'
- dataType: 'string'
- index: 1
- subtotals: ''
- width: 150
- }
- column_CalculateValue
- {
- columnId: 'CalculateValue'
- dataPath: 'CalculateValue'
- dataType: 'string'
- index: 2
- subtotals: ''
- width: 150
- }
- column_Desc
- {
- columnId: 'Desc'
- dataPath: 'Desc'
- dataType: 'string'
- index: 3
- subtotals: ''
- width: 150
- }
- }
- FormPriorityPolicy_PanelPriorityPolicyOperation
- {
- sizeRatio: 1
- }
- FormPriorityPolicy_PanelPriorityPolicyOperationButton
- {
- sizeRatio: 1
- }
- FormPriorityPolicy_PanelPriorityPolicyCoefficient
- {
- sizeRatio: 1
- }
- }
- }
- form_FormPriorityResult
- {
- title: 'QTIANMA_JITUAN::FormPriorityResult'
- shown: true
- componentID: 'QTIANMA_JITUAN::FormPriorityResult'
- layout
- {
- mode: 'open'
- rowPosition: 45
- rowSpan: 17
- columnPosition: 1
- columnSpan: 12
- }
- components
- {
- FormPriorityResult_PanelPriorityResult
- {
- sizeRatio: 1
- }
- FormPriorityResult_ListPriorityResult
- {
- }
- FormPriorityResult_DataSetLevelPriorityResult
- {
- groupDepth: -1
- column_SalesSegmentName
- {
- columnId: 'SalesSegmentName'
- dataPath: 'SalesSegmentName'
- dataType: 'string'
- index: 0
- subtotals: ''
- width: 150
- }
- column_ProductID
- {
- columnId: 'ProductID'
- dataPath: 'ProductID'
- dataType: 'string'
- index: 1
- subtotals: ''
- width: 150
- }
- column_StockingPointID
- {
- columnId: 'StockingPointID'
- dataPath: 'StockingPointID'
- dataType: 'string'
- index: 2
- subtotals: ''
- width: 150
- }
- column_Customer
- {
- columnId: 'Customer'
- dataPath: 'Customer'
- dataType: 'string'
- index: 3
- subtotals: ''
- width: 150
- }
- column_BusinessType
- {
- columnId: 'BusinessType'
- dataPath: 'BusinessType'
- dataType: 'string'
- index: 4
- subtotals: ''
- width: 150
- }
- column_Quantity
- {
- columnId: 'Quantity'
- dataPath: 'Quantity'
- dataType: 'real'
- index: 5
- subtotals: ''
- width: 150
- }
- column_UnitOfMeasureName
- {
- columnId: 'UnitOfMeasureName'
- dataPath: 'UnitOfMeasureName'
- dataType: 'string'
- index: 6
- subtotals: ''
- width: 150
- }
- column_DemandDate
- {
- columnId: 'DemandDate'
- dataPath: 'DemandDate'
- dataType: 'date'
- index: 7
- subtotals: ''
- width: 150
- }
- column_PriorityResultScore
- {
- columnId: 'PriorityResultScore'
- dataPath: 'PriorityResultScore'
- dataType: 'real'
- index: 8
- subtotals: ''
- width: 150
- }
- }
- FormPriorityResult_PanelPriorityResultDetails
- {
- sizeRatio: 1
- }
- FormPriorityResult_ListPriorityResultBusinessTypeDetails
- {
- }
- FormPriorityResult_DataSetLevelPriorityResultDetails
- {
- groupDepth: -1
- column_SalesSegmentName
- {
- columnId: 'SalesSegmentName'
- dataPath: 'SalesSegmentName'
- dataType: 'string'
- index: 0
- subtotals: ''
- width: 150
- }
- column_StockingPointID
- {
- columnId: 'StockingPointID'
- dataPath: 'StockingPointID'
- dataType: 'string'
- index: 1
- subtotals: ''
- width: 150
- }
- column_Customer
- {
- columnId: 'Customer'
- dataPath: 'Customer'
- dataType: 'string'
- index: 2
- subtotals: ''
- width: 150
- }
- column_BusinessType
- {
- columnId: 'BusinessType'
- dataPath: 'BusinessType'
- dataType: 'string'
- index: 3
- subtotals: ''
- width: 150
- }
- column_Quantity
- {
- columnId: 'Quantity'
- dataPath: 'Quantity'
- dataType: 'real'
- index: 4
- subtotals: ''
- width: 150
- }
- column_UnitOfMeasureName
- {
- columnId: 'UnitOfMeasureName'
- dataPath: 'UnitOfMeasureName'
- dataType: 'string'
- index: 5
- subtotals: ''
- width: 150
- }
- column_DemandDate
- {
- columnId: 'DemandDate'
- dataPath: 'DemandDate'
- dataType: 'date'
- index: 6
- subtotals: ''
- width: 150
- }
- column_PriorityResultScore
- {
- columnId: 'PriorityResultScore'
- dataPath: 'PriorityResultScore'
- dataType: 'real'
- index: 7
- subtotals: ''
- width: 150
- }
- column_PriorityPolicyName
- {
- columnId: 'PriorityPolicyName'
- dataPath: 'PriorityPolicyName'
- dataType: 'string'
- index: 8
- subtotals: ''
- width: 150
- }
- column_PriorityFactorName
- {
- columnId: 'PriorityFactorName'
- dataPath: 'PriorityFactorName'
- dataType: 'string'
- index: 9
- subtotals: ''
- width: 150
- }
- column_PriorityFactorGradingName
- {
- columnId: 'PriorityFactorGradingName'
- dataPath: 'PriorityFactorGradingName'
- dataType: 'string'
- index: 10
- subtotals: ''
- width: 150
- }
- column_PriorityTotalScore
- {
- columnId: 'PriorityTotalScore'
- dataPath: 'PriorityTotalScore'
- dataType: 'real'
- index: 11
- subtotals: ''
- width: 150
- }
- }
- FormPriorityResult_ListPriorityResultGroupDetails
- {
- }
- FormPriorityResult_DataSetLevelPriorityResultDetails872
- {
- groupDepth: -1
- column_SalesSegmentName
- {
- columnId: 'SalesSegmentName'
- dataPath: 'SalesSegmentName'
- dataType: 'string'
- index: 0
- subtotals: ''
- width: 150
- }
- column_StockingPointID
- {
- columnId: 'StockingPointID'
- dataPath: 'StockingPointID'
- dataType: 'string'
- index: 1
- subtotals: ''
- width: 150
- }
- column_Customer
- {
- columnId: 'Customer'
- dataPath: 'Customer'
- dataType: 'string'
- index: 2
- subtotals: ''
- width: 150
- }
- column_BusinessType
- {
- columnId: 'BusinessType'
- dataPath: 'BusinessType'
- dataType: 'string'
- index: 3
- subtotals: ''
- width: 150
- }
- column_Quantity
- {
- columnId: 'Quantity'
- dataPath: 'Quantity'
- dataType: 'real'
- index: 4
- subtotals: ''
- width: 150
- }
- column_UnitOfMeasureName
- {
- columnId: 'UnitOfMeasureName'
- dataPath: 'UnitOfMeasureName'
- dataType: 'string'
- index: 5
- subtotals: ''
- width: 150
- }
- column_DemandDate
- {
- columnId: 'DemandDate'
- dataPath: 'DemandDate'
- dataType: 'date'
- index: 6
- subtotals: ''
- width: 150
- }
- column_PriorityResultScore
- {
- columnId: 'PriorityResultScore'
- dataPath: 'PriorityResultScore'
- dataType: 'real'
- index: 7
- subtotals: ''
- width: 150
- }
- column_PriorityPolicyName
- {
- columnId: 'PriorityPolicyName'
- dataPath: 'PriorityPolicyName'
- dataType: 'string'
- index: 8
- subtotals: ''
- width: 150
- }
- column_PriorityFactorName
- {
- columnId: 'PriorityFactorName'
- dataPath: 'PriorityFactorName'
- dataType: 'string'
- index: 9
- subtotals: ''
- width: 150
- }
- column_PriorityFactorGradingName
- {
- columnId: 'PriorityFactorGradingName'
- dataPath: 'PriorityFactorGradingName'
- dataType: 'string'
- index: 10
- subtotals: ''
- width: 150
- }
- column_PriorityTotalScore
- {
- columnId: 'PriorityTotalScore'
- dataPath: 'PriorityTotalScore'
- dataType: 'real'
- index: 11
- subtotals: ''
- width: 150
- }
- }
- }
- }
- form_FormPriorityFactor
- {
- title: 'QTIANMA_JITUAN::FormPriorityFactor'
- shown: true
- componentID: 'QTIANMA_JITUAN::FormPriorityFactor'
- layout
- {
- mode: 'open'
- rowPosition: 37
- rowSpan: 8
- columnPosition: 1
- columnSpan: 4
- }
- components
- {
- FormPriorityFactor_ListPriorityFactor
- {
- }
- FormPriorityFactor_DataSetLevelPriorityFactor
- {
- groupDepth: -1
- column_Name
- {
- columnId: 'Name'
- dataPath: 'Name'
- dataType: 'string'
- index: 0
- subtotals: ''
- width: 150
- }
- column_Coefficient
- {
- columnId: 'Coefficient'
- dataPath: 'Coefficient'
- dataType: 'real'
- index: 1
- subtotals: ''
- width: 150
- }
- column_Desc
- {
- columnId: 'Desc'
- dataPath: 'Desc'
- dataType: 'string'
- index: 2
- subtotals: ''
- width: 150
- }
- }
- }
- }
- form_FormPriorityFactorGrading
- {
- title: 'QTIANMA_JITUAN::FormPriorityFactorGrading'
- shown: true
- componentID: 'QTIANMA_JITUAN::FormPriorityFactorGrading'
- layout
- {
- mode: 'open'
- rowPosition: 32
- rowSpan: 5
- columnPosition: 1
- columnSpan: 4
- }
- components
- {
- FormPriorityFactorGrading_ListPriorityFactorGrading
- {
- }
- FormPriorityFactorGrading_DataSetLevelPriorityFactorGrading
- {
- groupDepth: -1
- column_GradingName
- {
- columnId: 'GradingName'
- dataPath: 'GradingName'
- dataType: 'string'
- index: 0
- subtotals: ''
- width: 150
- }
- column_GradeValueStr
- {
- columnId: 'GradeValueStr'
- dataPath: 'GradeValueStr'
- dataType: 'string'
- index: 1
- subtotals: ''
- width: 150
- }
- column_GradeDesc
- {
- columnId: 'GradeDesc'
- dataPath: 'GradeDesc'
- dataType: 'string'
- index: 2
subtotals: ''
width: 150
}
--
Gitblit v1.9.3