I agree. Moreover, there are things COB2SAS does not handle besides OCCURS
depending on. I have seen problems with REDEFINES when items are redefined
inside a complex structure. Plus, COBOL evolves, too (even though it may
sound like an oxymoron), and it takes a lot of effort to follow updates and
implement respective changes. For this and other reasons, I have quit using
However, the situation is not hopeless. Almost the entire demand for this
kind of translation is concentrated in the real-computer world, and most
mainframe shops license FILEAID. The latter handles *any* COBOL (including
the latest IBM Cobol) and PL/I layout flawlessly, and the folks at Compuware
follow updates religiously, this being their bread and butter. Normally,
FILEAID is run on-line, but I find its batch version most useful. In
particular, given a Cobol or PL/I layout, it produces a file with starts,
stops, lengths, and type specifications. Cretaing a SAS "layout" from such a
file is a first-grade assignment for a SAS or REXX programmer. As a matter
of fact, since FILEAID, as any program having a system-catalogued load
module, can be run from a SAS session as a non-SAS proc, the entire things
is easily handled by a pretty concise SAS program. For those hating batch,
there is a %WINDOW DM interface prompting for the file names and such and
spitting the output.
Needless to say, those outside of the S/390 enviroment are out of all such
May you have a very Merry Christmas.
Paul M. Dorfman
>From: Peter Crawford <peter.crawford@DB.COM>
>Reply-To: Peter Crawford <peter.crawford@DB.COM>
>Subject: Re: Info - COBOL data descriptions
>Date: Thu, 21 Dec 2000 15:03:47 +0100
>My comments are based on experience with the v6 version of
>sas2cob, so things may be better in a v8 version.
>I think the only bit "too optimistic" is hoping that the sas2cob
>routines can do the whole job of building the input datastep.
>It seemed to have difficulty handling variable length sections
>following "occurs depending on" sections. This limitation was
>described in the readme notes with sas2cob.
>This difficulty is probably reasonable as the structure will be in
>need of logical "normalisation" rather than expansion within one
>data vector. Perhaps OK in the data step data vector, but it
>doesn't help analysis, data storage, nor run times.
>For example, one customer database held a group of 11fields
>repeating up to 366 times (daily positions over the last 12 months).
>This normalizes better as a separate table of info for each active
>day for the customer, rather than force 11*366 variables into the
>customer table along with the thousand other variables.
>The big wide table was the original design, which sas2cob nearly delivered!
>Datum: 21/12/2000 13:33
>Antwort an: firstname.lastname@example.org
>Betreff: Re: Info - COBOL data descriptions
>did you find the old (V6) code? If yes, it should be not a big problem to
>take the peace of code out, which reduces the COBOL variables to 8 chars.
>You simply can replace the 8 or 7 with the length-limit of SAS V8
>variables. I think there is a kind of redundancy check in the SAS macro,
>because sometimes you get redundant names if you cut off some chars. This
>problem should not occure now any more, but you can leave this code as it
>is. There should be no problem with that.
>I've not seen the code, but I expect no big problems. Am I too optimistic?
>Diese E-Mail enthält vertrauliche und/oder rechtlich geschützte
>Informationen. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail
>irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und
>vernichten Sie diese Mail. Das unerlaubte Kopieren sowie die unbefugte
>Weitergabe dieser Mail ist nicht gestattet.
>This e-mail may contain confidential and/or privileged information. If you
>are not the intended recipient (or have received this e-mail in error)
>please notify the sender immediately and destroy this e-mail. Any
>unauthorised copying, disclosure or distribution of the material in this
>e-mail is strictly forbidden.
Get your FREE download of MSN Explorer at http://explorer.msn.com