How to copy mobile apps
A mobile application is made up of X3 code (classes, representations, scripts...) and administration data that describes the entities used to publish the services defined in X3 code. Copying a mobile application will therefore require:
This second step will use 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 will need to install the patch on the corresponding X3 folder, and to import 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 the following:
Entity (title) | Use standard profile | Filter | Export all | Comments |
---|---|---|---|---|
representationProxies (Representation) | No | No | Technical dependency mandatory in the description, but will never be 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 will be exported according to the mobile gadget list exported. 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 set, or a filter (or a list of key in the Exported object tab) must be given to select the gadgets that will be exported. For instance, if you want to export the gadgets associated to 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 dashboard list exported. 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 |