From b657c5fd801862617d956d37bed963cc039ef831 Mon Sep 17 00:00:00 2001
From: yunchai <yunying.chai@capgemini.com>
Date: 星期一, 25 九月 2023 23:19:40 +0800
Subject: [PATCH] 20230925Mapping数据换数据源

---
 /dev/null                                                                                                        |   35 -----------
 _Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetMaterialData.qbl                                                |   11 ++-
 _Main/BL/Type_H_FunctionClass/StaticMethod_SM_InitialForcastDataEx.qbl                                           |   13 ++++
 _Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_Panel351_btn_Add_Material_FOF503_OnClick#222.def |    4 +
 _Main/UI/MacroPlannerWebApp/Component_FrmMaterial/Response_List832_OnDoubleClick.def                             |    5 +
 _Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetProductInfo#1.qbl                                               |    8 +-
 _Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_liH_Forecast_OnDoubleClick.def                   |    4 +
 _Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetBOMBySKU.qbl                                                    |   10 +-
 _Main/UI/MacroPlannerWebApp/Component_FrmMaterial/Response_Panel418_btn_Add_FM_OnClick#975.def                   |    3 +
 _Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Component_Panel351.def                                    |   23 +------
 _Main/UI/MacroPlannerWebApp/Component_FrmAuthorizeAndCountersign_Material/Response_OnCreated.def                 |    3 +
 _Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_Panel351_btn_Add_Order_FOF449_OnClick#880.def    |    3 +
 12 files changed, 51 insertions(+), 71 deletions(-)

