From 0c38056bfce0067517b90ce0b29c544fff12f71d Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期三, 24 七月 2024 18:03:47 +0800
Subject: [PATCH] 库存数据(发动机成品库存)

---
 _Main/BL/Type_FinishedEngineInventory/Attribute_EngineModularPlatform.qbl                                                                      |    8 
 _Main/BL/Type_FinishedEngineInventory/Attribute_Amount.qbl                                                                                     |    8 
 _Main/BL/Type_FinishedEngineInventory/Attribute_Price.qbl                                                                                      |    8 
 _Main/BL/Type_FinishedEngineInventory/Attribute_DWeek.qbl                                                                                      |    7 
 _Main/BL/InfoMessages.qbl                                                                                                                      |   12 +
 _Main/BL/Type_FinishedEngineInventory/Attribute_BIPlace.qbl                                                                                    |    8 
 _Main/BL/Type_FinishedEngineInventory/Attribute_VehicleType.qbl                                                                                |    8 
 _Main/BL/Type_FinishedEngineInventory/Attribute_EngineType.qbl                                                                                 |    8 
 _Main/BL/Type_FinishedEngineInventory/Attribute_ReceiptPlace.qbl                                                                               |    8 
 _Main/BL/Type_FinishedEngineInventory/_ROOT_Type_FinishedEngineInventory.qbl                                                                   |   10 
 _Main/BL/Type_FinishedEngineInventory/Attribute_Brand.qbl                                                                                      |    8 
 _Main/BL/Relations/Relation_FinishedEngineInventory_InterfaceLoginfo_InterfaceLoginfo_FinishedE.qbl                                            |   23 ++
 _Main/BL/Type_FinishedEngineInventory/Attribute_DDay.qbl                                                                                       |    8 
 _Main/BL/Type_FinishedEngineInventory/Attribute_FourCode.qbl                                                                                   |    8 
 _Main/BL/Type_LibCal_Event/StaticMethod_CreateUpdateFromUI.qbl                                                                                 |    1 
 _Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/Component_listActionBarPageFinishedEngineInventory.def                       |   10 
 _Main/BL/Type_FinishedEngineInventory/Attribute_DType.qbl                                                                                      |    8 
 _Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/Component_listContextMenuFinishedEngineInventory.def                         |   10 
 _Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuInterface.def                                               |   11 +
 _Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterface.qbl                                                                                  |   11 +
 _Main/BL/Type_FinishedEngineInventory/DefaultValue_Fac.qbl                                                                                     |    6 
 _Main/UI/MacroPlannerWebApp/Views/Finished_engine_inventory.vw                                                                                 |  200 ++++++++++++++++++
 _Main/BL/Type_FinishedEngineInventory/StaticMethod_Synchronize.qbl                                                                             |   33 +++
 _Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/Component_ListFinishedEngineInventory.def                                    |   42 +++
 _Main/BL/Type_FinishedEngineInventory/Attribute_Fac.qbl                                                                                        |    8 
 _Main/UI/MacroPlannerWebApp/Component_LibCal_dlgEvent/Component_pnlEventType.def                                                               |    1 
 _Main/BL/Type_FinishedEngineInventory/StaticMethod_GetRequestBody.qbl                                                                          |   15 +
 _Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/_ROOT_Component_FormFinishedEngineInventory.def                              |   17 +
 _Main/BL/Type_FinishedEngineInventory/Attribute_DMonth.qbl                                                                                     |    7 
 _Main/BL/Type_FinishedEngineInventory/Attribute_Total.qbl                                                                                      |    8 
 _Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuInterface_MenuFinishedEngineInventory_OnCli.def |   16 +
 _Main/BL/Type_FinishedEngineInventory/Attribute_FullName.qbl                                                                                   |    8 
 _Main/BL/Type_FinishedEngineInventory/Attribute_SpellName.qbl                                                                                  |    8 
 _Main/BL/Type_FinishedEngineInventory/StaticMethod_GenerateData.qbl                                                                            |   50 ++++
 34 files changed, 602 insertions(+), 0 deletions(-)

diff --git a/_Main/BL/InfoMessages.qbl b/_Main/BL/InfoMessages.qbl
index 272954f..ca0f50a 100644
--- a/_Main/BL/InfoMessages.qbl
+++ b/_Main/BL/InfoMessages.qbl
@@ -94,6 +94,18 @@
   {
     DefaultText: 'application/json'
   }
