How to copy mobile apps
A mobile application is consists of X3 code (classes, representations, scripts...) and administration data that describes the entities used to publish the services defined in X3 code. When copying a mobile application you need to:
This second step uses the export profile tool with a relevant list of entities and properties to be exported. This document describes an example of such a setup, to be adapted.
Installing the mobile application requires:
* Installing the patch on the corresponding X3 folder
* * Importing in MongoDB the JSON file generated by the export tool.**
The description of the entities to be exported to get a complete description of a mobile application is as follows:
Entity (title) | Use standard profile | Filter | Export all | Comments |
---|---|---|---|---|
representationProxies (Representation) | No | No | Technical dependency mandatory in the description, but is never exported. Only entity and representation properties are present here in both Profile item key and Profile item attributes tabs. | |
applications (List of applications) | No | No | Technical dependency as well. Only application and contract properties are listed in Profile item key tab. | |
roles (role) | No | No | Technical dependency as well. Only code property is listed in Profile item key tab. | |
mobileGadgetParams (mobileGadgetParam) | No | No | Child entity of the mobileGadget entity. Therefore, no condition has to be given, the values are exported according to the exported mobile gadget list. The Profile item key tab contains only the name property, and the Profile item attributes tab lists the following properties: name, title, and value | |
mobileGadgets (mobileGadget) | No | This is the main entity to be exported for the gadgets definition. Here, the check box Export all must be selected, or a filter (or a list of key in the Exported object tab) must be given to select the gadgets that are exported. For example, if you want to export the gadgets associated with a given factory code XXX, you can use the following condition: ($factory eq true and $factoryOwner eq 'XXX') The profile key is code, and most of the properties are listed in the Profile item attributes tab: action, code, description, entity, externalUrl, gadgetType, icon, keyParameter, mobileDashboard, parameters, representation, requestLevel, requestName, statName, title, ProcessLeg, processMenu, processName, application, representationRef | ||
mobileDashboardVignettes (mobileDashboardVignette) | No | No | Child entity of the mobileDashboard entity. Therefore, no condition has to be given, the values will be exported according to the exported dashboard list. The Profile item key tab contains only the persistendId property, and the Profile item attributes tab lists the following properties: displayStyle, gadget, and persistentId | |
mobileDashboards (mobileDashboard) | No | This is the main entity to be exported for the mobile dashboards definition. Here again, you must define the right selection criteria. The same condition can be used to retrieve data for a given factory code: ($factory eq true and $factoryOwner eq 'XXX') The profile key is dashboardName, and the properties listed in the Profile item attributes tab are: description, title, dashboardName and vignettes | ||
mobileApplications (mobileApplication) | No | This is the main entity to be exported for the mobile applications definition. Here again, you must define the right selection criteria. The same condition can be used to retrieve data for a given factory code: ($factory eq true and $factoryOwner eq 'XXX') The profile key is applicationName, and the properties listed in the Profile item attributes tab are: applicationName, description, homeDashboard, iconName, roles, title, and versionNumber |