diff --git a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetBOMBySKU.qbl b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetBOMBySKU.qbl
index a10fbae..11d0768 100644
--- a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetBOMBySKU.qbl
+++ b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetBOMBySKU.qbl
@@ -1,17 +1,17 @@
 Quintiq file version 2.0
 #parent: #root
 StaticMethod SM_GetBOMBySKU (
-  MacroPlan Owner,
+  GlobalOTDTable GlobData,
   String SKU
-) as MappingBOM
+) as Global_MappingOperationBOM
 {
   Description: '鏍规嵁SKU鑾峰彇BOM'
   TextBody:
   [*
-    Obj :=null( MappingBOM,constcontent );
-    if( not isnull( Owner) and SKU.Length()>0)
+    Obj :=null( Global_MappingOperationBOM,constcontent );
+    if( not isnull( GlobData) and SKU.Length()>0)
     {
-      Obj := select( Owner,MappingBOM,ObjM,ObjM.ProductCode()=SKU);
+      Obj := select( GlobData,Global_MappingOperationBOM,ObjM,ObjM.ProductCode()=SKU);
     }
     return Obj;
   *]
diff --git a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetMaterialData.qbl b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetMaterialData.qbl
index 2850793..850417c 100644
--- a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetMaterialData.qbl
+++ b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetMaterialData.qbl
@@ -6,7 +6,8 @@
   Number ProductQty,
   String ForecastId,
   String VCode,
-  Date NDate
+  Date NDate,
+  GlobalOTDTable GlobData
 ) as owning JSON
 {
   Description: '鑾峰彇鐗╂枡淇℃伅'
@@ -26,15 +27,15 @@
       if( Owner.MappingBOM(relsize )>0)
       {
         // 寰楀埌涓嬩竴绾ф暟鎹�
-        AllData:= selectset( Owner, MappingBOM,object,object.ComponentCode()=ParentSKU);
-        ObjProduct := null( MappingProduct,constcontent );
+        AllData:= selectset( GlobData, Global_MappingOperationBOM,object,object.ComponentCode()=ParentSKU);
+        ObjProduct := null( Product_MP,constcontent );
         ObjUnit := null( Unit,constcontent );
         MaterialType:="";
         MaterialName:="-";
         StockPoint := "";
         NRate:=1.0;
         NComponentsUsed :=0.0;
-        ObjBOM := H_FunctionClass::SM_GetBOMBySKU(Owner,ParentSKU);
+        ObjBOM := H_FunctionClass::SM_GetBOMBySKU(GlobData,ParentSKU);
         if(not isnull( ObjBOM))
         {
           NRate := ObjBOM.ComponentOutputRate();
@@ -59,7 +60,7 @@
               ObjProduct:= H_FunctionClass::SM_GetProductInfo(Owner,Obj.ProductCode());
               if( not isnull( ObjProduct))
               {
-                MaterialType:= ObjProduct.ProductMajorType();
+                MaterialType:= ObjProduct.ParentID();
                 MaterialName:=ObjProduct.Name();
               }
               ObjUnit:= H_FunctionClass::SM_GetUnitBySKU( Owner,Obj.ProductCode());
diff --git "a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetProductInfo\0431.qbl" "b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetProductInfo\0431.qbl"
index 53f30eb..09e6868 100644
--- "a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetProductInfo\0431.qbl"
+++ "b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_GetProductInfo\0431.qbl"
@@ -3,17 +3,17 @@
 StaticMethod SM_GetProductInfo (
   MacroPlan Owner,
   String SKU
-) as MappingProduct
+) as Product_MP
 {
   Description: '鏍规嵁SKU鑾峰彇鐗╂枡淇℃伅'
   TextBody:
   [*
     // 鏍规嵁SKU鑾峰彇鐗╂枡淇℃伅
-    // 娉ㄦ剰锛氱墿鏂欑被鍨嬪彇 ParentID锛�
-    Obj := null( MappingProduct,constcontent );
+    // 娉ㄦ剰锛氱墿鏂欑被鍨嬪彇 ParentID
+    Obj := null( Product_MP,constcontent );
     if( not isnull( Owner) and SKU.Length()>0)
     {
-      Obj:= select( Owner,MappingProduct,ObjMP,ObjMP.ID()=SKU);
+      Obj:= select( Owner,Product_MP,ObjMP,ObjMP.ID()=SKU);
     }
     return Obj;
   *]
diff --git a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_InitialForcastData.qbl b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_InitialForcastData.qbl
deleted file mode 100644
index d69f3c1..0000000
--- a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_InitialForcastData.qbl
+++ /dev/null
@@ -1,111 +0,0 @@
-Quintiq file version 2.0
-#parent: #root
-StaticMethod SM_InitialForcastData (
-  MacroPlan Owner
-) as owning JSON
-{
-  Description: '鍒濆鍖栬鍗曢娴嬩俊鎭�'
-  TextBody:
-  [*
-    /**********************************鍒濆鍖栬鍗曢娴嬩俊鎭�***************************************
-    *娉細鏈‘瀹氫笂娓搁娴嬭鍗曟洿鏂伴�昏緫鍜屾暟鎹湁鏁堟�э紝杩欓噷杩涜浜屾澶勭悊锛屾柊鐢熸垚涓�涓垪琛紝閬垮厤涓婃父淇℃伅鍙樺姩涓ラ噸
-    *    褰卞搷鍔熻兘
-    *---------------------璇ュ嚱鏁板凡浣滃簾----------------------
-    *****************************************************************************************/
-    // 鍒濆鍖栫粨鏋�
-    bStatus := false;
-    strMsg :="";
-    
-    try{
-      // 娓呴櫎鏃ф暟鎹紝閲嶆柊鎷夊彇
-      if(Owner.H_Forecast(relget ).Size()>0)
-      {
-        traverse( Owner,H_Forecast,Obj,not isnull( Obj))
-        {
-          Owner.H_Forecast(reldelete, Obj);
-        }
-      }
-      
-      // 鑾峰彇棰勬祴璁㈠崟锛氬綋鏈堝拰涔嬪悗鐨�3涓湀棰勬祴鏁版嵁 涓旈娴嬫暟閲�>0鐨�
-      AllData:= selectset( Owner, Product_MP.SalesDemand.astype( Forecast ),object,object.EndDate().DateTime().Date() >= Date::ActualDate().StartOfMonth() 
-                           and object.EndDate().DateTime().Date() <= Date::ActualDate().StartOfNextMonth().StartOfNextMonth().StartOfNextMonth().StartOfNextMonth()
-                           and object.Quantity()>0 );
-      
-      CustomName:="";
-      DepartMent:="";
-      idx:=0;
-      strOrderCode:="";
-      RQty:=0;
-      ObjOrderRealQty:=null( H_OrderForecastRealQty,constcontent );
-    //  ObjPruduct :=null( MappingProduct,constcontent );
-      traverse( AllData,Elements,Obj,not isnull(Obj))
-      {
-        // 杩欓噷鐢ㄦ煡鎵惧悗鎴彇锛屽洜涓轰笉纭畾鏈夊嚑涓í绾匡紝浠ョ涓�涓负鍑�
-        idx:=Obj.SalesSegmentName().FindString( "-",0);
-        if(idx>0)
-        {
-          DepartMent:=Obj.SalesSegmentName().SubString( 0,idx);
-          CustomName := Obj.SalesSegmentName().SubString( idx+1, Obj.SalesSegmentName().Length() - (idx+1));
-        }
-        else
-        {
-          CustomName :=Obj.SalesSegmentName();
-          DepartMent := "閮ㄩ棬鏁版嵁鑾峰彇澶辫触锛�"
-        }
-    //    // 浠庣墿鏂欒〃鑾峰彇鐗╂枡淇℃伅
-    //    ObjPruduct := H_FunctionClass::SM_GetProductInfo( Owner,Obj.ProductID());
-    //    if( not isnull( ObjPruduct))
-    //    {
-    //      
-    //    }
-         // 鍐欏叆棰勬祴璁㈠崟淇℃伅琛�
-         strOrderCode:=H_FunctionClass::SM_GenerateID( "OF");
-         Owner.H_Forecast(relnew,OrderCode := strOrderCode,
-                                SKU := Obj.ProductID(),
-                               CustomCode := CustomName,
-                               CustomName := CustomName,
-                               Util:=Obj.UnitOfMeasureName(),
-                               NeedTime:=Obj.EndDate(),
-                               ForecastQty:=[Number]Obj.Quantity().Round( 0),
-                               StockingPointID := Obj.StockingPointID(),
-                               Department:=DepartMent);
-         // 鍐欏叆棰勬祴瀹炴椂淇℃伅
-         ObjOrderRealQty := select( Owner,H_OrderForecastRealQty,ObjO,ObjO.CustomCode()=CustomName and ObjO.SKU()=Obj.ProductID() 
-                                    and ObjO.Month().StartOfMonth() = Obj.EndDate().StartOfMonth() )
-         if( isnull( ObjOrderRealQty))
-         {
-             Owner.H_OrderForecastRealQty(relnew,CustomCode := CustomName,CustomName := CustomName,ForecastQty := [Number]Obj.Quantity().Round( 0)
-                                           ,ForecatsRealQty := [Number]Obj.Quantity().Round( 0),ID := H_FunctionClass::SM_GenerateID( "OR")
-                                           ,Month := Obj.EndDate(),SKU := Obj.ProductID(),Unit := Obj.UnitOfMeasureName());
-         }
-         else
-         {
-            if( [Number]Obj.Quantity().Round( 0)<> ObjOrderRealQty.ForecastQty())
-            {
-                  RQty := [Number]Obj.Quantity().Round( 0) - ObjOrderRealQty.ForecastQty();
-                  RQty := ObjOrderRealQty.ForecatsRealQty() + RQty;
-                  if( RQty<0)
-                  {
-                      RQty :=0;
-                  }
-                  ObjOrderRealQty.ForecastQty([Number]Obj.Quantity().Round( 0));
-                  ObjOrderRealQty.ForecatsRealQty(RQty);
-            }
-         }
-      }
-     
-      
-      bStatus := true;
-      strMsg :="璁㈠崟棰勬祴鍒濆鍖栨垚鍔�!";
-    }
-    onerror
-    {
-      strMsg :="璁㈠崟棰勬祴鍒濆鍖栧け璐ワ紝鍙兘褰卞搷鍐插噺璁$畻锛岃鑱旂郴绯荤粺绠$悊鍛橈紒";
-      Owner.H_ErrorLogs(relnew,EClassName := "H_FunctionClass",EDateTime := DateTime::ActualGMTTime(),EFunctionName := "SM_InitialForcastData",
-                         DeveloperInformation :=  e.DeveloperInformation(),ErrorNr := e.ErrorNr(),DetailedInformation := e.DetailedInformation(),
-                         GeneralInformation := e.GeneralInformation());                
-    }
-    return JSON::Object().Add( "Status",bStatus)
-                         .Add( "Msg",strMsg).Build();
-  *]
-}
diff --git a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_InitialForcastDataEx.qbl b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_InitialForcastDataEx.qbl
index b1801df..d8870c8 100644
--- a/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_InitialForcastDataEx.qbl
+++ b/_Main/BL/Type_H_FunctionClass/StaticMethod_SM_InitialForcastDataEx.qbl
@@ -43,12 +43,15 @@
       idx:=0;
       RQty:=0;
       ObjOrderRealQty:=null( H_OrderForecastRealQty,constcontent );
+      SKU:="";
+      SKUName := "";
     
       traverse( AllData,Elements,Obj,not isnull(Obj))
       {
         // 娌℃湁瀹㈡埛淇℃伅鍜岄儴闂ㄤ俊鎭紝SalesSegmentName=浜嬩笟閮�+鈥�-鈥�+瀹㈡埛鍚嶇О
         CustomName := Obj.SalesSegmentName();
         DepartMent := Obj.SalesSegmentName();
+        SKU :=Obj.ProductID();
         // 杩欓噷鐢ㄦ煡鎵惧悗鎴彇锛屽洜涓轰笉纭畾鏈夊嚑涓í绾匡紝浠ョ涓�涓负鍑�
         idx:=Obj.SalesSegmentName().FindString( "-",0);
         if(idx>0)
@@ -56,6 +59,14 @@
           DepartMent:=Obj.SalesSegmentName().SubString( 0,idx);
           CustomName := Obj.SalesSegmentName().SubString( idx+1, Obj.SalesSegmentName().Length() - (idx+1));
         }
+        
+        // 鑾峰彇鐗╂枡淇℃伅
+        ObjMaterial := H_FunctionClass::SM_GetProductInfo( Owner,Obj.ProductID());
+        if(not isnull( ObjMaterial))
+        {
+          SKUName := ObjMaterial.Name();
+        }
+        
          // 鏇存柊棰勬祴淇℃伅锛岄潪鏂版暟鎹洿鏂颁俊鎭��
          ObjOrderRealQty := select( Owner,H_OrderForecastRealQty,ObjO,ObjO.CustomCode()=CustomName and ObjO.SKU()=Obj.ProductID() 
                                     and ObjO.Month().StartOfMonth() = Obj.EndDate().StartOfMonth() )
@@ -64,7 +75,7 @@
            Owner.H_OrderForecastRealQty(relnew,CustomCode := CustomName,CustomName := CustomName,ForecastQty := [Number]Obj.Quantity().Round( 0)
                                          ,ForecatsRealQty := [Number]Obj.Quantity().Round( 0),ID := H_FunctionClass::SM_GenerateID( "OR")
                                          ,Month := Obj.EndDate(),SKU := Obj.ProductID(),Unit := Obj.UnitOfMeasureName()
-                                         ,Department := DepartMent,VCode := VersionCode);
+                                         ,Department := DepartMent,VCode := VersionCode,SKUName := SKUName);
          }
          else
          {
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FrmAuthorizeAndCountersign_Material/Response_OnCreated.def b/_Main/UI/MacroPlannerWebApp/Component_FrmAuthorizeAndCountersign_Material/Response_OnCreated.def
index 1b87aa1..0b8df6f 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FrmAuthorizeAndCountersign_Material/Response_OnCreated.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FrmAuthorizeAndCountersign_Material/Response_OnCreated.def
@@ -21,9 +21,12 @@
         {
           JInfo := JSON::Parse( SelectItem.ValueJsonString());
           lb_SUK_FAACM.Text(JInfo.Get( "ParentSKU").GetString());
+          lb_SKUName_FAACM.Text(JInfo.Get( "ParentSKUName").GetString());
           lb_MaterialCode_FAACM.Text(JInfo.Get( "SKU").GetString());
+          lb_MaterialName.Text(JInfo.Get( "MaterialName").GetString());
           lb_Unit_FAACM.Text(JInfo.Get( "Unit").GetString());
           lb_Operator_FAACM.Text(ApplicationMacroPlanner.GetUserName());
+          lb_MaterialType_FAACM.Text(JInfo.Get( "MaterialType").GetString());
           txt_CustomID_FAACM.Text(JInfo.Get( "CustomCode").GetString());
           txt_CustomName_FAACM.Text(JInfo.Get( "CustomName").GetString());
         }
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FrmMaterial/Response_List832_OnDoubleClick.def b/_Main/UI/MacroPlannerWebApp/Component_FrmMaterial/Response_List832_OnDoubleClick.def
index 8519bc2..b2a673b 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FrmMaterial/Response_List832_OnDoubleClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FrmMaterial/Response_List832_OnDoubleClick.def
@@ -16,6 +16,7 @@
         // 棰勬祴璁㈠崟鍩烘湰淇℃伅
         CustomCode:="";
         CustomName:="";
+        SKUName:="";
         SValueJsonString:="";
         // 鑾峰彇瀹㈡埛鍚嶇О鍜屽鎴稩D
         if(txtSaveForecastData_FM.Text().Length()>0)
@@ -23,6 +24,7 @@
            jForecast := JSON::Parse( txtSaveForecastData_FM.Text());
            CustomCode := jForecast.Get( "CustomCode").GetString();
            CustomName := jForecast.Get( "CustomName").GetString();
+           SKUName := jForecast.Get( "SKUName").GetString();
         }
         
         if(selection.MaterialType()="鍗婃垚鍝�")
@@ -33,7 +35,7 @@
             JForecast := JSON::Parse(txtSaveForecastData_FM.Text());
             ForecastID := JForecast.Get( "ForecastID").GetString();
           }
