Editing Self-Describing Files

The Suprtool/iX Output-Link command creates a Self-Describing File, which is identical to any extract file, except that it also contains a complete description of the data fields within user labels that are added to the file. This allows you to feed the file back into Suprtool later and not have to Define the fields by column position. Very useful! So we recommmended that most output files be created as Self-Describing files.

On Thursday, February 15, 2001 at 12:26 PM, Larry McAfee at Merck (Larry_McAfee@merck.com) submitted the following question about Qedit and Suprtool through our web site problem form:

May I add/modify/delete records with Qedit to direct files with a file type of SD (self describing) without damaging the file?
At 12:39 PM (11 minutes later), Robelle's Technical Support manager, Paul Gobes, sent this reply:

Hi Larry,

Yes, you can edit a self-describing file with Qedit, but you need to be careful:

  1. To retain the SD label you need to either:
         /text mydata,labels
         / set work labels on  {I have this in my qeditmgr.pub.sys file}
  2. Deleting lines is no problem
  3. Adding lines, you need to make sure that you line up each field exactly in the correct columns; and watch out for non-byte fields, e.g. J1, P14, R6 ...; they are virtually impossible to add correctly in ASCII mode (of course they won't display properly in Qedit either).
  4. Changing data is no problem for character fields, as long as you stay within the column boundaries, but you have the same problems with Binary fields as you do when adding new records.

As a tip, I'd suggest using Visual mode, to help line up fields with existing records. But if you have binary fields, then visual will not see them as unprintable characters and not let you update those lines.

To workaround the problem with binary fields, you can set the margins to exclude the binary field,

 e.g.   /set left 1
        /set right 40      {if the first binary starts in col 41}
Just remember to unset the margins before you Keep the file, otherwise you'll lose some columns.
       /set left
       /set right      {resets the margins back to the defaults.}