Hello,
Thanks very much,
It's all waht We need, very good.
But, Trying running unexpected problem, look please :
Ready; T=0.06/0.07 15:17:05
cobcall a
6 *-* COBCALL:
7 *-* Address COMMAND
9 *-* Parse Source . ctype ename etype emode .
>.> "CMS"
>>> "COMMAND"
>>> "COBCALL"
>>> "EXEC"
>>> "A1"
>.> "cobcall CMS"
11 *-* cobcall = ename 'DATA A'
>>> "COBCALL DATA A"
13 *-* Arg fm .
>>> "A"
>.> ""
15 *-* If fm = ''
>>> "0"
25 *-* 'CMDCALL ESTATE * COBOL' fm
>>> "CMDCALL ESTATE * COBOL A"
27 *-* If rc \= 0
>>> "0"
29 *-* 'PIPE COMMAND LISTFILE * COBOL' fm '(NOHEADER ISODATE'||,
29 +++ 'PIPE COMMAND LISTFILE * COBOL' fm '(NOHEADER ISODATE'||,
DMSREX471E Error 35 running COBCALL EXEC, line 29: Invalid expression
Ready(20035); T=0.01/0.01 15:17:08
May be, some mistake here ...
Can you help (more) please ?
Thanks,
Sergio
> Date: Wed, 7 Jul 2010 12:51:43 -0500
> From: [email protected]
> Subject: Re: Sample REXX using XEDIT
> To: [email protected]
>
> On Wed, 7 Jul 2010 16:50:29 +0300, Sergio Lima <[email protected]> =
>
> wrote:
>
> >Hello List,
> >
> >We need, do here a REXX that will READ a lot of COBOL Programs.
> >
> >So, must, locate all "CALL" Statements, and think use XEDIT for this.
> >
> >Someone know, if have a place, or a documentation, for us get a sample =
>
> program?
> >
> >Thanks
> >
> >Sergio Lima Costa
>
> Here is a quick and dirty Exec that I just wrote that will be close to =
>
> what you want. Note that ir will find references to "CALL" that may be i=
> n
> a DISPLAY command as well as the "CALL" instruction. Here is the Exec:
>
> /*--------------------------------------------------------------------*/
> /* COBCALL EXEC */
> /* Scan COBOL Programs and Extract records containing the word "CALL".*/
> /*--------------------------------------------------------------------*/
> COBCALL: =
> =
>
> Address COMMAND =
> =
>
> Parse Source . ctype ename etype emode . =
>
> cobcall = ename 'DATA A' =
> =
>
> Arg fm . =
> =
>
> If fm = '' Then =
> =
>
> Do =
> =
>
> Say 'No Filemode Specified. A Filemode is Required.' =
>
> Exit 4 =
> =
>
> End =
> =
>
> 'CMDCALL ESTATE * COBOL' fm =
> =
>
> If rc \= 0 Then Exit rc =
> =
>
> 'PIPE COMMAND LISTFILE * COBOL' fm '(NOHEADER ISODATE'||, =
>
> '|CHANGE 68 / /0/|SPECS 1-17 1 W8-9 19|STEM PGM.' =
>
> If rc \= 0 Then Exit rc =
> =
>
> 'ERASE' cobcall =
> =
>
> If rc \= 0 & rc \= 28 Then Exit rc =
> =
>
> totcnt = 0 =
> =
>
> Do n = 1 to pgm.0 =
> =
>
> Parse Var pgm.n fn ft date time . =
>
> 'PIPE (NAME COBCALL ENDCHAR ?)', =
>
> '| <' fn ft fm, /* Read COBOL Program */ =
>
> '| SPECS RECNO 1.6 7-72 8', /* Record Number, Record */ =
>
> '| NLOCATE 8 /*/', /* Skip Comments */ =
>
> '| LOCATE ANYCASE 8-* / CALL /', /* Look for CALL Commands */ =
>
> '| SPECS /'pgm.n'/ 1 1-* NW', /* Add File info */ =
>
> '| C: COUNT LINES', /* Count Records */ =
>
> '| >>' cobcall, /* Write to file */ =
>
> '? C:', =
> =
>
> '| STRLITERAL APPEND /0/', /* Just in Case */ =
>
> '| VAR RECCNT', /* Record Count */ =
>
> '' /* End COBCALL */ =
> =
>
> totcnt = totcnt + reccnt =
> =
>
> End /* Do n = 1 to pgm.0 */ =
> =
>
> 'ESTATE' cobcall =
> =
>
> If rc \= 0 Then =
> =
>
> Do =
> =
>
> Say 'No "CALL" Statements Found in COBOL Programs on', =
>
> 'Filemode' fm'.' =
> =
>
> Exit 12 =
> =
>
> End =
> =
>
> Say totcnt '"CALL" Statements Found in COBOL Programs on', =
>
> 'Filemode' fm'.' =
> =
>
> 'XEDIT' cobcall '(NOCLEAR' =
> =
>
> Exit rc =
> =
>
>
> Here is a small sample of output from COBOL Programs on my A-Disk:
>
> IMSMAIN COBOL 1987-12-03 16:59:18 31 CALL 'IMSSUB'.
> IMSMAIN2 COBOL 1987-12-03 16:46:15 31 CALL 'IMSSUB2'.
> SQLINIT COBOL 2009-04-30 11:36:52 4 CALL 'DSNHADDR' USING =
>
> SQL-CODEPTR OF SQL-PLIST12 SQLCA.
> SQLINIT COBOL 2009-04-30 11:36:52 5 DISPLAY 'After DB2 Call=
>
> 1 ' SQL-INIT-FLAG
> SQLINIT COBOL 2009-04-30 11:36:52 6 CALL 'DSNHADDR' USING =
>
> SQL-CODEPTR OF SQL-PLIST13 SQLCA.
> SQLINIT COBOL 2009-04-30 11:36:52 7 DISPLAY 'After DB2 Call=
>
> 2 ' SQL-INIT-FLAG
>
> Notice the DISPLAY statements. The Exec makes a lot of assumptions, so =
>
> any changes are left as an exercise to the reader! :-)>
>
> --
> Dale R.
> Smith
_________________________________________________________________
PREPARE-SE: O SEU HOTMAIL VAI FICAR MELHOR DO QUE NUNCA. CLIQUE E VEJA AS
NOVIDADES.
http://www.windowslive.com.br/public/product.aspx/view/1?ocid=Hotmail:Live:Hotmail:Tagline:senDimensao:PREPARE-SE83:-