Skip to main content
Version: 8.1

Mobile app manifest basics

Level: advanced

The mobile application manifest describes the structure of the mobile app, its objects and connections between them. The base version of the Mobile Creatio app is described in the manifest located in the MobileApplicationManifestDefaultWorkplace schema of the Mobile package.

In the process of the mobile app development, the users can add new sections and pages. All of them must be registered in the manifest for the application to be able to work with a new functionality. Since third-party developers have no ability to make changes to the manifest of the base app, the system automatically creates a new updated manifest each time a new section or page is added from the mobile application wizard. The manifest schema name is generated according to the following mask: MobileApplicationManifest[Workplace name]. For example, if the Field sales workplace is added to the mobile app, the system generates a new manifest schema with the name MobileApplicationManifestFieldForceWorkplace.

Mobile application manifest structure

The mobile application manifest is a configuration object whose properties describe the structure of the mobile app. Table contains names and descriptions of the mobile application manifest.

Manifest configuration object properties

Property

Purpose

ModuleGroups

Describes the properties of the mobile app modules.

Modules

Describes the properties of the mobile app modules.

SyncOptions

Describes data synchronization parameters.

Models

Contains configuration of the imported application models.

PreferedFilterFuncType

Determines the operation that will be used to search and filter data.

CustomSchemas

Connects additional schemas to the mobile app.

Icons

Enables adding custom images to the app.

DefaultModuleImageId

Sets default image for UI V1.

DefaultModuleImageIdV2

Sets default image for UI V2.

All properties of a configuration object in the manifest can be split into three general groups:

  • Application interface properties contain properties that implement the mobile app interface. By using the properties in this group, the application sections and main menu are shaped and custom images are configured.
  • Data and business logic properties contain properties where imported data and custom logic is described.
  • Application synchronization properties contain a single property for synchronization with the primary application.

Application interface

The conditional property group of the configuration object manifest contains properties that form the mobile application interface. By using the properties of this group, you can form application sections, main menus, custom images, etc.

Access modifiers of a page

The mobile application version 7.11.0 or higher has the ability to configure access modificators of section or standard detail. For example, you can disable modifying, adding and deleting records for all users in the section.

To set the access in the read only mode, add the code to the schema which name contains ModuleConfig:

Setting the access in the read only mode
Terrasoft.sdk.Module.setChangeModes("UsrClaim", [Terrasoft.ChangeModes.Read]);

Or for the standard detail:

Setting the access in the read only mode for the standard detail
Terrasoft.sdk.Details.setChangeModes("UsrClaim", "StandardDetailName", [Terrasoft.ChangeModes.Read]);

As a result the adding button will be disabled on the list page and the modifying button will be disabled on the view page. The Add, Delete, Add record to the embedded detail, etc. buttons will be also disabled on the view page.

Access modificators could be combined. For example, the code could be used to disable deleting and enable creating and modifying the records:

Access modificators combining
Terrasoft.sdk.Module.setChangeModes("UsrClaim", [Terrasoft.ChangeModes.Create, Terrasoft.ChangeModes.Update]);

All access modificators are given in the Terrasoft.ChangeModes enumeration.

Control elements

You can add the following control elements to the section page:

  • Terrasoft.ColumnSet column groups;
  • Terrasoft.EmbeddedDetail embedded details;
  • standard details;
  • inheritor components of the Terrasoft.RecordPanelItem class.

Use the mobile application wizard to add the first three types of control elements.

To add an inheritor component of the Terrasoft.RecordPanelItem class to the section page:

  1. Extend the Terrasoft.RecordPanelItem class with a custom class. Define the component configuration object and the functionality methods in the custom class.
  2. Create a section settings schema (Mobile[Section]ModuleConfig). Using the addPanelItem() method of the Terrasoft.sdk.RecordPage class in the schema, implement adding the created component to the section page.
  3. Add the new custom schemas to the mobile application manifest.

Application data and business logic

The group of properties of a configuration object in the mobile app manifest. contains properties that describe imported data, as well as custom business logic for processing data in the mobile app.

Application synchronization

The conditional property group of the manifest configuration object contains a single property used to synchronize data with the main application.