Navigation

navigator {
   entry WoApp toplevel at index 0 {
      label = "Work Order App";

      entry WorkOrders;
      entry Customers;
   }

   entry WorkOrders {
      label = "Work Orders";
      page WorkOrdersPage;
      icon = "clipboard";
      count = GetWorkOrdersCount;
   }

   entry Customers {
      label = "Customers";
      page CustomersPage;
      icon = "person";
      count = CustomersSet;
   }
}

If only one entry is defined within the navigator, then it will be used as a default start page. This implies that the "dashboard" or "home" screen will not be shown on startup and in the navigation menu (side menu).

The count keyword can be used in navigator entries to specify an entity set or a function which can be used to retrieve a value that is to be shown in the home screen (dashboard) item.

Limitations

Navigator hierarchy is not supported. Apps should use a minimal number of entries under a single main entry and they should use commands to drill down to other pages. If there are multiple entries defined, only the toplevel entry is considered. If there are no toplevel entries, then the first one is considered.

Dynamic Menu Items

Dynamic menu items can be added to be shown in the home screen (dashboard), these items are able to open a metadata page or a web page. The dynamic keyword can be used in navigator entries to specify a function which can be used to retrieve a list of menu items that are to be shown in the home screen (dashboard). This is similar to the dynamic workflow function.

The function should return a List of structures of type FndDynamicMenuItem. It has the following properties: - Label - the label that is shown on the menu item - Item - the value for the menu item (eg: Name of a page/assistant/web URL) - Name - unique identifier for the menu item - Type - can have the values page, assistant, tree or external.

navigator {
   entry WoApp toplevel at index 0 {
      ...   
   }

   dynamic GetDynamicMenuItems;

   entry WorkOrders {
      ...
   }
}