From e65240837267e1fb6eb190513019106802a015e7 Mon Sep 17 00:00:00 2001 From: RichaneCrossbreeze Date: Tue, 15 Oct 2024 23:01:12 +0200 Subject: [PATCH] Feature/configuratie_features_pivotetc (#33) * Added CanCreate Event Handler on all business rules which can be configured via the model properties. * Disabled fullshortcutmodel for ExampleDWH. * Disabled business rule features on Reference and ExampleSource. * Updated MDDE Model Configuration page and updated reference from README. --------- Co-authored-by: Harmen Wessels --- .../Event_Handlers/CanCreate.xml | 17 + .../Event_Handlers/Event_Handlers.xml | 11 + .../mdde_AggregateBusinessRule.xml | 1 + .../Event_Handlers/CanCreate.xml | 17 + .../Event_Handlers/Event_Handlers.xml | 11 + .../mdde_CustomBusinessRule.xml | 1 + .../Event_Handlers/CanCreate.xml | 17 + .../Event_Handlers/Event_Handlers.xml | 11 + .../mdde_PivotBusinessRule.xml | 1 + .../Event_Handlers/CanCreate.xml | 17 + .../Event_Handlers/Event_Handlers.xml | 11 + .../mdde_FilterBusinessRule.xml | 1 + .../Event_Handlers/CanCreate.xml | 17 + .../Event_Handlers/Event_Handlers.xml | 11 + .../mdde_ScalarBusinessRule.xml | 1 + .../Extended_Attributes.xml | 5 + .../mdde_Feature_BusinessRule_Aggregate.xml | 10 + .../mdde_Feature_BusinessRule_Custom.xml | 10 + .../mdde_Feature_BusinessRule_Filter.xml | 10 + .../mdde_Feature_BusinessRule_Pivot.xml | 10 + .../mdde_Feature_BusinessRule_Scalar.xml | 10 + .../MDDE_LDM/Profile/Model/Forms/Forms.xml | 2 +- .../Model/Forms/mdde_Configuration.xml | 23 ++ .../Forms/mdde_XmlExportConfiguration.xml | 13 - .../ExampleDWH/Entities/Shortcuts/Country.xml | 3 - .../Entities/Shortcuts/Customer.xml | 21 - .../Entities/Shortcuts/SalesOrder.xml | 18 - decomposed/models/ExampleDWH/ExampleDWH.ldm | 28 +- .../ExampleDWH/Model/a_ModelOptionsText.xml | 2 +- .../SourceModels/Shortcuts/EXAMPLESOURCE.xml | 3 - .../SourceModels/Shortcuts/REFERENCE.xml | 3 - .../{EXAMPLESOURCE => }/EXAMPLESOURCE.xml | 22 - .../EXAMPLESOURCE/EXAMPLESOURCE.xml | 215 ---------- .../EXAMPLESOURCE/Entities/Customer.xml | 111 ----- .../EXAMPLESOURCE/Entities/SalesOrder.xml | 92 ----- .../Shortcuts/MDDE_LDM.xml | 8 - .../Model/a_ModelOptionsText.xml | 388 ------------------ .../Model/a_PackageOptionsText.xml | 9 - .../ExampleDWH/TargetModels/MDDE_LDM.xml | 2 - .../{REFERENCE => }/REFERENCE.xml | 12 - .../REFERENCE/Entities/Country.xml | 70 ---- .../Shortcuts/MDDE_LDM.xml | 8 - .../REFERENCE/Model/a_ModelOptionsText.xml | 388 ------------------ .../REFERENCE/Model/a_PackageOptionsText.xml | 9 - .../FullShortcutModel/REFERENCE/REFERENCE.xml | 102 ----- .../models/ExampleSource/ExampleSource.ldm | 12 +- decomposed/models/Reference/Reference.ldm | 12 +- manual/Business rule.md | 4 + manual/MDDEModelConfiguration.md | 42 ++ manual/ModelExportConfiguration.md | 21 - manual/README.md | 5 +- ...e_configuration_business_rule_features.png | Bin 0 -> 23411 bytes .../model_mdde_configuration_xml_export.png | Bin 0 -> 22725 bytes 53 files changed, 322 insertions(+), 1526 deletions(-) create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_AggregateBusinessRule/Event_Handlers/CanCreate.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_AggregateBusinessRule/Event_Handlers/Event_Handlers.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_CustomBusinessRule/Event_Handlers/CanCreate.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_CustomBusinessRule/Event_Handlers/Event_Handlers.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_PivotBusinessRule/Event_Handlers/CanCreate.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_PivotBusinessRule/Event_Handlers/Event_Handlers.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_FilterBusinessRule/Event_Handlers/CanCreate.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_FilterBusinessRule/Event_Handlers/Event_Handlers.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_ScalarBusinessRule/Event_Handlers/CanCreate.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_ScalarBusinessRule/Event_Handlers/Event_Handlers.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Aggregate.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Custom.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Filter.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Pivot.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Scalar.xml create mode 100644 decomposed/extensions/MDDE_LDM/Profile/Model/Forms/mdde_Configuration.xml delete mode 100644 decomposed/extensions/MDDE_LDM/Profile/Model/Forms/mdde_XmlExportConfiguration.xml rename decomposed/models/ExampleDWH/TargetModels/{EXAMPLESOURCE => }/EXAMPLESOURCE.xml (51%) delete mode 100644 decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/EXAMPLESOURCE.xml delete mode 100644 decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Entities/Customer.xml delete mode 100644 decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Entities/SalesOrder.xml delete mode 100644 decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/ExtendedModelDefinitions/Shortcuts/MDDE_LDM.xml delete mode 100644 decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Model/a_ModelOptionsText.xml delete mode 100644 decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Model/a_PackageOptionsText.xml rename decomposed/models/ExampleDWH/TargetModels/{REFERENCE => }/REFERENCE.xml (51%) delete mode 100644 decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/Entities/Country.xml delete mode 100644 decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/ExtendedModelDefinitions/Shortcuts/MDDE_LDM.xml delete mode 100644 decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/Model/a_ModelOptionsText.xml delete mode 100644 decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/Model/a_PackageOptionsText.xml delete mode 100644 decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/REFERENCE.xml create mode 100644 manual/MDDEModelConfiguration.md delete mode 100644 manual/ModelExportConfiguration.md create mode 100644 manual/img/model_mdde_configuration_business_rule_features.png create mode 100644 manual/img/model_mdde_configuration_xml_export.png diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_AggregateBusinessRule/Event_Handlers/CanCreate.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_AggregateBusinessRule/Event_Handlers/CanCreate.xml new file mode 100644 index 0000000..810f126 --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_AggregateBusinessRule/Event_Handlers/CanCreate.xml @@ -0,0 +1,17 @@ + +7768AB67-15D8-4C68-8754-5697D2960D23 +CanCreate +1726842611 +RichaneRamsoedit +1 +Function %CanCreate%(parent) + 'the parent represents the AggregateBusinessRule which communicaties with the model object' + 'the default value for the attribute is set to TRUE in the form' + + %CanCreate% = False + ' If the parent is known return the value of the MDDE configuration extended attribute. + If Not (parent Is Nothing) Then + %CanCreate% = parent.Model.GetExtendedAttribute("mdde_Feature_BusinessRule_Aggregate") + End If +End Function + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_AggregateBusinessRule/Event_Handlers/Event_Handlers.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_AggregateBusinessRule/Event_Handlers/Event_Handlers.xml new file mode 100644 index 0000000..fb2ff75 --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_AggregateBusinessRule/Event_Handlers/Event_Handlers.xml @@ -0,0 +1,11 @@ + +EventHandlerTargetItem +F33A5029-A1F3-436E-8518-193C6C15D18A +Event Handlers +1726842611 +RichaneRamsoedit +1 + + + + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_AggregateBusinessRule/mdde_AggregateBusinessRule.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_AggregateBusinessRule/mdde_AggregateBusinessRule.xml index 2993c01..6766b92 100644 --- a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_AggregateBusinessRule/mdde_AggregateBusinessRule.xml +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_AggregateBusinessRule/mdde_AggregateBusinessRule.xml @@ -196,5 +196,6 @@ A6A5A4FFA19F9FFF9B9A9AFF8E8E8EFF777878FF646363FF494949FF86EEFFFF + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_CustomBusinessRule/Event_Handlers/CanCreate.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_CustomBusinessRule/Event_Handlers/CanCreate.xml new file mode 100644 index 0000000..354dd0d --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_CustomBusinessRule/Event_Handlers/CanCreate.xml @@ -0,0 +1,17 @@ + +D1DB87F4-7902-45D2-83EA-E01AFD8ABD62 +CanCreate +1726841992 +RichaneRamsoedit +1 +Function %CanCreate%(parent) + 'the parent represents the CustomBusinessRule which communicaties with the model object' + 'the default value for the attribute is set to TRUE in the form' + + %CanCreate% = False + ' If the parent is known return the value of the MDDE configuration extended attribute. + If Not (parent Is Nothing) Then + %CanCreate% = parent.Model.GetExtendedAttribute("mdde_Feature_BusinessRule_Custom") + End If +End Function + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_CustomBusinessRule/Event_Handlers/Event_Handlers.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_CustomBusinessRule/Event_Handlers/Event_Handlers.xml new file mode 100644 index 0000000..3a3c75c --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_CustomBusinessRule/Event_Handlers/Event_Handlers.xml @@ -0,0 +1,11 @@ + +EventHandlerTargetItem +31E6C4C4-8DF4-45EC-B33F-E5A952CB1FBD +Event Handlers +1726841992 +RichaneRamsoedit +1 + + + + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_CustomBusinessRule/mdde_CustomBusinessRule.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_CustomBusinessRule/mdde_CustomBusinessRule.xml index 4859d70..9ee68a4 100644 --- a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_CustomBusinessRule/mdde_CustomBusinessRule.xml +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_CustomBusinessRule/mdde_CustomBusinessRule.xml @@ -14,5 +14,6 @@ + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_PivotBusinessRule/Event_Handlers/CanCreate.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_PivotBusinessRule/Event_Handlers/CanCreate.xml new file mode 100644 index 0000000..0778c7c --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_PivotBusinessRule/Event_Handlers/CanCreate.xml @@ -0,0 +1,17 @@ + +C4D48095-33A0-4455-8D05-5478F6C651DD +CanCreate +1726754458 +RichaneRamsoedit +1 +Function %CanCreate%(parent) + 'the parent represents the PivotBusinessRule which communicaties with the model object' + 'the default value for the attribute is set to TRUE in the form' + + %CanCreate% = False + ' If the parent is known return the value of the MDDE configuration extended attribute. + If Not (parent Is Nothing) Then + %CanCreate% = parent.Model.GetExtendedAttribute("mdde_Feature_BusinessRule_Pivot") + End If +End Function + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_PivotBusinessRule/Event_Handlers/Event_Handlers.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_PivotBusinessRule/Event_Handlers/Event_Handlers.xml new file mode 100644 index 0000000..9b38272 --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_PivotBusinessRule/Event_Handlers/Event_Handlers.xml @@ -0,0 +1,11 @@ + +EventHandlerTargetItem +0C1D316D-5A7D-48B9-BFB3-CF87A105268A +Event Handlers +1726754458 +RichaneRamsoedit +1 + + + + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_PivotBusinessRule/mdde_PivotBusinessRule.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_PivotBusinessRule/mdde_PivotBusinessRule.xml index eebb163..84f981d 100644 --- a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_PivotBusinessRule/mdde_PivotBusinessRule.xml +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithMapping/Stereotypes/mdde_PivotBusinessRule/mdde_PivotBusinessRule.xml @@ -196,5 +196,6 @@ D3D2D3FED4D3D4FAD0CFD0EDBFBFBFCA9D9D9D8A5F5F5F380303030A00000001 + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_FilterBusinessRule/Event_Handlers/CanCreate.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_FilterBusinessRule/Event_Handlers/CanCreate.xml new file mode 100644 index 0000000..6b42d3e --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_FilterBusinessRule/Event_Handlers/CanCreate.xml @@ -0,0 +1,17 @@ + +290DC1CF-77B8-47D6-90F6-F868A176A63A +CanCreate +1726842654 +RichaneRamsoedit +1 +Function %CanCreate%(parent) + 'the parent represents the FilterBusinessRule which communicaties with the model object' + 'the default value for the attribute is set to TRUE in the form' + + %CanCreate% = False + ' If the parent is known return the value of the MDDE configuration extended attribute. + If Not (parent Is Nothing) Then + %CanCreate% = parent.Model.GetExtendedAttribute("mdde_Feature_BusinessRule_Filter") + End If +End Function + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_FilterBusinessRule/Event_Handlers/Event_Handlers.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_FilterBusinessRule/Event_Handlers/Event_Handlers.xml new file mode 100644 index 0000000..4c0b256 --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_FilterBusinessRule/Event_Handlers/Event_Handlers.xml @@ -0,0 +1,11 @@ + +EventHandlerTargetItem +67229A03-E6AA-4682-B62A-A059A7C7F183 +Event Handlers +1726842654 +RichaneRamsoedit +1 + + + + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_FilterBusinessRule/mdde_FilterBusinessRule.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_FilterBusinessRule/mdde_FilterBusinessRule.xml index 297e8cb..1fb8478 100644 --- a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_FilterBusinessRule/mdde_FilterBusinessRule.xml +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_FilterBusinessRule/mdde_FilterBusinessRule.xml @@ -197,5 +197,6 @@ C59EA3FFC59FA3FFC59FA4FFC7A0A5FFC7A0A6FFB5838AFF9A5360EF9A53602F + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_ScalarBusinessRule/Event_Handlers/CanCreate.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_ScalarBusinessRule/Event_Handlers/CanCreate.xml new file mode 100644 index 0000000..f465bd1 --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_ScalarBusinessRule/Event_Handlers/CanCreate.xml @@ -0,0 +1,17 @@ + +7A536EA2-A24B-47FA-B288-442F690950B1 +CanCreate +1726842683 +RichaneRamsoedit +1 +Function %CanCreate%(parent) + 'the parent represents the ScalarBusinessRule which communicaties with the model object' + 'the default value for the attribute is set to TRUE in the form' + + %CanCreate% = False + ' If the parent is known return the value of the MDDE configuration extended attribute. + If Not (parent Is Nothing) Then + %CanCreate% = parent.Model.GetExtendedAttribute("mdde_Feature_BusinessRule_Scalar") + End If +End Function + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_ScalarBusinessRule/Event_Handlers/Event_Handlers.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_ScalarBusinessRule/Event_Handlers/Event_Handlers.xml new file mode 100644 index 0000000..67453c0 --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_ScalarBusinessRule/Event_Handlers/Event_Handlers.xml @@ -0,0 +1,11 @@ + +EventHandlerTargetItem +B4C49304-F4C0-4FA2-84AA-C0657EA5377F +Event Handlers +1726842683 +RichaneRamsoedit +1 + + + + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_ScalarBusinessRule/mdde_ScalarBusinessRule.xml b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_ScalarBusinessRule/mdde_ScalarBusinessRule.xml index e733402..e536d6c 100644 --- a/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_ScalarBusinessRule/mdde_ScalarBusinessRule.xml +++ b/decomposed/extensions/MDDE_LDM/Profile/Entity/Stereotypes/mdde_BusinessRule/Stereotypes/mdde_BusinessRuleWithoutMapping/Stereotypes/mdde_ExpressionBusinessRule/Stereotypes/mdde_ScalarBusinessRule/mdde_ScalarBusinessRule.xml @@ -198,5 +198,6 @@ EFE5E0FF78737080000000000000000000000000000000000000000000000000 + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/Extended_Attributes.xml b/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/Extended_Attributes.xml index 11ff6fd..bf3512c 100644 --- a/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/Extended_Attributes.xml +++ b/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/Extended_Attributes.xml @@ -9,5 +9,10 @@ + + + + + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Aggregate.xml b/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Aggregate.xml new file mode 100644 index 0000000..fcede93 --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Aggregate.xml @@ -0,0 +1,10 @@ + +52F0CC72-6B0C-44B8-A875-5DC31F6A52BA +mdde_Feature_BusinessRule_Aggregate +1726842440 +RichaneRamsoedit +This extended attribute is added to refer to the event handler CanCreate to be able to enable the aggregate business rule +1 +true +MDDE enable aggregate business rule + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Custom.xml b/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Custom.xml new file mode 100644 index 0000000..1c245cb --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Custom.xml @@ -0,0 +1,10 @@ + +89500EF5-C44B-4220-A363-A2620305F64A +mdde_Feature_BusinessRule_Custom +1726842337 +RichaneRamsoedit +This extended attribute is added to refer to the event handler CanCreate to be able to enable the custom business rule +1 +true +MDDE enable custom business rule + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Filter.xml b/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Filter.xml new file mode 100644 index 0000000..5bd5163 --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Filter.xml @@ -0,0 +1,10 @@ + +0DEE60FE-69C3-4B1B-BE43-B4721C19FC70 +mdde_Feature_BusinessRule_Filter +1726841633 +RichaneRamsoedit +This extended attribute is added to refer to the event handler CanCreate to be able to enable the filter business rule +1 +true +MDDE enable filter business rule + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Pivot.xml b/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Pivot.xml new file mode 100644 index 0000000..6dc8136 --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Pivot.xml @@ -0,0 +1,10 @@ + +B3CFF5CB-A1B0-4149-AF6A-AAD39EF84993 +mdde_Feature_BusinessRule_Pivot +1726754724 +RichaneRamsoedit +This extended attribute is added to refer to the event handler CanCreate to be able to enable the pivot business rule +1 +true +MDDE enable pivot business rule + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Scalar.xml b/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Scalar.xml new file mode 100644 index 0000000..2e2008a --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Model/Extended_Attributes/mdde_Feature_BusinessRule_Scalar.xml @@ -0,0 +1,10 @@ + +380C3059-E59A-4556-AF67-19B74A862155 +mdde_Feature_BusinessRule_Scalar +1726841036 +RichaneRamsoedit +This extended attribute is added to refer to the event handler CanCreate to be able to enable the scalar business rule +1 +true +MDDE enable scalar business rule + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Model/Forms/Forms.xml b/decomposed/extensions/MDDE_LDM/Profile/Model/Forms/Forms.xml index 338a74e..4aee60d 100644 --- a/decomposed/extensions/MDDE_LDM/Profile/Model/Forms/Forms.xml +++ b/decomposed/extensions/MDDE_LDM/Profile/Model/Forms/Forms.xml @@ -6,7 +6,7 @@ HarmenWessels 1 - + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Model/Forms/mdde_Configuration.xml b/decomposed/extensions/MDDE_LDM/Profile/Model/Forms/mdde_Configuration.xml new file mode 100644 index 0000000..8b29e44 --- /dev/null +++ b/decomposed/extensions/MDDE_LDM/Profile/Model/Forms/mdde_Configuration.xml @@ -0,0 +1,23 @@ + +82A848B3-38C7-40F2-AB0F-ECE90F5DB908 +mdde_Configuration +<Form > + <GroupBox Name="Enabling/Disabling Business Rule features" Caption="Enable/Disable Business Rule features" ControlAsLabel="No" > + <StaticText Name="Description enable/disable" Caption="With the options below you can enable/disable business rules.\nThe reason to enable/disable these business rules is for configuration options that are specific for any organisation." /> + <ExtendedAttribute Attribute="mdde_Feature_BusinessRule_Pivot" Caption="Enable Pivot business rule " AttributeID="{B3CFF5CB-A1B0-4149-AF6A-AAD39EF84993}" GrayHiddenAttributes="Yes" Display="Checkbox" LeftText="No" /> + <ExtendedAttribute Attribute="mdde_Feature_BusinessRule_Filter" Caption="Enable Filter business rule " AttributeID="{0DEE60FE-69C3-4B1B-BE43-B4721C19FC70}" GrayHiddenAttributes="Yes" Display="Checkbox" LeftText="No" /> + <ExtendedAttribute Attribute="mdde_Feature_BusinessRule_Aggregate" Caption="Enable Aggregate business rule " AttributeID="{52F0CC72-6B0C-44B8-A875-5DC31F6A52BA}" GrayHiddenAttributes="Yes" Display="Checkbox" LeftText="No" /> + <ExtendedAttribute Attribute="mdde_Feature_BusinessRule_Scalar" Caption="Enable Scalar business rule " AttributeID="{380C3059-E59A-4556-AF67-19B74A862155}" GrayHiddenAttributes="Yes" Display="Checkbox" LeftText="No" /> + <ExtendedAttribute Attribute="mdde_Feature_BusinessRule_Custom" Caption="Enable Custom business rule " AttributeID="{89500EF5-C44B-4220-A363-A2620305F64A}" GrayHiddenAttributes="Yes" Display="Checkbox" LeftText="No" /> + </GroupBox> + <GroupBox Name="GroupBox1" Caption="XML Export" ControlAsLabel="No" > + <StaticText Name="XML Export Configuration" Caption="With the options below you can enable/disable the export of certain metadata.\nThe reason to disable unneeded metadata is to increase the export speed and keep the model export as small as possible." /> + <ExtendedAttribute Attribute="mdde_Export_SourceObject_ExpressionBusinessRule_SqlExpression" Caption="SourceObject &lt;&lt;ExpressionBusinessRule&gt;&gt; SQL Expression" AttributeID="{A3455CE1-6457-40F7-9C0B-599E355AF4DE}" GrayHiddenAttributes="Yes" SizeInChars="1" LineNumber="3" HorizontalResize="true" VerticalResize="true" Display="Checkbox" LeftText="No" /> + </GroupBox> +</Form> + +1716375491 +HarmenWessels +1 +Configuration (MDDE) + \ No newline at end of file diff --git a/decomposed/extensions/MDDE_LDM/Profile/Model/Forms/mdde_XmlExportConfiguration.xml b/decomposed/extensions/MDDE_LDM/Profile/Model/Forms/mdde_XmlExportConfiguration.xml deleted file mode 100644 index 4b989d8..0000000 --- a/decomposed/extensions/MDDE_LDM/Profile/Model/Forms/mdde_XmlExportConfiguration.xml +++ /dev/null @@ -1,13 +0,0 @@ - -82A848B3-38C7-40F2-AB0F-ECE90F5DB908 -mdde_XmlExportConfiguration -<Form > - <StaticText Name="XML Export Configuration" Caption="With the options below you can enable/disable the export of certain metadata.\n\nThe reason to disable unneeded metadata is to increase the export speed and keep the model export as small as possible." /> - <ExtendedAttribute Attribute="mdde_Export_SourceObject_ExpressionBusinessRule_SqlExpression" Caption="SourceObject &lt;&lt;ExpressionBusinessRule&gt;&gt; SQL Expression" AttributeID="{A3455CE1-6457-40F7-9C0B-599E355AF4DE}" GrayHiddenAttributes="Yes" Display="Checkbox" LeftText="No" /> -</Form> - -1716375491 -HarmenWessels -1 -XML Export (MDDE) - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/Entities/Shortcuts/Country.xml b/decomposed/models/ExampleDWH/Entities/Shortcuts/Country.xml index 96ab831..592b488 100644 --- a/decomposed/models/ExampleDWH/Entities/Shortcuts/Country.xml +++ b/decomposed/models/ExampleDWH/Entities/Shortcuts/Country.xml @@ -6,7 +6,4 @@ BC120FD8-8AF8-4F3F-86C8-474D1B5B207F D86B0751-A544-42AE-AAA6-6E32C602F706 <Model> - - - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/Entities/Shortcuts/Customer.xml b/decomposed/models/ExampleDWH/Entities/Shortcuts/Customer.xml index 7c82501..58850bd 100644 --- a/decomposed/models/ExampleDWH/Entities/Shortcuts/Customer.xml +++ b/decomposed/models/ExampleDWH/Entities/Shortcuts/Customer.xml @@ -17,9 +17,6 @@ DAT 1680508903 95EA4A3A-B2E7-4F50-AEA3-8209C2AC0C46 E1690028-F3DD-4986-B6CB-1509A400BE2B <Model>::Customer - - - 871AB45F-ADD2-454E-AFDD-6D4331ABEEBF @@ -29,9 +26,6 @@ DAT 1680508903 071EB08F-6D7D-428D-BBB0-14B5B9D81201 E1690028-F3DD-4986-B6CB-1509A400BE2B <Model>::Customer - - - 0290A73F-0E28-4B31-A440-80CB640CDC60 @@ -41,9 +35,6 @@ DAT 1680508903 E15BA61C-22E8-480F-8854-32B66E2001C0 E1690028-F3DD-4986-B6CB-1509A400BE2B <Model>::Customer - - - AC09499C-B849-48B5-B781-E3F9539F3A72 @@ -53,9 +44,6 @@ DAT 1680508903 B47EB33C-682A-4199-845A-C2B47D086F72 E1690028-F3DD-4986-B6CB-1509A400BE2B <Model>::Customer - - - 994B60FA-2E9F-40E0-B512-FB9F360FD742 @@ -65,9 +53,6 @@ DAT 1680508903 99AAF098-A167-4D36-90B7-54A482421D21 E1690028-F3DD-4986-B6CB-1509A400BE2B <Model>::Customer - - - A1E90679-73A2-46F8-B6B9-7C85155EA35D @@ -77,12 +62,6 @@ DAT 1680508903 117618E5-A065-4822-86E2-61CAA2E89AF9 E1690028-F3DD-4986-B6CB-1509A400BE2B <Model>::Customer - - - - - - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/Entities/Shortcuts/SalesOrder.xml b/decomposed/models/ExampleDWH/Entities/Shortcuts/SalesOrder.xml index 6f8cac0..3280a42 100644 --- a/decomposed/models/ExampleDWH/Entities/Shortcuts/SalesOrder.xml +++ b/decomposed/models/ExampleDWH/Entities/Shortcuts/SalesOrder.xml @@ -17,9 +17,6 @@ DAT 1680508903 3FA0D49D-8A10-4769-B683-85960E9F353F E1690028-F3DD-4986-B6CB-1509A400BE2B <Model>::SalesOrder - - - 6999FF4A-74A2-41B4-A9B3-CCBBB8495F45 @@ -29,9 +26,6 @@ DAT 1680508903 FE17C4F0-5C1E-4E50-A96E-D045E816ACAF E1690028-F3DD-4986-B6CB-1509A400BE2B <Model>::SalesOrder - - - D03BC676-D8A6-47EF-879C-E4DDC42514B3 @@ -41,9 +35,6 @@ DAT 1680508903 485471FA-F386-4401-BDE8-7447D453FEBF E1690028-F3DD-4986-B6CB-1509A400BE2B <Model>::SalesOrder - - - F9A54E73-D82B-4CD8-8261-BCEF67B6E3D6 @@ -53,9 +44,6 @@ DAT 1680508903 EC1D061C-A80C-45FC-9210-404133B3EAC3 E1690028-F3DD-4986-B6CB-1509A400BE2B <Model>::SalesOrder - - - ABA5520A-2B16-4F5C-AB4F-519BEB2D5EBB @@ -65,12 +53,6 @@ DAT 1680508903 493F6607-B532-4EA0-AD55-9161F8A30CAC E1690028-F3DD-4986-B6CB-1509A400BE2B <Model>::SalesOrder - - - - - - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/ExampleDWH.ldm b/decomposed/models/ExampleDWH/ExampleDWH.ldm index 9861c93..53f7178 100644 --- a/decomposed/models/ExampleDWH/ExampleDWH.ldm +++ b/decomposed/models/ExampleDWH/ExampleDWH.ldm @@ -43,7 +43,29 @@ DLD {E65E8C99-8AC5-4EBA-A95C-E867C0CD0A06} DLD {CA5B68AA-5F42-423A-BA26-0A3F9DE54F2F} ATT DEFTXEM ATT OBJEXA -ATT SMDC +ATT SMDC +DLD {6B629DE1-5B1F-402A-B1E7-43DFC141EB57} +DLD {8017615D-E34E-4738-950F-8FDDA0D33F1E} +DLD {2F004CE3-801C-4543-AF09-6EA7641BA2A5} +DLD {90EFA81B-229D-49BD-ACC7-E8FB03D1B7CD} +DLD {5A733804-BE24-4B45-9B61-D96453AAE367} +DLD {96698163-CD6C-4637-B0FD-3D1C464D0CEE} +DLD {A55D7823-E7AF-427D-BC77-83DB4CAF7D8A} +DLD {532BF904-78B3-4D9C-89DD-F9F2550F64C8} +DLD {9FA8DF63-ABA6-44F5-8EFB-D7A4757E2B1E} +DLD {85AEC6F1-42A5-4718-931A-1E6438DB4A51} +DLD {F64B5547-8E05-465A-AD15-AFD8C2732AE4} +DLD {D5ADD5CF-510D-4F42-8CE0-9F850A78FB41} +DLD {65AE4CC4-CCEC-42BE-A0F0-1DEFDD241F00} +DLD {0C016848-384F-4F3D-81DD-65D929BCA912} +DLD {9B4DC8F0-C764-4C69-BF51-0963FF30AE97} +DLD {B3144B65-C58F-4476-871F-7F6176ADE977} +DLD {E82A2CC8-DEF7-47F5-AA9B-0E1AF641855E} +DLD {1CA42F5C-FF9B-4E3C-ACE6-6C35284B4F5C} +DLD {B20EFC17-E74F-4A74-9830-CBAD7BD96FC6} +DLD {00EBF066-B374-42C1-B3C1-2DBACF0F839A} +DLD {78320D09-45E0-43E0-B463-B1E9C3077601} +DLD {14EDF65B-AB03-4DB4-858D-CEA5958C48ED} @@ -114,8 +136,8 @@ ATT SMDC - - + + diff --git a/decomposed/models/ExampleDWH/Model/a_ModelOptionsText.xml b/decomposed/models/ExampleDWH/Model/a_ModelOptionsText.xml index 3d260e5..fb745f3 100644 --- a/decomposed/models/ExampleDWH/Model/a_ModelOptionsText.xml +++ b/decomposed/models/ExampleDWH/Model/a_ModelOptionsText.xml @@ -6,7 +6,7 @@ DisplayName=Yes EnableTrans=No UseTerm=No EnableRequirements=No -EnableFullShortcut=Yes +EnableFullShortcut=No SynchroCode=Yes Notation=0 RlshUnique=No diff --git a/decomposed/models/ExampleDWH/SourceModels/Shortcuts/EXAMPLESOURCE.xml b/decomposed/models/ExampleDWH/SourceModels/Shortcuts/EXAMPLESOURCE.xml index 7eb65de..9da1775 100644 --- a/decomposed/models/ExampleDWH/SourceModels/Shortcuts/EXAMPLESOURCE.xml +++ b/decomposed/models/ExampleDWH/SourceModels/Shortcuts/EXAMPLESOURCE.xml @@ -5,7 +5,4 @@ D7F41E17-25EB-4620-B6EA-96957CAE246A 5F45F978-C4F3-4E35-A3FC-AF3318663A0F - - - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/SourceModels/Shortcuts/REFERENCE.xml b/decomposed/models/ExampleDWH/SourceModels/Shortcuts/REFERENCE.xml index b2f3d41..3ce6eec 100644 --- a/decomposed/models/ExampleDWH/SourceModels/Shortcuts/REFERENCE.xml +++ b/decomposed/models/ExampleDWH/SourceModels/Shortcuts/REFERENCE.xml @@ -5,7 +5,4 @@ E0D7FF56-7977-4D8F-A64B-BB6D985687E7 5F45F978-C4F3-4E35-A3FC-AF3318663A0F - - - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/EXAMPLESOURCE.xml b/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE.xml similarity index 51% rename from decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/EXAMPLESOURCE.xml rename to decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE.xml index f5bd141..8c194dd 100644 --- a/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/EXAMPLESOURCE.xml +++ b/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE.xml @@ -23,26 +23,4 @@ - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/EXAMPLESOURCE.xml b/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/EXAMPLESOURCE.xml deleted file mode 100644 index 88f46a1..0000000 --- a/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/EXAMPLESOURCE.xml +++ /dev/null @@ -1,215 +0,0 @@ - -76736696-CC77-4017-8134-AB3DDC8EA031 -ExampleSource -EXAMPLESOURCE -1680508853 -MooOthman -ORG {6B629DE1-5B1F-402A-B1E7-43DFC141EB57} -DAT 1680508855 -ATT MOPT -ATT FOPT -ATT SMDC - - - - - - - - - - - -7BC2450A-E429-40C2-B459-49F00D74C766 -0 - -D7F41E17-25EB-4620-B6EA-96957CAE246A -5F45F978-C4F3-4E35-A3FC-AF3318663A0F - - -B3238EE1-EC39-4BAF-876F-5A8DE22A7E4F -0 - -1352D98F-2A9C-42AA-AE82-2E68BA514F02 -D86B0751-A544-42AE-AAA6-6E32C602F706 -Entities::Entity 'Customer' - - -99B5B7BB-436C-4EE3-A464-F8D3B9025BD8 -0 - -98A9FBE8-8157-4CA6-B66B-E73E846E985B -040810A2-4B62-45C1-9C8B-5EABC249838B -Entities::Entity 'Customer'::Identifiers::Identifier 'Customer.PK_CUSTOMER' - - - - - -1FB2EA31-0546-43DE-9209-0DB2492D8DE8 -0 - -071EB08F-6D7D-428D-BBB0-14B5B9D81201 -E1690028-F3DD-4986-B6CB-1509A400BE2B -Entities::Entity 'Customer'::Attributes::Entity Attribute 'Customer.ID' - - - - - -661C159C-A098-41DC-8435-47A433A1156F -0 - -E15BA61C-22E8-480F-8854-32B66E2001C0 -E1690028-F3DD-4986-B6CB-1509A400BE2B -Entities::Entity 'Customer'::Attributes::Entity Attribute 'Customer.FIRSTNAME' - - - - - -DA95A914-B5E0-4796-A778-9A5205C5B646 -0 - -B47EB33C-682A-4199-845A-C2B47D086F72 -E1690028-F3DD-4986-B6CB-1509A400BE2B -Entities::Entity 'Customer'::Attributes::Entity Attribute 'Customer.LASTNAME' - - - - - -0A90A221-D1F5-44A4-87C8-5F906DD5B55F -0 - -99AAF098-A167-4D36-90B7-54A482421D21 -E1690028-F3DD-4986-B6CB-1509A400BE2B -Entities::Entity 'Customer'::Attributes::Entity Attribute 'Customer.CITY' - - - - - -9C026F36-EFF1-4D98-9F17-D67AD160A53F -0 - -95EA4A3A-B2E7-4F50-AEA3-8209C2AC0C46 -E1690028-F3DD-4986-B6CB-1509A400BE2B -Entities::Entity 'Customer'::Attributes::Entity Attribute 'Customer.COUNTRY' - - - - - -3DB59E91-A04B-4CEA-AFD0-5E85E8D6AADA -0 - -117618E5-A065-4822-86E2-61CAA2E89AF9 -E1690028-F3DD-4986-B6CB-1509A400BE2B -Entities::Entity 'Customer'::Attributes::Entity Attribute 'Customer.PHONE' - - - - - - - - - - -A7FDCE2D-A292-4E0D-8C16-0F5D8274D4C9 -0 - -60EC35C7-6DB5-44B9-92BD-A08887CA9005 -D86B0751-A544-42AE-AAA6-6E32C602F706 -Entities::Entity 'SalesOrder' - - -9E8140BB-9724-4ED4-A5C8-2B9E219C289F -0 - -6C2E6CC8-BBAF-4C6F-9CFC-24A684D313BB -040810A2-4B62-45C1-9C8B-5EABC249838B -Entities::Entity 'SalesOrder'::Identifiers::Identifier 'SalesOrder.PK_ORDER' - - - - - -38348DF0-96CC-43D6-84B4-55AA1CB8B65F -0 - -3FA0D49D-8A10-4769-B683-85960E9F353F -E1690028-F3DD-4986-B6CB-1509A400BE2B -Entities::Entity 'SalesOrder'::Attributes::Entity Attribute 'SalesOrder.ID' - - - - - -F3E14A2D-CAB8-45BB-B2BB-C0D3B4B5A5BF -0 - -FE17C4F0-5C1E-4E50-A96E-D045E816ACAF -E1690028-F3DD-4986-B6CB-1509A400BE2B -Entities::Entity 'SalesOrder'::Attributes::Entity Attribute 'SalesOrder.ORDERDATE' - - - - - -7D13C262-8BD5-4439-A23F-7EA836779CAA -0 - -485471FA-F386-4401-BDE8-7447D453FEBF -E1690028-F3DD-4986-B6CB-1509A400BE2B -Entities::Entity 'SalesOrder'::Attributes::Entity Attribute 'SalesOrder.ORDERNUMBER' - - - - - -BC501E7A-1F4B-44E8-8EB3-900B0D12A3CA -0 - -EC1D061C-A80C-45FC-9210-404133B3EAC3 -E1690028-F3DD-4986-B6CB-1509A400BE2B -Entities::Entity 'SalesOrder'::Attributes::Entity Attribute 'SalesOrder.CUSTOMERID' - - - - - -8C96A825-FEFC-4926-9C24-B59ED61A3EDF -0 - -493F6607-B532-4EA0-AD55-9161F8A30CAC -E1690028-F3DD-4986-B6CB-1509A400BE2B -Entities::Entity 'SalesOrder'::Attributes::Entity Attribute 'SalesOrder.TOTALAMOUNT' - - - - - - - - - - -D1A67288-025B-44C1-A0DC-FEF58E954559 -1680509420 -MooOthman -A4C4F964-E554-47A4-AA61-05E892D94E26 -362D41EC-9D82-11D1-8E5D-444553540000 -ExtendedModelDefinitions::Shortcut of extension 'Model Driven Data Engineering - Logical Data Model Extension (MDDE)' - - - - - - - - - - - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Entities/Customer.xml b/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Entities/Customer.xml deleted file mode 100644 index c0a03b6..0000000 --- a/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Entities/Customer.xml +++ /dev/null @@ -1,111 +0,0 @@ - -950A3BCF-9922-465C-90C0-258A1ED2A9A6 -Customer -Customer -1680508855 -MooOthman -ORG {F64B5547-8E05-465A-AD15-AFD8C2732AE4} -DAT 1680508855 - - -ExampleTableType - - - - -90E183FC-5E88-419B-B5F6-19FDAA2B4E5D -PK_Customer -PK_CUSTOMER -1680508855 -MooOthman -ORG {0C016848-384F-4F3D-81DD-65D929BCA912} -DAT 1680508855 - - - - - - - - - - -65217156-B74C-404C-971B-0B99A90498BD -Id -ID -1680508855 -MooOthman -ORG {E82A2CC8-DEF7-47F5-AA9B-0E1AF641855E} -DAT 1680508903 -ORG {A1016A0D-D621-429B-BF65-24F5A5A60CAA} -DAT 1680508855 -I -1 - - -192B0C76-A8B2-4BB4-B6AA-AC2303C80107 -FirstName -FIRSTNAME -1680508855 -MooOthman -ORG {1CA42F5C-FF9B-4E3C-ACE6-6C35284B4F5C} -DAT 1680508903 -ORG {B75751AC-CF60-4D88-B346-A888F9B65422} -DAT 1680508855 -VA50 -50 - - -49A8ED53-8A6C-4173-B598-22A7A66A0F14 -LastName -LASTNAME -1680508855 -MooOthman -ORG {B20EFC17-E74F-4A74-9830-CBAD7BD96FC6} -DAT 1680508903 -ORG {63918C4F-EA12-4FDC-97EE-DB23C42D888C} -DAT 1680508855 -VA100 -100 - - -7F557A97-6B3F-486C-BAB3-61808AAB7E19 -City -CITY -1680508855 -MooOthman -ORG {00EBF066-B374-42C1-B3C1-2DBACF0F839A} -DAT 1680508903 -ORG {01D55B0A-481F-4FD4-BA69-6A1587E4F87C} -DAT 1680508855 -VA50 -50 - - -AADDD8B8-7604-4306-83D1-C21FCD568683 -Country -COUNTRY -1680508855 -MooOthman -ORG {78320D09-45E0-43E0-B463-B1E9C3077601} -DAT 1680508903 -ORG {64D2F2D7-F997-47D2-8AAD-C191B1DE960A} -DAT 1680508855 -VA3 -3 - - -E1C5674D-5495-4A30-85A8-F28A8F9025CC -Phone -PHONE -1680508855 -MooOthman -ORG {14EDF65B-AB03-4DB4-858D-CEA5958C48ED} -DAT 1680508903 -ORG {E8F86F4E-5C1D-4F0A-98CA-EE6DB630A025} -DAT 1680508855 -VA20 -20 - - - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Entities/SalesOrder.xml b/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Entities/SalesOrder.xml deleted file mode 100644 index cb3f484..0000000 --- a/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Entities/SalesOrder.xml +++ /dev/null @@ -1,92 +0,0 @@ - -8EF12F3C-6B5B-40A9-9B43-9DEEF9960F3D -SalesOrder -SalesOrder -1680508855 -MooOthman -ORG {D5ADD5CF-510D-4F42-8CE0-9F850A78FB41} -DAT 1680508855 - - -79F70219-E333-40CA-9580-1837D8E3C5A3 -PK_Order -PK_ORDER -1680508855 -MooOthman -ORG {9B4DC8F0-C764-4C69-BF51-0963FF30AE97} -DAT 1680508855 - - - - - - - - - - -1D0A5536-CD07-4B8C-B327-636460B1D24C -Id -ID -1680508855 -MooOthman -ORG {8017615D-E34E-4738-950F-8FDDA0D33F1E} -DAT 1680508903 -ORG {49257E04-0334-4850-9F6B-423B4921A7A6} -DAT 1680508855 -I -1 - - -47592A46-E48E-44A3-A331-092601FEDEF8 -OrderDate -ORDERDATE -1680508855 -MooOthman -ORG {2F004CE3-801C-4543-AF09-6EA7641BA2A5} -DAT 1680508903 -ORG {56A92EE6-55C9-4243-A0E1-B24978B86E4D} -DAT 1680508855 -DT - - -8B10812D-8501-4131-A28F-EEF1D55E1649 -OrderNumber -ORDERNUMBER -1680508855 -MooOthman -ORG {90EFA81B-229D-49BD-ACC7-E8FB03D1B7CD} -DAT 1680508903 -ORG {A1249EC3-2A7A-4FBB-9FC4-DEC00F3D0598} -DAT 1680508855 -VA50 -50 - - -73E5895E-A53A-4A98-8388-9DDB762F02D7 -CustomerId -CUSTOMERID -1680508855 -MooOthman -ORG {5A733804-BE24-4B45-9B61-D96453AAE367} -DAT 1680508903 -ORG {53C34CE9-C822-4DB3-B76B-821D7F9BB7EB} -DAT 1680508855 -I - - -A84C3629-96DA-4617-A81A-6AC1BA2D5046 -TotalAmount -TOTALAMOUNT -1680508855 -MooOthman -ORG {96698163-CD6C-4637-B0FD-3D1C464D0CEE} -DAT 1680508903 -ORG {E5A91AEB-BE4A-45AF-AFCA-BC6E3F199BAC} -DAT 1680508855 -DC12,2 -12 -2 - - - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/ExtendedModelDefinitions/Shortcuts/MDDE_LDM.xml b/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/ExtendedModelDefinitions/Shortcuts/MDDE_LDM.xml deleted file mode 100644 index ee5cb6e..0000000 --- a/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/ExtendedModelDefinitions/Shortcuts/MDDE_LDM.xml +++ /dev/null @@ -1,8 +0,0 @@ - -13573CAB-C0E7-45FC-808B-9C0D4A25B293 -Model Driven Data Engineering - Logical Data Model Extension (MDDE) -MDDE_LDM - -1626A879-DBAC-4E54-8A36-28FCB761FF3A -186C8AC3-D3DC-11D3-881C-00508B03C75C - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Model/a_ModelOptionsText.xml b/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Model/a_ModelOptionsText.xml deleted file mode 100644 index 53f02ae..0000000 --- a/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Model/a_ModelOptionsText.xml +++ /dev/null @@ -1,388 +0,0 @@ -[ModelOptions] - -[ModelOptions\Logical options] -CaseSensitive=No -DisplayName=Yes -EnableTrans=No -UseTerm=No -EnableRequirements=No -EnableFullShortcut=Yes -SynchroCode=Yes -Notation=0 -RlshUnique=No -DefaultDttp= -DomnCopyDttp=Yes -DomnCopyChck=No -DomnCopyRule=No -DomnCopyExat=No -DomnCopyMand=No -DttpFullName=Yes -RlshMigrateDomain=Yes -RlshMigrateCheck=Yes -RlshMigrateRule=Yes -RlshMigrateExtd=Yes -RlshAllowInhrDivr=No -RlshAllowNN=No -RlshGenNN=No -FKNameTemplate=%.3:PARENT%_%ATTRIBUTE% -FKNameTemplateUsage=No -RlshAsstTmpl=Each %Entity1.Name%[CRLF].if %Entity1ToEntity2RoleMandatory%[CRLF] must[CRLF].else[CRLF] may[CRLF].endif[CRLF].if %Entity1ToEntity2Role%[CRLF] %.L:Entity1ToEntity2Role%[CRLF].else[CRLF] have[CRLF].endif[CRLF].if %Entity1ToEntity2RoleMaximumCardinality%==1[CRLF].if %Entity1ToEntity2RoleMandatory%[CRLF] one and only one[CRLF].else[CRLF] at most one[CRLF].endif[CRLF].else[CRLF] one or more[CRLF].endif[CRLF].if %Entity1%==%Entity2%[CRLF] other[CRLF].endif[CRLF] %Entity2.Name%.[CRLF]Each %Entity2.Name%[CRLF].if %Entity2ToEntity1RoleMandatory%[CRLF] must[CRLF].else[CRLF] may[CRLF].endif[CRLF].if %Entity2ToEntity1Role%[CRLF] %.L:Entity2ToEntity1Role%[CRLF].else[CRLF] have[CRLF].endif[CRLF].if %Entity2ToEntity1RoleMaximumCardinality%==1[CRLF].if %Entity2ToEntity1RoleMandatory%[CRLF] one and only one[CRLF].else[CRLF] at most one[CRLF].endif[CRLF].else[CRLF] one or more[CRLF].endif[CRLF].if %Entity1%==%Entity2%[CRLF] other[CRLF].endif[CRLF] %Entity1.Name%. -RlshAsstExt= - -[ModelOptions\Logical options\NamingOptionsTemplates] - -[ModelOptions\Logical options\ClssNamingOptions] - -[ModelOptions\Logical options\ClssNamingOptions\FILO] - -[ModelOptions\Logical options\ClssNamingOptions\FILO\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar="\/:*?<>|" -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\FILO\Code] -Template= -MaxLen=254 -Case=U -ValidChar='a'-'z','A'-'Z','0'-'9',"_. " -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\FRMEOBJ] - -[ModelOptions\Logical options\ClssNamingOptions\FRMEOBJ\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\FRMEOBJ\Code] -Template= -MaxLen=254 -Case=U -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\FRMELNK] - -[ModelOptions\Logical options\ClssNamingOptions\FRMELNK\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\FRMELNK\Code] -Template= -MaxLen=254 -Case=U -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\AREA] - -[ModelOptions\Logical options\ClssNamingOptions\AREA\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\AREA\Code] -Template= -MaxLen=254 -Case=U -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\DefaultClass] - -[ModelOptions\Logical options\ClssNamingOptions\DefaultClass\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\DefaultClass\Code] -Template= -MaxLen=254 -Case=M -ValidChar='a'-'z','A'-'Z','0'-'9',"_","@" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMPCKG] - -[ModelOptions\Logical options\ClssNamingOptions\LDMPCKG\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMPCKG\Code] -Template= -MaxLen=254 -Case=U -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMDOMN] - -[ModelOptions\Logical options\ClssNamingOptions\LDMDOMN\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMDOMN\Code] -Template= -MaxLen=128 -Case=M -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMENTT] - -[ModelOptions\Logical options\ClssNamingOptions\LDMENTT\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMENTT\Code] -Template= -MaxLen=128 -Case=M -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMPROP] - -[ModelOptions\Logical options\ClssNamingOptions\LDMPROP\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMPROP\Code] -Template= -MaxLen=254 -Case=U -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMIDTF] - -[ModelOptions\Logical options\ClssNamingOptions\LDMIDTF\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMIDTF\Code] -Template= -MaxLen=254 -Case=U -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMRLSH] - -[ModelOptions\Logical options\ClssNamingOptions\LDMRLSH\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMRLSH\Code] -Template= -MaxLen=254 -Case=M -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMINHR] - -[ModelOptions\Logical options\ClssNamingOptions\LDMINHR\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMINHR\Code] -Template= -MaxLen=254 -Case=M -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Generate] - -[ModelOptions\Generate\Cdm] -CheckModel=Yes -SaveLinks=Yes -NameToCode=No - -[ModelOptions\Generate\Pdm] -CheckModel=Yes -SaveLinks=Yes -NameToCode=No -BuildTrgr=No -TablePrefix= -IndxPKName=%TABLE%_PK -IndxAKName=%TABLE%_AK -IndxFKName=%REFR%_FK -IndxThreshold= \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Model/a_PackageOptionsText.xml b/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Model/a_PackageOptionsText.xml deleted file mode 100644 index d1532f7..0000000 --- a/decomposed/models/ExampleDWH/TargetModels/EXAMPLESOURCE/FullShortcutModel/EXAMPLESOURCE/Model/a_PackageOptionsText.xml +++ /dev/null @@ -1,9 +0,0 @@ -[FolderOptions] - -[FolderOptions\Common] -GenerationCheckModel=Yes -GenerationPath= -GenerationOptions= -GenerationTasks= -GenerationTargets= -GenerationSelections= \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/TargetModels/MDDE_LDM.xml b/decomposed/models/ExampleDWH/TargetModels/MDDE_LDM.xml index 684c876..6cb1af6 100644 --- a/decomposed/models/ExampleDWH/TargetModels/MDDE_LDM.xml +++ b/decomposed/models/ExampleDWH/TargetModels/MDDE_LDM.xml @@ -8,8 +8,6 @@ 1626A879-DBAC-4E54-8A36-28FCB761FF3A 186C8AC3-D3DC-11D3-881C-00508B03C75C - - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/TargetModels/REFERENCE/REFERENCE.xml b/decomposed/models/ExampleDWH/TargetModels/REFERENCE.xml similarity index 51% rename from decomposed/models/ExampleDWH/TargetModels/REFERENCE/REFERENCE.xml rename to decomposed/models/ExampleDWH/TargetModels/REFERENCE.xml index f2aa57c..290cccf 100644 --- a/decomposed/models/ExampleDWH/TargetModels/REFERENCE/REFERENCE.xml +++ b/decomposed/models/ExampleDWH/TargetModels/REFERENCE.xml @@ -11,16 +11,4 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/Entities/Country.xml b/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/Entities/Country.xml deleted file mode 100644 index 77eebc4..0000000 --- a/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/Entities/Country.xml +++ /dev/null @@ -1,70 +0,0 @@ - -A9BA13D2-5DC4-4EB0-A746-1B4CB8C96309 -Country -Country -1680557963 -MooOthman -ORG {65AE4CC4-CCEC-42BE-A0F0-1DEFDD241F00} -DAT 1680508822 - - -C3530DD1-0E31-41A4-9B3B-9710FD6D124E -PK_Country -PK_COUNTRY -1680557963 -MooOthman -ORG {B3144B65-C58F-4476-871F-7F6176ADE977} -DAT 1680508822 -ATT NAME -ATT CODE - - - - - - - - - - -6FFEFD65-F477-4959-A655-AE28E22C22E6 -Country_Code -COUNTRY_CODE -1680557963 -MooOthman -ORG {A55D7823-E7AF-427D-BC77-83DB4CAF7D8A} -DAT 1680508903 -ORG {F5935F59-F66B-49CB-850F-B5CC16FF725C} -DAT 1680508822 -VMBT3 -3 -1 - - -C4FC8995-3C31-431C-99BB-D31D662F3C2A -Country_Description -COUNTRY_DESCRIPTION -1680557963 -MooOthman -ORG {532BF904-78B3-4D9C-89DD-F9F2550F64C8} -DAT 1680508903 -ORG {ED0C2462-3461-4E78-AF44-2D3A548A91A8} -DAT 1680508822 -VMBT100 -100 - - -0B8662BE-7A79-4312-BBFA-AB42C425F5B3 -Country_Continent -COUNTRY_CONTINENT -1680557963 -MooOthman -ORG {9FA8DF63-ABA6-44F5-8EFB-D7A4757E2B1E} -DAT 1680508903 -ORG {452D1D97-AB47-4421-9065-EF51ED80E2D0} -DAT 1680508822 -VMBT100 -100 - - - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/ExtendedModelDefinitions/Shortcuts/MDDE_LDM.xml b/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/ExtendedModelDefinitions/Shortcuts/MDDE_LDM.xml deleted file mode 100644 index 038b075..0000000 --- a/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/ExtendedModelDefinitions/Shortcuts/MDDE_LDM.xml +++ /dev/null @@ -1,8 +0,0 @@ - -FDFB400C-481A-41AC-8CC3-DB72710FC4E8 -Model Driven Data Engineering - Logical Data Model Extension (MDDE) -MDDE_LDM - -1626A879-DBAC-4E54-8A36-28FCB761FF3A -186C8AC3-D3DC-11D3-881C-00508B03C75C - \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/Model/a_ModelOptionsText.xml b/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/Model/a_ModelOptionsText.xml deleted file mode 100644 index 53f02ae..0000000 --- a/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/Model/a_ModelOptionsText.xml +++ /dev/null @@ -1,388 +0,0 @@ -[ModelOptions] - -[ModelOptions\Logical options] -CaseSensitive=No -DisplayName=Yes -EnableTrans=No -UseTerm=No -EnableRequirements=No -EnableFullShortcut=Yes -SynchroCode=Yes -Notation=0 -RlshUnique=No -DefaultDttp= -DomnCopyDttp=Yes -DomnCopyChck=No -DomnCopyRule=No -DomnCopyExat=No -DomnCopyMand=No -DttpFullName=Yes -RlshMigrateDomain=Yes -RlshMigrateCheck=Yes -RlshMigrateRule=Yes -RlshMigrateExtd=Yes -RlshAllowInhrDivr=No -RlshAllowNN=No -RlshGenNN=No -FKNameTemplate=%.3:PARENT%_%ATTRIBUTE% -FKNameTemplateUsage=No -RlshAsstTmpl=Each %Entity1.Name%[CRLF].if %Entity1ToEntity2RoleMandatory%[CRLF] must[CRLF].else[CRLF] may[CRLF].endif[CRLF].if %Entity1ToEntity2Role%[CRLF] %.L:Entity1ToEntity2Role%[CRLF].else[CRLF] have[CRLF].endif[CRLF].if %Entity1ToEntity2RoleMaximumCardinality%==1[CRLF].if %Entity1ToEntity2RoleMandatory%[CRLF] one and only one[CRLF].else[CRLF] at most one[CRLF].endif[CRLF].else[CRLF] one or more[CRLF].endif[CRLF].if %Entity1%==%Entity2%[CRLF] other[CRLF].endif[CRLF] %Entity2.Name%.[CRLF]Each %Entity2.Name%[CRLF].if %Entity2ToEntity1RoleMandatory%[CRLF] must[CRLF].else[CRLF] may[CRLF].endif[CRLF].if %Entity2ToEntity1Role%[CRLF] %.L:Entity2ToEntity1Role%[CRLF].else[CRLF] have[CRLF].endif[CRLF].if %Entity2ToEntity1RoleMaximumCardinality%==1[CRLF].if %Entity2ToEntity1RoleMandatory%[CRLF] one and only one[CRLF].else[CRLF] at most one[CRLF].endif[CRLF].else[CRLF] one or more[CRLF].endif[CRLF].if %Entity1%==%Entity2%[CRLF] other[CRLF].endif[CRLF] %Entity1.Name%. -RlshAsstExt= - -[ModelOptions\Logical options\NamingOptionsTemplates] - -[ModelOptions\Logical options\ClssNamingOptions] - -[ModelOptions\Logical options\ClssNamingOptions\FILO] - -[ModelOptions\Logical options\ClssNamingOptions\FILO\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar="\/:*?<>|" -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\FILO\Code] -Template= -MaxLen=254 -Case=U -ValidChar='a'-'z','A'-'Z','0'-'9',"_. " -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\FRMEOBJ] - -[ModelOptions\Logical options\ClssNamingOptions\FRMEOBJ\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\FRMEOBJ\Code] -Template= -MaxLen=254 -Case=U -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\FRMELNK] - -[ModelOptions\Logical options\ClssNamingOptions\FRMELNK\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\FRMELNK\Code] -Template= -MaxLen=254 -Case=U -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\AREA] - -[ModelOptions\Logical options\ClssNamingOptions\AREA\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\AREA\Code] -Template= -MaxLen=254 -Case=U -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\DefaultClass] - -[ModelOptions\Logical options\ClssNamingOptions\DefaultClass\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\DefaultClass\Code] -Template= -MaxLen=254 -Case=M -ValidChar='a'-'z','A'-'Z','0'-'9',"_","@" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMPCKG] - -[ModelOptions\Logical options\ClssNamingOptions\LDMPCKG\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMPCKG\Code] -Template= -MaxLen=254 -Case=U -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMDOMN] - -[ModelOptions\Logical options\ClssNamingOptions\LDMDOMN\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMDOMN\Code] -Template= -MaxLen=128 -Case=M -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMENTT] - -[ModelOptions\Logical options\ClssNamingOptions\LDMENTT\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMENTT\Code] -Template= -MaxLen=128 -Case=M -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMPROP] - -[ModelOptions\Logical options\ClssNamingOptions\LDMPROP\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMPROP\Code] -Template= -MaxLen=254 -Case=U -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMIDTF] - -[ModelOptions\Logical options\ClssNamingOptions\LDMIDTF\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMIDTF\Code] -Template= -MaxLen=254 -Case=U -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMRLSH] - -[ModelOptions\Logical options\ClssNamingOptions\LDMRLSH\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMRLSH\Code] -Template= -MaxLen=254 -Case=M -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMINHR] - -[ModelOptions\Logical options\ClssNamingOptions\LDMINHR\Name] -Template= -MaxLen=254 -Case=M -ValidChar= -InvldChar= -AllValid=Yes -NoAccent=No -DefaultChar=_ -Script=.convert_name(%Name%,"_") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Logical options\ClssNamingOptions\LDMINHR\Code] -Template= -MaxLen=254 -Case=M -ValidChar='a'-'z','A'-'Z','0'-'9',"_" -InvldChar= -AllValid=No -NoAccent=Yes -DefaultChar=_ -Script=.convert_code(%Code%," ") -ConvTable= -ConvTablePath=%_HOME%\Resource Files\Conversion Tables - -[ModelOptions\Generate] - -[ModelOptions\Generate\Cdm] -CheckModel=Yes -SaveLinks=Yes -NameToCode=No - -[ModelOptions\Generate\Pdm] -CheckModel=Yes -SaveLinks=Yes -NameToCode=No -BuildTrgr=No -TablePrefix= -IndxPKName=%TABLE%_PK -IndxAKName=%TABLE%_AK -IndxFKName=%REFR%_FK -IndxThreshold= \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/Model/a_PackageOptionsText.xml b/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/Model/a_PackageOptionsText.xml deleted file mode 100644 index d1532f7..0000000 --- a/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/Model/a_PackageOptionsText.xml +++ /dev/null @@ -1,9 +0,0 @@ -[FolderOptions] - -[FolderOptions\Common] -GenerationCheckModel=Yes -GenerationPath= -GenerationOptions= -GenerationTasks= -GenerationTargets= -GenerationSelections= \ No newline at end of file diff --git a/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/REFERENCE.xml b/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/REFERENCE.xml deleted file mode 100644 index 1f29a7d..0000000 --- a/decomposed/models/ExampleDWH/TargetModels/REFERENCE/FullShortcutModel/REFERENCE/REFERENCE.xml +++ /dev/null @@ -1,102 +0,0 @@ - -715799B0-B0B6-4F9B-972A-EEEDFE064E8A -Reference -REFERENCE -1680508819 -MooOthman -ORG {85AEC6F1-42A5-4718-931A-1E6438DB4A51} -DAT 1680508822 -ATT MOPT -ATT FOPT -ATT SMDC - - - - - - - - - - -40AE21B9-4295-4CE6-BAF1-0C20E1CA6702 -0 - -E0D7FF56-7977-4D8F-A64B-BB6D985687E7 -5F45F978-C4F3-4E35-A3FC-AF3318663A0F - - -BB7BFD24-4523-4405-B43C-BFD93D898D24 -1680509282 -MooOthman -799FB8E9-7272-480E-8BAF-38025AFB6F05 -362D41EC-9D82-11D1-8E5D-444553540000 -ExtendedModelDefinitions::Shortcut of extension 'Model Driven Data Engineering - Logical Data Model Extension (MDDE)' - - - - - -3E2B5E57-F725-4F68-B614-21324DD2E1CE -1680557963 -MooOthman -BC120FD8-8AF8-4F3F-86C8-474D1B5B207F -D86B0751-A544-42AE-AAA6-6E32C602F706 -Entities::Entity 'Country' - - -EB109E30-1B67-485B-87D1-1989B5E9141E -1680557963 -MooOthman -E8F4ACA6-7532-4525-86F4-0F468CCE212D -040810A2-4B62-45C1-9C8B-5EABC249838B -Entities::Entity 'Country'::Identifiers::Identifier 'Country.PK_COUNTRY' - - - - - -9C301B62-8C82-4AE2-B472-4C3C0627FF00 -1680557963 -MooOthman -93CCB3E8-5C2F-4C63-A061-68CAE43ACFE2 -E1690028-F3DD-4986-B6CB-1509A400BE2B -Entities::Entity 'Country'::Attributes::Entity Attribute 'Country.COUNTRY_CODE' - - - - - -5E555B18-512D-4C0D-94AB-766B36C55395 -1680557963 -MooOthman -3B30B067-59BC-4062-9C19-166AB3C2179C -E1690028-F3DD-4986-B6CB-1509A400BE2B -Entities::Entity 'Country'::Attributes::Entity Attribute 'Country.COUNTRY_DESCRIPTION' - - - - - -B23AE5B9-028B-4892-8E3D-F2010A2FFABB -1680557963 -MooOthman -A31CD79D-0ACE-484B-AFFD-77BFF4707757 -E1690028-F3DD-4986-B6CB-1509A400BE2B -Entities::Entity 'Country'::Attributes::Entity Attribute 'Country.COUNTRY_CONTINENT' - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/decomposed/models/ExampleSource/ExampleSource.ldm b/decomposed/models/ExampleSource/ExampleSource.ldm index 78c5041..a1ce2ec 100644 --- a/decomposed/models/ExampleSource/ExampleSource.ldm +++ b/decomposed/models/ExampleSource/ExampleSource.ldm @@ -17,8 +17,18 @@ DAT 1680508855 ATT MOPT ATT FOPT -ATT SMDC +ATT SMDC +ATT OBJEXA + + +false +false +false +false +false + + diff --git a/decomposed/models/Reference/Reference.ldm b/decomposed/models/Reference/Reference.ldm index b8689e9..8ca709d 100644 --- a/decomposed/models/Reference/Reference.ldm +++ b/decomposed/models/Reference/Reference.ldm @@ -17,8 +17,18 @@ DAT 1680508822 ATT MOPT ATT FOPT -ATT SMDC +ATT SMDC +ATT OBJEXA + + +false +false +false +false +false + + diff --git a/manual/Business rule.md b/manual/Business rule.md index b49fe5b..7842bd0 100644 --- a/manual/Business rule.md +++ b/manual/Business rule.md @@ -213,6 +213,10 @@ These mappings deviate from normal mappings a bit. Custom business rule mappings 1. To add examples for the mapping, please follow the standard [Examples](./Mapping.md#examples) instructions. ![Custom business rule - Mapping - Examples](img/custom_business_rule_mapping_examples.png) + +# Enabling/Disabling Business rules +The MDDE extension has the option to enable/disable business rules at a model level. Go to [MDDE Model Configuration](./MDDE%20Model%20configuration.md) for more information about this. + *** [Go back to main modeling page](./README.md) \ No newline at end of file diff --git a/manual/MDDEModelConfiguration.md b/manual/MDDEModelConfiguration.md new file mode 100644 index 0000000..21df859 --- /dev/null +++ b/manual/MDDEModelConfiguration.md @@ -0,0 +1,42 @@ +> [Manual](./README.md) > MDDE Model Configuration + +# MDDE Model Configuration + +This file describes all the possible configuration settings that can be changed at model level. These possibilities include enabling/disabling business rule features and a configuring the XML export of the MDDE extension. + +> **Note**: +> These configuration properties are available on model level. You can access the configuration by right-clicking on the model, and click on 'Properties'. In the new dialog window go the the 'Configuration (MDDE)' tab. + +## Enable/Disable Business Rule features + +On the 'Configuration (MDDE)' tab there is the is a section named 'Enable/Disable Business Rule features' to specify which types of business rules are allowed in the model. The following business rules can be enabled/disabled: + +- Pivot Business Rule +- Filter Business Rule +- Aggregate Business Rule +- Scalar Business Rule +- Custom Business Rule + +![Business Rules Configuration](img/model_mdde_configuration_business_rule_features.png) + +See the explanation of the business rules [here.](./Business%20rule.md) + +## XML Export + +On the 'Configuration (MDDE)' tab there is the is a section named 'XML Export' where you can configure to include/exclude certain information in the XML Export. On this tab you can tick the boxes for the metadata which you want to include in the XML export. + +> **Note**: +> It's adviced to only include information when needed, to keep the XML export as compact and fast as possible. + +![XML export configuration](img/model_mdde_configuration_xml_export.png) + +> **Note**: +> If you have multiple models and want to keep these settings in sync, it's adviced to create a model check for your project/organisation (in a project/organisation specific extension) to check and autofix these settings. + +### Export options + +The options are described in the table below. + +| Option | Description | +| -------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | +| SourceObject `<>` SQL Expression | Indicator whether to include the resolved SQL expression of expression business rules (like scalar and filter) in the XML export of source objects. | diff --git a/manual/ModelExportConfiguration.md b/manual/ModelExportConfiguration.md deleted file mode 100644 index cf7f0f6..0000000 --- a/manual/ModelExportConfiguration.md +++ /dev/null @@ -1,21 +0,0 @@ -> [Manual](./README.md) > Configure the XML export - -# Model Export Configuration - -The XML export of the MDDE extension can be configured to include/exclude certain information. These configuration properties are available on model level. You can access the configuration by right-clicking on the model, and click on 'Properties'. In the new dialog window go the the 'XML Export (MDDE)' tab. - -![Model export configuration](img/model_export_config.png) - -On this tab you can tick the boxes for the metadata which you want to include in the XML export. - -> **Note**: -> If you have multiple models and want to keep these settings in sync, it's adviced to create a model check for your project/organisation (in a project/organisation specific extension) to check and autofix these settings. - - - -## Export options -The options are described in the table below. - -| Option | Description | -|--- |--- | -| SourceObject `<>` SQL Expression | Indicator whether to include the resolved SQL expression of expression business rules (like scalar and filter) in the XML export of source objects. | \ No newline at end of file diff --git a/manual/README.md b/manual/README.md index 8d6f0da..f3459bf 100644 --- a/manual/README.md +++ b/manual/README.md @@ -7,17 +7,20 @@ For modeling data structures and lineage a PowerDesigner, extensions have been d In the following section the modeling options are explained per topic. ## Modeling capabilities + - [Business rule](./Business%20rule.md) - [Mapping](./Mapping.md) - [Model checks](./Model%20checks.md) ## Integration + - [PowerDeComposer](./PowerDeComposer.md) -- [Configure the XML export](./ModelExportConfiguration.md) +- [MDDE Model Configuration](./MDDEModelConfiguration.md) - [Extend the XML export](./ModelExportExtension.md) - [Project extension](./ProjectExtension.md) ## Other topics + - [Frequently asked questions](./FAQs.md) - [Modeling guidelines](./ModelingWiki.md) diff --git a/manual/img/model_mdde_configuration_business_rule_features.png b/manual/img/model_mdde_configuration_business_rule_features.png new file mode 100644 index 0000000000000000000000000000000000000000..8deadb5bbdeb74e94b5bbdfca138daf5048de1dd GIT binary patch literal 23411 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 literal 0 HcmV?d00001 diff --git a/manual/img/model_mdde_configuration_xml_export.png b/manual/img/model_mdde_configuration_xml_export.png new file mode 100644 index 0000000000000000000000000000000000000000..2d8fa9877f740503a4430958a0cfd6e2b93d2424 GIT binary patch literal 22725 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%0A_N)oo`elMDEkU>^L7LN!9hA`4# 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 literal 0 HcmV?d00001