-         jResult := H_FunctionClass::SM_GetMaterialData( MacroPlan,selection.SKU(),selection.NeedQty(), ForecastID,"-",selection.NeedDate());
+         jResult := H_FunctionClass::SM_GetMaterialData( MacroPlan,selection.SKU(),selection.NeedQty(), ForecastID,"-",selection.NeedDate(),GlobalOTDTable);
           if(jResult.Get( "Status").GetBoolean())
           {
                 de_dh_FM_ProductMP.FixedFilter( "object.ParentSKU() = " +  selection.SKU().AsQUILL()
@@ -57,6 +59,7 @@
                         .Add( "Unit",selection.Unit())
                         .Add( "CustomCode",CustomCode)
                         .Add( "ParentSKU",lb_SUK_FM.Text())
+                        .Add( "ParentSKUName",SKUName)
                         .Add( "CustomName",CustomName).Build().AsString();
           }
           if(isnull( SelectItem))
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FrmMaterial/Response_Panel418_btn_Add_FM_OnClick\043975.def" "b/_Main/UI/MacroPlannerWebApp/Component_FrmMaterial/Response_Panel418_btn_Add_FM_OnClick\043975.def"
index dd32915..45e0871 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FrmMaterial/Response_Panel418_btn_Add_FM_OnClick\043975.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FrmMaterial/Response_Panel418_btn_Add_FM_OnClick\043975.def"
@@ -20,12 +20,14 @@
       CustomName:="";
       SValue:="";
       SValueJsonString:="";
+      SKUName:="";
       // 鑾峰彇瀹㈡埛鍚嶇О鍜屽鎴稩D
       if(txtSaveForecastData_FM.Text().Length()>0)
       {
          jForecast := JSON::Parse( txtSaveForecastData_FM.Text());
          CustomCode := jForecast.Get( "CustomCode").GetString();
          CustomName := jForecast.Get( "CustomName").GetString();
+         SKUName := jForecast.Get( "SKUName").GetString();
       }
       if(not isnull(selection))
       {
@@ -36,6 +38,7 @@
                     .Add( "Unit",selection.Unit())
                     .Add( "CustomCode",CustomCode)
                     .Add( "ParentSKU",lb_SUK_FM.Text())
+                    .Add( "ParentSKUName",SKUName)
                     .Add( "CustomName",CustomName).Build().AsString();
       }
       if( isnull( SelectItem))
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Component_Panel351.def b/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Component_Panel351.def
index c806feb..2d6bd11 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Component_Panel351.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Component_Panel351.def
@@ -14,7 +14,7 @@
         ButtonSize: 'compact'
         Description: '璁㈠崟鏂板鍙嶇/鎺堟潈'
         Label: '璁㈠崟鏂板鍙嶇/鎺堟潈'
-        Taborder: 1
+        Taborder: 0
       ]
       ResponseDefinitions:
       [
@@ -43,7 +43,7 @@
         ButtonSize: 'compact'
         Description: '鍘熸枡鏂板鍙嶇/鎺堟潈'
         Label: '鍘熸枡鏂板鍙嶇/鎺堟潈'
-        Taborder: 2
+        Taborder: 1
       ]
       ResponseDefinitions:
       [
@@ -63,19 +63,6 @@
         }
       ]
     }
