IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

How to use CBLCNVRT (CA) macro


IBM Mainframe Forums -> CA Products
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
pleonard

New User


Joined: 20 Sep 2006
Posts: 19

PostPosted: Thu Sep 06, 2007 11:00 pm
Reply with quote

:D
Does anyone knows how to use the CBLCNVRT macro to convert a Cobol layout to a Easytrieve layout so that I can use it in the Easytrieve program ?

Thanks
Paulo --)
Back to top
View user's profile Send private message
Douglas Wilder

Active User


Joined: 28 Nov 2006
Posts: 305
Location: Deerfield IL

PostPosted: Fri Sep 07, 2007 1:41 am
Reply with quote

The general idea is that you write a very small cobol program, compile it and then send the compile listing into this macro and the easytrieve layouts are created.

My JCL is like this:
Code:

//useridC JOB acctcode,'CONVERT COBOL/EASYT',CLASS=C,TIME=1,
//             MSGCLASS=G,NOTIFY=&SYSUID,REGION=4096K,COND=(0,NE)
/*JOBPARM L=99,FORMS=X2SL,ROOM=XXXX
/*ROUTE PRINT RMT151
//**********************************************************
//**   CREATE EZTRIEVE LAYOUT FROM COBOL COPYBOOK    *******
//**********************************************************
//*******************************************************************
//*           DELETE INFO FILE
//*******************************************************************
//STEP01R  EXEC PGM=IEFBR14,COND=(0,NE)
//DELFILE  DD  DSN=userid.GLOSSARY.TABLE,
//             DISP=(MOD,DELETE,DELETE),
//             UNIT=(SYSDA,5),
//             SPACE=(TRK,0)
//DELFILE1 DD  DSN=userid.CBLCNVRT.OUTPUT,
//             DISP=(MOD,DELETE,DELETE),
//             UNIT=(SYSDA,5),
//             SPACE=(TRK,0)
//***************************************************
//STEP01   EXEC PGM=IGYCRCTL,
//         PARM='MAP,SOURCE,NOOBJECT,NODECK,NOSEQ'
//SYSIN    DD DSN=userid.COBOL.LAYOUTS(CNVPRG),DISP=SHR
//SYSLIB   DD DSN=userid.COBOL.LAYOUTS,DISP=SHR
//         DD DSN=NODE1.COPYLIB,DISP=SHR
//SYSLIN   DD DSN=&&LOADSET,
//         DCB=(BLKSIZE=3120,LRECL=80,RECFM=FB),
//         DISP=(,PASS),
//         SPACE=(CYL,(2,2),RLSE),
//         UNIT=DISK
//SYSPRINT  DD  DSN=userid.GLOSSARY.TABLE,DISP=(NEW,CATLG),
//          DCB=(LRECL=133,RECFM=F),SPACE=(CYL,(30,30),RLSE),
//             UNIT=SYSDA
//SYSPUNCH DD DUMMY,DCB=BLKSIZE=80
//SYSUT1   DD SPACE=(CYL,(1,5),RLSE),UNIT=DISK
//SYSUT1   DD SPACE=(CYL,(1,5),RLSE),UNIT=DISK
//SYSUT2   DD SPACE=(CYL,(1,5),RLSE),UNIT=DISK
//SYSUT3   DD SPACE=(CYL,(1,5),RLSE),UNIT=DISK
//SYSUT4   DD SPACE=(CYL,(1,5),RLSE),UNIT=DISK
//SYSUT5   DD SPACE=(CYL,(1,5),RLSE),UNIT=DISK
//SYSUT6   DD SPACE=(CYL,(1,5),RLSE),UNIT=DISK
//SYSUT7   DD SPACE=(CYL,(1,5),RLSE),UNIT=DISK
//*
//***************************************************
//STEP02R EXEC PGM=IEFBR14
//DD1       DD DSN=userid.CBLCNVRT.OUTPUT,
//             DISP=(MOD,DELETE,DELETE),SPACE=(TRK,1)
//***************************************************
//STEP02    EXEC PGM=EZTPA00
//STEPLIB   DD   DSN=IDC.EASYPLUS,DISP=SHR
//EZTVFM   DD UNIT=SYSDA,SPACE=(CYL,(5,5))
//SYSPRINT  DD SYSOUT=*
//GLOSTAB   DD  DSN=userid.GLOSSARY.TABLE,DISP=SHR
//PANDD1    DD   DSN=IDC.PANAUDIT.PLUS30C.PANLIB,DISP=SHR
//EASYPGM   DD  DSN=userid.CBLCNVRT.OUTPUT,DISP=(NEW,CATLG),
//          DCB=(LRECL=80,RECFM=FB,BLKSIZE=0),
//          UNIT=SYSDA,SPACE=(CYL,(30,30),RLSE)
//SYSIN DD *
%CBLCNVRT GLOSTAB COBOL II12
/*
//


The cobol program in userid.COBOL.LAYOUTS(CNVPRG) is like this:
Code:
       IDENTIFICATION DIVISION.                                         00010001
       PROGRAM-ID.    TESTPRG.                                          00020005
       AUTHOR.        XXXXXXXX.                                         00030001
       DATE-COMPILED.                                                   00040001
      ******************************************************************00050001
      ******************************************************************00140001
       ENVIRONMENT DIVISION.                                            00150001
       CONFIGURATION SECTION.                                           00160001
       INPUT-OUTPUT SECTION.                                            00170001
       FILE-CONTROL.                                                    00180001
*******    SELECT IN-FILE             ASSIGN TO IFILE.                  00190007
       DATA DIVISION.                                                   00240001
       FILE  SECTION.                                                   00250001
*******FD  IN-FILE                                                      00251007
*******    RECORDING MODE IS F                                          00252007
*******    BLOCK CONTAINS 0 RECORDS                                     00253007
*******    LABEL RECORDS ARE STANDARD.                                  00254007
       WORKING-STORAGE SECTION.                                         00480001
       01  MCOLDEMO-REC.                                                00490006
           COPY MCOLDEMO.                                               00500006
       PROCEDURE DIVISION.                                              02400001
           GOBACK.                                                      02590001

Note the COPY MCOLDEMO is the copybook I wanted the easytrieve equivalent of. Put your copybook there. The layout generated is a little different if the copy is in the file section instead of the working storage section. Submit this JCL and the easytrieve layout will be created in userid.CBLCNVRT.OUTPUT.
Back to top
View user's profile Send private message
pleonard

New User


Joined: 20 Sep 2006
Posts: 19

PostPosted: Fri Sep 07, 2007 6:53 pm
Reply with quote

Thanks Douglas. I saw you are living in Deerfield, IL. I have been in Bannockburn working for Moore Corporation at January, 2001. That was great ! Well as to the my question I stil have some problem to identify where (library) the %CBLCNVRT macro is. I tried to find out in several MACLIBs in my instalation but I didn't get it. I got cc=16 saying the macro is not found. Would you have any idea ?

Thanks a lot
Paulo
Back to top
View user's profile Send private message
Craq Giegerich

Senior Member


Joined: 19 May 2007
Posts: 1512
Location: Virginia, USA

PostPosted: Fri Sep 07, 2007 7:20 pm
Reply with quote

I found it on my system in 'SYSOS.EASYTREV.CAIMAC'.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Fri Sep 07, 2007 9:16 pm
Reply with quote

Hello,

If you use tso/ispf 3.4 and look for S*.**.CAIMAC, you may find the lib - and maybe others depending on how many CA products are installed. Several use a "CAIMAC" library. Usually those libs begin with an S, but it is not a rule.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> CA Products

 


Similar Topics
Topic Forum Replies
No new posts PRINTOUT macro PL/I & Assembler 0
No new posts create rexx edit Macro that edits the... CLIST & REXX 3
No new posts Issues with executing a REXX MACRO th... TSO/ISPF 4
No new posts Facing issue in Run Edit Macro Job CLIST & REXX 9
No new posts outtrap does not capture within an ed... CLIST & REXX 1
Search our Forums:

Back to Top