+  InfoMessage InterfaceDataset_FinishedEngineInventory_Name
+  {
+    DefaultText: 'Finished engine inventory'
+  }
+  InfoMessage InterfaceDataset_FinishedEngineInventory_Secret
+  {
+    DefaultText: '527100497300029474'
+  }
+  InfoMessage InterfaceDataset_FinishedEngineInventory_URL
+  {
+    DefaultText: '/data-service/api/service/post-data/V1.101/f084aa52d19c48d090416936a94f1dab'
+  }
   InfoMessage InterfaceDataset_MachineStockData_Name
   {
     DefaultText: 'Machine stock data'
diff --git a/_Main/BL/Relations/Relation_FinishedEngineInventory_InterfaceLoginfo_InterfaceLoginfo_FinishedE.qbl b/_Main/BL/Relations/Relation_FinishedEngineInventory_InterfaceLoginfo_InterfaceLoginfo_FinishedE.qbl
new file mode 100644
index 0000000..4a1f713
--- /dev/null
+++ b/_Main/BL/Relations/Relation_FinishedEngineInventory_InterfaceLoginfo_InterfaceLoginfo_FinishedE.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation FinishedEngineInventory_InterfaceLoginfo_InterfaceLoginfo_FinishedEngineInventory
+{
+  #keys: '1[415136.0.932110028]'
+  DefaultRelationStrategy
+  {
+  }
+  RelationSide.LeftSide InterfaceLoginfo
+  {
+    #keys: '3[415136.0.932110030][415136.0.932110029][415136.0.932110031]'
+    Cardinality: '0to1'
+    ObjectDefinition: FinishedEngineInventory
+    OwningSide: 'Reference'
+  }
+  RelationSide.RightSide FinishedEngineInventory
+  {
+    #keys: '3[415136.0.932110033][415136.0.932110032][415136.0.932110034]'
+    Cardinality: '1toN'
+    ObjectDefinition: InterfaceLoginfo
+    OwningSide: 'Owned'
+  }
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_Amount.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_Amount.qbl
new file mode 100644
index 0000000..f702624
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_Amount.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Amount
+{
+  #keys: '3[415136.0.931887050][415136.0.931887049][415136.0.931887051]'
+  Description: '閲戦'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_BIPlace.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_BIPlace.qbl
new file mode 100644
index 0000000..d86e9fa
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_BIPlace.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute BIPlace
+{
+  #keys: '3[415136.0.931887027][415136.0.931887026][415136.0.931887028]'
+  Description: '缁熻鍒嗘瀽鐨勫簱瀛樺湴鐐�'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_Brand.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_Brand.qbl
new file mode 100644
index 0000000..6c02621
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_Brand.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Brand
+{
+  #keys: '3[415136.0.932110085][415136.0.932110084][415136.0.932110086]'
+  Description: '鍝佺墝'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_DDay.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_DDay.qbl
new file mode 100644
index 0000000..a778cc4
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_DDay.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute DDay
+{
+  #keys: '3[415136.0.931887060][415136.0.931887059][415136.0.931887061]'
+  Description: '鏃ユ湡'
+  ValueType: Date
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_DMonth.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_DMonth.qbl
new file mode 100644
index 0000000..bbe7e1b
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_DMonth.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute DMonth
+{
+  #keys: '3[415136.0.932110115][415136.0.932110114][415136.0.932110116]'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_DType.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_DType.qbl
new file mode 100644
index 0000000..03dce5c
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_DType.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute DType
+{
+  #keys: '3[415136.0.932110105][415136.0.932110104][415136.0.932110106]'
+  Description: 'SAP\\WZK\\ZT锛汼AP绯荤粺 闀挎槬澶栨棌搴� 澶ц繛鍦ㄩ��'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_DWeek.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_DWeek.qbl
new file mode 100644
index 0000000..3988a7f
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_DWeek.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute DWeek
+{
+  #keys: '3[415136.0.931887068][415136.0.931887067][415136.0.931887069]'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_EngineModularPlatform.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_EngineModularPlatform.qbl
new file mode 100644
index 0000000..9911d58
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_EngineModularPlatform.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute EngineModularPlatform
+{
+  #keys: '3[415136.0.931887017][415136.0.931887016][415136.0.931887018]'
+  Description: '鍙戝姩鏈烘ā鍧楀寲骞冲彴'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_EngineType.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_EngineType.qbl
new file mode 100644
index 0000000..0c7c09d
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_EngineType.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute EngineType
+{
+  #keys: '3[415136.0.932110075][415136.0.932110074][415136.0.932110076]'
+  Description: '鍙戝姩鏈虹被鍨嬶紝妯疆銆佺旱缃�'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_Fac.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_Fac.qbl
new file mode 100644
index 0000000..2bb8850
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_Fac.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Fac
+{
+  #keys: '3[415136.0.931887064][415136.0.931887063][415136.0.931887065]'
+  Description: '宸ュ巶code'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_FourCode.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_FourCode.qbl
new file mode 100644
index 0000000..50524f4
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_FourCode.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute FourCode
+{
+  #keys: '3[415136.0.932110043][415136.0.932110042][415136.0.932110044]'
+  Description: '鍥涗綅鐮�'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_FullName.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_FullName.qbl
new file mode 100644
index 0000000..cc62e9b
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_FullName.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute FullName
+{
+  #keys: '3[415136.0.932110063][415136.0.932110062][415136.0.932110064]'
+  Description: '瀹屾暣鍨嬪彿鍚嶇О'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_Price.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_Price.qbl
new file mode 100644
index 0000000..99767d8
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_Price.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Price
+{
+  #keys: '3[415136.0.931887037][415136.0.931887036][415136.0.931887038]'
+  Description: '鍗曚环'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_ReceiptPlace.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_ReceiptPlace.qbl
new file mode 100644
index 0000000..9f56ef6
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_ReceiptPlace.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ReceiptPlace
+{
+  #keys: '3[415136.0.931886999][415136.0.931886998][415136.0.931887000]'
+  Description: '鏀惰揣鍦扮偣'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_SpellName.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_SpellName.qbl
new file mode 100644
index 0000000..2add113
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_SpellName.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute SpellName
+{
+  #keys: '3[415136.0.931887007][415136.0.931887006][415136.0.931887008]'
+  Description: '绠�鍐欏瀷鍙峰悕绉�'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_Total.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_Total.qbl
new file mode 100644
index 0000000..adceff1
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_Total.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Total
+{
+  #keys: '3[415136.0.932110095][415136.0.932110094][415136.0.932110096]'
+  Description: '搴撳瓨閲�'
+  ValueType: Real
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/Attribute_VehicleType.qbl b/_Main/BL/Type_FinishedEngineInventory/Attribute_VehicleType.qbl
new file mode 100644
index 0000000..26d0cec
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/Attribute_VehicleType.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute VehicleType
+{
+  #keys: '3[415136.0.932110053][415136.0.932110052][415136.0.932110054]'
+  Description: '鍙戝姩鏈鸿溅鍨�'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/DefaultValue_Fac.qbl b/_Main/BL/Type_FinishedEngineInventory/DefaultValue_Fac.qbl
new file mode 100644
index 0000000..386d17b
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/DefaultValue_Fac.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+  TargetAttribute: Fac
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/StaticMethod_GenerateData.qbl b/_Main/BL/Type_FinishedEngineInventory/StaticMethod_GenerateData.qbl
new file mode 100644
index 0000000..ca6915a
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/StaticMethod_GenerateData.qbl
@@ -0,0 +1,50 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GenerateData (
+  InterfaceLoginfo owner,
+  StringToDate cnv,
+  JSON item
+) as FinishedEngineInventory
+{
+  TextBody:
+  [*
+    // 鐢勫叞楦� Jul-17-2024 (created)
+    four_code                  := guard( item.Get( "four_code").GetString(),"");
+    vehicle_type               := guard( item.Get( "vehicle_type").GetString(),"");
+    receipt_place              := guard( item.Get( "receipt_place").GetString(),"");
+    full_name                  := guard( item.Get( "full_name").GetString(),"");
+    spell_name                 := guard( item.Get( "spell_name").GetString(),"");
+    engine_type                := guard( item.Get( "engine_type").GetString(),"");
+    engine_modular_platform    := guard( item.Get( "engine_modular_platform").GetString(),"");
+    brand                      := guard( item.Get( "brand").GetString(),"");
+    bi_place                   := guard( item.Get( "bi_place").GetString(),"");
+    price                      := guard( item.Get( "price").GetString(),"");
+    total                      := guard( item.Get( "total").GetReal(),0);
+    amount                     := guard( item.Get( "amount").GetReal(),0);
+    dtype                      := guard( item.Get( "dtype").GetString(),"");
+    fac                        := guard( item.Get( "fac").GetString(),"");
+    dday                       := guard( item.Get( "dday").GetString(),"");
+    dweek                      := guard( item.Get( "dweek").GetString(),"");
+    dmonth                     := guard( item.Get( "dmonth").GetString(),"");
+    
+    msdata           := owner.FinishedEngineInventory( relnew, FourCode := four_code
+                                                       , VehicleType := vehicle_type
+                                                       , ReceiptPlace := receipt_place
+                                                       , FullName := full_name
+                                                       , SpellName := spell_name
+                                                       , EngineType := engine_type
+                                                       , EngineModularPlatform := engine_modular_platform
+                                                       , Brand := brand
+                                                       , BIPlace := bi_place
+                                                       , Price := price
+                                                       , Total := total
+                                                       , Amount := amount
+                                                       , DType := dtype
+                                                       , Fac := fac
+                                                       , DDay := cnv.Convert( dday )
+                                                       , DWeek := dweek
+                                                       , DMonth := dmonth );
+    
+    return msdata;
+  *]
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/StaticMethod_GetRequestBody.qbl b/_Main/BL/Type_FinishedEngineInventory/StaticMethod_GetRequestBody.qbl
new file mode 100644
index 0000000..d122b01
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/StaticMethod_GetRequestBody.qbl
@@ -0,0 +1,15 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetRequestBody (
+  Date date
+) as String
+{
+  TextBody:
+  [*
+    // 鐢勫叞楦� Jul-19-2024 (created)
+    json := JSON::Object()
+                  .Add( "inParam", JSON::Object().Add( "dday", date.Format( "Y-M2-D2" ) ) ).Build();
+    requestbody := json.AsString();
+    return requestbody
+  *]
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/StaticMethod_Synchronize.qbl b/_Main/BL/Type_FinishedEngineInventory/StaticMethod_Synchronize.qbl
new file mode 100644
index 0000000..184e857
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/StaticMethod_Synchronize.qbl
@@ -0,0 +1,33 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod Synchronize (
+  InterfaceDataset owner,
+  String executor
+)
+{
+  TextBody:
+  [*
+    //// 鐢勫叞楦� Jul-17-2024 (created)
+    date    := Date::ActualDate();
+    loginfo := owner.InterfaceLoginfo( relnew, ExecuteUser := executor
+                                       , Name := Translations::InterfaceDataset_FinishedEngineInventory_Name()
+                                       , InterfaceDateTime := DateTime::ActualTime()
+                                       , Message := '搴撳瓨鏁版嵁锛堝彂鍔ㄦ満鎴愬搧搴撳瓨锛�'
+                                       , RequestBody := FinishedEngineInventory::GetRequestBody( date ) );
+    
+    data := InterfaceLoginfo::CallInterface( owner, loginfo );
+    if( not isnull( data ) ){
+      
+      cnv2 := StringToDate::StandardConverter();
+      cnv2.SetCustomConversion();
+      cnv2.CustomFormatString( 'yyyy-MM-dd' );
+      
+    //  sadatalist := construct( ShippingActualDatas );
+      for( seq := 0;seq < data.Size();seq++){
+        item := data.Get(seq);
+        FinishedEngineInventory::GenerateData( loginfo, cnv2, item );
+    //    sadatalist.Add( sadata );
+      }
+    }
+  *]
+}
diff --git a/_Main/BL/Type_FinishedEngineInventory/_ROOT_Type_FinishedEngineInventory.qbl b/_Main/BL/Type_FinishedEngineInventory/_ROOT_Type_FinishedEngineInventory.qbl
new file mode 100644
index 0000000..8ad556c
--- /dev/null
+++ b/_Main/BL/Type_FinishedEngineInventory/_ROOT_Type_FinishedEngineInventory.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type FinishedEngineInventory
+{
+  #keys: '5[415136.0.932110025][415136.0.932110023][0.0.0][415136.0.932110024][415136.0.932110026]'
+  BaseType: Object
+  Description: '搴撳瓨鏁版嵁锛堝彂鍔ㄦ満鎴愬搧搴撳瓨锛�'
+  StructuredName: 'FinishedEngineInventorys'
+}
diff --git a/_Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterface.qbl b/_Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterface.qbl
index c5083ec..9983098 100644
--- a/_Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterface.qbl
+++ b/_Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterface.qbl
@@ -34,6 +34,17 @@
         result := httpinterface.Result();
         loginfo.Response( result );
         loginfo.Success( true );
+      } else if ( loginfo.Name() = Translations::InterfaceDataset_FinishedEngineInventory_Name() ){//搴撳瓨鏁版嵁锛堝彂鍔ㄦ満鎴愬搧搴撳瓨锛�
+        httpinterface.URL( Translations::InterfaceDataset_FinishedEngineInventory_URL() );
+        httpinterface.MediaType( Translations::InterfaceDataset_ContentType() );
+        httpinterface.PostMethod( true ); 
+        httpinterface.AddHeader("Authorization",InterfaceLoginfo::CallToken( Translations::InterfaceDataset_FinishedEngineInventory_Secret() ))
+        
+        httpinterface.Call( loginfo.RequestBody() );
+        
+        result := httpinterface.Result();
+        loginfo.Response( result );
+        loginfo.Success( true );
       }
     }onerror{
       loginfo.ReturnMsg( e.GeneralInformation() );
diff --git a/_Main/BL/Type_LibCal_Event/StaticMethod_CreateUpdateFromUI.qbl b/_Main/BL/Type_LibCal_Event/StaticMethod_CreateUpdateFromUI.qbl
index 91342d6..0c5d133 100644
--- a/_Main/BL/Type_LibCal_Event/StaticMethod_CreateUpdateFromUI.qbl
+++ b/_Main/BL/Type_LibCal_Event/StaticMethod_CreateUpdateFromUI.qbl
@@ -44,6 +44,7 @@
     //鏌ヨ鏄惁宸叉湁鍚屽悕鍦ㄦ壒閲忕晫闈㈠垱寤虹殑浜嬩欢s
     event := selectobject( owner_i, Event, event, event.Subject() = subject_i 
                            and event.EventType() = eventtype_i );
+    info( '-------------', not isnull( event ), ismultiple );
     //鍙湁閫氳繃鎵归噺鍒涘缓鐣岄潰涓斿凡鏈夊悓鍚嶄簨浠惰繘鍏ヤ笅闈㈡搷浣�
     if( ismultiple and not isnull( event ) ){
       lp        := event.LeadingParticipation();
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuInterface.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuInterface.def
index 8367d24..ac50d15 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuInterface.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_ContextMenuInterface.def
@@ -27,6 +27,17 @@
         Title: 'Machine stock data'
       ]
     }
+    Component MenuFinishedEngineInventory
+    {
+      #keys: '[415136.0.933525462]'
+      BaseType: 'WebMenu'
+      Properties:
+      [
+        Image: 'SPREADSHEET'
+        Taborder: 2
+        Title: 'Finished engine inventory'
+      ]
+    }
   ]
   Properties:
   [
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuInterface_MenuFinishedEngineInventory_OnCli.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuInterface_MenuFinishedEngineInventory_OnCli.def
new file mode 100644
index 0000000..b68285d
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_ContextMenuInterface_MenuFinishedEngineInventory_OnCli.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: ContextMenuInterface/MenuFinishedEngineInventory
+Response OnClick () id:Response_MacroPlanner_ContextMenuInterface_MenuFinishedEngineInventory_OnClick
+{
+  #keys: '[415136.0.933525609]'
+  CanBindMultiple: false
+  DefinitionID: 'Responsedef_WebMenu_OnClick'
+  QuillAction
+  {
+    Body:
+    [*
+      ApplicationScope.ViewManager().ResetUserViewById( "Finished_engine_inventory", true);
+    *]
+    GroupServerCalls: false
+  }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/Component_ListFinishedEngineInventory.def b/_Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/Component_ListFinishedEngineInventory.def
new file mode 100644
index 0000000..dec6b0f
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/Component_ListFinishedEngineInventory.def
@@ -0,0 +1,42 @@
+Quintiq file version 2.0
+Component ListFinishedEngineInventory
+{
+  #keys: '[415136.0.933380308]'
+  BaseType: 'WebList'
+  Children:
+  [
+    Component DataExtractorFinishedEngineInventory
+    {
+      #keys: '[415136.0.933380309]'
+      BaseType: 'WebDataExtractor'
+      Properties:
+      [
+        DataType: 'InterfaceDataset'
+        Source: 'InterfaceDataset'
+        Taborder: 0
+        Transformation: 'InterfaceLoginfo.FinishedEngineInventory'
+      ]
+    }
+    #child: listActionBarPageFinishedEngineInventory
+    Component DataSetLevelFinishedEngineInventory
+    {
+      #keys: '[415136.0.933380314]'
+      BaseType: 'WebDataSetLevel'
+      Children:
+      [
+        #child: listContextMenuFinishedEngineInventory
+      ]
+      Properties:
+      [
+        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"FourCode","title":"FourCode","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"FourCode"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"VehicleType","title":"VehicleType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"VehicleType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ReceiptPlace","title":"ReceiptPlace","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ReceiptPlace"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"FullName","title":"FullName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"FullName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"SpellName","title":"SpellName","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"SpellName"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"EngineType","title":"EngineType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"EngineType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"EngineModularPlatform","title":"EngineModularPlatform","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"EngineModularPlatform"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Brand","title":"Brand","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Brand"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"BIPlace","title":"BIPlace","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"BIPlace"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Price","title":"Price","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Price"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Total","title":"Total","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Total"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Amount","title":"Amount","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Amount"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"DType","title":"DType","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"DType"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Fac","title":"Fac","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Fac"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"DDay","title":"DDay","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"DDay"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"DWeek","title":"DWeek","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"DWeek"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"DMonth","title":"DMonth","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"DMonth"}}]'
+        ContextMenu: 'listContextMenuFinishedEngineInventory'
+        SortCriteria: 'desc:DDay'
+        Taborder: 2
+      ]
+    }
+  ]
+  Properties:
+  [
+    Taborder: 0
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/Component_listActionBarPageFinishedEngineInventory.def b/_Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/Component_listActionBarPageFinishedEngineInventory.def
new file mode 100644
index 0000000..182e5cf
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/Component_listActionBarPageFinishedEngineInventory.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component listActionBarPageFinishedEngineInventory
+{
+  #keys: '[415136.0.933380311]'
+  BaseType: 'listActionBarPage'
+  Properties:
+  [
+    Taborder: 1
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/Component_listContextMenuFinishedEngineInventory.def b/_Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/Component_listContextMenuFinishedEngineInventory.def
new file mode 100644
index 0000000..488df4f
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/Component_listContextMenuFinishedEngineInventory.def
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+Component listContextMenuFinishedEngineInventory
+{
+  #keys: '[415136.0.933380316]'
+  BaseType: 'listContextMenu'
+  Properties:
+  [
+    Taborder: 0
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/_ROOT_Component_FormFinishedEngineInventory.def b/_Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/_ROOT_Component_FormFinishedEngineInventory.def
new file mode 100644
index 0000000..2fa6221
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormFinishedEngineInventory/_ROOT_Component_FormFinishedEngineInventory.def
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#root
+#parent: MacroPlannerWebApp
+OrphanComponent FormFinishedEngineInventory
+{
+  #keys: '[415136.0.933380255]'
+  BaseType: 'WebForm'
+  Children:
+  [
+    #child: ListFinishedEngineInventory
+  ]
+  Properties:
+  [
+    Image: 'SPREADSHEET'
+    Title: 'Finished engine inventory'
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_LibCal_dlgEvent/Component_pnlEventType.def b/_Main/UI/MacroPlannerWebApp/Component_LibCal_dlgEvent/Component_pnlEventType.def
index 457bf56..22130b5 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_LibCal_dlgEvent/Component_pnlEventType.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_LibCal_dlgEvent/Component_pnlEventType.def
@@ -49,6 +49,7 @@
       ]
       Properties:
       [
+        AllowEmpty: true
         Description: 'dhEvent.Data.EventType'
         DisplayField: 'Name'
         NumberOfColumns: 15
diff --git a/_Main/UI/MacroPlannerWebApp/Views/Finished_engine_inventory.vw b/_Main/UI/MacroPlannerWebApp/Views/Finished_engine_inventory.vw
new file mode 100644
index 0000000..5e6e378
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Views/Finished_engine_inventory.vw
@@ -0,0 +1,200 @@
+Quintiq file version 2.0
+{
+  viewcontents
+  {
+    forms
+    {
+      form_FormFinishedEngineInventory
+      {
+        title: 'QMacroPlanner::FormFinishedEngineInventory'
+        shown: true
+        componentID: 'QMacroPlanner::FormFinishedEngineInventory'
+        layout
+        {
+          mode: 'open'
+          rowPosition: 1
+          rowSpan: 15
+          columnPosition: 1
+          columnSpan: 12
+        }
+        components
+        {
+          FormFinishedEngineInventory_ListFinishedEngineInventory
+          {
+          }
+          FormFinishedEngineInventory_DataSetLevelFinishedEngineInventory
+          {
+            groupDepth: -1
+            sort: 'DESC:DDay'
+            column_FourCode
+            {
+              columnId: 'FourCode'
+              dataPath: 'FourCode'
+              dataType: 'string'
+              index: 0
+              subtotals: ''
+              width: 150
+            }
+            column_VehicleType
+            {
+              columnId: 'VehicleType'
+              dataPath: 'VehicleType'
+              dataType: 'string'
+              index: 1
+              subtotals: ''
+              width: 150
+            }
+            column_ReceiptPlace
+            {
+              columnId: 'ReceiptPlace'
+              dataPath: 'ReceiptPlace'
+              dataType: 'string'
+              index: 2
+              subtotals: ''
+              width: 150
+            }
+            column_FullName
+            {
+              columnId: 'FullName'
+              dataPath: 'FullName'
+              dataType: 'string'
+              index: 3
+              subtotals: ''
+              width: 150
+            }
+            column_SpellName
+            {
+              columnId: 'SpellName'
+              dataPath: 'SpellName'
+              dataType: 'string'
+              index: 4
+              subtotals: ''
+              width: 150
+            }
+            column_EngineType
+            {
+              columnId: 'EngineType'
+              dataPath: 'EngineType'
+              dataType: 'string'
+              index: 5
+              subtotals: ''
+              width: 150
+            }
+            column_EngineModularPlatform
+            {
+              columnId: 'EngineModularPlatform'
+              dataPath: 'EngineModularPlatform'
+              dataType: 'string'
+              index: 6
+              subtotals: ''
+              width: 150
+            }
+            column_Brand
+            {
+              columnId: 'Brand'
+              dataPath: 'Brand'
+              dataType: 'string'
+              index: 7
+              subtotals: ''
+              width: 150
+            }
+            column_BIPlace
+            {
+              columnId: 'BIPlace'
+              dataPath: 'BIPlace'
+              dataType: 'string'
+              index: 8
+              subtotals: ''
+              width: 150
+            }
+            column_Price
+            {
+              columnId: 'Price'
+              dataPath: 'Price'
+              dataType: 'string'
+              index: 9
+              subtotals: ''
+              width: 150
+            }
+            column_Total
+            {
+              columnId: 'Total'
+              dataPath: 'Total'
+              dataType: 'real'
+              index: 10
+              subtotals: ''
+              width: 150
+            }
+            column_Amount
+            {
+              columnId: 'Amount'
+              dataPath: 'Amount'
+              dataType: 'real'
+              index: 11
+              subtotals: ''
+              width: 150
+            }
+            column_DType
+            {
+              columnId: 'DType'
+              dataPath: 'DType'
+              dataType: 'string'
+              index: 12
+              subtotals: ''
+              width: 150
+            }
+            column_Fac
+            {
+              columnId: 'Fac'
+              dataPath: 'Fac'
+              dataType: 'string'
+              index: 13
+              subtotals: ''
+              width: 150
+            }
+            column_DDay
+            {
+              columnId: 'DDay'
+              dataPath: 'DDay'
+              dataType: 'date'
+              index: 14
+              subtotals: ''
+              width: 150
+            }
+            column_DWeek
+            {
+              columnId: 'DWeek'
+              dataPath: 'DWeek'
+              dataType: 'string'
+              index: 15
+              subtotals: ''
+              width: 150
+            }
+            column_DMonth
+            {
+              columnId: 'DMonth'
+              dataPath: 'DMonth'
+              dataType: 'string'
+              index: 16
+              subtotals: ''
+              width: 150
+            }
+          }
+        }
+      }
+    }
+    userconfigurableinformation
+    {
+    }
+    page: ''
+    group: ''
+    index: 24
+    image: 'SPREADSHEET'
+    description: ''
+  }
+  formatversion: 2
+  id: 'Finished_engine_inventory'
+  name: 'Finished engine inventory'
+  isglobal: false
+  isroot: true
+}

--
Gitblit v1.9.3