@ind-rcg/modeler-sfdx-cli-plugin 246.1042.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +37 -0
- package/README.md +756 -0
- package/lib/commands/modeler/workspace/add.js +1 -0
- package/lib/commands/modeler/workspace/build.js +1 -0
- package/lib/commands/modeler/workspace/cleanup.js +1 -0
- package/lib/commands/modeler/workspace/create.js +1 -0
- package/lib/commands/modeler/workspace/package.js +1 -0
- package/lib/commands/modeler/workspace/refreshLocale.js +1 -0
- package/lib/commands/modeler/workspace/server/start.js +1 -0
- package/lib/commands/modeler/workspace/upgrade.js +1 -0
- package/lib/commands/modeler/workspace/utils/base64encode.js +1 -0
- package/lib/commands/modeler/workspace/utils/generateManifest.js +1 -0
- package/lib/commands/modeler/workspace/utils/migrateContracts.js +1 -0
- package/lib/commands/modeler/workspace/validate.js +1 -0
- package/lib/constants.js +1 -0
- package/lib/hooks/init/updateCheck.js +1 -0
- package/lib/model/buildStatus.js +1 -0
- package/lib/model/workspace.js +1 -0
- package/lib/model/workspaceCommand.js +1 -0
- package/lib/shared/commandBuilder.js +1 -0
- package/lib/shared/commandExecutor.js +1 -0
- package/lib/shared/commandOutput.js +1 -0
- package/lib/types/config.js +1 -0
- package/lib/types/errors.js +1 -0
- package/lib/types/messages.js +1 -0
- package/lib/types/package.js +1 -0
- package/lib/types/results.js +1 -0
- package/lib/utils/componentHelper.js +1 -0
- package/lib/utils/errorHelper.js +1 -0
- package/lib/utils/fsHelper.js +1 -0
- package/lib/utils/generateManifestHelper.js +1 -0
- package/lib/utils/messageHelper.js +1 -0
- package/lib/utils/packageHelper.js +1 -0
- package/lib/utils/serverHelper.js +1 -0
- package/lib/utils/templateEngine.js +1 -0
- package/lib/utils/templateHelper.js +1 -0
- package/lib/utils/updateChecker.js +1 -0
- package/lib/utils/validationHelper.js +1 -0
- package/messages/modeler-workspace-add.md +45 -0
- package/messages/modeler-workspace-build.md +29 -0
- package/messages/modeler-workspace-cleanup.md +17 -0
- package/messages/modeler-workspace-create.md +21 -0
- package/messages/modeler-workspace-package.md +21 -0
- package/messages/modeler-workspace-refresh-locale.md +27 -0
- package/messages/modeler-workspace-server-start.md +37 -0
- package/messages/modeler-workspace-upgrade.md +21 -0
- package/messages/modeler-workspace-utils-base64encode.md +25 -0
- package/messages/modeler-workspace-utils-generateManifest.md +15 -0
- package/messages/modeler-workspace-utils-migrateContracts.md +23 -0
- package/messages/modeler-workspace-validate.md +29 -0
- package/messages/modeler-workspace.md +19 -0
- package/oclif.manifest.json +429 -0
- package/package.json +108 -0
- package/templates/.gitignore.tmp +4 -0
- package/templates/README.md.tmp +77 -0
- package/templates/contractTemplates/#ModuleName#/BO/README.md +1 -0
- package/templates/contractTemplates/#ModuleName#/DS/README.md +1 -0
- package/templates/contractTemplates/#ModuleName#/PL/README.md +1 -0
- package/templates/contractTemplates/#ModuleName#/PR/README.md +1 -0
- package/templates/contractTemplates/#ModuleName#/TB/README.md +1 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/Bo${NAME}/Bo${NAME}.businessobject.xml +22 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/Bo${NAME}/Mv2/CreateAsync/Bo${NAME}.AfterCreateAsync.bl.js +54 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/Bo${NAME}/Mv2/CreateAsync/Bo${NAME}.BeforeCreateAsync.bl.js +56 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/Bo${NAME}/Mv2/DoValidateAsync/Bo${NAME}.AfterDoValidateAsync.bl.js +57 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/Bo${NAME}/Mv2/DoValidateAsync/Bo${NAME}.BeforeDoValidateAsync.bl.js +56 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/Bo${NAME}/Mv2/Initialize/Bo${NAME}.AfterInitialize.bl.js +54 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/Bo${NAME}/Mv2/Initialize/Bo${NAME}.BeforeInitialize.bl.js +54 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/Bo${NAME}/Mv2/LoadAsync/Bo${NAME}.AfterLoadAsync.bl.js +57 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/Bo${NAME}/Mv2/LoadAsync/Bo${NAME}.BeforeLoadAsync.bl.js +56 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/Bo${NAME}/Mv2/SaveAsync/Bo${NAME}.AfterSaveAsync.bl.js +57 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/Bo${NAME}/Mv2/SaveAsync/Bo${NAME}.BeforeSaveAsync.bl.js +56 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/BusinessObject.md +186 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/snippets/BusinessObjectListObjectsListObjectEventsSnipp.xml +3 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/snippets/BusinessObjectListObjectsListObjectSnipp.xml +1 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/snippets/BusinessObjectNestedObjectsNestedObjectSnipp.xml +1 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/snippets/BusinessObjectObjectLookupsObjectLookupEventsSnipp.xml +3 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/snippets/BusinessObjectObjectLookupsObjectLookupSnipp.xml +1 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/snippets/BusinessObjectSimplePropertiesSimplePropertyEventsSnipp.xml +3 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobject/snippets/BusinessObjectSimplePropertiesSimplePropertySnipp.xml +1 -0
- package/templates/contractTemplates/BO_BusinessObject/businessobjecthelper/snippets/BusinessObjectHelperSimplePropertiesSimplePropertySnipp.xml +1 -0
- package/templates/contractTemplates/BO_BusinessObject/validationmessages/ValidationMessage.md +38 -0
- package/templates/contractTemplates/BO_BusinessObject/validationmessages/snippets/ValidationMessagesValidationMessageSnipp.xml +1 -0
- package/templates/contractTemplates/DS_DataSource/DataSource.md +319 -0
- package/templates/contractTemplates/DS_DataSource/Ds${NAME}_sf.datasource.xml +11 -0
- package/templates/contractTemplates/DS_DataSource/snippets/DataSourceAttributesAttributeSnipp.xml +1 -0
- package/templates/contractTemplates/DS_DataSource/snippets/DataSourceAttributesDerivedAttributeSnipp.xml +1 -0
- package/templates/contractTemplates/DS_DataSource/snippets/DataSourceEntitiesEntityJoinSimpleJoinConditionAttributeSnipp.xml +1 -0
- package/templates/contractTemplates/DS_DataSource/snippets/DataSourceEntitiesEntityJoinSimpleJoinConditionLiteralSnipp.xml +1 -0
- package/templates/contractTemplates/DS_DataSource/snippets/DataSourceEntitiesEntitySnipp.xml +1 -0
- package/templates/contractTemplates/ExternalFiles/#Name#.externalfile.xml +6 -0
- package/templates/contractTemplates/LO_ListObject/Lo${NAME}/Li${NAME}.listitem.xml +5 -0
- package/templates/contractTemplates/LO_ListObject/Lo${NAME}/ListItem.md +114 -0
- package/templates/contractTemplates/LO_ListObject/Lo${NAME}/ListObject.md +354 -0
- package/templates/contractTemplates/LO_ListObject/Lo${NAME}/Lo${NAME}.listobject.xml +12 -0
- package/templates/contractTemplates/LO_ListObject/Lo${NAME}/Mv2/DoValidateAsync/Lo${NAME}.AfterDoValidateAsync.bl.js +57 -0
- package/templates/contractTemplates/LO_ListObject/Lo${NAME}/Mv2/DoValidateAsync/Lo${NAME}.BeforeDoValidateAsync.bl.js +56 -0
- package/templates/contractTemplates/LO_ListObject/Lo${NAME}/Mv2/LoadAsync/Lo${NAME}.AfterLoadAsync.bl.js +57 -0
- package/templates/contractTemplates/LO_ListObject/Lo${NAME}/Mv2/LoadAsync/Lo${NAME}.BeforeLoadAsync.bl.js +56 -0
- package/templates/contractTemplates/LO_ListObject/Lo${NAME}/Mv2/SaveAsync/Lo${NAME}.AfterSaveAsync.bl.js +57 -0
- package/templates/contractTemplates/LO_ListObject/Lo${NAME}/Mv2/SaveAsync/Lo${NAME}.BeforeSaveAsync.bl.js +56 -0
- package/templates/contractTemplates/LO_ListObject/snippets/ListItemSimplePropertiesSimplepropertySnipp.xml +1 -0
- package/templates/contractTemplates/LU_LookupObject/Lu${NAME}/LookupObject.md +97 -0
- package/templates/contractTemplates/LU_LookupObject/Lu${NAME}/Lu${NAME}.lookupobject.xml +12 -0
- package/templates/contractTemplates/LU_LookupObject/Lu${NAME}/Mv2/LoadAsync/Lu${NAME}.AfterLoadAsync.bl.js +57 -0
- package/templates/contractTemplates/LU_LookupObject/Lu${NAME}/Mv2/LoadAsync/Lu${NAME}.BeforeLoadAsync.bl.js +56 -0
- package/templates/contractTemplates/LU_LookupObject/snippets/LookupObjectSimplePropertiesSimplePropertySnipp.xml +1 -0
- package/templates/contractTemplates/PL_PrintLayout/#Name#PDF/#Name#PDF.printlayoutv2.xml +4 -0
- package/templates/contractTemplates/PR_Process_&_UI/#ModuleName#_#Name#/#ModuleName#_#Name#.userinterface.xml +4 -0
- package/templates/contractTemplates/PR_Process_&_UI/#ModuleName#_#Name#/#ModuleName#_#Name#Process.processflow.xml +12 -0
- package/templates/contractTemplates/PR_Process_&_UI/Process.md +790 -0
- package/templates/contractTemplates/PR_Process_&_UI/UserInterface.md +1545 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessBodyActionsActionConfirmSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessBodyActionsActionCreateSnipp.xml +7 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessBodyActionsActionDecisionSnipp.xml +5 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessBodyActionsActionEndSnipp.xml +5 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessBodyActionsActionLoadSnipp.xml +7 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessBodyActionsActionLogicSnipp.xml +7 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessBodyActionsActionMasterDetailSnipp.xml +24 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessBodyActionsActionNavigationSnipp.xml +8 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessBodyActionsActionPrintSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessBodyActionsActionPrintV2Snipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessBodyActionsActionProcessSnipp.xml +9 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessBodyActionsActionValidationSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessBodyActionsActionViewSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessEntryEntryActionsActionCreateSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessEntryEntryActionsActionLoadSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/Process/ProcessEntryEntryActionsActionLogicSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Attachment/AttachmentFolderInfoSectionSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Attachment/AttachmentFolderSnipp.xml +24 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Banner/BannerFilterSnipp.xml +19 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Banner/Banner_WithFilterSnipp.xml +25 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Banner/Banner_WithoutFilterSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BindingList/BindingsList_DecisionsSnipp.xml +9 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BindingList/BindingsList_GroupsSnipp.xml +11 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BindingList/BindingsList_ResultsSnipp.xml +13 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlEventsSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlHierarchyBindingsBindingAddItemSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlHierarchyBindingsBindingCategoriesSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlHierarchyBindingsBindingShowCategorySnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlHierarchyDataSourcesSnipp.xml +3 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlItemsBindingsBindingButtonSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlItemsBindingsBindingComboSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlItemsBindingsBindingDateSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlItemsBindingsBindingDecimalSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlItemsBindingsBindingDynamicSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlItemsBindingsBindingImageSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlItemsBindingsBindingStepperSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlItemsBindingsBindingStepper_CorrelationIdSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlItemsBindingsBindingTextSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlItemsBindingsResourceImageSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlItemsBindingsResourceLabelSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlItemsContextMenuSnipp.xml +13 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlSearchAttributesSnipp.xml +3 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/BreadCrumbControlSnipp.xml +22 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/BreadCrumbControl/MultiSelectionBreadCrumbControlSnipp.xml +23 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Calendar/CalendarControlEventsSnipp.xml +11 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Calendar/CalendarControlItemsBindingsBindingDateSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Calendar/CalendarControlItemsBindingsBindingDecimalSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Calendar/CalendarControlItemsBindingsBindingImageSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Calendar/CalendarControlItemsBindingsBindingLabelSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Calendar/CalendarControlItemsBindingsBindingTextSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Calendar/CalendarControlSettingsSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Calendar/CalendarControlSnipp.xml +8 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/CheckBox/CheckBoxEventsSnipp.xml +3 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/CheckBox/CheckBoxSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Cockpit/CockpitSectionsSnipp.xml +7 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/DataImportWizard/DataImportWizardSnipp.xml +12 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/DatePicker/DatePickerFieldSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/EmbededList/EmbeddedListSnipp.xml +8 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/EnhanceDecisionList/EnhancedDecisionListSnipp.xml +52 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/FastEntry/FastDataEntryGridSnipp.xml +69 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/GoogleMaps/GoogleMapDetailsSnipp.xml +20 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/GoogleMaps/GoogleMapSnipp.xml +7 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/GroupElement/GroupElementSnipp.xml +5 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/GroupedButtonList/GroupedButtonListEventsSnipp.xml +5 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/GroupedButtonList/GroupedButtonListFooterSnipp.xml +8 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/GroupedButtonList/GroupedButtonListSnipp.xml +8 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/GroupedList/GroupedListEventsSnipp.xml +7 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/GroupedList/GroupedListSnipp.xml +5 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/GroupedList/MultiSelectionGroupedListEventsSnipp.xml +7 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/GroupedList/MultiSelectionGroupedListSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/ImageButton/ImageButtonSnipp.xml +10 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/ImageSelector/ImageSelectorSnipp.xml +16 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/InputArea/InputAreaMultiLineSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/InputArea/InputAreaSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/ItemListLayout/ItemListLayout_ComplexSnipp.xml +13 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/ItemListLayout/ItemListLayout_GridSnipp.xml +10 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/ItemListLayout/ItemListLayout_TwoRowsSnipp.xml +8 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/LinkBar/LinkBarSnipp.xml +12 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Lookup/LookupEventSnipp.xml +3 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Lookup/LookupSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/MediaControl/MediaControlSnipp.xml +7 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/MediaListControl/MediaListControlBindingsBindingDescriptionSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/MediaListControl/MediaListControlBindingsBindingIsTaggedSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/MediaListControl/MediaListControlBindingsBindingMediaPathSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/MediaListControl/MediaListControlBindingsBindingTypeSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/MediaListControl/MediaListControlEventsSnipp.xml +4 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/MediaListControl/MediaListControlSnipp.xml +8 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Menu/LongPressMenuSnipp.xml +8 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Menu/MenuItemSnipp.xml +9 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Merger/MergerOneInputControlTwoButtonsMaxSnipp.xml +2 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Merger/MergerTwoInputControlsCombinedSnipp.xml +2 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Merger/MergerTwoInputControlsNoneSnipp.xml +2 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Merger/MergerTwoInputControlsOwnSnipp.xml +5 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/NoDataMessageSnipp.xml +9 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Page/MasterDetail/Page_MasterDetail_WithDetailGroupsSnipp.xml +43 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Page/MasterDetail/Page_MasterDetail_WithDetailListSnipp.xml +44 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Page/MasterDetail/Page_MasterDetail_WithDetailTabsSnipp.xml +61 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Page/MasterDetail/Page_MasterDetail_WithExtendedDetailSnipp.xml +44 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Page/SingleSection/Page_SingleSectionScreens_GroupedElementsSnipp.xml +33 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Page/SingleSection/Page_SingleSectionScreens_ListSnipp.xml +41 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Page/SingleSection/Page_SingleSectionScreens_TabSnipp.xml +39 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Page/SingleSection/Page_SingleSectionScreens_WizardSnipp.xml +34 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Page/SplitScreen/Page_SplitScreenSnipp.xml +27 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/SelectionBox/SelectionBoxBindingSnipp.xml +13 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/SelectionBox/SelectionBoxEventsSnipp.xml +4 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/SelectionBox/SelectionBoxToggleSnipp.xml +13 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/SignatureControl/SignatureControlBindingsBindingEditableParametersSnipp.xml +3 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/SignatureControl/SignatureControlBindingsBindingEditableSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/SignatureControl/SignatureControlBindingsBindingVisibleParametersSnipp.xml +3 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/SignatureControl/SignatureControlBindingsBindingVisibleSnipp.xml +1 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/SignatureControl/SignatureControlEditabilityRolesSnipp.xml +3 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/SignatureControl/SignatureControlSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/SignatureControl/SignatureControlVisibilityRolesSnipp.xml +3 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/Stepper/StepperSnipp.xml +7 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/TextBar/TextBarSnipp.xml +7 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/ThemeSelection/ThemeSelectionSnipp.xml +5 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/TimePicker/TimePickerFieldSnipp.xml +6 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/UserWelcomeSnipp.xml +24 -0
- package/templates/contractTemplates/PR_Process_&_UI/snippets/UI/VisitDetailsSnipp.xml +21 -0
- package/templates/contractTemplates/TB_Table/#Name#_T.temptable.xml +11 -0
- package/templates/contractTemplates/TB_Table/snippets/#Name#.dbtable.xml +10 -0
- package/templates/contractTemplates/TB_Table/snippets/dbtable/DBTablecolumnscolumnSnipp.xml +1 -0
- package/templates/contractTemplates/TB_Table/snippets/dbtable/DBTableindexesindexSnipp.xml +3 -0
- package/templates/contractTemplates/TB_Table/snippets/temptable/TempTableColumnsColumnIsDeletedSnipp.xml +1 -0
- package/templates/contractTemplates/TB_Table/snippets/temptable/TempTableColumnsColumnSnipp.xml +1 -0
- package/templates/contractTemplates/TB_Table/snippets/temptable/TempTableindexesindexSnipp.xml +3 -0
- package/templates/contractTemplates/UI_Plugins/#Name#UiPluginV2.uipluginv2.xml +16 -0
- package/templates/templateDefinitions.json +167 -0
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
///////////////////////////////////////////////////////////////////////////////////////////////
|
|
4
|
+
// IMPORTANT - DO NOT MODIFY AUTO-GENERATED CODE OR COMMENTS //
|
|
5
|
+
//Parts of this file are auto-generated and modifications to those sections will be //
|
|
6
|
+
//overwritten. You are allowed to modify: //
|
|
7
|
+
// - the tags in the jsDoc as described in the corresponding section //
|
|
8
|
+
// - the function name and its parameters //
|
|
9
|
+
// - the function body between the insertion ranges //
|
|
10
|
+
// "Add your customizing javaScript code below / above" //
|
|
11
|
+
// //
|
|
12
|
+
///////////////////////////////////////////////////////////////////////////////////////////////
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Use the following jsDoc tags to describe the BL function. Setting these tags will
|
|
16
|
+
* change the runtime behavior in the mobile app. The values specified in the tags determine
|
|
17
|
+
* the name of the contract file. The filename format is “@this . @function .bl.js”.
|
|
18
|
+
* For example, LoVisit.BeforeLoadAsync.bl.js
|
|
19
|
+
* -> function: Name of the businessLogic function.
|
|
20
|
+
* -> this: The LO, BO, or LU object that this function belongs to (and it is part of the filename).
|
|
21
|
+
* -> kind: Type of object this function belongs to. Most common value is "businessobject".
|
|
22
|
+
* -> async: If declared as async then the function should return a promise.
|
|
23
|
+
* -> param: List of parameters the function accepts. Make sure the parameters match the function signature.
|
|
24
|
+
* -> namespace: Use CORE or CUSTOM. If you are a Salesforce client or an implementation partner, always use CUSTOM to enable a seamless release upgrade.
|
|
25
|
+
* -> extends: Base class of the LO, BO, and LU objects that this function belongs to.
|
|
26
|
+
* -> maxRuntime: Maximum time this function is allowed to run, takes integer value in ms. If the max time is exceeded, error is logged.
|
|
27
|
+
* -> returns: Type and variable name in which the return value is stored.
|
|
28
|
+
* @function beforeSaveAsync
|
|
29
|
+
* @this Bo${NAME}
|
|
30
|
+
* @kind businessobject
|
|
31
|
+
* @async
|
|
32
|
+
* @namespace ${NAMESPACE}
|
|
33
|
+
* @param {Object} context
|
|
34
|
+
* @returns promise
|
|
35
|
+
*/
|
|
36
|
+
function beforeSaveAsync(context){
|
|
37
|
+
var me = this;
|
|
38
|
+
///////////////////////////////////////////////////////////////////////////////////////////////
|
|
39
|
+
// //
|
|
40
|
+
// Add your customizing javaScript code below. //
|
|
41
|
+
// //
|
|
42
|
+
///////////////////////////////////////////////////////////////////////////////////////////////
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
var promise=when.resolve(context);
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
///////////////////////////////////////////////////////////////////////////////////////////////
|
|
50
|
+
// //
|
|
51
|
+
// Add your customizing javaScript code above. //
|
|
52
|
+
// //
|
|
53
|
+
///////////////////////////////////////////////////////////////////////////////////////////////
|
|
54
|
+
|
|
55
|
+
return promise;
|
|
56
|
+
}
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
# Business Object (BO) Contract Definition
|
|
2
|
+
|
|
3
|
+
## Description
|
|
4
|
+
The Business Object Contract specifies the Business Objects used in the Mobility Application.
|
|
5
|
+
|
|
6
|
+
### Properties
|
|
7
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
8
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
9
|
+
|simpleEditorOnly|Boolean|yes (default='false')| If this attribute is set to true, the modeler prevents opening in tree editor. This might be necessary as an early adaptor of the modeler to use features of the framework before Editor support is available |none|
|
|
10
|
+
|name|String|no|Defines the name of the Business Object as well as the name of the JS File generated.| Name needs to be unique for all BOs in the Model|
|
|
11
|
+
|generateLoadMethod|Boolean|yes (default='true')|Specifies if a load method should be generated for this BO. If Property is 'False', the customizer|designer has to care for the implementation on his own (in the beforeLoadAsync or afterLoadAsync Method)||
|
|
12
|
+
|generateCreateMethod|Boolean|yes (default='true')|Specifies if a create method should be generated for this BO. If Property is 'False', the customizer|designer has to care for the implementation on his own (in the beforeLoadAsync or afterLoadAsync Method)||
|
|
13
|
+
|baseClass|String|yes|comboBox values: "FrameworkUser" or "[empty]".||
|
|
14
|
+
|
|
15
|
+
### Example
|
|
16
|
+
```
|
|
17
|
+
<BusinessObject name="BoOrder" generateLoadMethod="false" generateCreateMethod="false">
|
|
18
|
+
```
|
|
19
|
+
## Sections inside the BO contract
|
|
20
|
+
### DataSource
|
|
21
|
+
Each BusinessObject Contract has exactly one DataSource Node. It defines the relation to the Data Source. The only Attribute of the Data Source Node is the Name of the Data Source.
|
|
22
|
+
#### Properties
|
|
23
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
24
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
25
|
+
|name|String|no|Defines the name of the DataSource|DataSource with this name must exist in the model|
|
|
26
|
+
|
|
27
|
+
#### Example
|
|
28
|
+
```
|
|
29
|
+
<DataSource name="DsBoOrder" />
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### SimpleProperties
|
|
33
|
+
SimpleProperties contains a list of Simple Properties (1..N) of the Business Object. The SimpleProperties Node does not have any attributes, but it has a list of SimpleProperty SubNodes.
|
|
34
|
+
#### Properties
|
|
35
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
36
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
37
|
+
|name|String|no|Defines the name of the Simple Property|Must be unique in the List of simple Properties, nested Objects, nested Lookup, nested List Objects, Methods and Validations.|
|
|
38
|
+
|type|Name of a Domain or JavaScript Type (Boolean, Sting, Object,...)|no|Defines the Type of the Simple Property. Important for Validations and Constistency Checks.|Must be in the List of Domain Names or in a list of reserved JS Types.|
|
|
39
|
+
|id|Boolean|no|One of the Simple Properities has to be defined as id Property|Exactly one of the Simple Properties needs to be specified as ID Property|
|
|
40
|
+
|dataSourceProperty|String (List of DataSource.Attributes.Attribute.@name / DataSource.Attributes.PivotItems.PivotItem.Attribute.@name / DataSource.Attributes.PivotItems.PivotItem.PivotConstant.@name / DataSource.Attributes.PivotItems.PivotItem.PivotDerivedAttribute.@name / DataSource.Attributes.PivotItems.PivotItem.DateTimeAttribute.@dateName / DataSource.Attributes.PivotItems.PivotItem.DateTimeAttribute.@timeName / of the specified DataSource)|no|In current Contracts many Simple Properties are defined without valid dataSourceProperties (Attribute exists but content not valid)|DataSourceProperty must exist in the List of Attributes of the DataSource. Types must match|
|
|
41
|
+
|nullable|Boolean|yes| ability to specify emtpy nubmers| if true, must match related column in dbTable contract|
|
|
42
|
+
|blobPkeyField|String|yes||if set, depending property:blobTable|
|
|
43
|
+
|blobTable|String|yes||if set, depending property: blobPKeyField|
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
<SimpleProperty name="orderId" type="DomId" id="true" dataSourceProperty="orderId" />
|
|
48
|
+
<SimpleProperty name="commitDate" type="DomDate" dataSourceProperty="commitDate" />
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
#### Events [optional]
|
|
52
|
+
The Events node is optional and contains exactly one "Event" Subnode.
|
|
53
|
+
|
|
54
|
+
##### Event
|
|
55
|
+
An Event Node has no further Subnodes
|
|
56
|
+
###### Properties
|
|
57
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
58
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
59
|
+
|name|String|no|Fixed "onChanged" for simpleProperty Events|Fixed "onChanged" for simpleProperty Events|
|
|
60
|
+
|eventHandler|String|no|Defines the Method whoch should be called if the value of the simple property changes|Must be part of the defined Methods of this BO|
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
<SimpleProperty name="deliveryDate" type="DomDate" dataSourceProperty="deliveryDate">
|
|
64
|
+
<Events>
|
|
65
|
+
<Event name="onChanged" eventHandler="onHeaderDeliveryDateChanged" />
|
|
66
|
+
</Events>
|
|
67
|
+
</SimpleProperty>
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### NestedObjects
|
|
72
|
+
NestedObjects contains a list of nested Business Objects(0..N) of the Business Object. The NestedObjects Node does not have any attributes, but it has a list of NestedObject SubNodes.
|
|
73
|
+
#### NestedObject
|
|
74
|
+
A NestedObject Node has no further Subnodes
|
|
75
|
+
##### Properties
|
|
76
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
77
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
78
|
+
|name|String|no|Defines the name of the nested Business Object|Must be unique in the List of simple Properties, nested Objects, nested Lookup, nested List Objects, Methods and Validations.|
|
|
79
|
+
|objectClass|Name of the referenced BusinessObject|no|Defines the Type of the Business Object. Important for Validations and Constistency Checks|Must be in the List of Business Objects Names|
|
|
80
|
+
|dataSourceProperty|String (List of Simple Properties of the BO)|no|This Property is used as input to load the nested Busienss Object|dataSourceProperty is available as Simple Property of the Business Object|
|
|
81
|
+
|nestingProperty|String (List of Simple Properties of the nested Business Object)|no|This Property is used to load the nested Business Object|nestingProperty is available as SimpleProperty of the nested Business Object|
|
|
82
|
+
|
|
83
|
+
##### Example
|
|
84
|
+
```
|
|
85
|
+
<NestedObjects>
|
|
86
|
+
<NestedObject name="hurdleEvaluationHelper" objectClass="BoHurdleEvaluationHelper" dataSourceProperty="empty" nestingProperty="empty" />
|
|
87
|
+
</NestedObjects>
|
|
88
|
+
```
|
|
89
|
+
### ObjectLookups
|
|
90
|
+
ObjectLookups contains a list of Object Lookups (0..N) of the Business Object. The ObjectLookups Node does not have any attributes, but it has a list of ObjectLookup SubNodes.
|
|
91
|
+
#### ObjectLookup
|
|
92
|
+
A ObjectLookup Node has no further Subnodes
|
|
93
|
+
##### Properties
|
|
94
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
95
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
96
|
+
|name|String|no|Defines the name of the nested Object Lookup|Must be unique in the List of simple Properties, nested Objects, nested Lookup, nested List Objects, Methods and Validations.|
|
|
97
|
+
|objectClass|Name of the referenced LookupObjects|no|Defines the Type of the LookupObjects. Important for Validations and Constistency Checks.|Must be in the List of Lookup Objects Names|
|
|
98
|
+
|dataSourceProperty|String (List of Simple Properties of the BO)|no|This Property is used as input to load the Lookup Object|dataSourceProperty is available as Simple Property of the Business Object|
|
|
99
|
+
|lookupProperty|String (List of Simple Properties of the nested Lookup Object)|no|This Property is used to load the Lookup Object|lookupProperty is available as SimpleProperty of the nested Lookup Object|
|
|
100
|
+
##### Example
|
|
101
|
+
```
|
|
102
|
+
<ObjectLookups>
|
|
103
|
+
<ObjectLookup name="luOrderer" objectClass="LuOrderer" dataSourceProperty="ordererPKey" lookupProperty="pKey" />
|
|
104
|
+
</ObjectLookups>
|
|
105
|
+
```
|
|
106
|
+
### ListObjects
|
|
107
|
+
ListObjects contains a list of nested List Objects(0..N) of the Business Object. The ListObjects Node does not have any attributes, but it has a list of ListObject SubNodes.
|
|
108
|
+
#### ListObject
|
|
109
|
+
Can have a subnode of Events
|
|
110
|
+
##### Properties
|
|
111
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
112
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
113
|
+
|name|String|no|Defines the name of the nested List Object|Must be unique in the List of simple Properties, nested Objects, nested Lookup, nested List Objects, Methods and Validations.|
|
|
114
|
+
|objectClass|Name of the referenced ListObject|no|Defines the Type of the List Object. Important for Validations and Constistency Checks.|Must be in the List of List Objects Names|
|
|
115
|
+
|dataSourceProperty|String (List of Simple Properties of the BO)|no|This Property is used as input to load the ListObject|dataSourceProperty is available as Simple Property of the Business Object|
|
|
116
|
+
|listProperty|String (List of Simple Properties of the nested ListObject/ ListItem)|no|This Property is used to load the List Object|listProperty is available as SimpleProperty of the nested ListObject/ ListItem|
|
|
117
|
+
|
|
118
|
+
##### Example
|
|
119
|
+
```
|
|
120
|
+
<ListObjects>
|
|
121
|
+
<ListObject name="LoItems" objectClass="LoOrderItems" dataSourceProperty="pKey" listProperty="sdoMainPKey" />
|
|
122
|
+
</ListObjects>
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
##### Events [optional]
|
|
126
|
+
The Events node is optional and contains exactly one "Event" Subnode.
|
|
127
|
+
|
|
128
|
+
###### Event
|
|
129
|
+
An Event Node has no further Subnodes
|
|
130
|
+
###### Properties
|
|
131
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
132
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
133
|
+
|name|String|no|Fixed "listItemChanged" for ListObejct Events|Fixed "listItemChanged" for ListObejct Events|
|
|
134
|
+
|eventHandler|String|no|Defines the Method whoch should be called if an Item of this List Object changes|Must be part of the defined Methods of this BO|
|
|
135
|
+
|
|
136
|
+
##### Example
|
|
137
|
+
```
|
|
138
|
+
<Events>
|
|
139
|
+
<Event name="listItemChanged" eventHandler="onNotesChanged" />
|
|
140
|
+
</Events>
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
### Validations [optional]
|
|
145
|
+
The Validations Node has no attributes but a list of Validation Sub Nodes (0..N)
|
|
146
|
+
|
|
147
|
+
#### Validation
|
|
148
|
+
No Sub Nodes are available
|
|
149
|
+
|
|
150
|
+
##### Properties
|
|
151
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
152
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
153
|
+
|name|String|no|Defines the name of the Validation|A Method with this name must exist in the model and this method has a relation to this BO|
|
|
154
|
+
|
|
155
|
+
##### Example
|
|
156
|
+
```
|
|
157
|
+
<Validations>
|
|
158
|
+
<Validation name="validateOrderValue" />
|
|
159
|
+
</Validations>
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
### Methods
|
|
163
|
+
The Methods Node has no attributes but a list of Method Sub Nodes (0..N)
|
|
164
|
+
#### Properties
|
|
165
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
166
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
167
|
+
|name|String|no|Defines the name of the Method|A Method with this name must exist in the model and this method has a relation to this BO|
|
|
168
|
+
|
|
169
|
+
#### Example
|
|
170
|
+
```
|
|
171
|
+
<Methods>
|
|
172
|
+
<Method name="beforeSaveAsync" />
|
|
173
|
+
<Method name="afterSaveAsync" />
|
|
174
|
+
<Method name="beforeLoadAsync" />
|
|
175
|
+
<Method name="afterLoadAsync" />
|
|
176
|
+
<Method name="beforeInitialize" />
|
|
177
|
+
<Method name="afterInitialize" />
|
|
178
|
+
<Method name="beforeDoValidateAsync" />
|
|
179
|
+
<Method name="afterDoValidateAsync" />
|
|
180
|
+
<Method name="beforeCreateAsync" />
|
|
181
|
+
<Method name="afterCreateAsync" />
|
|
182
|
+
<Method name="loadAsync" />
|
|
183
|
+
<Method name="saveAsync" />
|
|
184
|
+
<Method name="createAsync" />
|
|
185
|
+
</Methods>
|
|
186
|
+
```
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<ListObject name="${#name#}" objectClass="" dataSourceProperty="" listProperty="" />
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<NestedObject name="${#name#}" objectClass="" dataSourceProperty="" nestingProperty=""/>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<ObjectLookup name="${#name#}" objectClass="" dataSourceProperty="" lookupProperty=""/>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<SimpleProperty name="${#name#}" type="" id="false" dataSourceProperty=""/>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<SimpleProperty name="${#name#}" type="${#type#}"/>
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Validation Message Contract Definition
|
|
2
|
+
## Description
|
|
3
|
+
A validation messages contract holds all of the validation messages for a particular business object. There is one validation message contract per business object.For example, the validation message contract for the Order business object is called BO_Order_ValidationMessages. Individual validation messages in the validation messages contract can be called from Validate methods (business logic contracts). Each validation message can be referenced via its name. In the Validate method, the "messageID" refers to the value of the "name" attribute of the validation message.
|
|
4
|
+
|
|
5
|
+
## Validation Message Contract Definition
|
|
6
|
+
Hierarchical Definition of the Nodes, Attributes and possible Subnodes.
|
|
7
|
+
|
|
8
|
+
### Root Node (ValidationMessages Node)
|
|
9
|
+
#### Example
|
|
10
|
+
```
|
|
11
|
+
<ValidationMessages name="BoCallMessages" businessObject="BoCall" schemaVersion="0.0.0.5">
|
|
12
|
+
<ValidationMessage name="CasClbRemainingOpenOrders" defaultMessage="Validation notification! There are still open orders!" comment=" " />
|
|
13
|
+
<ValidationMessage name="CasClbNotAllMandatoryStoreSurveysAnswered" defaultMessage="Validation notification! Not all mandatory store surveys are answered! #questions#" comment=" " />
|
|
14
|
+
...
|
|
15
|
+
</ValidationMessages>
|
|
16
|
+
```
|
|
17
|
+
#### Parameters:
|
|
18
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
19
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
20
|
+
|name|String|no|The name used to identify the validation messages||
|
|
21
|
+
|businessObject|String|no|Name of the businessobject, the messages are related to||
|
|
22
|
+
|schemaVersion|String|no|Version of the design contract||
|
|
23
|
+
|
|
24
|
+
#### Sub Nodes:
|
|
25
|
+
|
|
26
|
+
##### ValidationMessage
|
|
27
|
+
Every <Validationmessages> node contains 1..n <Validationmessage> childnodes
|
|
28
|
+
|
|
29
|
+
#### ValidationMessage Node
|
|
30
|
+
This node describes a single validaiton message
|
|
31
|
+
|
|
32
|
+
##### Parameters:
|
|
33
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
34
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
35
|
+
|name|String|no|The name used to identify a single validation message|name must be unique for the contract|
|
|
36
|
+
|defaultMessage|String|no|The default message that will be displayed if there is no applicable translation||
|
|
37
|
+
|comment|String|yes|A comment that is only visible to the custimizer who looks at the conract in the modeler||
|
|
38
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<ValidationMessage name="${#name#}" defaultMessage="${#defaultMessage#}" comment="${#comment#}" />
|
|
@@ -0,0 +1,319 @@
|
|
|
1
|
+
# DataSource (DS) Contract Definition
|
|
2
|
+
|
|
3
|
+
## Description
|
|
4
|
+
DataSource Contracts are design time artifacts describing a common way for data access and manipulation of existing enterprise information system.
|
|
5
|
+
The main goal of this document is to have a common understanding of the different elements that constitute a definition of a DataSource Contract.
|
|
6
|
+
|
|
7
|
+
## Contracts Elements
|
|
8
|
+
The following sections describe all elements that could be find in a definition of a DataSource Contract. The DataSource Node has the following Parameters
|
|
9
|
+
|
|
10
|
+
## Properties
|
|
11
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
12
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
13
|
+
|name|String|no|Name of the Data Source||
|
|
14
|
+
|businessObjectClass|String|no|Name of the assigned BO||
|
|
15
|
+
|external|Boolean|yes|external DataSources provide Javascript Methods to build the Select, Update, Insert or Delete Statements|True|
|
|
16
|
+
|editableEntity|String|yes| contains the name of the editable Entity (for editable DataSources relevant only)||
|
|
17
|
+
|distinct|Boolean|yes|specifies if a Distinct Select Statement is generated|False|
|
|
18
|
+
|readOnly|Boolean|yes|specifies if the Update, Delete and Insert Statements are generated|False|
|
|
19
|
+
|schemaVersion|String|no|Version of the design contract.||
|
|
20
|
+
|backendSystem|String|no|specifies the target Backend System of the Data Source. Currently only sf is allowed|sf|
|
|
21
|
+
|
|
22
|
+
### Attributes
|
|
23
|
+
Attributes contains a list of Attributes (1..N) of the Datasource. The <Attributes> node does not have any attributes itself, but it has a list of <Attribute> SubNodes. The DS Attributes are mapped to the Business Objects Simple Properties. There are four types of supported attribute nodes
|
|
24
|
+
|
|
25
|
+
#### Attribute (most common)
|
|
26
|
+
#### Properties
|
|
27
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
28
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
29
|
+
|name|String|no|Name of the Attribute||
|
|
30
|
+
|table|String|no|Name of the assigned table||
|
|
31
|
+
|column|String|no|Name of the assigned column||
|
|
32
|
+
|
|
33
|
+
#### DerivedAttribute
|
|
34
|
+
#### Properties
|
|
35
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
36
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
37
|
+
|name|String|no|Name of the Attribute||
|
|
38
|
+
|value|String|no|value of derived attribute||
|
|
39
|
+
|
|
40
|
+
#### DateTimeAttribute
|
|
41
|
+
#### Properties
|
|
42
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
43
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
44
|
+
|dateName|String|no|||
|
|
45
|
+
|timeName|String|no|||
|
|
46
|
+
|table|String|no|Name of the assigned table||
|
|
47
|
+
|column|String|no|Name of the assigned column||
|
|
48
|
+
|
|
49
|
+
#### PivotItems
|
|
50
|
+
Can have multiple PovotItem elements
|
|
51
|
+
PivotItems does not have any parameter. Only the node name
|
|
52
|
+
|
|
53
|
+
### Example
|
|
54
|
+
```
|
|
55
|
+
<PivotItems>
|
|
56
|
+
<!-- Delivery Recipient Role-->
|
|
57
|
+
<PivotItem id="deliveryrecipient">
|
|
58
|
+
<Attribute name="customerPKey" table="Account_Extension__c" column="Account__c" />
|
|
59
|
+
<Attribute name="validThru" table="Account_Extension__c" column="Delivery_Role_Valid_Thru__c" />
|
|
60
|
+
<Attribute name="validFrom" table="Account_Extension__c" column="Delivery_Role_Valid_From__c" />
|
|
61
|
+
<PivotConstant name="salesOrg" value="'#SalesOrg#'" />
|
|
62
|
+
<PivotConstant name="bpaRoleMetaPKey" value="' '" />
|
|
63
|
+
<PivotDerivedAttribute name="category" pivotName="deliveryRoleCategory" value="CASE WHEN #compareAsDate('Delivery_Role_Valid_From__c', 'Date','le',#TodayAsDate#, 'Date')# AND #compareAsDate('Delivery_Role_Valid_Thru__c', 'Date','ge',#TodayAsDate#, 'Date')# THEN 'deliveryrecipient' ELSE ' ' END" />
|
|
64
|
+
</PivotItem>
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
##### PivotItem
|
|
68
|
+
Contains a list of Attributes (1..N) of the datasource. Does also support PivotConstant and PivotDerivedAttribute
|
|
69
|
+
|
|
70
|
+
##### Attribute
|
|
71
|
+
##### Properties
|
|
72
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
73
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
74
|
+
|name|String|no|Name of the Attribute||
|
|
75
|
+
|table|String|no|Name of the assigned table||
|
|
76
|
+
|column|String|no|Name of the assigned column||
|
|
77
|
+
|
|
78
|
+
##### PivotConstant
|
|
79
|
+
##### Properties
|
|
80
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
81
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
82
|
+
|name|String|Name of the Attribute||
|
|
83
|
+
|value|String|value or macro in single quots||
|
|
84
|
+
|
|
85
|
+
##### PivotDerivedAttribute
|
|
86
|
+
##### Properties
|
|
87
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
88
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
89
|
+
|name|String|no|Name of the Attribute||
|
|
90
|
+
|pivotName|String|no|Pivot name of the attribute||
|
|
91
|
+
|value|String|no|formula in sql language||
|
|
92
|
+
|
|
93
|
+
### Entities
|
|
94
|
+
Entities contains a list of Entities (1..N) of the Datasource. The <Entities> node does not have any attributes itself, but it has a list of <Entity> SubNodes. The Entities specify the Database Table where the Data is collected from. Only one of the Entities can be stored (R10 restriction). Each entity except the Start Entity has a JOIN Condition
|
|
95
|
+
|
|
96
|
+
### Example
|
|
97
|
+
```
|
|
98
|
+
<Entities>
|
|
99
|
+
<Entity name="Order__c" alias="" idAttribute="Id" />
|
|
100
|
+
<Entity name="Order_Template__c" alias="">
|
|
101
|
+
<Join Type="inner">
|
|
102
|
+
<SimpleJoin>
|
|
103
|
+
<Condition leftSideValue="Order_Template__c.Id" comparator="eq" rightSideType="Attribute" rightSideValue="Order__c.Order_Template__c" />
|
|
104
|
+
</SimpleJoin>
|
|
105
|
+
</Join>
|
|
106
|
+
</Entity>
|
|
107
|
+
</Entities>
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
#### Entity
|
|
111
|
+
#### Properties
|
|
112
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
113
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
114
|
+
|name|String|no|Name of the Entity||
|
|
115
|
+
|alias|String|yes|Alias name of the entity||
|
|
116
|
+
|idAttribute|String|yes|Literal unique key row of entity||
|
|
117
|
+
|
|
118
|
+
##### Join
|
|
119
|
+
Join describes the join type between two entities (inner, left ,left outer)
|
|
120
|
+
##### Properties
|
|
121
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
122
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
123
|
+
|type|String|no|Could have the values inner, left, left outer||
|
|
124
|
+
|
|
125
|
+
###### SimpleJoin condition
|
|
126
|
+
one ore more modeled relations between entities
|
|
127
|
+
|
|
128
|
+
###### Properties
|
|
129
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
130
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
131
|
+
|leftSideValue|String|no|||
|
|
132
|
+
|comparator|String|no|||
|
|
133
|
+
|rightSideType|String|no|Attribute, Parameter or Literal||
|
|
134
|
+
|rightSideValue|String|no|||
|
|
135
|
+
|
|
136
|
+
###### ComplexJoin condition
|
|
137
|
+
describes a relation between entities with a SQL code snippet. Complex Join nodes contain only a CDATA section with the SQL code.
|
|
138
|
+
|
|
139
|
+
###### Example
|
|
140
|
+
```
|
|
141
|
+
<Join Type="inner">
|
|
142
|
+
<ComplexJoin><![CDATA[
|
|
143
|
+
PrdSales.#criterionAttribute# = PrdGroup.Id #addCond_criterionFilterValue#
|
|
144
|
+
]]></ComplexJoin>
|
|
145
|
+
</Join>
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
###### Properties
|
|
149
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
150
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
151
|
+
|<![CDATA[Your join condition to be enter here]]>|String|no|||
|
|
152
|
+
|
|
153
|
+
### QueryCondition
|
|
154
|
+
Each Data Source has one Query Condition. The Query Condition is a SQL Snippet which is pasted by the Generator into the WHERE Part of the Select Statement. A Query Condition can contain Parameters which are defined for the Data Source
|
|
155
|
+
|
|
156
|
+
### Example
|
|
157
|
+
```
|
|
158
|
+
<QueryCondition><![CDATA[
|
|
159
|
+
PrdSales.SalesSegmentState = '4'
|
|
160
|
+
AND PrdProduct.State='4'
|
|
161
|
+
AND CndMain.ValidFrom <= '#commitDate#'
|
|
162
|
+
AND CndMain.ValidThru >= '#commitDate#'
|
|
163
|
+
AND CndMain.PriceType = CndMain.DefaultPriceType
|
|
164
|
+
AND CndMain.PriceListType = CndMain.DefaultPriceListType
|
|
165
|
+
AND CndMain.MetaId = 'ProductPrice'
|
|
166
|
+
#addCond_FieldState#
|
|
167
|
+
#addCond_NewState#
|
|
168
|
+
#addCond_ForeignProduct#
|
|
169
|
+
]]></QueryCondition>
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
### Properties
|
|
173
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
174
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
175
|
+
|<![CDATA[Your where condition to be enter here]]>|String|no|||
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
### OrderCiteria
|
|
179
|
+
describes the sort order of the query result set
|
|
180
|
+
|
|
181
|
+
### Example
|
|
182
|
+
```
|
|
183
|
+
<OrderCriteria>
|
|
184
|
+
<OrderCriterion entity="Order__c" attribute="Order_Id__c" direction="ASC" />
|
|
185
|
+
</OrderCriteria>
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
### Properties
|
|
189
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
190
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
191
|
+
|entity|String|no|||
|
|
192
|
+
|attribute|String|no|||
|
|
193
|
+
|direction|String|no|||
|
|
194
|
+
|
|
195
|
+
### GroupBy
|
|
196
|
+
The GroupBy element defines the Attributes and their order which are used to create the Group By Clause of the Select Statement. Each GroupByCriterion must define the following attribues.
|
|
197
|
+
|
|
198
|
+
### Example
|
|
199
|
+
```
|
|
200
|
+
<GroupBy>
|
|
201
|
+
<GroupByCriterion entity="Visit_Job__c" attribute="Product__c" />
|
|
202
|
+
</GroupBy>
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
### Properties
|
|
206
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
207
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
208
|
+
|entity|String|no|Name of the Entity for the Group By Criterion||
|
|
209
|
+
|attribute|String|no|Name of the Attribute for the Group By Criterion||
|
|
210
|
+
|
|
211
|
+
### Parameters
|
|
212
|
+
Parameters are modeled and can be used in the JOIN and the QUERY Conditions to filter the Result Set
|
|
213
|
+
|
|
214
|
+
### Properties
|
|
215
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
216
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
217
|
+
|name|String|no|||
|
|
218
|
+
|baseType|String|yes|Date, Time or DateTime||
|
|
219
|
+
|type|String|yes|SQLite type (NULL, INTEGER, REAL, TEXT, LIST)||
|
|
220
|
+
|treatAs|String|no|can be set to "sqlSnippet" to include the parameter directly into the statement (not as parameter)||
|
|
221
|
+
|
|
222
|
+
Type "LIST" is used for parameters used in "IN" conditions. All items of the list (Array or comma separated list in a string) must be the same type (string or numeric).
|
|
223
|
+
|
|
224
|
+
### Macros
|
|
225
|
+
Macros are shortcuts used in the SQL-Statements that are replaced at runtime. There are framework macros that represent frequently used parameters and default parameters and parameter macros that are customizable at design time.
|
|
226
|
+
|
|
227
|
+
#### Framework macros
|
|
228
|
+
The framework knows the following macros and replacements
|
|
229
|
+
|
|
230
|
+
| Macro | Replacement | Annotation |
|
|
231
|
+
|:---------------|:-------------|:------------|
|
|
232
|
+
|#Language#|The user's spoken language as configured in the user object|Defaults to "en"|
|
|
233
|
+
|#SalesOrg#|The sales organisation code assigned to the user|Defaults to "0001"|
|
|
234
|
+
|#Client#|The client set for the user|Defaults to "010"|
|
|
235
|
+
|#UserPKey#|The PKey value of the current user|No default, since a valid user is required to use the app|
|
|
236
|
+
|#Today#|The current date in short ANSI format|"YYYY-MM-DD"|
|
|
237
|
+
|#MaxDate#|System wide maximum date value in short ANSI format|Fixed at "9999-12-31"|
|
|
238
|
+
|#MinDate#|System wide minimum date value in short ANSI format|Fixed at "1800-01-01"|
|
|
239
|
+
|#BusinessModified#|Used in tables that have a businessModified column to mark the latest change in short ANSI date/time format|"YYYY-MM-DD HH:MM:SS"|
|
|
240
|
+
|
|
241
|
+
#### Parameter macros
|
|
242
|
+
All parameter macros use the format #<ParameterName>#. Only parameters listed in the contract (see 2.5. Parameters) can be used here. If at runtime a parameter is not provided, the macro will be replaced by the empty string otherwise it will be replaced by the value provided for that parameter. The datasource designer is responsible for the correct parameter format, e.g. if a parameter is a string value, the macro must be surrounded by quotation marks. ( ' ).
|
|
243
|
+
|
|
244
|
+
### Quick Search Parameters
|
|
245
|
+
The Generator creates code to add Quick Search Parameter to the Select Statement if at least one Quick Search Parameter is available
|
|
246
|
+
|
|
247
|
+
### Example
|
|
248
|
+
```
|
|
249
|
+
<QuickSearchParameters>
|
|
250
|
+
<QuickSearchParameter name="customer.name"/>
|
|
251
|
+
<QuickSearchParameter name="customer.id"/>
|
|
252
|
+
<QuickSearchParameter name="address.fullAddress"/>
|
|
253
|
+
</QuickSearchParameters>
|
|
254
|
+
```
|
|
255
|
+
Each Quick Search must define the following properties.
|
|
256
|
+
|
|
257
|
+
### Properties
|
|
258
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
259
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
260
|
+
|name|String|no|Name of the Attribute to search (if ambiguous "table.column" notation can be used)|Attribute must be available and not ambiguous|
|
|
261
|
+
|
|
262
|
+
The generator creates the following source code:
|
|
263
|
+
```
|
|
264
|
+
if (Utils.isDefined(jsonQuery) && Utils.isDefined(jsonQuery.__quickSearchTermArray)) {
|
|
265
|
+
sqlStmt += "AND ( 1 = 0 ";
|
|
266
|
+
for (var idx = 0; idx < jsonQuery.__quickSearchTermArray.length; idx++) {
|
|
267
|
+
var qsSearchTerm = jsonQuery.__quickSearchTermArray[idx];
|
|
268
|
+
sqlStmt += " OR field1 LIKE " + qsSearchTerm;
|
|
269
|
+
...
|
|
270
|
+
sqlStmt += " OR fieldN LIKE " + qsSearchTerm;
|
|
271
|
+
}
|
|
272
|
+
sqlStmt += ")";
|
|
273
|
+
}
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
### Conditional Parameters
|
|
277
|
+
Conditional Parameters create conditions if the Parameter is passed into the DataSource.
|
|
278
|
+
|
|
279
|
+
#### Conditional Parameter
|
|
280
|
+
Conditional Parameters are modeled and define additional Conditions if the parameter is passed into the datasource
|
|
281
|
+
|
|
282
|
+
#### Properties
|
|
283
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
284
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
285
|
+
|name|String|no|||
|
|
286
|
+
|
|
287
|
+
#### SimpleConditions
|
|
288
|
+
one ore more modeled Conditions if a Parameter is set
|
|
289
|
+
|
|
290
|
+
#### Properties
|
|
291
|
+
| name | Type | optional | Annotation | Validations/Checks|
|
|
292
|
+
|:---------------|:------|:---------|:----------------------------------------|:------------------|
|
|
293
|
+
|leftSideValue|String|no|||
|
|
294
|
+
|comparator|String|no|||
|
|
295
|
+
|rightSideType|String|no|literal Attribute, Parameter or Literal||
|
|
296
|
+
|rightSideValue|String|no|||
|
|
297
|
+
|
|
298
|
+
#### Example
|
|
299
|
+
```
|
|
300
|
+
<ConditionalParameters>
|
|
301
|
+
<ConditionalParameter name="customerPKey">
|
|
302
|
+
<SimpleConditions>
|
|
303
|
+
<Condition leftSideValue="BpaOrderRole.CustomerPKey" comparator="EQ" rightSideType="Attribute" rightSideValue="'#customerPKey#'" />
|
|
304
|
+
</SimpleConditions>
|
|
305
|
+
</ConditionalParameter>
|
|
306
|
+
</ConditionalParameters>
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
## Comparison operators
|
|
310
|
+
The following comparison operators could be used within join or where clause.
|
|
311
|
+
|
|
312
|
+
|Operator| Equivalent SQL Operator| Description|
|
|
313
|
+
|:-------|:-----------------------|:-----------|
|
|
314
|
+
|EQ|=|Equals|
|
|
315
|
+
|NE|<>|Not Equals|
|
|
316
|
+
|LT|<|Less Than|
|
|
317
|
+
|LE|<=|Less or Equals Than|
|
|
318
|
+
|GT|>|Greather Than|
|
|
319
|
+
|GE|>=|Greather or Equals Than|
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<DataSource name="Ds${NAME}" backendSystem="sf" businessObjectClass="${REFERENCE_OBJECT}" external="false" editableEntity="" schemaVersion="2.0">
|
|
2
|
+
<Attributes>
|
|
3
|
+
<Attribute name="" table="" column="" />
|
|
4
|
+
</Attributes>
|
|
5
|
+
<Entities>
|
|
6
|
+
<Entity name="" alias="" idAttribute="" />
|
|
7
|
+
</Entities>
|
|
8
|
+
<QueryCondition />
|
|
9
|
+
<OrderCriteria />
|
|
10
|
+
<Parameters />
|
|
11
|
+
</DataSource>
|