From d8f04d282d35a4b9f8244405573ddf2e6a4b5310 Mon Sep 17 00:00:00 2001
From: hongji.li <hongji.a.li@capgemini.com>
Date: 星期二, 17 十月 2023 11:56:46 +0800
Subject: [PATCH] 增加GlobalOTDSOP全局数据集

---
 _Main/BL/Type_DMF_CustomLogic/Method_OnFinished.qbl          |    3 +
 _Main/BL/Type_GlobalOTDSOP/StaticMethod_OnServerStartup.qbl  |   27 +++++++++++++
 _Main/BL/Type_GlobalOTDSOP/StaticMethod_GetDatasetName.qbl   |    6 +++
 _Main/BL/Dataset_GlobalOTDSOP/_ROOT_Dataset_GlobalOTDSOP.qbl |    9 ++++
 _Main/BL/Type_GlobalOTDSOP/StaticMethod_GetLoadedDataset.qbl |   20 ++++++++++
 _Main/BL/Type_GlobalOTDSOP/_ROOT_Type_GlobalOTDSOP.qbl       |    9 ++++
 6 files changed, 74 insertions(+), 0 deletions(-)

diff --git a/_Main/BL/Dataset_GlobalOTDSOP/_ROOT_Dataset_GlobalOTDSOP.qbl b/_Main/BL/Dataset_GlobalOTDSOP/_ROOT_Dataset_GlobalOTDSOP.qbl
new file mode 100644
index 0000000..bca7af1
--- /dev/null
+++ b/_Main/BL/Dataset_GlobalOTDSOP/_ROOT_Dataset_GlobalOTDSOP.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Dataset GlobalOTDSOP
+{
+  #keys: '2[414702.1.113455894][414702.1.113455893]'
+  DefaultMDSName: 'GlobalOTDSOP'
+  InstanceType: GlobalOTDSOP
+}
diff --git a/_Main/BL/Type_DMF_CustomLogic/Method_OnFinished.qbl b/_Main/BL/Type_DMF_CustomLogic/Method_OnFinished.qbl
index 2298751..082e4a6 100644
--- a/_Main/BL/Type_DMF_CustomLogic/Method_OnFinished.qbl
+++ b/_Main/BL/Type_DMF_CustomLogic/Method_OnFinished.qbl
@@ -28,6 +28,9 @@
     // 鍒涘缓澶╅┈鍏ㄥ眬鏁版嵁闆�
     GlobalOTDTable::OnServerStartup();
     
+    // 鍒涘缓澶╅┈SOP鍏ㄥ眬鏁版嵁闆�
+    GlobalOTDSOP::OnServerStartup();
+    
     // Create a MemoryOnly-dataset that is used to receive SOAP-calls from the DataManager.
     MDSScenarioManager::CreateMemoryOnlyMDS( ScenarioManager::GetDatasetNameReceiver() );
     
diff --git a/_Main/BL/Type_GlobalOTDSOP/StaticMethod_GetDatasetName.qbl b/_Main/BL/Type_GlobalOTDSOP/StaticMethod_GetDatasetName.qbl
new file mode 100644
index 0000000..17e0441
--- /dev/null
+++ b/_Main/BL/Type_GlobalOTDSOP/StaticMethod_GetDatasetName.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetDatasetName () as String
+{
+  TextBody: 'return typeof( GlobalOTDSOP ).ShortName();'
+}
diff --git a/_Main/BL/Type_GlobalOTDSOP/StaticMethod_GetLoadedDataset.qbl b/_Main/BL/Type_GlobalOTDSOP/StaticMethod_GetLoadedDataset.qbl
new file mode 100644
index 0000000..7dd1b25
--- /dev/null
+++ b/_Main/BL/Type_GlobalOTDSOP/StaticMethod_GetLoadedDataset.qbl
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod GetLoadedDataset () as owning MDSID
+{
+  TextBody:
+  [*
+    mds := null( MDSID, owning );
+    folder := '/root';
+    datasetName := GlobalOTDSOP::GetDatasetName();
+    
+    oinfo := MDSEditor::Editor().LoadedObjectInfo( datasetName, folder, datasetName );
+    
+    if(  not isnull( oinfo ) )
+    {
+      mds := oinfo.MDSID();
+    }  
+    
+    return &mds;
+  *]
+}
diff --git a/_Main/BL/Type_GlobalOTDSOP/StaticMethod_OnServerStartup.qbl b/_Main/BL/Type_GlobalOTDSOP/StaticMethod_OnServerStartup.qbl
new file mode 100644
index 0000000..d951e07
--- /dev/null
+++ b/_Main/BL/Type_GlobalOTDSOP/StaticMethod_OnServerStartup.qbl
@@ -0,0 +1,27 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod OnServerStartup
+{
+  TextBody:
+  [*
+    debuginfo( '================================ GlobalOTDSOP =======================================')
+    folder := DomainModel::Domain().MDSFolderDefinitions().FindFolder( "/root" );
+    
+    datasetName := GlobalOTDSOP::GetDatasetName();
+    
+    oinfo := MDSEditor::Editor().ObjectInfos( datasetName, folder.FolderID(), datasetName );
+    
+    o := select( oinfo, Elements, o, not o.IsLoaded() );
+    emptydataset := isnull( o );
+    
+    if( emptydataset )
+    {
+      MDSGlobalOTDSOP::CreateMDS( datasetName, GlobalParameters_MP::GetStorageState() );
+      GlobalOTDSOP::GetLoadedDataset();
+    }
+    else
+    {
+      MDSGlobalOTDSOP::LoadMDSAndConvert( o.MDSID(), GlobalParameters_MP::GetStorageState() );
+    }
+  *]
+}
diff --git a/_Main/BL/Type_GlobalOTDSOP/_ROOT_Type_GlobalOTDSOP.qbl b/_Main/BL/Type_GlobalOTDSOP/_ROOT_Type_GlobalOTDSOP.qbl
new file mode 100644
index 0000000..7dbfe2a
--- /dev/null
+++ b/_Main/BL/Type_GlobalOTDSOP/_ROOT_Type_GlobalOTDSOP.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type GlobalOTDSOP
+{
+  #keys: '5[414702.1.113455880][414702.1.113455878][0.0.0][414702.1.113455879][414702.1.113455881]'
+  BaseType: Object
+  StructuredName: 'GlobalOTDSOPs'
+}

--
Gitblit v1.9.3