Loading App Task

Introduction

The Loading App Task has been introduced in the Process Editor in FNZ Studio 2025.

Its purpose is to show a dedicated UI to the users to inform them that something is happening "behind the scenes" (for example, loading or storing data to an external system) and provide information about the progress of such background activities.

The Loading App Task can wrap one or more long-running activity included in a Sub-Process and provides a user-friendly loading UI displaying status and progress information. Its intended purpose is wrapping long-running activities such as Asynchronous Integration Link tasks, so that the user can be aware of what is going on and be informed about the progress of such activities.

Installation and Upgrade

Ingredients and Installation Steps

The Loading App Task consists of the following basic ingredients:

  1. AppTask Extension (included in FNZ Studio (Core) installations)
  2. AppTaskAPI Extension (included in FNZ Studio (Core) installations)
  3. LoadingAppTask Extension
All ingredients are distributed by Support. Check the Products page for full information.

Technical Requirements

Make sure you check the following:

  • You are on a compatible FNZ Studio Core version. See the Loading App Task Product page for compatibility information.
  • Your FNZ Studio installation includes all other mandatory extensions (in addition to AppTask and AppTaskAPI) and Packages. See FNZ Studio 2025 System Upgrade guide.

General Properties

After following the installation steps described above, the Loading App Task will be available in the Process Editor. You can drag and drop it into the central composition area, as shown in the image below.

Process Properties

Most of the general properties of the App Tasks (title, type, and so on) can be set in the Process Editor, as illustrated in the table below.

Property Description Configuration
App Task Title (Process Editor) Name of the App Task in the Process Editor Process Editor Properties tab > Name field.
Page Title (UI) Name of the App Task page in FNZ Studio Runtime Process Editor Properties tab > Runtime Title field. You need to select a Label Business Object. In case the property is not set, it shows 'FNZ'.
App Task Title (Task List) Name of the page on a Task List (backend) Process Editor. Properties tab > Task List Name field. You can select a Label Business Object or enter a text. Set the name of the page, as it should appear on a Task List (it may contain a Label or not).
App Task initialization Logic to be executed when initializing the App Task (optional) Properties tab > Setup Script field. Specify the Script Function Business Object that contains the logic to be executed when initializing the context of the App Task (if any). This can be used, e.g., to set any necessary Process Instance or Token Attribute. The script is executed once for each token when it becomes Active.

Feature Overview

As mentioned above, the Loading App Task can wrap one or more long-running activity (such as Asynchronous Integration Link tasks) included in a Sub-Process. The Loading App Task's main feature is to provide a loading UI displaying status and progress information.

Note the following:

  • We recommend that you use a Loading App Task when such long-running activities take between 5 seconds and 5 minutes to be executed.

  • Such long-running activities should not lock Process Instance and value store data for a long time. Asynchronous Integration Link tasks can be used for this purpose, and integration calls can be executed in parallel or in series.

  • Loading App Tasks cannot be used inside Ad-Hoc Sub-Processes (at any level).

When a Process Token reaches a Loading App Task, the following happens:

  • The user is redirected to the Loading App Task UI, which shows information about the long-running activities in progress. The Loading App Task provides configuration options to tailor the type and exact content of the progress information shown to the user (see section below).

  • An instance of the Sub-Process set in the configuration of the Loading App Task is started. The Sub-Process contains one or more long-running activities to be executed behind the scenes, typically represented by Asynchronous Integration Link tasks.

During the execution of the long-running activities, the selected Sub-Process can update the progress status to be shown to the user by invoking the dedicated Script Function AppTask:UpdateLoadingAppTaskState. For example, if there are four activities to be executed, after the first three have been completed, the progress can be set to 75%.

Technical note: information about the progress of Loading App Tasks is stored in a non-persisted distributed map and it is kept until the Loading App Task is active.

As soon as the Sub-Process ends (i.e. all long-running activities are completed), the Loading App Task is also marked as completed and, therefore, the flow of the Process continues as usual moving forward to the next task.

Configuration Overview

Most of the configuration available for the Loading App Task is performed in the Data tab of the App Task Process Editor. Here is an overview of the configuration steps (details are in the sections below):

  1. Setting the Sub-Process that includes the long-running activity/ies.

  2. Configuring the status message title and subtitle.

  3. Setting the expected loading time and the type of progress indicator.

  4. Setting Script Function AppTask:UpdateLoadingAppTaskState, which updates the progress status.

Setting Sub-Process

Property Description
Data tab .> Sub-Process (mandatory) Select the Sub-Process containing the long-running activities to be executed while the user awaits (typically, Asynchronous Integration Link tasks). See Note on the Sub-Process below.
Variable Assignments section Use the implicitly defined Variable $loadingAppTaskRuntimeId to access the unique identifier of the current Loading App Task instance to be used when updating the progress of the task using the Script Function AppTask:UpdateLoadingAppTaskState.

Note on Sub-Process

Note that the Sub-Process is executed independently with respect to the main Process in an anonymous background thread and, therefore, it has no access to the main Process session, thread, or request. As a result, context-specific information, such as the current user (User:CurrentUserGetId) or the Access Token (Auth:GetAccessToken()) cannot be fetched from elements inside the selected Sub-Process such as Script Tasks or Integration Link Tasks.

