This is the final stage of Data Migration. Approved records in Output Container and Basic Data Container which are ready for deployment appear in the deployment container. User can simulate deployment or do the actual write to the database. In order to see any data in the Deployment Container, the Filters have to be set for a specific Migration Object and a Target Table. If a given record is deployed and does not exist in the environment, record will be 'INSERT' via the Standard New__ method in the API and if already exist, records will be 'UPDATE' via the standard Modify__ method in the API. If user want to deploy data via a method other than them, they can define Other deployment Method.
In Data Migration Manager, it is possible to create Additional Deployment Processes per Target Table. There are 2 different types of Additional Deployment Processes. Pre Deployment, modifies the data in the Target Table, before it is deployed, and Post Deployment, modifies the records after it has been deployed in the Target Environment. If a Template Project is used, it usually contains a number of predefined Pre and Post Deployment processes.
Deployment container has a generic table structure similar to other with 12 columns to store key field values, 400 columns to store non-key field values and 12 columns called 'Target Key' to fetch key values from the target environment it is deployed to. This happens if the Key Field is defined to be “Auto Generated” in the Target Table Definition. If the deployed record has been deployed and maybe needs to be updated, Data Migration Manager needs to know the key values to be able to find the record. If the key value is auto generated, this value is created in the environment and needs to be fetched and stored in the Data Migration Manager for later use.
When Deploying Records to Target Environment, there are two different options to choose between. Deploy with Commit and Deploy without Commit. 'Deployment Without Commit' option helps to identify potential data deployment errors where the deployment transaction is rolled back at the end. 'Deployment with Commit' migrate the data record with a commit and upon successful deployment values of the key fields are fetched to the 'Target Key' columns, if they are Auto Generated. Only Deploy with Commit, can update the Deploy Status and the Deploy Date Time field. The Result of Deploy without Commit, is presented in the Deploy Message Field. Post deployment can be carried out with 'Deploy With Commit' Option only.
If a user wants to deploy a record using a method other than the standard New__ and Modify__, Other Deployment can be defined. Setting this method active will consider this method and not the New__ or Modify__ standard methods.
Pre and Post Deployment¶
It is possible to setup a chain of Methods, to be executed in a sequence, either before the deployment, Pre Deployment, or after the deployment, Post Deployment. The purpose of this is to have the possibility modify or update the data when needed.
Use the Sequence field, to define the execution order for the methods. The List of Value, will list all Methods, connected to the specified Target Table, but for the advanced user, it is also possible to specify other suitable methods if needed.
When a method is defined, its parameters need to be set. This requires, good knowledge about how the Methods and its parameters works. Define what Target Table fields should be used for Input and Output. It is also possible to use Default values as Input. The output value could be mapped to destination field(s). Each output field could be mapped to up to three fields if needed. User need to map the Target Table Fields in the Output Container, containing Legacy Data, against the correct Parameters. Some Parameter could have Default values, some is used for Input and some for Output. In the case of Functions FUNCTIONAL_RESULT denotes the output value.
- Pre Deployment could be used for Calculations of missing values, like sales prices, using, IFS methods for Sales Price calculations, or, to Update missing Key values, that is Target Environment Specific, like Sequence Numbers.
- Post Deployment is typically used for different kind of Updates of Records, or Status Updates for transactions that should be further processed. Like Customer Orders, after they've been created. When Status updates is used, it is possible to specify a field to be used for execution condition, like Order Status.