View previous topic :: View next topic
|
Author |
Message |
Paul1983
New User
Joined: 08 Jul 2008 Posts: 37 Location: bangy
|
|
|
|
Hi,
I'm trying to use ISREDIT MACRO (As part of some REXX programs) to delete the first 10 lines of a subroutine (info lib section) and replacing the first 10 lines with some changes.
In the input program, the 4th line is as follows
000004 ******* LAYOUTVERS 001
But after calling this EDIT MACRO my output is as follows
000004 * LAYOUTVERS 001
The 6 '*' signs in columns 1 to 6 are not getting populated in the output program
Could you please advise? |
|
Back to top |
|
|
Paddy
New User
Joined: 12 Sep 2005 Posts: 46 Location: Paris France
|
|
|
|
hi Paul1983
Can you post an example of your Macro ?
Regards
Paddy |
|
Back to top |
|
|
Marso
REXX Moderator
Joined: 13 Mar 2006 Posts: 1353 Location: Israel
|
|
|
|
Please provide more information:
- post the macro code
- "before" sample
- "after" sample
Until then, we don't know nothing:
which commands do you use to make the change ?
we see line 4 has changed, but that's just what you wanted, so where is the problem ?
what happened to the other lines ? |
|
Back to top |
|
|
Paul1983
New User
Joined: 08 Jul 2008 Posts: 37 Location: bangy
|
|
|
|
Hi,
below is the code
/* REXX MACRO PROGRAM EDITMC */
ADDRESS ISPEXEC;"CONTROL ERRORS RETURN"
"VGET (DATA3) PROFILE"
"VGET (MBR) PROFILE"
"ISREDIT MACRO PROCESS"
ROUT1 = " "
NEWDAT1 = "******* ############ START OF TEMPORARY SECTION OF INFOLIB"
NEWDAT2 = "******* ############ START OF PERMANENT SECTION OF INFOLIB"
NEWDAT4 = "******* LAYOUTVERS 001"
NEWDAT5 = "******* ENTITYTYPE GENERAL_DYNAMIC_SUBROUTINE"
NEWDAT6 = "******* COMPILER ENTCOB"
ADDRESS ISPEXEC
"ISREDIT NUM ON STD COBOL "
"ISREDIT UNNUM "
"ISREDIT FIND COMPILER "
ADDRESS ISREDIT "(LIN) = LINENUM .ZCSR"
PARSE VAR MBR 1 PRE 2 POST
MBR1 = R""POST""
"ISREDIT C ALL '"MBR1"' '"MBR"' WORD"
'ISREDIT LABEL' LIN '= .HERE'
ADDRESS ISREDIT "DELETE .ZFIRST .HERE"
ADDRESS ISREDIT "LINE_BEFORE .ZFIRST = (NEWDAT1)"
ADDRESS ISREDIT "LINE_AFTER 1 = (NEWDAT2)"
ADDRESS ISREDIT "LINE_AFTER 2 = (DATA3)"
ADDRESS ISREDIT "LINE_AFTER 3 = (NEWDAT4)"
ADDRESS ISREDIT "LINE_AFTER 4 = (NEWDAT5)"
ADDRESS ISREDIT "LINE_AFTER 5 = (NEWDAT6)"
"ISREDIT X ALL"
"ISREDIT END"
ADDRESS 'ISPEXEC'
RETURN
ADDRESS 'ISREDIT' END.
Before change
******* ############ START OF TEMPORARY SECTION OF INFOLIB
******* ############ START OF PERMANENT SECTION OF INFOLIB
******* LAYOUTVERS 001
******* ENTITYTYPE STATIC_SUBROUTINE
******* COMPILER COBOLII
******* COBOLDELIM QUOTE
******* NCAL YES
******* DLI NO
******* ############ END OF INFOLIB
IDENTIFICATION DIVISION.
After change
******* ############ START OF TEMPORARY SECTION OF INFOLIB
******* ############ START OF PERMANENT SECTION OF INFOLIB
******* LAYOUTVERS 001
******* ENTITYTYPE STATIC_SUBROUTINE
******* COMPILER ENTCOB
* COBOLDELIM QUOTE
* NCAL YES
* DLI NO
* ############ END OF INFOLIB
IDENTIFICATION DIVISION.
My requirement is like as follows
******* ############ START OF TEMPORARY SECTION OF INFOLIB
******* ############ START OF PERMANENT SECTION OF INFOLIB
******* LAYOUTVERS 001
******* ENTITYTYPE STATIC_SUBROUTINE
******* COMPILER ENTCOB
******* COBOLDELIM QUOTE
******* NCAL YES
******* DLI NO
******* ############ END OF INFOLIB
IDENTIFICATION DIVISION. |
|
Back to top |
|
|
Paul1983
New User
Joined: 08 Jul 2008 Posts: 37 Location: bangy
|
|
|
|
The '*' sign in positions 1 to 6 are coming as spaces |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10873 Location: italy
|
|
|
|
Quote: |
"ISREDIT NUM ON STD COBOL "
"ISREDIT UNNUM " |
do a little testing on the consequences of those commands |
|
Back to top |
|
|
Paul1983
New User
Joined: 08 Jul 2008 Posts: 37 Location: bangy
|
|
|
|
Hi,
I removed
"ISREDIT NUM ON STD COBOL "
"ISREDIT UNNUM "
and its working fine.Thanks for your Help.
Regards,
Paul |
|
Back to top |
|
|
|