MVSFORUMS.com Forum Index MVSFORUMS.com
A Community of and for MVS Professionals
 
 FAQFAQ   SearchSearch   Quick Manuals   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

COBDFSYM Issue

 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Utilities
View previous topic :: View next topic  
Author Message
Magesh_J
Intermediate


Joined: 21 Jun 2014
Posts: 259
Topics: 54

PostPosted: Fri Jun 30, 2017 3:38 pm    Post subject: COBDFSYM Issue Reply with quote

Hi,

Please advise Why comp-3 is not handled ? in cobdfsym rexx program.

Code:

   select
     when datatyp = 'Group'         then typ = 'CH'
     when datatyp = 'Grp-VarLen'    then typ = 'CH'
     when datatyp = 'Display'       then typ = 'CH'
     when datatyp = 'Disp-Num'      then typ = 'ZD'
     when datatyp = 'Packed-Dec'    then typ = 'PD'
     when datatyp = 'Binary'        then typ = 'FI'
     when datatyp = 'Comp-1'        then typ = 'FL'
     when datatyp = 'Comp-2'        then typ = 'FL'
     otherwise                           typ = 'CH'
   end


when i run the program it is going in loop, this line is getting repeated when i add trace R in the rexx
Code:

 83 *-*  do until substr(line,2,16)  = '  LineID  PL SL '       
   >>>    "0"                                                 
84 *-*   parse pull line                                       
   >>>     ""                                                 
85 *-*  end                                                   


Is this the right rexx routine to use for IBM ENTERPRISE COBOL FOR Z/OS 3.4.1 ?

Thanks
Magesh
Back to top
View user's profile Send private message
Magesh_J
Intermediate


Joined: 21 Jun 2014
Posts: 259
Topics: 54

PostPosted: Fri Jun 30, 2017 4:16 pm    Post subject: Reply with quote

Its working, cobol compiler changing it to Packed-dec, so it is correct.

All i need to do is change the case of those words.

Thanks
Magesh
Back to top
View user's profile Send private message
Nic Clouston
Advanced


Joined: 01 Feb 2007
Posts: 1075
Topics: 7
Location: At Home

PostPosted: Sat Jul 01, 2017 4:27 am    Post subject: Reply with quote

Rexx is "case-agnostic" unless you use 'strictly equal to' ==
_________________
Utility and Program control cards are NOT, repeat NOT, JCL.
Back to top
View user's profile Send private message
Magesh_J
Intermediate


Joined: 21 Jun 2014
Posts: 259
Topics: 54

PostPosted: Wed Jul 05, 2017 3:27 pm    Post subject: Reply with quote

Nic Clouston wrote:

Rexx is "case-agnostic" unless you use 'strictly equal to' ==


I didnt change any thing other than the CASE of the charactes/string.When I changed it to upper case,it worked.

Let me test more and let you know.

Thanks
Magesh
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12358
Topics: 75
Location: San Jose

PostPosted: Wed Jul 05, 2017 5:10 pm    Post subject: Reply with quote

Magesh_J wrote:
I didnt change any thing other than the CASE of the charactes/string.When I changed it to upper case,it worked.

Let me test more and let you know.

Thanks
Magesh


Do you mean you changed this line

Code:

when datatyp = 'Packed-Dec'    then typ = 'PD'


to

Code:

WHEN DATATYP = 'PACKED-DEC'    THEN TYP = 'PD'   


and it worked???
_________________
Kolusu - DFSORT Development Team (IBM)
DFSORT is on the Web at:
www.ibm.com/storage/dfsort

www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Magesh_J
Intermediate


Joined: 21 Jun 2014
Posts: 259
Topics: 54

PostPosted: Wed Jul 05, 2017 6:23 pm    Post subject: Reply with quote

HI Kolusu,

I changed like below it worked.

Code:

when datatyp = 'PACKED-DEC'    then typ = 'PD'


Also I changed LINEID from LineID

Thanks
Magesh
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12358
Topics: 75
Location: San Jose

PostPosted: Wed Jul 05, 2017 7:03 pm    Post subject: Reply with quote

Magesh_J wrote:
HI Kolusu,

I changed like below it worked.

Code:

when datatyp = 'PACKED-DEC'    then typ = 'PD'


Also I changed LINEID from LineID

Thanks
Magesh


I doubt it worked. REXX will go into an infinite loop because it cannot find the verbs.