-    Component btn_InitialData778
-    {
-      #keys: '[414724.0.115504406]'
-      BaseType: 'WebButton'
-      Properties:
-      [
-        ButtonSize: 'compact'
-        Description: '鍔犺浇鏁版嵁锛堝亣鐨勶紝鍚庣画闇�瑕佸鎺ユ暟鎹級'
-        Label: '鍔犺浇棰勬祴璁㈠崟鏁版嵁'
-        Taborder: 0
-        Visible: false
-      ]
-    }
     Component btn_OrderH_FOF
     {
       #keys: '[414724.0.165490408]'
@@ -86,7 +73,7 @@
         Description: 'ERO璁㈠崟鍐插噺'
         Image: 'AMMUNITION_BOX_CLOSED'
         Label: 'ERP璁㈠崟鍐插噺'
-        Taborder: 3
+        Taborder: 2
       ]
     }
     Component txt_QueryContent_FOF
@@ -96,7 +83,7 @@
       Properties:
       [
         PlaceHolder: '妯$硦鎼滅储'
-        Taborder: 4
+        Taborder: 3
       ]
     }
     Component btn_Query_FOF
@@ -109,7 +96,7 @@
         Description: '鏌ヨ'
         Image: 'VIEW'
         Label: '鏌ヨ'
