Getting to Know GEN

Document created by Chris_Short Employee on Apr 20, 2011Last modified by Chris_Short Employee on Jun 13, 2014
Version 3Show Document
  • View in full screen mode

Number 1 Tip…Save Often!

Nothing is more frustrating than losing hours or even days worth of work. In or to avoid losing hours of valuable work time, remember to save often! To save your model, click on the disk icon anywhere within the toolset, or hit the (Ctrl + V) keys on the keyboard.

It is, however, not even advisable to have days worth of work. As a general guideline, updates to the model must be made at least once a day. You never know what might happen.

Note: Gen 6.5 and beyond have an option to automatically save your work on a regular basis.

Gen Model Directory Structure

Figure 1.1 below shows the basic CA Gen model directory structure. Every time you create a model or checkout a subset, the basic folders BITMAP, C, OLE, COBOL, and DDL are automatically created for you. These folders are the location of your generated files. For example, if you are generating and compiling in C++ all your source code and executables will be placed in the C folder of your model’s directory. The COM and JAVA folders shown in Figure 1.1 are created when the respective proxy types are selected for generation.


In Figure 1.2, the Local name that you specify here will be the same name of the main model directory with an .ief extension. CA Gen can only read model names that have .ief extensions. The name of your model can be no more than eight characters in length.


The bitmap folder is where CA Gen points to when locating your bitmap images during window design. Figure 2 below shows the image and the message that are displayed when the images that you used during window design are not in the bitmap folder. Remember that when you get unhappy faces, you just need to check your bitmap folder. (please see bitmaps in Unit 2 Window Design Tips)


Important Model Files

The following files mentioned below are files found in the models.ief root directory. The significance of some of the files are described below.

Data Files

There are four data files that make-up the entire CA Gen model. These files can transferred to another workstation or another .ief directory and it would still be a valid working model.

IEF0000.DAT, GLOBAL DATA FILE Contains key information about the model: global variables such as long model name, subset name, and software version.

IEF1200.DAT, MAIN DATA FILE Contains model objects, properties, associations, and memory management tables.

IEF0700.DAT, DESCRIPTION FILE Contains all textual descriptions of the objects contained in the IEF1200.DAT file.

IEF2511.DAT, ACTIVITY FILE Contains all the changes to the model such as add, delete, or modify object This file is the basis for the update.trn file which is used to update the model on the encyclopedia. The size of this file may influence when an update of the encyclopedia should be performed.

How to Improve Performance

To improve the performance of automatic check-in and check-out, select the file transfer option (found on the workstation toolset; select Options, then Encyclopedia Communications). If your model is large or transactions have been frequent, update often. Periodically, check in your model to reduce the size of files and reduce fragmentation in storage.

Failure to check in periodically can eventually result in a fatal error when you try to check in a model. The error occurs when the IEF1200.DAT file exceeds its maximum record count. The accompanying message is: “Memory error: No more record structures available.''

You can also improve performance by lessening contention. Do this by checking in changes on a regular, daily basis. You may wish to designate times for check-ins, check-outs, and other maintenance. Refer to the concurrence matrix for encyclopedia operations that can and cannot run concurrently.

Transaction Files

checkout.trn The checkout.trn contains all the objects and information necessary to create a subset or a model on your workstation. The size of this file varies depending on how many objects were specified in your subset definition and included during expansion.

Caution: The checkout.trn can be checked out anytime and may seem to be an active model. Always check the model retrieval status report. (please see model reports in this unit)

update.trn The update.trn file contains all changes that have been made to the model since last checkout. It is usually wise to create this .trn file and upload it to the encyclopedia at least every other day. To play it safe, always send an update at the end of the day or whenever you have done a substantial amount of work. This file will be sent to the encyclopedia to update the model.

When uploading changes, the user has the option of updating with checkin or updating without checkin. Regardless of which option is chosen, the update.trn file is what will be sent to the encyclopedia.

verify.trn The verify.trn contains information about the status of the model in the encyclopedia. It brings in a report of what objects have been added. Once an update has been performed, no further modification should be done until a verify has been made. This will cause the workstation model to become out of sync with the encyclopedia on the host. If an update with checkin was selected from the model/encyclopedia option the workstation, the file will set the workstation model to read-only.

PDX Files

PDX are your Protection Downgrade report files. These are used by the model for displaying the model retrieval status reports. These files are Important in determining what type of downgrades occurred during checkout. The format can be read only when you go into the reports menu item in the CA Gen toolset. (please see model reports in this unit)

It has the following format: mmddhhmm.PDX

DNX Files

DNX are your Duplicate Name report files. These files are used by the model to display the status of a successful checkin. The format can be read only when you go into the reports menu item in the CA Gen toolset. (please see model reports in unit)

It has the following format: mmddhhmm.DNX

Model Information

By selecting Model … Info from the main CA Gen window, the developer can view important information about the subset located on the workstation. It tells you the location of your model and the local name. It indicates the status of your model whether it’s checked-in, checked-out, or even whether it had failed an update. It also indicates the maximum number of objects you can create in this subset. Unless you do a HUGE amount of work, this number will not be exceeded.


Model Reports

Each time a subset is checked out or an update of the encyclopedia is performed, a report is created. It will show any conflicts or errors that may have occurred during the check-out or update process. To open the Reports window, click Model … Reports on the main CA Gen window. The list of reports on the workstation can then be accessed by selecting File … Open from the Reports window.


Whenever you do a checkin, CA Gen creates a report for you based on the date and time the action was done. If a checkin was executed, you will see an Encyclopedia Update Status report. On the other hand if a checkout was executed, you will see a Model Retrieval Status report.

It is very important to review the reports. When you do a checkout, make sure that the timestamp of the report matches when you did the checkout. This is important for non-seamless checkout because you could be using a checkout.trn that is 30 days old and not the current one you just checked out.

CA Gen Model Paths

The Paths pop-up window lets you define subdirectories to read from or write to when storing files regarding data, output, models, record, and work. It is launched by click on Options … Paths on the main CA Gen window.


Data: Specifies where the CA Gen executable is stored along with associated read-only files.

Output: Specifies a path for files you want to save outside of CA Gen.

Models: Specifies a path for the subdirectory in which CA Gen stores and accesses all files that define or relate to specific models.

<!-- wikipage stop -->