In cases where it is necessary to access context-specific information inside the Sub-Process we recommend one of the following:

  • Assign the necessary information (user id, token and so on) from the main Process to the Sub-Process by using Variable Assignments section available when selecting the Sub-Process.

  • Fetch those values from the Default Expressions of the Variables inside the Sub-Process (Default Expressions are executed while initializing the Sub-Process and, therefore, still in the context of the main Process).

Configuring Message Title and Subtitle

Property Description
Data tab > Title (mandatory) Label Business Object representing the main message to be displayed to the user to describe the long-running activity/ies. It is calculated only once when the Loading App Task is initialized.
Data tab > Subtitle(mandatory) Label Business Object representing a further descriptive message that informs the user about the activity progress. It can be updated by using Script Function AppTask:UpdateLoadingAppTaskState inside the selected Sub-Process. We recommend that the subtitle is updated dynamically only when a progress bar is selected to provide updates.

Configuring Loading Time and Progress Indicator

The Loading App Task UI may shows information about long-running activities in different ways depending on the length of such activities. This is set in the following fields in the Data tab (details on available values are illustrated in the table below):

  • Expected Loading Time: Select the time that long-running activities are expected to take until completion.

  • Progress Indicator: (for medium to very long loading times): Select the way progress information is shown to the user.

  • Steps: (for List of Steps Progress Indicator): Select the Catalog Business Object defining the list of intermediate steps used to show progress.

Expected Loading Time

Progress Indicator Steps
Short (5-20s)

Spinning Wheel

-

Medium

  • Auto-generated Progress Bar: The UI shows a progress bar which moves forward automatically based on the specified Expected Loading Time.

  • Calculated Progress Bar: The UI shows a progress bar which moves according to the updates provided using Script Function AppTask:UpdateLoadingAppTaskState inside the selected Sub-Process

  • List of Steps: The UI shows a list of intermediate Steps as specified (see Steps column).

(List of Steps only) The Catalog BO must have an id column containing Step Ids and a description column containing Step Labels. The Catalog values are fetched only once when the Loading App Task is initialized. The status of the Steps can be updated using the Script Function AppTask:UpdateLoadingAppTaskState inside the selected Sub-Process.
Long
Very Long

 

The following images show the different types of Progress Indicator:

Progress Indicator: Spinner Wheel

Progress Indicator: Auto-generated Progress Bar

Progress Indicator: Calculated Progress Bar

Progress Indicator: List of Steps

Updating Loading App Task Status

The Script Function AppTask:UpdateLoadingAppTaskState can be used by the Sub-Process selected on a Loading App Task to provide updates about the long-running activities as they are executed. The following settings can be updated using this Script Function:

  • Subtitle

  • Progress percentage (Calculated Progress Bar)

  • Step status (Steps)

Input Parameters

  • $loadingAppTaskRuntimeId (String): Unique identifier of the current Loading App Task instance. It can be retrieved using the implicitly defined Variable $loadingAppTaskRuntimeId available when assigning Variables to the selected Sub-Process on the Loading App Task.

  • $subTitle (String, Optional): Updated Subtitle of the Loading App Task. We recommend using it only when the Progress Indicator is set to Auto-generated Progress Bar or Calculated Progress Bar.

  • $progressPercentage (Integer, Optional): Updated progress percentage (must be between 0 and 100). It can be used only when the Progress Indicator is set to .Calculated Progress Bar.

  • $stepStates (Named AppTask:Loading.StepStatus, Optional): Updated status of each Step. It can be used only when the Progress Indicator is set to List of Steps. Note that only the status of one or more Steps can be updated, while the list of Steps itself cannot change dynamically (it is read from the configured Catalog BO when the Loading App Task is initialized). The key of the Named Collection is the Step Id as specified in the id column of the selected Catalog; the value must be one among:

    • AppTask:Loading.StepStatus.NOT_STARTED() if the Step has not started.

    • AppTask:Loading.StepStatus.ONGOING() if the Step is being executed.

    • AppTask:Loading.StepStatus.DONE() if the Step is completed.

    • AppTask:Loading.StepStatus.ERROR() if the Step resulted in an error.

Returns

Nothing

Developer Toolbar

The Developer Toolbar allows your to access three important developing features:

  1. The Theme Editor, which allows editing the look-and-feel of FNZ Studio Runtime. See section below for more information.DGDeveloperToolbarTheme.png
  2. The Inspector tool, which allows navigating to and editing the Business Objects responsible for the FNZ Studio Runtime page. See Inspector. DeveloperToolbarInspector.png
  3. The Integration console, which shows all the integration calls performed by the current Process Instance for easier contextual debugging. The content is a filtered version of the data contained in the Integration Troubleshooting Console available in FNZ Studio (Data & Integration module). See Integration. DevToolbarIntegrationTab.png

You can open the Developer Toolbar from your ABC page by clicking on the arrow on the left-hand side (this is displayed when hovering over the page left border). Note that you need Advanced Studio Permissions to access the tool.

Theme Editor

The Loading App Task can be styled using the same Theme approach as for all other App Tasks. This is described in full details in Theming (Theme Editor).

However, for the Loading App Task, you can change the Progress Indicator image (Configuring Loading Time and Progress Indicator).

To do so, you need to replace the Image-Loading Resource Business Object in your Theme Package.

Note that, if your Theme Package was created in versions previous to App Task 2025.2, you will need to use the Update Themes functionality to see the new Resource.