Did you by chance edit the compiler listing(sysprint) to have upper case? Without that it is highly impossible for rexx exec to work.
_________________
Kolusu - DFSORT Development Team (IBM)
DFSORT is on the Web at:
www.ibm.com/storage/dfsort

www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Magesh_J
Intermediate


Joined: 21 Jun 2014
Posts: 259
Topics: 54

PostPosted: Wed Jul 05, 2017 8:44 pm    Post subject: Reply with quote

Hi Kolusu,

I changed to upper case because compiler listing had
upper case LINEID.

May be compiler would have printed in upper case because of profile settings.

I will check and let you know.

Thanks
Magesh
Back to top
View user's profile Send private message
Magesh_J
Intermediate


Joined: 21 Jun 2014
Posts: 259
Topics: 54

PostPosted: Thu Jul 06, 2017 10:11 am    Post subject: Reply with quote

I changed the profile setting "CAPS OFF"
Code:

RES (FIXED - 80)....RECOVERY ON....NUMBER OFF............
CAPS OFF....HEX OFF....NULLS ON STD....TABS OFF..........
AUTOSAVE ON....AUTONUM ON....AUTOLIST OFF....STATS ON....
PROFILE UNLOCK....IMACRO NONE....PACK OFF....NOTE ON.....
HILITE COBOL CURSOR FIND.................................


Still sysprint prints in upper case only.

Code:

 COMMAND INPUT ===>                                            SCROLL ===> CSR 
  LINEID  PL SL  ----+-*A-1-B--+----2----+----3----+----4----+----5----+----6---




Thanks
Magesh
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12358
Topics: 75
Location: San Jose

PostPosted: Thu Jul 06, 2017 10:52 am    Post subject: Reply with quote

Magesh_J,

Well you must be using something other than COBOL ( may be a CA product like datacom/MetaCOBOL) which has options to change the compiler listing to upper case)

So lets do a simple test just run this step alone.

Code:

//STEP0100 EXEC PGM=IGYCRCTL                       
//SYSPRINT DD SYSOUT=*                             
//SYSTERM  DD SYSOUT=*                             
//SYSUT1   DD UNIT=SYSDA,SPACE=(CYL,(10,2),RLSE)   
//SYSUT2   DD UNIT=SYSDA,SPACE=(CYL,(10,2),RLSE)   
//SYSUT3   DD UNIT=SYSDA,SPACE=(CYL,(10,2),RLSE)   
//SYSUT4   DD UNIT=SYSDA,SPACE=(CYL,(10,2),RLSE)   
//SYSUT5   DD UNIT=SYSDA,SPACE=(CYL,(10,2),RLSE)   
//SYSUT6   DD UNIT=SYSDA,SPACE=(CYL,(10,2),RLSE)   
//SYSUT7   DD UNIT=SYSDA,SPACE=(CYL,(10,2),RLSE)   
//SYSLIN   DD DUMMY                                 
//SYSIN    DD *                                     
        CBL MAP                                     
        IDENTIFICATION DIVISION.                   
        PROGRAM-ID.    MAIN.                       
        ENVIRONMENT DIVISION.                       
        DATA DIVISION.                             
        WORKING-STORAGE SECTION.                   
        01  A          PIC X(1).                   
        01  B          PIC S9(02) COMP.             
        01  C          COMP-2.                     
        01  D          COMP-2.                     
        01  E          PIC S9(05) COMP-3.           
        01  F          PIC S9(04) COMP-5.           
        PROCEDURE DIVISION.                         
             GOBACK.                               
