A production publish is performed to an instance of the Agentry Production Server within the SAP Mobile Platform Server, typically when it is time to deploy the application to users. Additionally, production environments are normally established for the purposes of quality assurance testing prior to deployment. This can include publishing a new application project or publishing modifications to an existing project to create a new application version.
A production publish will transfer the application project from the Agentry Editor to the Agentry Server. The location of the project on the file system for the Agentry Server is the Agentry Server configuration directory in the sub-directory Application\Production. The entire project from the Agentry Editor is written to a single file at this location with an extension of .agpz. This file encapsulates the application for the version published. Note that in addition to this file, it may be necessary to manually transfer additional resources, where needed, depending on the nature of the application’s synchronization logic. Examples include .jar files containing Java resources, .dll files, or other similar resources. Such files are completely dependent on the mobile application’s architecture.
During the production publish the version number and deployment date and time can be specified. The specified version number can affect the behavior of the application during client-server synchronization of the new version, with a change to the major version number having one affect and a change to the minor or modification number another.
As a part of the process of performing a production publish, the version number for the application must be specified. The first time a production publish is performed to the Agentry Server, the version number will be 1.0. During subsequent production publishes to the same Agentry Server instance, the version number is changed based on the selection made in the Publish Wizard.
An Agentry project’s publish version contains the three components major, minor, and modification number. In the publish version 3.2 mod 1, the 3 is the major version, 2 is the minor version, and mod 1 is the modification number. The Publish Wizard will contain a section where the developer will specify which of these should be changed. This selection impacts the behavior of the application during the next synchronization by the Agentry Clients.
The specific difference is related to the processing of transactions sent from the Agentry Client to the Agentry Server. Depending on the nature of the change made to the application, it is possible that changes captured on the Agentry Client in transactions using the previous application version will be incompatible with the new version of those same transactions. When the synchronization definitions of the transaction (server data state or update steps) perform processing that will not work with the previous version of the application, it is necessary to process the pending transactions with the previous application version. To force this behavior, change the production publish version by incrementing the major version number.
When a new major version is specified, the Agentry Server will process each transaction sent by a Client using the old version of the application. Once all transactions have been processed, the new version of the application will be sent to the Agentry Client and dictate any subsequent synchronization behaviors. When either the minor or modification numbers are changed, the new version of the application takes effect immediately, before the pending transactions on the Agentry Client are processed.
Because of this behavior, it is the responsibility of the developer performing the publish to determine which behavior is desired, and to then select the proper change to the publish version of the application.