Builder contains the following architectural elements:
Model validation
Logic validation
Change analysis
Code optimization
Generation management
Task list management
Code generation
Database schema generation
Deployment control-file generation as needed
Compilation management and monitoring
Deployment initiation and monitoring
While the general approach to the design of Builder is similar to Direct Generate in previous releases of Enterprise Application Builder, and uses many of the ideas used in that component, a new design builds on those ideas and introduces other concepts. The most important of these design concepts is:
Abstraction and separation of all specific language constructs to be generated from the code which generates them. This allows the generation process to become more generalized thus allowing easier adoption of new runtime processing paradigms and/or generation of different intermediate languages.
The design of the Generation process is based on a combination of our previous experience in generation and the results of investigations, which were carried out to determine a more effective ways to generate. Of significance is the need to target multiple languages and run-time technologies (in separate Generates). This is done using a single generate engine by clear separation and enforcement of the boundaries between the target language code to be generated and the generation process. The following principles guide the generation design:
No target language code or assumptions are contained in the generate engine.
Code to be generated is as minimal as possible.
The same output artifact is not generated more than once in any generate.
In association with the Parser, and other components which use it, a smart Abstract Syntax Tree (AST) is designed which provides a more efficient means of generating and executing (debugging/testing) user logic.
MCP Builder
The MCP Builder is invoked when an AB Suite application is built using an MCP configuration. MCP Builder generates COBOL source files, ALGOL source files and other resources from the business model created in AB Suite Developer. While building an AB Suite application, the generated files and resources are transferred to the host machine where they are compiled and deployed into a MCP application. MCP Builder also generates the database schema of the AB Suite application.
MCP Build Process
The MCP Build process comprises of the following phases:
Build
Deployment
The Deployment phase comprises of the following sub-phases:
Compile and Bind (for system and report builds)
System Deployment (for system builds only)
The Deployment phase might be delayed by using the Delay Compile and Deploy option on the Host Login dialog.
If required, the Deployment sub-phases might be restarted from the Application Builder Server on the host. The ability to restart the Deployment sub-phases is dependent on a successful Build phase.
MCP Build Options
When an AB Suite application is built using an MCP configuration, the Host Login dialog box displays deployment options specific to MCP Runtime. The build options are:
Retain Existing Database
Accesscode and Password
Usercode and Password
Chargecode
Use Host details for FTP
FTP Usercode and Password
FTP Chargecode
Delay Compile and Deploy
Deploy Date
Deploy Time
These options are used to specify whether to retain an existing database, where and when the application is deployed. The following table describes the different options:
Property |
Function |
---|---|
Retain Existing Database | When Retain Existing Database is checked, database of the application being built is retained if it already exists. When Retain Existing Database is unchecked, a new database is created. If a database with the same name already exists, it is overwritten. You are prompted to confirm your action. |
Usercode and password | Usercode specifies the host usercode under which the application is built. This usercode is used as the FTP account if the Use Host Details for FTP box is checked. |
Accesscode and password | If the host usercode under which the application is deployed has an accesscode associated with it, the accesscode and password must be entered to allow deployment to proceed. |
Chargecode | If the host usercode under which the application is deployed has a chargecode associated with it, the chargecode must be entered to allow deployment to proceed. |
Use Host Details for FTP | When Use Host Details for FTP is checked, Usercode is used as the account for the transfer. When Use Host Details for FTP is unchecked, FTP Usercode is used as the account for the transfer. |
FTP Usercode and password | FTP Usercode specifies the host usercode to be used as the FTP account if the Use Host Details for FTP box is unchecked. |
FTP Chargecode | If the FTP Usercode has a chargecode associated with it, the chargecode must be entered to allow deployment to proceed. |
Delay Compile and Deploy | When the Delay Compile and Deploy box is unchecked, the Deployment phase starts immediately after the Build phase has finished. Builder continues to monitor the deployment activities. When the Delay Compile and Deploy box is checked, Builder is suspended at the end of the Build phase until the date and time specified in the Deploy Date and Deploy Time options. |
Deploy Date | Date on which deployment of the application starts. Format is dd/mm/yyyy. |
Deploy Time | Time at which deployment of the application starts. Format is hh:mm:ss. |