Guidance
指路人
g.yi.org
Guidance Forums / Reginald Rexx / FUNCDEF - would appreciate some help

Register 
注册
Search 搜索
首页 
Home Home
Software
Upload

  
Forum List • Thread List • Refresh • New Topic • Search • Previous • Next First 1 Last
Message1. FUNCDEF - would appreciate some help
#12280
Posted by: Michael S 2008-01-30 20:19:59 Last edited by: Michael S 2008-01-30 20:21:10 (Total edited 1 time)
Can anyone help me here. I would like to try and call an external routine from Reginald. In COBOL, it is called with an area defined as follows

           05  getct-version       pic x(02) comp-x.  
               *> structure version.  low-values 
           05  getct-reserved      pic x(02).
               *>  low-values
           05  getct-mvs-dsname    pic x(44).
           05  getct-mem-name      pic x(08).           
           05  getct-pc-dsn        pic x(260).
           05  getct-recfm                  pic  x(04).
                78 vsam-keyed                VALUE 'KS'.
                78 vsam-entry-sequenced      VALUE 'ES'.
                78 vsam-relative-record      VALUE 'RR'.
                78 vsam-linear-sequenced     VALUE 'LS'.
                78 recfm-f                   VALUE 'F'.
                78 recfm-fa                  VALUE 'FA'.
                78 recfm-fb                  VALUE 'FB'.
                78 recfm-fba                 VALUE 'FBA'.
                78 recfm-fbm                 VALUE 'FBM'.
                78 recfm-fbs                 VALUE 'FBS'.
                78 recfm-fm                  VALUE 'FM'.
                78 recfm-fs                  VALUE 'FS'.
                78 recfm-lseq                VALUE 'LSEQ'.
                78 recfm-u                   VALUE 'U'.
                78 recfm-v                   VALUE 'V'.
                78 recfm-va                  VALUE 'VA'.
                78 recfm-vb                  VALUE 'VB'.
                78 recfm-vba                 VALUE 'VBA'.
                78 recfm-vbm                 VALUE 'VBM'.
                78 recfm-vbs                 VALUE 'VBS'.
                78 recfm-vm                  VALUE 'VM'.
                78 recfm-vs                  VALUE 'VS'.
                88  getct-vsam-keyed-88      VALUE vsam-keyed.
                88  getct-vsam-entry-sequenced-88
                                             VALUE vsam-entry-sequenced.
                88  getct-vsam-linear-sequenced-88
                                            VALUE vsam-linear-sequenced.
                88  getct-vsam-relative-record-88
                                             VALUE vsam-relative-record.
                88  getct-recfm-f-88         VALUE recfm-f.
                88  getct-recfm-fa-88        VALUE recfm-fa.
                88  getct-recfm-fb-88        VALUE recfm-fb.
                88  getct-recfm-fba-88       VALUE recfm-fba.
                88  getct-recfm-fbm-88       VALUE recfm-fbm.
                88  getct-recfm-fbs-88       VALUE recfm-fbs.
                88  getct-recfm-fm-88        VALUE recfm-fm.
                88  getct-recfm-fs-88        VALUE recfm-fs.
                88  getct-recfm-lseq-88      VALUE recfm-lseq.
                88  getct-recfm-u-88         VALUE recfm-u.
                88  getct-recfm-v-88         VALUE recfm-v.
                88  getct-recfm-va-88        VALUE recfm-va.
                88  getct-recfm-vb-88        VALUE recfm-vb.
                88  getct-recfm-vba-88       VALUE recfm-vba.
                88  getct-recfm-vbm-88       VALUE recfm-vbm.
                88  getct-recfm-vbs-88       VALUE recfm-vbs.
                88  getct-recfm-vm-88        VALUE recfm-vm.
                88  getct-recfm-vs-88        VALUE recfm-vs.
            05  getct-dsorg                  pic  x(04).
                78  dsorg-pdsm               VALUE 'PDSM'.
                78  dsorg-po                 VALUE 'PO  '.
                78  dsorg-ps                 VALUE 'PS  '.
                78  dsorg-vsam               VALUE 'VSAM'.
                78  dsorg-gdg                VALUE 'GDG '.
                78  dsorg-is                 VALUE 'IS  '.
                88  getct-dsorg-pdsm-88      VALUE dsorg-pdsm.
                88  getct-dsorg-po-88        VALUE dsorg-po.
                88  getct-dsorg-ps-88        VALUE dsorg-ps.
                88  getct-dsorg-vsam-88      VALUE 'VSAM'.
                88  getct-dsorg-gdg-88       VALUE dsorg-gdg.
                88  getct-dsorg-is-88        VALUE dsorg-is.
            05  getct-charset                pic  x(01).
                78  getct-charset-ebcdic     VALUE 'E'.
                78  getct-charset-ascii      VALUE 'A'.
                78  getct-charset-unknown    VALUE '?'.
                88  getct-charset-ebcdic-88
                                       VALUE getct-charset-ebcdic.
                88  getct-charset-ascii-88
                                       VALUE getct-charset-ascii.
                88  getct-charset-unknown-88
                                       VALUE getct-charset-unknown.
            05  getct-filler                 pic  x(23).  
            *>  align ON four byte boundary.
            05  getct-lrecl                  pic  x(02)  comp-x.
            05  getct-lrecl-max              pic  x(02)  comp-x.
            05  getct-lrecl-min              pic  x(02)  comp-x.

This "translates" into the following (I believe)
GETCT-VERSION is a 2-byte numeric field. From the manual "A COMPUTATIONAL-X item is always stored using the same storage scheme as BINARY items, that is with the high-order bytes stored at the lowest addresses and successively lower-order bytes at successively higher addresses
GETCT-RESERVED - two bytes (character)
GETCT-MVS-DSNAME - 44 byte argument in containing a mainframe dataset name
GETCT-MEM-NAME - 8 bytes (character). Not sure that this is actually used, either as input or output
GETCT-PC-DSN - 260 bytes (character). Returned from program and contains "PC" name corresponding to GETCT-MVS-DSNAME mainframe "name"
GETCT-RECFM - 4 bytes (character) returned from program
GETCT-DSORG - 4 bytes (character) returned from program
GETCT-CHARSET - 1 byte (character) returned from program
GETCT-FILLER - 23 bytes (character). Not used by program
GETCT-LRECL is a 2-byte numeric field (same type as GETCT-VERSION)
GETCT-LRECL-MAX is a 2-byte numeric field (same type as GETCT-VERSION)
GETCT-LRECL-MIN is a 2-byte numeric field (same type as GETCT-VERSION)
Forum List • Thread List • Refresh • New Topic • Search • Previous • Next First 1 Last
掌柜推荐
 
 
 
 
 
 
 
 
 
 
 
 
© Wed 2024-5-1  Guidance Laboratory Inc.
Email:webmaster1g.yi.org Hits:0