Record Structures

You can change record structures with the Record Elements Import wizard.  This wizard has become more powerful in version 3.0.0 and must now be started from the Properties view (the menu item in the Diagram menu is gone forever).  There are 2 area’s in the Properties view that you can use to go ahead with modifying the structure of any record :

  • On the ‘General‘ tab :


Click on the ‘Edit record element(s)‘ hyperlink to open the import wizard.

  • On the ‘Length‘ tab :


You can click on either the data length or control length values to start the wizard.

Once the wizard is active, there are a few ways in which you can go ahead with changing the record structure; new in version 3.0.0 are :

  • directly specifying record elements DSL – you need to be familiar with the record element DSL.
  • connecting to a live IDMS dictionary on (one of) your mainframe(s) and use the structure of any record synonym that is defined there – note that you need to have either the SQL Option or the (free) SQL Web Connect feature for this).


You will notice that, in contrast to previous versions of the schema diagram editor, the current record structure (on the wizard’s first page) is shown in record elements DSL format.  This used to be regular IDMS schema syntax, but the DSL is a litte more compact and you will thus have a better overview of the current record structure (I think).

If you choose to directly edit the record elements DSL, you will have to press the Validate button before you can proceed.  Any errors in the syntax will prevent you to advance to the final page and you will get a groovy error message that indicates your syntax is (somewhere) in error.  Pressing the Reset button undoes any changes you made.


When you go for the IDMS dictionary MO, you will be presented a list of dictionaries (that you defined in your Eclipse workspace) first, and after selecting a dictionary you will be able to search for a record synonym (no list here since that would take far too long to produce, at least if you have a lot of record synonyms in your dictionary).  I’m sorry I cannot show a screenshot of the record synonym search page (no mainframe at home, sorry).


The last wizard page gives a preview of the new record structure (in my example I changed the PICture of  the EMP-ID-0415 element and added the NEW-FIELD-0415 element).  It’s up to you to go ahead with the change  or not (by pressing either the OK or Cancel button) (but thank God you still have Eclipse’s undo/redo functionality available should you change your mind).


To conclude, a word about the record elements DSL itself.  You may find that it looks a little bit like regular IDMS schema syntax and you’re right, with the difference that you MUST code every aspect for a given element on the SAME LINE.  The best advice I can give you is to look at the record elements DSL for some of your schemas and you’ll soon see that there is no magic.

Some areas of the record elements DSL need some explanation however, e.g. cases where you have base records, for which you define record synonyms (with suffixes or prefixes, but I’m not sure how well the schema diagram editor handles the latter), that you use in your schemas (this is how we’ve worked for the last 30 years or so).  You’ll see that the base element name will appear in parentheses following the element (synonym) name, like so :

02 IDMS-RELEASE-7301 (IDMS-RELEASE) picture 9

Other cases involve indexes on OCCURS clauses :

02 ELEMENT-1 picture X(8)
   occurs 5 indexedBy ELEMENT-WITHOUT-BASE-NAME, 

Remember to code everything that belongs to 1 element on the same line, so just assume that all of the above is on the same line.

I believe the diagram editor is now (and finally) in a stage that it can be used to design IDMS databases from scratch and edit existing ones in every facet.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s