HowTo: Using Progress Indicator in Panel

Official Content
This documentation is valid for:

This document is a 3-step tutorial to enable Progress Indicator User Control in Panels.

Scope

Objects PanelProcedure, Work With for Smart Devices.  
Generators  Android, Apple.

Step 1: External Object - Properties and Methods

See Progress Indicator User Control in order to understand the API of the user control.

Step 2: Learn by Example

To simulate a Procedure that takes some time you are going to use a Procedure with the Sleep function set to 4.

For this example, create the following Panel object:

Layout

ProgressIndicator - Example - Layout

Events

Event 'Determinate'
    Composite
        Progress.Type = ProgressIndicatorType.Determinate
        progress.MaxValue = 100
        progress.Value = 0
        Progress.ShowWithTitleAndDescription("ProcessDeterminate","Sleeping...")
        sleepingProc()
        Progress.Value =25
        sleepingProc()
        Progress.Value =50
        sleepingProc()
        Progress.Value =75
        sleepingProc()
        Progress.Value =100
   EndComposite
EndEvent
Event 'Indeterminate'
    Composite
        Progress.Title = "Process Indeterminate"
        Progress.Description = "Sleeping..."
        Progress.Class = "Table.Progress"
        Progress.Type = ProgressIndicatorType.Indeterminate
        Progress.Show()
        sleepingProc()
   EndComposite
EndEvent

Facts: (In Evolution 2 Upgrade 2)

  • At the end of an Event an implicit Hide() is done. this is in case the Hide() call hasnt been done by the user.
  • The scope of the properties of a Progress Indicator is per Panel. So, if calls are done between two Panels which have a Progress Indicator the properties are not going to be shared.
  • Any UI element invoked by an action which also has a call to the Progress Indicator will be shown over the progress Indicator (Call, MSG, Confirm, etc).

Step 3: Execution

Determinate

progressios1  progressios2  progressios3  progressios4

Indeterminate

progressios5

 

Restrictions

  • The Progress Indicator external object can only be called from client-side events of Panels and from offline Procedures objects.