| 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: 702
 Topics: 64
 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: 702
 Topics: 64
 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: 702
 Topics: 64
 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: 702
 Topics: 64
 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: 702
 Topics: 64
 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: 702
 Topics: 64
 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 |  | 
	
		|  | 
	
		|  | 
	
		|  |