SuiteApp Version: eXtendMobile 1.12 and above
Mobile App Version: eXtendMobile 1.12
Audience: eXtendMobile Admin

Use Case

  • Create a main function that displays multiple connected functions and shows details based on the selection of records.
    • For example, you might want to view a customer list, then see their details, followed by their open sales orders, and finally the item fulfillment and invoices of those sales orders.
    • This use case applies to scenarios where multiple functions are involved and data is shown based on the selection of records in one or more functions.
    • Review a sample multi-function at: Sample eXtendMobile Multi-Function.

Summary

eXtendMobile allows you to create multi-function setups where you can configure multiple functions that show data dependent on each other. For example, you might want to view a customer list, then see their details, followed by their open sales orders, and finally the item fulfillment and invoices of those sales orders. In this multi-function example, there are the following functions:
  1. Customer List
  2. View Customer
  3. Sales Order List
  4. Sales Order Details
  5. Item Fulfillment List
  6. Invoice List

Upon function execution, only the Customer List will be displayed. When selecting any customer from the Customer List, the View Customer and Sales Order List functions will show details for the selected customer. The Sales Order List will only display orders of the selected customer. Clicking on a Sales Order row will trigger the Item Fulfillment List and Invoice List functions to show records created from the selected Sales Order.

You can have use cases with multiple functions where the data shown in one function is based on the selection of records in one or more other functions.

While you can configure multi-functions from either the eXtendMobile App or from eXtendMobile Web, multi-functions can only be executed in eXtendMobile Web.

Prerequisites

  1. Create all the required functions that you want to add to your multi-functions.

Configuration

  1. Click the Create A New Function button in the eXtendMobile Web portal or click to floating add (+) button in the eXtendMobile App to create a new function.
  2. eXtendMobile Web:
    1. Select the Multi-Function option from the list and following page will be shown.Image Placeholder
    2. eXtendMobile App
      Image Placeholder
  3. Specify details in the following fields:
    1. Function Name
      Specify the name for your function, which will be shown on the function tiles.
    2. Description
      This field will appear only in the eXtendMobile Web, where you can add any details about the function you are creating.
    3. Function Display Settings
      1. Applied Roles
        Select the roles where you want to show this function.

        Make sure to apply all the functions to the selected roles that you are going to add in this multi-function.

      2. Function Group
        Select the function group where you want to add this function.
      3. Show On
        This field will be shown as disabled, and Web Only will be selected as this function type is supported in the web portal only.
      4. Hide From User
        Enable this option to hide the function tile on home screen.
  4. Use the Configure Functions button to add functions to the multi-function.
    1. eXtendMobile Web
      Image Placeholder
    2. eXtendMobile App
      Image Placeholder
    3. Function Name
      Select the function you want to add to the multi-function.
    4. Function Type
      This field will auto-populate.
    5. Primary
      Enable this option if this is your primary function. The primary function will be executed and displayed upon page load. You can make only one function a primary function.
    6. Height
      Specify the height of the function container which will be shown on the web portal. The default height is 500px.
    7. Header
      Specify header text which you want to show as the heading for your function.
    8. Place holder
      Specify a placehoder text that will be rendered in the function container unless the function is not activated by another function. This is not applicable for primary functions as they will have set values at the time of function execution.
    9. Emitter Settings
      This setting allows you to configure what data will be emitted by this function, which will then be picked up by other receiver functions to show results. When you click on this field on the web, a modal will appear as shown below.
      Image Placeholder
      1. Record Type
        Specify the record type of the value you will be emitting.
      2. Field Name
        Select the field which will be used for emitting the value. Make sure the selected Record Type is correct for the selected field's value. In the case of list functions, an option named Row will be shown along with other column fields under this dropdown. If you select a row, the internal ID of the row will be emitted when clicking anywhere on the row.
      3. You can add multiple emitter fields to open multiple functions based on your requirement.
    10. Receiver Settings
      This setting allows you to configure the data you will receive to filter or render the function. This option is not available for primary functions. If your receiver function is not a list function, the receiver setting modal will show the option to select the record type. For list functions, two additional fields will appear named Field Name and Search Operator. Image Placeholder
      Image Placeholder
    11. Context Header
      Select the field which you want to show on the receiver functions. This helps to distinguish results if there are multiple emitter and receiver functions linked together.
  5. How emitter and receiver works
    Once you configure your functions, there should be one primary function that only emits. Other functions can both emit and receive. The emitter will emit the record type and its internal ID. The receivers configured with the same record type will receive the data and show the result accordingly. If multiple functions emit the same record type, the function activated first will have precedence to update the receivers.