Skip to main content

         This documentation site is for previous versions. Visit our new documentation site for current releases.      

Designing applications for offline mode

Updated on February 23, 2022

Ensure that your app operates reliably, regardless of the connection status, by adhering to the guidelines for designing offline-enabled mobile apps.

Some users might need to work with their mobile apps even if the connection to the server is unreliable or the network is not always available. With Pega Platform, you can configure your application for use on mobile devices without a network connection.
Note: When you modify the design of your existing offline-enabled app, ensure that you propagate your changes to mobile devices. For more information, see Propagating application model changes to offline-enabled mobile apps.

    Create an offline-ready flow in your application:

  • Rely on the functionality that App Studio provides, and do not implement custom code.
  • Ensure that you use only the following case objects:
    • Cases that are in the worklist
    • Cases that you add to the offline-supported case type configuration
    Note: If the application contains cases that are not offline-enabled, the offline-enabled mobile app can process them only when the device is online.
  • Remember that offline-enabled apps support only single worklist configurations.
  • Identify a stage that contains the steps that a user can take offline, and apply the following guidelines:
    • When multiple users need to perform the same offline task, you can create a child case to allow the users to perform the task independently.
    • You cannot place activities and smart shapes in the offline stage. However, you can place remote system updates and notifications at the end of the offline stage.
      Remember: Configure service-level agreements or Wait shapes in your case flow to pause the process and guarantee that the preceding process steps do not conflict with the data synchronization's replay of the last user action. For more information about using service-level agreements and Wait shapes, see Completing work on time and Pausing and resuming processes in cases.
    • You must configure reconciliation to handle conflicts and issues that you anticipate. Reconciliation must happen after the offline stage.
    Note: In every offline-enabled case type, configure a work queue for synchronization issues. In an event of an issue, a new case is created in that queue that contains the original assignment data. For more information, see Routing case status conflicts in offline mode.
  • Use available features only, for example, offline-supported flow processing features, controls, and actions.
    For more information, see Understanding offline features.
  • Remember that any rules that work in offline-enabled apps do not support parameters.
  • Avoid using declarative indexes in offline-enabled apps.
    In certain offline scenarios, declarative indexes might result in duplicate index entries in the database. For more information about this type of rules, see Using declarative indexes.
  • Configure data pages to store application data:

  • Store data in data pages, and do not use clipboard pages instead.
    Tip: For best performance results, use large data pages. In an offline-enabled app that use large data pages, only modified records synchronize with the server. For more information, see Improving the synchronization of offline-enabled mobile apps with large data pages.
  • Optional: To improve performance or work with data pages that are relatively large, use large data pages.
    When you use large data pages, only the records that you modify synchronize with the server. For more information about using large data pages in an application, see Improving the synchronization of offline-enabled mobile apps with large data pages.
  • Configure worklists to display operator assignments:

  • Use the D_pyUserWorkList data page in the EndUserUI ruleset as a template.
    The D_pyUserWorkList rule is preconfigured for use in offline-enabled apps. When you use this rule, assignments are available offline.
    Note: You can point the D_pyUserWorkList rule to a work queue instead of a worklist. You must then configure conflict resolution for the case, for situations when two users work on the same case offline.
  • Previous topic Working with offline-enabled mobile apps
  • Next topic Designing the user interface of offline-enabled mobile apps

Have a question? Get answers now.

Visit the Support Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best. is not optimized for Internet Explorer. For the optimal experience, please use:

Close Deprecation Notice
Contact us