/*


Now look at the compiler listing and do you still see the sysprint listing in upper case?
_________________
Kolusu - DFSORT Development Team (IBM)
DFSORT is on the Web at:
www.ibm.com/storage/dfsort

www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Magesh_J
Intermediate


Joined: 21 Jun 2014
Posts: 259
Topics: 54

PostPosted: Thu Jul 06, 2017 11:15 am    Post subject: Reply with quote

Hi Kolusu,

Still it is printing in Upper case. It may be because we are using outdated compiler Enterprise Cobol for ZOS 3.4.1
Code:

 COMMAND INPUT ===>                                            SCROLL ===> CSR 
   LINEID  PL SL  ----+-*A-1-B--+----2----+----3----+----4----+----5----+----6--
0  000001                 IDENTIFICATION DIVISION.                             
   000002                 PROGRAM-ID.    MAIN.                                 
   000003                 ENVIRONMENT DIVISION.                                 
   000004                 DATA DIVISION.                                       
   000005                 WORKING-STORAGE SECTION.                             
   000006                 01  A          PIC X(1).                             
   000007                 01  B          PIC S9(02) COMP.                       
   000008                 01  C          COMP-2.                               
   000009                 01  D          COMP-2.                               
   000010                 01  E          PIC S9(05) COMP-3.                     
   000011                 01  F          PIC S9(04) COMP-5.                     
   000012                 PROCEDURE DIVISION.                                   
   000013                      GOBACK.                                         
                                                             


Thanks
Magesh
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12358
Topics: 75
Location: San Jose

PostPosted: Thu Jul 06, 2017 11:45 am    Post subject: Reply with quote

Magesh_J,

It has got nothing to do with the compiler level. as all the COBOL compilers print the listing in lowercase. Looks like your shop intercepts the compiler listing and converts to upper case.

Lets try to get around it

1. Type TSO ISRDDN and press enter
2. At the command prompt type LOAD IGYCRCTL and press enter.
3. You should get a notification that it is already loaded and should give you the dataset name.
4. Copy that dataset name and exit this interface (PF3)
5. Go to 3.4 and browse the dataset from step 4
6. Copy the IGYCRCTL into your personal pds
7. In your personal pds rename the load module to MGYCRCTL
8. Now run the same job once again with PGM=MGYCRCTL and adding STEPLIB dd with of personal PDS. Let see if we can fool the system that your Exit does NOT take over the listing.
_________________
Kolusu - DFSORT Development Team (IBM)
DFSORT is on the Web at:
www.ibm.com/storage/dfsort

www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Magesh_J
Intermediate


Joined: 21 Jun 2014
Posts: 259
Topics: 54

PostPosted: Thu Jul 06, 2017 3:06 pm    Post subject: Reply with quote

Hi Kolusu,

Still no joy, same results.

Code:

LINEID  PL SL  ----+-*A-1-B--+----2----+----3----+----4----+----5
000001                 IDENTIFICATION DIVISION.                 
000002                 PROGRAM-ID.    MAIN.                     
000003                 ENVIRONMENT DIVISION.                     
000004                 DATA DIVISION.                           
000005                 WORKING-STORAGE SECTION.                 
000006                 01  A          PIC X(1).                 
000007                 01  B          PIC S9(02) COMP.           
000008                 01  C          COMP-2.                   
000009                 01  D          COMP-2.                   
000010                 01  E          PIC S9(05) COMP-3.         
000011                 01  F          PIC S9(04) COMP-5.         
000012                 PROCEDURE DIVISION.                       
000013                      GOBACK.                             


Code:

//JOBLIB DD DSN=XXXXXXX.LOADLIB,DISP=SHR           
//STEP0100 EXEC PGM=MGYCRCTL                       
//SYSPRINT DD SYSOUT=*                             
//SYSTERM  DD SYSOUT=*                             
//SYSUT1   DD UNIT=SYSDA,SPACE=(CYL,(10,2),RLSE)   
//SYSUT2   DD UNIT=SYSDA,SPACE=(CYL,(10,2),RLSE)   
//SYSUT3   DD UNIT=SYSDA,SPACE=(CYL,(10,2),RLSE)   
//SYSUT4   DD UNIT=SYSDA,SPACE=(CYL,(10,2),RLSE)   
//SYSUT5   DD UNIT=SYSDA,SPACE=(CYL,(10,2),RLSE)   
//SYSUT6   DD UNIT=SYSDA,SPACE=(CYL,(10,2),RLSE)   
//SYSUT7   DD UNIT=SYSDA,SPACE=(CYL,(10,2),RLSE)   
//SYSLIN   DD DUMMY                               
//SYSIN    DD *                                   
        CBL MAP                                   
        IDENTIFICATION DIVISION.                   
        PROGRAM-ID.    MAIN.                       
        ENVIRONMENT DIVISION.                     
        DATA DIVISION.                             
        WORKING-STORAGE SECTION.                   
        01  A          PIC X(1).                   
        01  B          PIC S9(02) COMP.         
        01  B          PIC S9(02) COMP.   
        01  C          COMP-2.             
        01  D          COMP-2.             
        01  E          PIC S9(05) COMP-3. 
        01  F          PIC S9(04) COMP-5. 
        PROCEDURE DIVISION.               
             GOBACK.                       
/*                                         
**************************** Bottom of Data   


thanks
Magesh
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Utilities All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


MVSFORUMS
Powered by phpBB © 2001, 2005 phpBB Group