You can define the menu structure once and then use that based on the security or any scenario in the form. These menus can be displayed and accessed from the forms rules. This means you have full control of enabling/disabling certain node/link in the menu based on the form validation.
Working
Instructions for creating new Global Menu
The newly created global menu will be added in the global menu main window as shown below,
Instructions for Global Menu Operations
You can edit previously created global menu using Edit menu Button.
2) Global Menu Edit Nodes
You can edit Node properties using Edit Child button.
You can delete global menu using Delete Menu button.
Then click OK.
Menu Editor
You can add nodes and sub nodes and delete, copy and paste nodes and apply general and style properties for nodes and you can also edit previuosly applied root item and sub item styles from the Menu Editor.
You can save Global Menu using save button.
Then, Click OK.
You can add a node in two ways,
You can add a sub node for any node or sub node by right clicking the desired node from the left panel and selecting Add Sub Node option.
You can delete a node or sub node by right clicking the desired node from the left panel and selecting Delete Node option.
Then, in the coming popup, click ok.
You can copy a node or sub node along with its properties by right clicking the desired node from the left panel and selecting Copy Node option.
You can paste any copied node as a sub node for any node or sub node by right clicking the desired node from the left panel and selecting Paste Node option.
You can expand and collapse nodes by expand and collapse icons.
Now you can select any node from the left panel and apply general and style properties for it.
The genreal properties are,
Node ID : Automatic generated unique node ID.
Node Name :You can give a name for the created node.
Icon : You can choose an icon for the node from the Icon View window. After choosing the icon click Ok.
Order: You can choose the order in which the nodes should be displayed.
Is Enable: Sets the accessibility of the menu during rendering.
Is Visible: Sets the visibility of the menu while rendering.
Navigation Form: To navigate to a form using global menu. Click on the Navigate form Option, and a navigate form pop up window will appear. Then select a form and click the Select button to complete the configuration.
Rules: You can choose one of the listed rules to execute when the node is clicked. The listed rules are from the selected navigation form and will only appear after the Trigger Rule property has been selected.
Trigger Rule: You can choose whether to execute the selected rule from the Rules property by selecting or deselecting it.
Launch As New Form: Form will not be cached after loading.
Is Hidden Menu: You can hide a global menu in the AppView(or rendering) by selecting this option, when you don’t want to show the global menu node in the AppView but you want to execute the configured rule in the Rules property. InvokeJavaScript(HandleGlobalMenuClick(NodeName)) function you can bypass form load and execute the configured rule in the Rules property of the menu node.
Copy from parent menu: Sets the style from parent menu.
Allows you to edit previously set root item and sub item styles.
You can set style properties for root item.
You can set style properties for sub items.
Me.TargetRule
Me.TargetRule is used for executing some actions when the rule selected to execute when the global menu is clicked is equivalent to Me.TargetRule value. The main purpose of this rule is to allow us to choose whether or not to perform various actions when the form loads by clicking on the global rule. So that you can enhance performance and shorten the time it takes for the form to load.
In the above example these actions are executed giving FormLoad as trigger. The actions before decision is always executed. But the actions inside Me.TargetRule=”On_Button1” is only executed when the rule selected in the property in global menu is On_Button1 and if the form is loaded by clicking global menu node. While the actions in the else part is executed only when the form is loaded as a startup form.