Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

How to use extract data from a cursor position

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> TSO/ISPF
View previous topic :: :: View next topic  
Author Message
sunil sharma

New User


Joined: 23 Jun 2008
Posts: 2
Location: Chennai, India

PostPosted: Tue Sep 09, 2008 8:12 pm    Post subject: How to use extract data from a cursor position
Reply with quote

I want to edit a dataset from a jcl from a curser position. I am using the below code, but not able to do so.
Here (row,col) = CURSOR is used, but i am not getting the row and column number.

Code:

/*  REXX   */
Address ISREDIT                                                                 
"MACRO"                                                                         
Address ISPEXEC "CONTROL ERRORS RETURN"                                         
  /***********************************************/                             
  /*   BEGIN PROCESSING                          */                             
  /***********************************************/                             
  "(row,col) = CURSOR"                                                         
  "(data1) = LINE " row              /* data1 = cursor line          */         
  /**********************************/                                         
  /* Find start of data set name    */                                         
  /**********************************/                                         
  dsnstart = Pos('DSN=',data1)       /* look for DSN=                */         
  If dsnstart = 0 then do            /* no DSN =                     */         
    dsnstart = Pos('DSNAME=',data1)  /* look for DSNAME=             */         
    If dsnstart = 0 then do          /* no DSN= or DSNAME=           */         
      "CURSOR = " row col            /* cursor pos                   */         
      If col < 1 then dsnstart = 1   /* needed for ZB line cmd       */         
      Else dsnstart = col            /* assume cursor on DSN         */         
    End                                                                         
    Else dsnstart = dsnstart + 7     /* DSNAME= specified in JCL     */         
  End /* if dsnstart = 0 */                                                     
  Else dsnstart = dsnstart + 4       /* DSN = specified in JCL       */         
  /**********************************/                                         
  /* Find end of data set name      */                                         
  /**********************************/                                         
  dsnend = Pos(',',data1,dsnstart)   /* look for comma at end of dsn */         
  If dsnend = 0 then do              /* no comma found               */         
    dsnend = Pos(' ',data1,dsnstart) /* look for blank to end DSN    */         
    If dsnend = 0 then do            /* no blank or comma at end     */         
      zedsmsg = 'No end of DSN'                                                 
      zedlmsg = 'The data set name is not terminated with a' ,                 
                'space or comma.'                                               
      Address ISPEXEC "SETMSG MSG(ISRZ001)"      /* msg - with alarm */         
      "CURSOR = " row col /* put cursor back to last position        */         
      Exit 8                                                                   
    End  /* if dsnend = 0 */                                                   
    Else dsnend = dsnend - 1         /* DSN ends with blank          */         
  End /* if dsnend = 0 */                                                       
  Else dsnend = dsnend - 1           /* DSN ends with comma          */         
  /**********************************/                                         
  /* BROWSE the data set            */                                         
  /**********************************/                                         
  dsn = Substr(data1,dsnstart,dsnend-dsnstart+1) /* extract dsn     */         
  dsn = Strip(Translate(dsn,"","'"))       /* remove quotes if used */         
  Address ISPEXEC "BROWSE DATASET('"dsn"')"                                     
  If RC <> 0 then Address ISPEXEC "SETMSG MSG("ZERRMSG")"                       
  "CURSOR = " row col /* put cursor back to last position        */             
  Exit 0                                             
Back to top
View user's profile Send private message

ofer71

Global Moderator


Joined: 27 Dec 2005
Posts: 2360
Location: Israel

PostPosted: Tue Sep 09, 2008 8:19 pm    Post subject:
Reply with quote

This is not a TSO exec, but an ISPF Edit macro. It should be invoked from within editor, without the TSO prefix.

O.
Back to top
View user's profile Send private message
sunil sharma

New User


Joined: 23 Jun 2008
Posts: 2
Location: Chennai, India

PostPosted: Tue Sep 09, 2008 8:23 pm    Post subject:
Reply with quote

Hi,
Thanks for your quick reply
Can you please tell me how to do that?
Back to top
View user's profile Send private message
Pedro

Senior Member


Joined: 01 Sep 2006
Posts: 2038
Location: Silicon Valley

PostPosted: Tue Sep 09, 2008 10:10 pm    Post subject: Reply to: How to use extract data from a cursor position
Reply with quote

[quote]It should be invoked from within editor, without the TSO prefix. /quote]
Ofer's instruction seems pretty clear:
1. use ispf option 2 to edit the dataset
2. type memname in the command line. do not prefix with TSO
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> TSO/ISPF All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts Testing rerad cursor for status with ... John F Dutcher DB2 8 Fri May 19, 2017 9:35 pm
No new posts Replace values in the input data Vikas Maharnawar DFSORT/ICETOOL 10 Thu May 11, 2017 2:18 pm
No new posts Check if any Detail records and extra... V S Amarendra Reddy SYNCSORT 19 Mon May 08, 2017 8:54 pm
No new posts Group Data based on a key Arun Raj DFSORT/ICETOOL 7 Thu Apr 27, 2017 11:29 pm
No new posts unload data from table with lob columns farhad_evan DB2 0 Sat Apr 22, 2017 1:32 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us