-        Taborder: 5
+        Taborder: 4
       ]
     }
   ]
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_Panel351_btn_Add_Material_FOF503_OnClick\043222.def" "b/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_Panel351_btn_Add_Material_FOF503_OnClick\043222.def"
index bda5c5d..67308a0 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_Panel351_btn_Add_Material_FOF503_OnClick\043222.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_Panel351_btn_Add_Material_FOF503_OnClick\043222.def"
@@ -18,6 +18,7 @@
         {
            MacroPlan.H_MessagePassing(relnew,FKey :="FrmOrderForecast",ItemKey := "ListSelect",
                                        ValueJsonString := JSON::Object().Add( "SKU",selection.SKU())
+                                                                       .Add( "SKUName",selection.SKUName())
                                                                        .Add( "Util",selection.Unit())
                                                                        .Add( "CustomCode",selection.CustomCode())
                                                                        .Add( "CustomName",selection.CustomName())
@@ -28,6 +29,7 @@
         else
         {
           SelectItem.ValueJsonString(JSON::Object().Add( "SKU",selection.SKU())
+                                                   .Add( "SKUName",selection.SKUName())
                                                    .Add( "Util",selection.Unit())
                                                    .Add( "CustomCode",selection.CustomCode())
                                                    .Add( "CustomName",selection.CustomName())
@@ -36,7 +38,7 @@
                                                    .Add( "NeedTime",selection.Month().AsQUILL()).Build().AsString());
         }
         
-        jResult := H_FunctionClass::SM_GetMaterialData( MacroPlan,selection.SKU(),selection.ForecastQty(),selection.ID(),"-",selection.Month());
+        jResult := H_FunctionClass::SM_GetMaterialData( MacroPlan,selection.SKU(),selection.ForecastQty(),selection.ID(),"-",selection.Month(),GlobalOTDTable);
         if(jResult.Get( "Status").GetBoolean())
         {
             Application.OpenForm( "FrmMaterial","popout");
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_Panel351_btn_Add_Order_FOF449_OnClick\043880.def" "b/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_Panel351_btn_Add_Order_FOF449_OnClick\043880.def"
index 8eb0570..7432121 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_Panel351_btn_Add_Order_FOF449_OnClick\043880.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_Panel351_btn_Add_Order_FOF449_OnClick\043880.def"
@@ -16,10 +16,12 @@
         SelectItem :=  select( MacroPlan,H_MessagePassing,Obj,Obj.FKey()="FrmOrderForecast" and Obj.ItemKey()="ListSelect");
         if( isnull( SelectItem))
         {
+          
            MacroPlan.H_MessagePassing(relnew,FKey :="FrmOrderForecast",ItemKey := "ListSelect",
                                       ValueJsonString := JSON::Object().Add( "SKU",selection.SKU())
                                                                        .Add( "Util",selection.Unit())
                                                                        .Add( "CustomCode",selection.CustomCode())
+                                                                       .Add( "SKUName",selection.SKUName())
                                                                        .Add( "CustomName",selection.CustomName()).Build().AsString());
         }
         else
@@ -27,6 +29,7 @@
           SelectItem.ValueJsonString(JSON::Object().Add( "SKU",selection.SKU())
                                                    .Add( "Util",selection.Unit())
                                                    .Add( "CustomCode",selection.CustomCode())
+                                                   .Add( "SKUName",selection.SKUName())
                                                    .Add( "CustomName",selection.CustomName()).Build().AsString());
         }
         Application.OpenForm( "FrmAuthorizeAndCountersign_Order","modal");  
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_Panel351_btn_InitialData778_OnClick\043971.def" "b/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_Panel351_btn_InitialData778_OnClick\043971.def"
deleted file mode 100644
index 7ec4937..0000000
--- "a/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_Panel351_btn_InitialData778_OnClick\043971.def"
+++ /dev/null
@@ -1,35 +0,0 @@
-Quintiq file version 2.0
-#parent: Panel351/btn_InitialData778
-Response OnClick () id:Response_Panel351_btn_InitialData778_OnClick_971
-{
-  #keys: '[414724.0.141222418]'
-  CanBindMultiple: false
-  DefinitionID: 'Responsedef_WebButton_OnClick'
-  QuillAction
-  {
-    Body:
-    [*
-      //// 娌℃湁鐢ㄧ殑鎸夐挳鍜屽嚱鏁帮紝鍙负浜嗘祴璇曠敓鎴愬亣鏁版嵁銆�
-      //StrCustoms:="XM_2023,灏忕背;HW_2023,鍗庝负;OV_2023,VIVO;OP_2023,OPPO;HX_2023,娴蜂俊;YJ_2023,涓�鍔�;HE_2023,娴峰皵;GL_2023,鏍煎姏;";
-      //ArrayCustom := StrCustoms.Tokenize( ";"); //8涓鎴�
-      //idx :=0;
-      //for( i:=0;i<20;i:=i+1)
-      //{
-      //  idx :=Number::Random( 0,7);
-      //  arrCustomInfo := ArrayCustom.Element( idx).Tokenize( ",");
-      //  MacroPlan.H_Forecast(relnew, CustomName := arrCustomInfo.Element( 1),CustomCode := arrCustomInfo.Element( 0),ForecastQty := Number::Random( 100,5000),
-      //                        Department := "閿�鍞�1閮�",NeedTime := Date::ActualDate(),OrderCode := H_FunctionClass::SM_GenerateID( "OF") ,SKU := "SKU-CP-2023-N"+(Number::Random( 1000,9999)).AsQUILL(),Util := "PCS");  
-      //  
-      //}
-      //// 鐢熸垚棰勬祴 瀹炴椂鏁版嵁锛屽弽绛炬暟鎹紝鎺堟潈鏁版嵁锛堝弽绛� 鎺堟潈榛樿涓�0锛屽鑷姩鍒涘缓锛岃繖閲屼笉鍐嶆坊鍔狅級
-      // traverse(MacroPlan,H_Forecast ,Obj,not isnull(Obj) )
-      //{
-      //  MacroPlan.H_OrderForecastRealQty(relnew,CustomID := Obj.CustomCode(),CustomName := Obj.CustomName(),ForecatsQty := Obj.ForecastQty(),
-      //                                    ForecatsRealQty := Obj.ForecastQty(),ID := H_FunctionClass::SM_GenerateID( "OF"),Month := Date::ActualDate(),
-      //                                    OrderCode := Obj.OrderCode(),SKU := Obj.SKU(),Unit := Obj.Util());
-      //                                    
-      //}
-    *]
-    GroupServerCalls: false
-  }
-}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_liH_Forecast_OnDoubleClick.def b/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_liH_Forecast_OnDoubleClick.def
index c178467..ac7e8b0 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_liH_Forecast_OnDoubleClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FrmOrderForecast/Response_liH_Forecast_OnDoubleClick.def
@@ -16,6 +16,7 @@
       {
          MacroPlan.H_MessagePassing(relnew,FKey :="FrmOrderForecast",ItemKey := "ListSelect",
                                      ValueJsonString := JSON::Object().Add( "SKU",selection.SKU())
+                                                                       .Add( "SKUName",selection.SKUName())
                                                                        .Add( "Util",selection.Unit())
                                                                        .Add( "CustomCode",selection.CustomCode())
                                                                        .Add( "CustomName",selection.CustomName())
@@ -26,6 +27,7 @@
       else
       {
         SelectItem.ValueJsonString(JSON::Object().Add( "SKU",selection.SKU())
+                                                 .Add( "SKUName",selection.SKUName())
                                                  .Add( "Util",selection.Unit())
                                                  .Add( "CustomCode",selection.CustomCode())
                                                  .Add( "CustomName",selection.CustomName())
@@ -34,7 +36,7 @@
                                                  .Add( "NeedTime",selection.Month().AsQUILL()).Build().AsString());
       }
       
-      jResult := H_FunctionClass::SM_GetMaterialData( MacroPlan,selection.SKU(),selection.ForecastQty(),selection.ID(),"-",selection.Month());
+      jResult := H_FunctionClass::SM_GetMaterialData( MacroPlan,selection.SKU(),selection.ForecastQty(),selection.ID(),"-",selection.Month(),GlobalOTDTable );
       if(jResult.Get( "Status").GetBoolean())
       {
         Application.OpenForm( "FrmMaterial","popout");

--
Gitblit v1.9.3