From 9efbae46f8a30801a7285bb668526fc661be42e7 Mon Sep 17 00:00:00 2001 From: Administrator <renhui.hao@capgemini.com> Date: 星期日, 08 十月 2023 21:12:05 +0800 Subject: [PATCH] Merge remote-tracking branch 'refs/remotes/origin/dev' --- _Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_Buttonplus_OnClick.def | 7 _Main/UI/MacroPlannerWebApp/Component_FormInterfaceTest/Response_PanelInterfaceTest_ButtonSynchronizeDataToMacroPlan_OnClick.def | 4 _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DropDownStringListBusinessType_OnSelectionChanged.def | 5 _Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Response_Panel391_Button655_OnClick.def | 39 + _Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetSalesSegment_MP.qbl | 16 _Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonDivide_OnClick.def | 7 _Main/UI/MacroPlannerWebApp/Component_FrmErrorLogs/Component_List710.def | 2 _Main/BL/Type_MacroPlan/Method_MappingOperationCostData.qbl | 31 _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactorGrading/Response_ListPriorityFactorGrading_OnClick.def | 1 _Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyCoefficient_902_ButtonCommit_OnClick.def | 7 _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Component_listContextMenuPriorityFactor.def | 35 - _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DropDownStringListBusinessType_OnCreated.def | 5 _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_OnClick.def | 1 _Main/UI/MacroPlannerWebApp/Views/Test.vw | 521 --------------------- _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/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonRollBack_OnClick.def | 7 _Main/BL/Type_H_FunctionClass/StaticMethod_SM_OrderReverseOrAuthorize.qbl | 2 _Main/BL/Type_PriorityResult/StaticMethod_calculatePriorityResult.qbl | 101 ++- _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_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonAddPriorityPolicy_OnClick.def | 13 _Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonRightParenthesis_OnClick.def | 7 _Main/UI/MacroPlannerWebApp/Component_DialogFillingCapacityOrder/Component_pnlContent.def | 41 + _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_OnClick#144.def | 1 _Main/BL/Type_Global_MappingCustomOrder/StaticMethod_GetUnitOfMeasure_MP.qbl | 16 _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/_ROOT_Component_FormPriorityFactor.def | 15 _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/BL/Type_CapacityAllocationResults/StaticMethod_IterativeGeneration2.qbl | 22 _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_OnClick#582.def | 1 _Main/UI/MacroPlannerWebApp/Component_FormFillingCapacityOrder/Response_PanelFillingCapacityOrder_ButtonDeduct_OnClick.def | 20 _Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PriorityPolicyBusinessType_OnSelectionChanged.def | 6 _Main/UI/MacroPlannerWebApp/Component_DialogChoosePriorityPolicy/Response_pnlActions_btnOk_OnClick.def | 2 _Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonMultiply_OnClick.def | 7 _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactorGrading/Component_listContextMenuPriorityFactorGrading.def | 14 _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/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonLeftParenthesis_OnClick.def | 7 _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DataHolderPriorityFactorSelect_OnDataChanged.def | 4 _Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonSubtract_OnClick.def | 7 _Main/BL/Type_PriorityFactor/StaticMethod_InitData.qbl | 18 _Main/BL/Type_FillingCapacityOrder/Attribute_UnitOfMeasure_MPID.qbl | 7 49 files changed, 716 insertions(+), 667 deletions(-) diff --git a/_Main/BL/Type_CapacityAllocationResults/StaticMethod_IterativeGeneration2.qbl b/_Main/BL/Type_CapacityAllocationResults/StaticMethod_IterativeGeneration2.qbl index b327f63..dcd7365 100644 --- a/_Main/BL/Type_CapacityAllocationResults/StaticMethod_IterativeGeneration2.qbl +++ b/_Main/BL/Type_CapacityAllocationResults/StaticMethod_IterativeGeneration2.qbl @@ -16,6 +16,22 @@ //info( "鐩爣鏃堕棿锛�", targetDate.Format( "Y-M2-D2" ) ); info( pisp.Name() ); traverse ( pisp, ProductInStockingPointInPeriodPlanning.astype( ProductInStockingPointInPeriodPlanningLeaf ), pispippl, pispippl.Start().Date() = targetDate ) { + info( "鏄惁鏈変緵搴旓細", pispippl.NewSupply( relsize ) > 0, " 搴撳瓨锛�", pispippl.InventoryLevelEnd() ); + if ( numberOfLayers <> 1 and pispippl.NewSupply( relsize ) = 0 ) { + previous := pispippl.PreviousPlanningPISPIP().astype( ProductInStockingPointInPeriodPlanningLeaf ); + if ( not previous.Period_MP().IsHistorical() ) { + previousDate := previous.Start().Date(); + CapacityAllocationResults::IterativeGeneration2( globalOTDTable, + pisp, + previousDate, + carrcs, + numberOfLayers, + firstLevelSupply, + currentLayerDependentDemandQuantity + ); + } + } + traverse ( pispippl, NewSupply, ns, ns.Quantity() > 0 ) { if ( numberOfLayers = 1 ) { firstLevelSupply := ns; @@ -24,7 +40,7 @@ ontype( ns.PeriodTask_MP() ) { PeriodTaskOperation as pto : { // info( "Operation鍛ㄦ湡浠诲姟..." ); - traverse ( ns, PeriodTask_MP.astype( PeriodTaskOperation ).DependentDemand, dd ) { + traverse ( ns, PeriodTask_MP.astype( PeriodTaskOperation ).DependentDemand, dd, dd.Quantity() > 0 ) { if ( numberOfLayers = 1 ) { currentLayerDependentDemandQuantity := ns.Quantity(); } @@ -56,8 +72,8 @@ ModuleMeasurementUnit := firstLevelSupply.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().UnitOfMeasureName(), ModuleBase := guard( firstLevelSupply.PeriodTask_MP().astype( PeriodTaskOperation ).Operation().UnitID(), "杞﹂亾杩愯緭" ), Division := carrc.Division(), - RequirementDate := ns.Start().Date(), - Date := ns.Start().Date(), + RequirementDate := firstLevelSupply.Start().Date(), + Date := firstLevelSupply.Start().Date(), Description := "", ID := OS::GenerateGUIDAsString(), ProductID := ns.ProductInStockingPointInPeriodPlanningLeaf().ProductInStockingPoint_MP().ProductID(), 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..f44304e 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,16 +54,19 @@ 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() ); - cost := connecteditem.Cost(); - lengthoftime := connecteditem.LengthOfTime(); - start := connecteditem.Start(); - timeunit := connecteditem.TimeUnit(); - OperationCost::Create( id, operation, account, "Volume", start, timeunit, lengthoftime, cost, isfromdb ); + if( not isnull( connecteditem)){ + cost := connecteditem.Cost(); + lengthoftime := connecteditem.LengthOfTime(); + start := connecteditem.Start(); + timeunit := connecteditem.TimeUnit(); + OperationCost::Create( id, operation, account, "Volume", start, timeunit, lengthoftime, cost, isfromdb ); + } + } } *] diff --git a/_Main/BL/Type_PriorityFactor/StaticMethod_InitData.qbl b/_Main/BL/Type_PriorityFactor/StaticMethod_InitData.qbl index 956d704..a2be846 100644 --- a/_Main/BL/Type_PriorityFactor/StaticMethod_InitData.qbl +++ b/_Main/BL/Type_PriorityFactor/StaticMethod_InitData.qbl @@ -18,15 +18,15 @@ { // 娣诲姞浜嬩笟閮ㄥ搴旂殑棰勫埗浼樺厛绾у洜瀛愭暟鎹� - owner.PriorityFactor(relnew,Name := "瀹㈡埛绛栫暐" ,Desc := "灏嗕簨涓氶儴璁$畻鐨勪紭鍏堢骇锛屾寜璇ョ粏鍒嗛」姣斾緥闃舵纭畾璇ラ」寰楀垎銆傚锛�81%鈮鈮�100% 5鍒嗭紝61%鈮鈮�80% 4鍒�", BusinessType := businessType ); - owner.PriorityFactor(relnew,Name := "瀹㈡埛绛夌骇" ,Desc := "鏍规嵁闇�姹傛暟鎹腑瀹㈡埛锛屽尮閰嶅鎴风瓑绾�",BusinessType := businessType); - owner.PriorityFactor(relnew,Name := "澶у紶鐩堝埄姘村钩" ,Desc := "1銆佽幏鍙栧鎴�*SKU澶у紶鐩堝埄鏁� 2銆佸畾涔夊鎴�*SKU澶у紶鐩堝埄鏁伴樁姊緱鍒� 3銆佸尮閰嶉渶姹傛暟鎹腑瀹㈡埛鍙奡KU鏁版嵁锛屽緱鍒板搴旈樁姊緱鍒�", BusinessType := businessType ); - owner.PriorityFactor(relnew,Name := "缁嗗垎甯傚満绛夌骇" ,Desc := "1銆佽幏鍙栧鎴�*SKU瀵瑰簲缁嗗垎甯傚満绛夌骇 2銆佸尮閰嶉渶姹傛暟鎹腑瀹㈡埛鍙奡KU瀵瑰簲缁嗗垎甯傚満璇勫垎绛夌骇锛屽緱鍒板搴旈樁姊緱鍒�", BusinessType := businessType ); - owner.PriorityFactor(relnew,Name := "闇�姹傜被鍨�" ,Desc := "鍖归厤涓嶅悓闇�姹傜绫伙紝寰楀埌瀵瑰簲寰楀垎", BusinessType := businessType ); - owner.PriorityFactor(relnew,Name := "璁㈠崟涓嬪崟鏃堕棿" ,Desc := "鏍规嵁闇�姹傝鍗曚腑涓嬪崟鏃堕棿涓庨渶姹傛椂闂村樊鍊硷紝鍖归厤闃舵寰楀垎", BusinessType := businessType ); - owner.PriorityFactor(relnew,Name := "浜у搧绛夌骇" ,Desc := "1銆佽幏鍙栧鎴�*SKU DOI&DSI鏁� 2銆佸畾涔夊鎴�*SKUDOI&DSI鏁伴樁姊緱鍒� 3銆佸尮閰嶉渶姹傛暟鎹腑瀹㈡埛鍙奡KU鏁版嵁锛屽緱鍒板搴旈樁姊緱鍒�", BusinessType := businessType ); - owner.PriorityFactor(relnew,Name := "DOI" ,Desc := "1銆佽幏鍙栧鎴�*SKU DOI&DSI鏁� 2銆佸畾涔夊鎴�*SKUDOI&DSI鏁伴樁姊緱鍒� 3銆佸尮閰嶉渶姹傛暟鎹腑瀹㈡埛鍙奡KU鏁版嵁锛屽緱鍒板搴旈樁姊緱鍒�", BusinessType := businessType ); - owner.PriorityFactor(relnew,Name := "DSI" ,Desc := "1銆佽幏鍙栧鎴�*SKU DOI&DSI鏁� 2銆佸畾涔夊鎴�*SKUDOI&DSI鏁伴樁姊緱鍒� 3銆佸尮閰嶉渶姹傛暟鎹腑瀹㈡埛鍙奡KU鏁版嵁锛屽緱鍒板搴旈樁姊緱鍒�", BusinessType := businessType ); + owner.PriorityFactor(relnew,Name := "瀹㈡埛绛栫暐" ,Desc := "灏嗕簨涓氶儴璁$畻鐨勪紭鍏堢骇锛屾寜璇ョ粏鍒嗛」姣斾緥闃舵纭畾璇ラ」寰楀垎銆傚锛�81%鈮鈮�100% 5鍒嗭紝61%鈮鈮�80% 4鍒�", BusinessType := businessType, Coefficient := 100 ); + owner.PriorityFactor(relnew,Name := "瀹㈡埛绛夌骇" ,Desc := "鏍规嵁闇�姹傛暟鎹腑瀹㈡埛锛屽尮閰嶅鎴风瓑绾�",BusinessType := businessType, Coefficient := 100); + owner.PriorityFactor(relnew,Name := "澶у紶鐩堝埄姘村钩" ,Desc := "1銆佽幏鍙栧鎴�*SKU澶у紶鐩堝埄鏁� 2銆佸畾涔夊鎴�*SKU澶у紶鐩堝埄鏁伴樁姊緱鍒� 3銆佸尮閰嶉渶姹傛暟鎹腑瀹㈡埛鍙奡KU鏁版嵁锛屽緱鍒板搴旈樁姊緱鍒�", BusinessType := businessType, Coefficient := 100 ); + owner.PriorityFactor(relnew,Name := "缁嗗垎甯傚満绛夌骇" ,Desc := "1銆佽幏鍙栧鎴�*SKU瀵瑰簲缁嗗垎甯傚満绛夌骇 2銆佸尮閰嶉渶姹傛暟鎹腑瀹㈡埛鍙奡KU瀵瑰簲缁嗗垎甯傚満璇勫垎绛夌骇锛屽緱鍒板搴旈樁姊緱鍒�", BusinessType := businessType, Coefficient := 100 ); + owner.PriorityFactor(relnew,Name := "闇�姹傜被鍨�" ,Desc := "鍖归厤涓嶅悓闇�姹傜绫伙紝寰楀埌瀵瑰簲寰楀垎", BusinessType := businessType, Coefficient := 100 ); + owner.PriorityFactor(relnew,Name := "璁㈠崟涓嬪崟鏃堕棿" ,Desc := "鏍规嵁闇�姹傝鍗曚腑涓嬪崟鏃堕棿涓庨渶姹傛椂闂村樊鍊硷紝鍖归厤闃舵寰楀垎", BusinessType := businessType, Coefficient := 100 ); + owner.PriorityFactor(relnew,Name := "浜у搧绛夌骇" ,Desc := "1銆佽幏鍙栧鎴�*SKU DOI&DSI鏁� 2銆佸畾涔夊鎴�*SKUDOI&DSI鏁伴樁姊緱鍒� 3銆佸尮閰嶉渶姹傛暟鎹腑瀹㈡埛鍙奡KU鏁版嵁锛屽緱鍒板搴旈樁姊緱鍒�", BusinessType := businessType, Coefficient := 100 ); + owner.PriorityFactor(relnew,Name := "DOI" ,Desc := "1銆佽幏鍙栧鎴�*SKU DOI&DSI鏁� 2銆佸畾涔夊鎴�*SKUDOI&DSI鏁伴樁姊緱鍒� 3銆佸尮閰嶉渶姹傛暟鎹腑瀹㈡埛鍙奡KU鏁版嵁锛屽緱鍒板搴旈樁姊緱鍒�", BusinessType := businessType, Coefficient := 100 ); + owner.PriorityFactor(relnew,Name := "DSI" ,Desc := "1銆佽幏鍙栧鎴�*SKU DOI&DSI鏁� 2銆佸畾涔夊鎴�*SKUDOI&DSI鏁伴樁姊緱鍒� 3銆佸尮閰嶉渶姹傛暟鎹腑瀹㈡埛鍙奡KU鏁版嵁锛屽緱鍒板搴旈樁姊緱鍒�", BusinessType := businessType, Coefficient := 100 ); // 浼樺厛绾у洜瀛愮粏鍒� priorityFactorList := selectset( owner,PriorityFactor,p, diff --git a/_Main/BL/Type_PriorityResult/StaticMethod_calculatePriorityResult.qbl b/_Main/BL/Type_PriorityResult/StaticMethod_calculatePriorityResult.qbl index 7cd8770..83fc44e 100644 --- a/_Main/BL/Type_PriorityResult/StaticMethod_calculatePriorityResult.qbl +++ b/_Main/BL/Type_PriorityResult/StaticMethod_calculatePriorityResult.qbl @@ -10,8 +10,14 @@ [* // NBoTk Sep-26-2023 (created) - // 璁$畻瀹㈡埛璁㈠崟鐨勪紭鍏堢骇寰楀垎 鍥炲~鏉冮噸鏁版嵁 鐢熸垚鏂扮殑Priority鏄庣粏鏁版嵁 + // 鍏堝垹闄ゅ巻鍙茬殑璺戝垎璇︽儏 + traverse( macroPlan,PriorityResult,p) + { + p.PriorityResultBusinessTypeDetail(relflush ); + p.Delete(); + } + // 璁$畻瀹㈡埛璁㈠崟鐨勪紭鍏堢骇寰楀垎 鍥炲~鏉冮噸鏁版嵁 鐢熸垚鏂扮殑Priority鏄庣粏鏁版嵁 traverse( macroPlan,SalesDemand.astype( CustomerOrder ),e) { // 浜嬩笟閮ㄤ俊鎭� @@ -27,8 +33,8 @@ priorityResult := macroPlan.PriorityResult(relnew,CustomerOrderID := e.ID(),BusinessType := businessType,Customer := e.CustomerName(),CustomerID := e.CustomerID(), DemandDate := e.EndDate(),ProductID := e.ProductID(),Quantity := e.Quantity(),SalesSegmentName := e.SalesSegmentName(), StockingPointID := e.StockingPointID(),UnitOfMeasureName := e.UnitOfMeasureName() - ); - + ); + // 鍒ゆ柇鏄泦鍥� 杩樻槸浜嬩笟閮� if( businessType.FindString( "闆嗗洟",0 ) <> -1) { @@ -54,42 +60,73 @@ result.PriorityResultScore() ) - // Quintiq浼樺厛绾у垎10绾� 闇�瑕佸垎娈佃绠� - subLevel := resultList.Size() div 10; + // Quintiq浼樺厛绾у垎10绾� 闇�瑕佸垎娈佃绠� 鍚戜笂鍙栨暣 + subLevel := round( resultList.Size() div 10); subLevelCount := 0; priorityValue := 1; - traverse( resultList,Elements,e) + if( resultList.Size() <= 10 ) { - obj := selectobject( macroPlan,SalesDemand.astype( CustomerOrder ),order, - order.ID() = e.CustomerOrderID() - ); - - // 璁㈠崟鏁版嵁涓嶄负绌哄啀鍋氬鐞� - if( not isnull( obj ) ) + traverse( resultList,Elements,e) { - obj.PriorityName([String]priorityValue); - - // 鍒涘缓浼樺厛绾ф暟鎹� 闇�瑕佸厛娓呴櫎涓婁竴娆$殑璁$畻缁撴灉 - // 鍒ゆ柇褰撳墠customerOrder鏄惁瀛樺湪 - oldPriority := selectobject( macroPlan,Priority,p,p.Name() = [String]priorityValue); - if(isnull( oldPriority ) ) - { - macroPlan.Priority(relnew,Weight := priorityValue,Name := [String]priorityValue); - } + obj := selectobject( macroPlan,SalesDemand.astype( CustomerOrder ),order, + order.ID() = e.CustomerOrderID() + ); + + // 璁㈠崟鏁版嵁涓嶄负绌哄啀鍋氬鐞� + if( not isnull( obj ) ) + { + obj.PriorityName([String]priorityValue); + + // 鍒涘缓浼樺厛绾ф暟鎹� 闇�瑕佸厛娓呴櫎涓婁竴娆$殑璁$畻缁撴灉 + // 鍒ゆ柇褰撳墠customerOrder鏄惁瀛樺湪 + oldPriority := selectobject( macroPlan,Priority,p,p.Name() = [String]priorityValue); + if(isnull( oldPriority ) ) + { + macroPlan.Priority(relnew,Weight := priorityValue,Name := [String]priorityValue); + } + } + + // 鍒ゆ柇璁$畻鍒嗘鏁伴噺涓嶲uintiq鍘熷浼樺厛绾� + //浼樺厛绾�+1 + priorityValue := priorityValue + 1; + } + } + else + { + traverse( resultList,Elements,e) + { + obj := selectobject( macroPlan,SalesDemand.astype( CustomerOrder ),order, + order.ID() = e.CustomerOrderID() + ); + + // 璁㈠崟鏁版嵁涓嶄负绌哄啀鍋氬鐞� + if( not isnull( obj ) ) + { + obj.PriorityName([String]priorityValue); + + // 鍒涘缓浼樺厛绾ф暟鎹� 闇�瑕佸厛娓呴櫎涓婁竴娆$殑璁$畻缁撴灉 + // 鍒ゆ柇褰撳墠customerOrder鏄惁瀛樺湪 + oldPriority := selectobject( macroPlan,Priority,p,p.Name() = [String]priorityValue); + if(isnull( oldPriority ) ) + { + macroPlan.Priority(relnew,Weight := priorityValue,Name := [String]priorityValue); + } + } + + // 鍒ゆ柇璁$畻鍒嗘鏁伴噺涓嶲uintiq鍘熷浼樺厛绾� + subLevelCount := subLevelCount + 1; + if( subLevelCount = subLevel ) + { + // 褰撳埌杈惧垎娈垫暟閲忓悗 浼樺厛绾�+1 鍒嗘璁℃暟浠�0寮�濮� + if( priorityValue < 10 ) + { + priorityValue := priorityValue + 1; + } + subLevelCount := 0; + } } - // 鍒ゆ柇璁$畻鍒嗘鏁伴噺涓嶲uintiq鍘熷浼樺厛绾� - subLevelCount := subLevelCount + 1; - if( subLevelCount = subLevel ) - { - // 褰撳埌杈惧垎娈垫暟閲忓悗 浼樺厛绾�+1 鍒嗘璁℃暟浠�0寮�濮� - if( priorityValue < 10 ) - { - priorityValue := priorityValue + 1; - } - subLevelCount := 0; - } } *] } diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogChoosePriorityPolicy/Response_pnlActions_btnOk_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogChoosePriorityPolicy/Response_pnlActions_btnOk_OnClick.def index 4b92eb4..f9cb868 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_DialogChoosePriorityPolicy/Response_pnlActions_btnOk_OnClick.def +++ b/_Main/UI/MacroPlannerWebApp/Component_DialogChoosePriorityPolicy/Response_pnlActions_btnOk_OnClick.def @@ -11,7 +11,7 @@ name := PriorityPolicyStringList.Text(); dlg := construct( DialogChoosePriorityPolicy ); dlg.CalculatePriorityResult(name); - dlg.Close(); + Form.Close(); *] GroupServerCalls: false } 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_FormPriorityFactor/Component_listContextMenuPriorityFactor.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Component_listContextMenuPriorityFactor.def index ada73f4..7d29277 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Component_listContextMenuPriorityFactor.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Component_listContextMenuPriorityFactor.def @@ -5,39 +5,6 @@ BaseType: 'listContextMenu' Children: [ - Component MenuEdit - { - #keys: '[414382.0.485622263]' - BaseType: 'WebMenu' - Properties: - [ - Image: 'GEAR_EDIT' - Taborder: 4 - Title: '缂栬緫' - ] - } - Component MenuNew - { - #keys: '[414382.0.593001800]' - BaseType: 'WebMenu' - Properties: - [ - Image: 'GEAR_ADD' - Taborder: 3 - Title: '鏂板' - ] - } - Component MenuDel - { - #keys: '[414382.0.593001811]' - BaseType: 'WebMenu' - Properties: - [ - Image: 'GEAR_DELETE' - Taborder: 5 - Title: '鍒犻櫎' - ] - } Component MenuInit { #keys: '[414382.0.600301960]' @@ -45,7 +12,7 @@ Properties: [ Image: 'GEAR_NEW' - Taborder: 6 + Taborder: 3 Title: '鍒濆鍖�' ] } diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DataHolderPriorityFactorSelect_OnDataChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DataHolderPriorityFactorSelect_OnDataChanged.def index ef61871..e005ec6 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DataHolderPriorityFactorSelect_OnDataChanged.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DataHolderPriorityFactorSelect_OnDataChanged.def @@ -9,8 +9,8 @@ { Body: [* - data := selectset( MacroPlan,PriorityFactor,p,true); - this.Data(&data); + //data := selectset( MacroPlan,PriorityFactor,p,true); + //this.Data(&data); *] GroupServerCalls: false } diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DropDownStringListBusinessType_OnCreated.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DropDownStringListBusinessType_OnCreated.def index 0865d17..267db8a 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DropDownStringListBusinessType_OnCreated.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DropDownStringListBusinessType_OnCreated.def @@ -9,9 +9,8 @@ { Body: [* - info( "create" + DropDownStringListBusinessType.Text()); - list := PriorityFactor::GetDataByBusinessType( MacroPlan, DropDownStringListBusinessType.Text()); - DataHolderPriorityFactorSelect.Data(&list); + //list := PriorityFactor::GetDataByBusinessType( MacroPlan, DropDownStringListBusinessType.Text()); + //DataHolderPriorityFactorSelect.Data(&list); *] GroupServerCalls: false } diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DropDownStringListBusinessType_OnSelectionChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DropDownStringListBusinessType_OnSelectionChanged.def index a1d8860..cbab0ed 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DropDownStringListBusinessType_OnSelectionChanged.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DropDownStringListBusinessType_OnSelectionChanged.def @@ -9,9 +9,8 @@ { Body: [* - info( "selection" + DropDownStringListBusinessType.Text()); - list := PriorityFactor::GetDataByBusinessType( MacroPlan, DropDownStringListBusinessType.Text()); - DataHolderPriorityFactorSelect.Data(&list); + //list := PriorityFactor::GetDataByBusinessType( MacroPlan, DropDownStringListBusinessType.Text()); + //DataHolderPriorityFactorSelect.Data(&list); *] GroupServerCalls: false } diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_MenuEdit_OnClick.def "b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_OnClick\043144.def" similarity index 94% rename from _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_MenuEdit_OnClick.def rename to "_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_OnClick\043144.def" index c054fc1..69b8b43 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_MenuEdit_OnClick.def +++ "b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_OnClick\043144.def" @@ -7,7 +7,6 @@ #keys: '[414382.0.485894605]' CanBindMultiple: false DefinitionID => /ListPriorityFactor/Responsedef_ListPriorityFactor_WebMenu_OnClick - Initiator: 'MenuEdit' QuillAction { Body: diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_MenuNew_OnClick.def "b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_OnClick\043582.def" similarity index 95% rename from _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_MenuNew_OnClick.def rename to "_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_OnClick\043582.def" index 2d18cad..4244d64 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_MenuNew_OnClick.def +++ "b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_OnClick\043582.def" @@ -5,7 +5,6 @@ #keys: '[414382.0.593002709]' CanBindMultiple: false DefinitionID => /ListPriorityFactor/Responsedef_ListPriorityFactor_WebMenu_OnClick - Initiator: 'MenuNew' QuillAction { Body: diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_MenuDel_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_OnClick.def similarity index 94% rename from _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_MenuDel_OnClick.def rename to _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_OnClick.def index 8a86cdf..58990a6 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_MenuDel_OnClick.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_OnClick.def @@ -7,7 +7,6 @@ #keys: '[414382.0.593002800]' CanBindMultiple: false DefinitionID => /ListPriorityFactor/Responsedef_ListPriorityFactor_WebMenu_OnClick - Initiator: 'MenuDel' QuillAction { Body: diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/_ROOT_Component_FormPriorityFactor.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/_ROOT_Component_FormPriorityFactor.def index 4e4d0d6..7c5dda8 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/_ROOT_Component_FormPriorityFactor.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/_ROOT_Component_FormPriorityFactor.def @@ -12,6 +12,21 @@ #keys: '[414382.0.453562359]' BaseType: 'WebDataHolder' Databinding: 'structured[PriorityFactor]*' + Children: + [ + Component DataExtractorPriorityFactorSelect + { + #keys: '[414382.0.608512605]' + BaseType: 'WebDataExtractor' + Properties: + [ + DataType: 'MacroPlan' + Source: 'MacroPlan' + Taborder: 0 + Transformation: 'PriorityFactor' + ] + } + ] Properties: [ Taborder: 1 diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactorGrading/Component_listContextMenuPriorityFactorGrading.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactorGrading/Component_listContextMenuPriorityFactorGrading.def index 39fe40c..33b6aa3 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactorGrading/Component_listContextMenuPriorityFactorGrading.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactorGrading/Component_listContextMenuPriorityFactorGrading.def @@ -3,20 +3,6 @@ { #keys: '[414382.0.479530873]' BaseType: 'listContextMenu' - Children: - [ - Component MenuEdit - { - #keys: '[414382.0.478491125]' - BaseType: 'WebMenu' - Properties: - [ - Image: 'GEAR_EDIT' - Taborder: 3 - Title: '缂栬緫' - ] - } - ] Properties: [ Taborder: 0 diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactorGrading/Response_ListPriorityFactorGrading_MenuEdit_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactorGrading/Response_ListPriorityFactorGrading_OnClick.def similarity index 94% rename from _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactorGrading/Response_ListPriorityFactorGrading_MenuEdit_OnClick.def rename to _Main/UI/MacroPlannerWebApp/Component_FormPriorityFactorGrading/Response_ListPriorityFactorGrading_OnClick.def index b9822f6..c1003b6 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactorGrading/Response_ListPriorityFactorGrading_MenuEdit_OnClick.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactorGrading/Response_ListPriorityFactorGrading_OnClick.def @@ -7,7 +7,6 @@ #keys: '[414382.0.479531766]' CanBindMultiple: false DefinitionID => /ListPriorityFactorGrading/Responsedef_ListPriorityFactorGrading_WebMenu_OnClick - Initiator: 'MenuEdit' QuillAction { Body: diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyCoefficient_902_ButtonCommit_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyCoefficient_902_ButtonCommit_OnClick.def index d645e29..ed5c423 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyCoefficient_902_ButtonCommit_OnClick.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyCoefficient_902_ButtonCommit_OnClick.def @@ -5,6 +5,13 @@ #keys: '[414382.0.506250033]' CanBindMultiple: false DefinitionID: 'Responsedef_WebButton_OnClick' + Precondition: + [* + // 褰撳墠鏄惁鏈夐�変腑鐨勪紭鍏堢骇绛栫暐 + feedback := "璇峰厛閫夋嫨涓�鏉′紭鍏堢骇绛栫暐鍚庡啀杩涜缂栬緫鍏紡"; + check := PanelPriorityPolicyOperationName.Text() = ""; + return not check; + *] QuillAction { Body: diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonAddPriorityPolicy_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonAddPriorityPolicy_OnClick.def index 383cbb2..466bd70 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonAddPriorityPolicy_OnClick.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonAddPriorityPolicy_OnClick.def @@ -7,9 +7,18 @@ DefinitionID: 'Responsedef_WebButton_OnClick' Precondition: [* - feedback := "璇ヤ紭鍏堢骇鍥犲瓙宸茶閫夋嫨." + // 褰撳墠鏄惁鏈夐�変腑鐨勪紭鍏堢骇绛栫暐 + feedback := "璇峰厛閫夋嫨涓�鏉′紭鍏堢骇绛栫暐鍚庡啀杩涜缂栬緫鍏紡"; + check := PanelPriorityPolicyOperationName.Text() = ""; - return not LabelFormula.Text() ~ DropDownStringList.Text(); + if( not check) + { + // 鍒ゆ柇璇ヤ紭鍏堢骇鍥犲瓙鏄惁宸茬粡琚�夋嫨 + check := LabelFormula.Text() ~ DropDownStringList.Text(); + feedback := "璇ヤ紭鍏堢骇鍥犲瓙宸茶閫夋嫨." + } + + return not check; *] QuillAction { diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonDivide_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonDivide_OnClick.def index 11b1352..ef82cb9 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonDivide_OnClick.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonDivide_OnClick.def @@ -5,6 +5,13 @@ #keys: '[414382.0.500261587]' CanBindMultiple: false DefinitionID: 'Responsedef_WebButton_OnClick' + Precondition: + [* + // 褰撳墠鏄惁鏈夐�変腑鐨勪紭鍏堢骇绛栫暐 + feedback := "璇峰厛閫夋嫨涓�鏉′紭鍏堢骇绛栫暐鍚庡啀杩涜缂栬緫鍏紡"; + check := PanelPriorityPolicyOperationName.Text() = ""; + return not check; + *] QuillAction { Body: diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonLeftParenthesis_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonLeftParenthesis_OnClick.def index f4eb5c3..ee84b06 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonLeftParenthesis_OnClick.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonLeftParenthesis_OnClick.def @@ -5,6 +5,13 @@ #keys: '[414382.0.500261667]' CanBindMultiple: false DefinitionID: 'Responsedef_WebButton_OnClick' + Precondition: + [* + // 褰撳墠鏄惁鏈夐�変腑鐨勪紭鍏堢骇绛栫暐 + feedback := "璇峰厛閫夋嫨涓�鏉′紭鍏堢骇绛栫暐鍚庡啀杩涜缂栬緫鍏紡"; + check := PanelPriorityPolicyOperationName.Text() = ""; + return not check; + *] QuillAction { Body: diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonMultiply_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonMultiply_OnClick.def index 2f09779..32f03c0 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonMultiply_OnClick.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonMultiply_OnClick.def @@ -5,6 +5,13 @@ #keys: '[414382.0.500261507]' CanBindMultiple: false DefinitionID: 'Responsedef_WebButton_OnClick' + Precondition: + [* + // 褰撳墠鏄惁鏈夐�変腑鐨勪紭鍏堢骇绛栫暐 + feedback := "璇峰厛閫夋嫨涓�鏉′紭鍏堢骇绛栫暐鍚庡啀杩涜缂栬緫鍏紡"; + check := PanelPriorityPolicyOperationName.Text() = ""; + return not check; + *] QuillAction { Body: diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonRightParenthesis_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonRightParenthesis_OnClick.def index 292ba04..5cede1f 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonRightParenthesis_OnClick.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonRightParenthesis_OnClick.def @@ -5,6 +5,13 @@ #keys: '[414382.0.500261748]' CanBindMultiple: false DefinitionID: 'Responsedef_WebButton_OnClick' + Precondition: + [* + // 褰撳墠鏄惁鏈夐�変腑鐨勪紭鍏堢骇绛栫暐 + feedback := "璇峰厛閫夋嫨涓�鏉′紭鍏堢骇绛栫暐鍚庡啀杩涜缂栬緫鍏紡"; + check := PanelPriorityPolicyOperationName.Text() = ""; + return not check; + *] QuillAction { Body: diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonRollBack_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonRollBack_OnClick.def index d7adf1d..d54ce72 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonRollBack_OnClick.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonRollBack_OnClick.def @@ -5,6 +5,13 @@ #keys: '[414382.0.506055261]' CanBindMultiple: false DefinitionID: 'Responsedef_WebButton_OnClick' + Precondition: + [* + // 褰撳墠鏄惁鏈夐�変腑鐨勪紭鍏堢骇绛栫暐 + feedback := "璇峰厛閫夋嫨涓�鏉′紭鍏堢骇绛栫暐鍚庡啀杩涜缂栬緫鍏紡"; + check := PanelPriorityPolicyOperationName.Text() = ""; + return not check; + *] QuillAction { Body: diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonSubtract_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonSubtract_OnClick.def index 77d6f0a..e9fd780 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonSubtract_OnClick.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_ButtonSubtract_OnClick.def @@ -5,6 +5,13 @@ #keys: '[414382.0.500261427]' CanBindMultiple: false DefinitionID: 'Responsedef_WebButton_OnClick' + Precondition: + [* + // 褰撳墠鏄惁鏈夐�変腑鐨勪紭鍏堢骇绛栫暐 + feedback := "璇峰厛閫夋嫨涓�鏉′紭鍏堢骇绛栫暐鍚庡啀杩涜缂栬緫鍏紡"; + check := PanelPriorityPolicyOperationName.Text() = ""; + return not check; + *] QuillAction { Body: diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_Buttonplus_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_Buttonplus_OnClick.def index 926a7be..ab192c7 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_Buttonplus_OnClick.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PanelPriorityPolicyOperationButton_Buttonplus_OnClick.def @@ -5,6 +5,13 @@ #keys: '[414382.0.500261347]' CanBindMultiple: false DefinitionID: 'Responsedef_WebButton_OnClick' + Precondition: + [* + // 褰撳墠鏄惁鏈夐�変腑鐨勪紭鍏堢骇绛栫暐 + feedback := "璇峰厛閫夋嫨涓�鏉′紭鍏堢骇绛栫暐鍚庡啀杩涜缂栬緫鍏紡"; + check := PanelPriorityPolicyOperationName.Text() = ""; + return not check; + *] QuillAction { Body: diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PriorityPolicyBusinessType_OnSelectionChanged.def b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PriorityPolicyBusinessType_OnSelectionChanged.def index ffc5263..a5937da 100644 --- a/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PriorityPolicyBusinessType_OnSelectionChanged.def +++ b/_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PriorityPolicyBusinessType_OnSelectionChanged.def @@ -11,6 +11,12 @@ [* list := PriorityPolicy::GetDataByBusinessType( MacroPlan, PriorityPolicyBusinessType.Text()); DataHolderPriorityPolicyShowList.Data(&list); + + PanelPriorityPolicyOperationName.Text(""); + LabelFormula.Text(""); + LabelCalculateValue.Text(""); + data := shadow( null( PriorityPolicy ) ); + DataHolderEditPriorityPolicy.Data( &data ); *] GroupServerCalls: false } 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