Displaying the right reports with the right values

As users interact with an application in Infor Ming.le, the application publishes messages in JSON format. These context messages provide details of the screen that the user is viewing and of the data that is displayed. These details are defined in terms of a screen ID and one or more entity types and entity IDs. Each entity type can have one or multiple entity IDs.

In-Context BI listens to the business context messages and analyzes their content. To ensure that the correct reports are displayed, these three main steps are required:

  1. Find the folder with the correct reports in the connected Infor d/EPM application.
  2. Determine which reports in the folder are valid for the current context.
  3. Initialize and render the reports with the correct values from the business context, and present them to the user, with the correct data.

First, In-Context BI tries to match the unique names of the folders in the Application Studio report catalog to the screen IDs in order to find the folder that contains the relevant reports for the current screen. In-Context BI requires that each screen ID is used as the unique name of a folder in the Application Studio report catalog.

A context message might include no screen ID, or include an ID for which there is no folder in Application Studio. In such cases, In-Context BI can display more general fallback content from a folder that is specified by a ScreenIDBase parameter in the context message. This fallback folder might contain, for example, content that is relevant to multiple screen IDs.

This example of a business context message has the screen ID m3_MMS002_B and the screen Id base M3_MMS002:
{
  "type": "inforBusinessContext",
  "data": {
    "screenId": "m3_MMS002_B",
    "screenIdBase": "m3_MMS002",
    "entities": entities,

If ScreenIDBase is not present or is invalid, further fallback is provided by a common folder called __Any__.

Each folder contains one or more reports that may be displayed by In-Context BI, depending on the specific information in the context messages.

The reports from the found folder are filtered by report variables. At least one matching variable from the context message must be present in the report. The variables must match an entity type and ID in the context message.

The naming convention for the report variables is IBC_<entityType>_<idName>. For example, IBC_Item_ID1.

The variable name is case-sensitive and the ID name must be capitalized. For example, IBC_purchaseOrderLine_ID2.

Application Studio populates each matching report variable with the values from the message. The In-Context BI report is thus initialized and displayed to the user with the correct values.