View previous topic :: View next topic |
Author |
Message |
sureshkaul Beginner
Joined: 03 Feb 2003 Posts: 1 Topics: 0
|
Posted: Mon Feb 03, 2003 9:31 am Post subject: |
|
|
Hi Nila
Every shop has its program for Checking JCl syntax
I have also used JEM previously while working with GE but at other shops
it has different names like jcscan jscan etc etc it is not a standard IBM product.
Please check with your system administrator for what they have installed for jcl syntax check
I am sure they will be able to give you this program
thanks
Suresh _________________ Suresh Kumar |
|
Back to top |
|
 |
mgjagadish Beginner
Joined: 18 Jan 2003 Posts: 13 Topics: 7 Location: 7/2,rams Apartments,Chennai1-14
|
Posted: Tue Feb 04, 2003 10:58 am Post subject: |
|
|
Hello Nila,
Try working with EJCK NOLIST.....B'coz My shop uses this for JCL Syntax
Check....
Thanks & Regards,
Jagadish _________________ JAGADISH |
|
Back to top |
|
 |
santosh_kumar Beginner
Joined: 04 Feb 2003 Posts: 8 Topics: 1
|
Posted: Wed Feb 05, 2003 11:13 am Post subject: |
|
|
or !jck  |
|
Back to top |
|
 |
Dibakar Advanced

Joined: 02 Dec 2002 Posts: 700 Topics: 63 Location: USA
|
Posted: Fri Feb 07, 2003 4:09 am Post subject: |
|
|
I modified Dave's code to check presence of paragraph defination in a cobol copybook, opened in view or edit mode as follows -
[code:1:021c236522]
/* REXX CHECK FOR PARAGRAPH DEFINATION SYNTAX */
ADDRESS ISREDIT
"MACRO"
"(USERSTAT) = USER_STATE"
"FIND P' |
|
Back to top |
|
 |
DaveyC Moderator

Joined: 02 Dec 2002 Posts: 151 Topics: 3 Location: Perth, Western Australia
|
Posted: Fri Feb 07, 2003 6:05 am Post subject: |
|
|
I don't see why say should erase info lines. One thing (a style thing), it's very unusual to see REXX coded in upper case. Very common in COBOL but frowned upon in other languages. It's called SHOUTING! Normally, you will see external service calls in upper case like "FIND P'dddd'" etc.
Also, following semigeezers good advice I would change the infoline code to the much safer:
Code: |
msg = 'This is an infoline'
"LINE_BEFORE 1 = INFOLINE (MSG)"
|
_________________ Dave Crayford |
|
Back to top |
|
 |
Dibakar Advanced

Joined: 02 Dec 2002 Posts: 700 Topics: 63 Location: USA
|
Posted: Fri Feb 07, 2003 7:32 am Post subject: |
|
|
No, 'SAY' is not erasing any lines, I have put it there for debug prupose only. I feel ISREDIT commands are not getting executed. All return codes are 20.
I have no intention of SHOUTING but being a COBOL programmer and not regular REXX programmer it's difficult to change my coding style suddenly. |
|
Back to top |
|
 |
DaveyC Moderator

Joined: 02 Dec 2002 Posts: 151 Topics: 3 Location: Perth, Western Australia
|
Posted: Fri Feb 07, 2003 7:37 am Post subject: |
|
|
If all return codes are 20 you are not executing the macro properly. No need to issue a TSO command verb.
I write a lot of assembler code in upper case, you have to change your style to suit the language you are writing in. C/C++/Java etc will not allow upper case keywords, thank god for that... _________________ Dave Crayford |
|
Back to top |
|
 |
Dibakar Advanced

Joined: 02 Dec 2002 Posts: 700 Topics: 63 Location: USA
|
Posted: Fri Feb 07, 2003 8:14 am Post subject: |
|
|
Dave,
Maybe I am executing wrongly. My code is in dataset -
'USERID.UTILITY.CLIST(CHCKCOD) '
and I am executing by giving the command 'TSO EX UTILITY(CHCKCOD)'. Is it the right way to do? I copied your code and executed similarly and no INFOLINE came up.
I guess I will stick to proper style too. I guess the problem is with habit, so better to start now.
Diba. |
|
Back to top |
|
 |
DaveyC Moderator

Joined: 02 Dec 2002 Posts: 151 Topics: 3 Location: Perth, Western Australia
|
Posted: Fri Feb 07, 2003 8:22 am Post subject: |
|
|
An edit macro is executed in an ISPF edit session. Just type <macro-name> where macro-name is the name of the REXX in the command line when editing a member. It's called an EDIT macro because it has to be executed in an ISPF edit session. Go for it, good luck...
Code: |
EDIT DOC.CLIST(A) - 01.09 Columns 00001 00072
Command ===> MACRO Scroll ===> CSR
|
_________________ Dave Crayford |
|
Back to top |
|
 |
Dibakar Advanced

Joined: 02 Dec 2002 Posts: 700 Topics: 63 Location: USA
|
Posted: Fri Feb 07, 2003 8:55 am Post subject: |
|
|
Sorry Dave, I still didn't get it. Tell me what should I give on command line if I execute the macro on itself?
Code: |
EDIT USERID.UTILITY.CLIST(CHECKPR) - 01.02 Invalid command
Command ===> checkpr Scroll ===> CSR
****** ***************************** Top of Data ******************************
000001 /* REXX check for coding standards */
|
|
|
Back to top |
|
 |
Premkumar Moderator

Joined: 28 Nov 2002 Posts: 77 Topics: 7 Location: Chennai, India
|
Posted: Mon Feb 10, 2003 1:42 am Post subject: |
|
|
Diba,
Make sure your CLIST library is attached to SYSPROC DD. |
|
Back to top |
|
 |
Dibakar Advanced

Joined: 02 Dec 2002 Posts: 700 Topics: 63 Location: USA
|
Posted: Mon Feb 10, 2003 9:24 am Post subject: |
|
|
Premkumar,
That was exactly the problem. But now I am now an error related to REXX statement -
currline = strip (currline, 't')
The message is -
35 +++ currline = strip (currline, 't'),
IRX0037I Error running CHECKPR, line 35: Unexpected "," or ")"
***
Thanks,
Diba. |
|
Back to top |
|
 |
DaveyC Moderator

Joined: 02 Dec 2002 Posts: 151 Topics: 3 Location: Perth, Western Australia
|
Posted: Mon Feb 10, 2003 9:36 am Post subject: |
|
|
REXX functions are not allowed to have spaces between the function name and the open paranthesis. The REXX interpreter is interpreting the word strip as a variable...
Code: |
currline = strip(currline,'T')
|
_________________ Dave Crayford
Last edited by DaveyC on Mon Feb 10, 2003 9:41 am; edited 1 time in total |
|
Back to top |
|
 |
Dibakar Advanced

Joined: 02 Dec 2002 Posts: 700 Topics: 63 Location: USA
|
Posted: Mon Feb 10, 2003 9:40 am Post subject: |
|
|
Thanks again Dave,
Now it's working fine.
Diba |
|
Back to top |
|
 |
s_shivaraj Beginner

Joined: 21 Sep 2004 Posts: 140 Topics: 14 Location: Chennai, India
|
Posted: Thu Aug 28, 2008 10:15 pm Post subject: |
|
|
Dibakar,
You can just add the your Rexx Library to SYSEXEC. Once you add that you can invoke the macro by just typing the macro name WITHOUT TSO.
Thanks
Sivaraj S _________________ Cheers
Sivaraj S
'Technical Skill is the Master of complexity, while Creativity is the Master of Simplicity' |
|
Back to top |
|
 |
|
|