This chapter explains how to use projects to manage your software development activities.
Mainframe Express makes it easy for you to manage your source code and its associated build process by grouping source files and build commands together into a project. The build process can include tasks such as preprocessing and compiling.
A project is a representation of all the source files (with dependencies) and build commands used to create your application or program. This information is held in a file with the extension .mvp. When you open a project (.mvp) file, its contents are shown graphically in a window known as the Project View. The Project View is your 'home base' when using Mainframe Express. From this window you can add and delete files, open files for editing and debugging and specify options for compiling and project-handling.
See the following for more information:
For a description of the Project View, see the section The Project View in the chapter The Mainframe Express Interface.
For more detailed information about compiling COBOL programs, including the use of Compiler directives, see the chapter Compiling COBOL Programs in your IDE Technical Guide.
If you are used to compiling and linking individual modules of code separately, you might wonder if the benefits derived from the additional effort involved in setting up a project are worthwhile. In fact, although it may take a little time to set up a project initially, the savings in time you make when working on your project more than compensate for this in all but the very smallest of programming tasks.
The main benefits of using a project for your work are:
When you use projects in Mainframe Express, you are able to spend less time on routine chores, such as configuring tools and managing your code and more time on productive tasks, such as programming and debugging.
The sequence of steps to follow when you create a project are:
Mainframe Express provides you with a Project Wizard which enables you to create the project's basic framework. You can create a completely new project, copy an existing project, or use a previously-defined template project.
Populate the basic framework with the relevant files. If you have been using COBOL Workbench and have created a .pop file, you can use this to specify the files to add to your project. If you copy an existing project or use a template project, you can choose to populate the new project with the source files from the original.
The processes that determine how Mainframe Express builds a project are specified in property sheets. These can relate to either the project as a whole or individual files. You can accept the defaults provided or you can finely control how each source file is compiled by changing the settings in its property sheets.
You can define build settings at the individual file level or at the project level, which affects all files in a project. Build settings specified at the file level override those made at the project level.
The following list summarizes the different ways of setting options:
Note: You can reparse your source files after changing the project settings (or at any other time) by clicking Reparse For Build Settings on the Build menu.
Information on the files in a project is provided under column headings in the right-hand pane of the Project View. For example:
For information about sorting these columns, see Windows Tips in your Getting Started.
With a few mouse clicks, you can use the project settings and build settings to try out different options, update your project with the latest source changes and rebuild dependent files, creating the compiled files into your chosen directory.
Note: If the Project View becomes out of step with a project's files (for example, if you overwrite one file with another version), there are two options you can use to you can update the display:
Project settings apply to all files in a project. The Project Wizard enables you to create a new project and specify its settings. Any changes that you make in the Project Settings dialog box affect the whole project. None of the settings on the Project Settings dialog box can be overridden on a per-file or per-type basis.
The settings for a project are grouped together as a number of pages on the Project Settings dialog box - see Figure 4-1. Because the settings available depend on the installed product options, you see different pages for different file types on the Project Settings property sheets. Each page has a tab - selecting a page's tab displays that page.
Figure 4-1: The Project Settings Dialog Box
The list below describes the purpose of each page of the Project Settings dialog box and the changes you are most likely to make.
Page | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
Aliases | Enables you to specify the mapping between standard system program-names and the Mainframe Express tool which provides the program function on the PC. (Standard system program-names are those which you use in JCL jobs, for example, DFSORT.) The default list is usually acceptable for most applications. | ||||||||
Catalog | Enables you to control catalog
properties. It has three subtabs - General,
Spool and User.
For example, you can use this page to change the location of the System catalog. The default of .\Catalog.Dat indicates that the file is held in the current folder, which is where the project file is held. You might want to use a location on either a different local drive to save space or a network so that the catalog can be shared. |
||||||||
CICS | Enables you to use the CICS Option and to specify the region addressing mode. See the chapter Configuring CICS Regions in your CICS Option Technical Guide for more information on regions. | ||||||||
Execution | Enables you to control the batch
execution environment. It has four subtabs - General,
Assembler, JCL and
Migration.
|
||||||||
General | Enables you to control general project
properties. It has four subtabs:NLS,
Workgroup, Extensions and
Build.
|
||||||||
LE | Enables you to specify language environment run-time options. It has two subtabs - General and Heap. | ||||||||
IMS | Enables the IMS Option. See the chapter The IMS Option Interface in this guide and your IMS Option Technical Guide for further details. | ||||||||
SMS | Enables support for Storage Management Subsystem (SMS) data classes. See the section Using SMS Data Classes in the chapter Compatibility with the Mainframe Environment. | ||||||||
SQL | Enables the SQL Option for DB2. See the chapter SQL Option for DB2. |
The build settings are grouped together under a number of pages on the Build Settings dialog box - see Figure 4-2. Because the settings available depend on the file type, you see different pages for different file types on the Build Settings property sheets. Each page has a tab - selecting a page's tab displays that page.
Build settings on each page lists the directives that are passed to the relevant compiler at build-time.
Each page also includes an Additional directives box which enables you to specify directives that are not otherwise available from the Build Settings dialog box. Directives you specify in this field are not validated until they are passed to the relevant compiler.
For information on the directives you can specify, see the help topic Compiler Directives by Category
Figure 4-2: The Build Settings Dialog Box
The list below describes the purpose of each page of the Build Settings dialog box.
Page | Description |
---|---|
Assembler | Specify build settings for your Assembler programs and subprograms. It has four subtabs - General, Link, Preproc and Adv. |
BMS | Specify build settings for applications that use BMS mapsets. It has two subtabs - General and Advanced. |
COBOL | Specify build settings for your COBOL
programs. It has three subtabs - General,
Preproc and Listing.
COBOL dialect holds a list of pre-built dialect settings supplied with Mainframe Express. There are two methods by which you can change these dialect settings:
You cannot use either of these methods to override some aspects of behavior that are controlled by the workgrouping environment. For example, the location of intermediate code files that Mainframe Express produces is controlled by the workgrouping environment, so specifying the INT directive in either of the Additional directives fields has no effect. Other directives that have no effect when specified in the Additional directives fields are GNT and LISTPATH. |
DBD | Specify build settings for applications that use DBD files. It has two subtabs - General and Advanced. |
Linker | Specify build settings for the Assembler linkage editor. It has two subtabs - General and Advanced. |
MFS | Specify build settings for applications that use MFS files. It has two subtabs - General and Advanced. |
PSB | Specify build settings for applications that use PSB files. It has two subtabs - General and Advanced. |
Note: Mainframe Express parses each source file when it is added to a project, in order to determine which build settings are required. You can reparse your source files at any other time by clicking Reparse For Build Settings on the Build menu.
Dependencies exist when one file includes a link to another file - one file is said to be dependent on the other. For example, a COBOL source file that contains a COPY statement is dependent on the copybook specified in the COPY statement. That is, if the copybook changes, the COBOL source file that uses it needs to be recompiled.
When you perform a build operation, Mainframe Express scans your files for dependencies. It recognizes all changes (new dependent files, changed dependent files and deleted dependent files) and it rebuilds the files affected. As a result, you should not normally need to update dependencies. However, if necessary, you can update the project's dependency chain manually by clicking Update All Dependencies on the Build menu. Alternatively, you can select only the files whose dependencies have changed and click Update Dependencies on the Build menu.
If you are unsure whether or not a file has dependencies, or is a dependent file itself, you can view dependency information by selecting the file then clicking Show Dependencies on the Build menu.
You can minimize the size of a project, using either the IDE, or the mfecl command. To minimize a project using the:
Notes:
You can export project settings in XML format to another file. This is intended to be of use to an administrator needing to view project settings offline. You do this by specifying the /EXPORTXML option to the mfecl command. See the help topic XML Project Export for more information.
Note: There is no import facility. The format of the XML might change in a future release.
Copyright © 2006 Micro Focus (IP) Ltd. All rights reserved.