IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

Fields in File-Aid Browse menu screen


IBM Mainframe Forums -> Compuware & Other Tools
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
boyti ko

New User


Joined: 03 Nov 2014
Posts: 78
Location: Malaysia

PostPosted: Mon Apr 04, 2016 4:51 pm
Reply with quote

Hi,

This is the screen we have for File-Aid V10.2. We're trying to find out how to put something in these fields: Record layout usage, Record layout dataset, Member name if we invoke the shortcut to browse a file using File-Aid.

Code:
 File-AID --------------  Browse - Dataset Specification  ----------------------
 COMMAND ===>                                                                   
                                                                               
 Browse Mode                ===> V          (F=Fmt; C=Char; V=Vfmt; U=Unfmt)   
                                                                               
 Specify Browse Information:                                                   
   Dataset name or zFS path ===> 'VSAM.DATASET'                 
   Member name              ===>            (Blank or pattern for member list) 
   Volume serial            ===>            (If dataset is not cataloged)       
                                                                               
                                                                               
 Specify Record Layout and XREF Information:                                   
   Record layout usage      ===> S          (S = Single; X = XREF; N = None)   
   Record layout dataset    ===> MY.COPYLIB                         
   Member name              ===> CPY1       (Blank or pattern for member list) 
   XREF dataset name        ===>                                               
   Member name              ===>            (Blank or pattern for member list) 
                                                                               
 Specify Selection Criteria Information:     (E = Existing; T = Temporary;     
   Selection criteria usage ===> N           M = Modify; Q = Quick; N = None)   
   Selection dataset name   ===>                           
   Member name              ===>            (Blank or pattern for member list)   


This is the code we have to invoke the shortcut to browse a file.

Code:

PROC 1 DATA_SET_NAME_OR_GO                                             
/*********************************************************************/
/* COPYRIGHT (C) 2009 BY COMPUWARE CORPORATION, ALL RIGHTS RESERVED. */
/*                                                                   */
/*           F1 - INVOKE FILE-AID BROWSE (F.1) DIRECTLY              */
/*********************************************************************/
CONTROL MSG                                                           
SET &FUNCVAR = &STR(1)                                                 
SET &DSNVAR  = &STR(&DATA_SET_NAME_OR_GO)                             
IF &SUBSTR(1:1,&DSNVAR) = &STR(') -                                   
  THEN SET &QUOTE = &STR(QUOTE)                                       
  ELSE SET &QUOTE = &STR()                                             
/*********************************************************************/
/* PASS PARMS TO FADYNALC TO SET LIBS AND INVOKE FILE-AID            */
/*********************************************************************/
ISPEXEC SELECT -                                                       
      CMD(%FADYNALC &FUNCVAR DSN(&DSNVAR) &QUOTE) NEWAPPL(FAXX) PASSLIB
END                                                                   


We tried to follow the program above until it calls a program in a loadlib. The screen will automatically put the last previous input on the said 3 fields. It seems that the logic for that is inside that program.

The plan we have is to get the last qualifier of the dataset. Match it on a certain table. Then give the value which we can put in the 3 fields we are looking for.

Below are the program calls after the program above.

Code:
PROC 1 FUNCVAR DSN() QUOTE                                             
/**********************************************************************/
/*      THIS CLIST IS CALLED WITH A NEWAPPL OF FAXE TO PROTECT ANY    */
/*      LIBDEF ENVIRONMENT THAT EXISTS WHEN IT IS INVOKED. THIS       */
/*      ENSURES THAT THE LIBDEFS ARE LOCAL TO THIS APPLICATION AND DO */
/*      NOT REPLACE ANY LIBDEFS THAT EXISTED WHEN THE CLIST WAS       */
/*      CALLED.  IF YOU CHOOSE TO WRITE YOUR OWN CLISTS TO INVOKE     */
/*      THIS CLIST, YOU MUST SPECIFY A NEWAPPL OF FAXE WHEN YOU DO    */
/*      SO.  FAILURE TO DO SO WILL CAUSE ISPF TO DISCARD ANY LIBDEFS  */
/*      IN EFFECT AT THE TIME OF THE CALL.                            */
/*                                                                    */
/**********************************************************************/
   CONTROL NOFLUSH NOMSG                                               
SET MPANEL = &STR(XFAMU01)                                             
/**********************************************************************/
/* PASS PARAMETERS TO FAEXEC TO SET OPTIONS AND EXECUTE FILE-AID      */
/*  (THE NEWAPPL WITH PASSLIB IS REQUIRED ON THIS SELECT TO ACTIVATE  */
/*   THE NEW ISPTLIB AND PASS IT TO THE APPLICATION)                  */
/**********************************************************************/
ISPEXEC SELECT CMD(XVJALLOC PRODID(XXX))                               
/**********************************************************************/
CALLEXEC: ISPEXEC -                                                     
    SELECT CMD(%FAEXEC &FUNCVAR DSN(&DSN) PANID(&MPANEL) &QUOTE) -     
               NEWAPPL(FAXE) PASSLIB                                   
/**********************************************************************/
/* DYNAMIC DEALLOCATION OF FILE-AID LIBRARIES                         */
/**********************************************************************/
ISPEXEC CONTROL ERRORS RETURN                                           
ISPEXEC SELECT  CMD(XVJFREE)                                           
END                                                                     


Code:
PROC 1 FUNCVAR DSN() PANID(XFAMU01) QUOTE                               
/*********************************************************************/
/* COPYRIGHT (C) 2009 BY COMPUWARE CORPORATION, ALL RIGHTS RESERVED. */
/*                                                                   */
/*             FAEXEC - EXECUTE FILE-AID FROM ISPF/PDF               */
/*                                                                   */
/*  THIS CLIST IS INVOKED BY THE FADYNALC CLIST, AFTER THE FILE-AID  */
/*  LIBRARIES HAVE BEEN ESTABLISHED.  IT IS PASSED THE FUNCTION TO   */
/*  BE PERFORMED; OPTIONALLY, THE DATASET TO BE PROCESSED MAY BE     */
/*  PASSED.  THE DATASET IS VPUT TO THE PROFILE SPECIFIED IN THE     */
/*  NEWAPPL (FAXE) IN THE CALL OF FADYNALC.  FILE-AID IS THEN CALLED */
/*  TO PERFORM THE REQUEST.                                          */
/*                                                            144159 */
/*********************************************************************/
SET FAEXEC = N                                                         
IF &FAEXEC = Y THEN +                                                   
   DO                                                                   
     WRITE ======================                                       
     WRITE ENTER CLIST: FAEXEC                                         
     WRITE ======================                                       
     CONTROL MSG LIST SYMLIST CONLIST                                   
   END                                                                 
ELSE CONTROL NOMSG NOLIST NOSYMLIST NOCONLIST                           
BEGIN: -                                                               
   IF &STR('&DSN') = &STR('GO')  THEN +                                 
      SET &DSN = &STR()                                                 
   SET &XMODEPRM = &STR()                                               
   IF &FUNCVAR = MENU THEN -                                           
      GOTO VPUTDSN                                                     
   SET &XMODEPRM = &STR(&FUNCVAR)                                       
                                                                       
VPUTDSN: -                                                             
   IF &STR(&DSN) EQ &STR() THEN GOTO EXECUTE                           
   IF &FUNCVAR = &STR(8) THEN -                                         
      DO                                                               
        SET &LISTB = &STR(DDSN2 DMPMAP CPBKNM)                         
        SET &CPBKNM = &STR()                                           
        IF &QUOTE = QUOTE  THEN -                                       
           DO                                                           
             SET &DDSN2  = &STR('&DSN')                                 
             SET &DMPMAP = &STR('&DSN')                                 
           END                                                         
        ELSE -                                                         
           DO                                                           
             SET &DDSN2  = &STR(&DSN)                                   
             SET &DMPMAP = &STR(&DSN)                                   
           END                                                         
      END                                                               
   ELSE -                                                               
      DO                                                               
        SET &LISTB = &STR(DDSN DMPDSN PNMEM)                           
        SET &PNMEM = &STR()                                             
        IF &QUOTE = QUOTE  THEN -                                       
           DO                                                           
             SET &DDSN   = &STR('&DSN')                                 
             SET &DMPDSN = &STR('&DSN')                                 
           END                                                         
        ELSE -                                                         
           DO                                                           
             SET &DDSN   = &STR(&DSN)                                   
             SET &DMPDSN = &STR(&DSN)                                   
           END                                                         
      END                                                               
                                                                       
   ISPEXEC  VPUT  (&LISTB) PROFILE                                     
                                                                       
EXECUTE: -                                                             
ISPEXEC VGET (ZAPPLID) SHARED                                           
                                                                       
ISPEXEC CONTROL ERRORS RETURN                                           
SET &STARTTIME = &SYSTIME                                               
ISPEXEC SELECT PANEL(&PANID) OPT(&XMODEPRM)                             
SET LRC = &LASTCC                                                       
IF &LRC > 19 THEN -                                                     
  DO                                                                   
    IF &XMODEPRM = &STR()  THEN -                                       
      DO                                                               
        IF &PANID = &STR(XFAMU01) THEN -                               
          DO                                                           
           SET LMSG = &STR( )                                           
           ISPEXEC SETMSG MSG(IMM101)                                   
           WRITE ***  THIS IS AN INVALID OPTION  ***                   
           WRITE WHEN YOU INSTALL JAPANESE, YOU NEED A DBCS TERMINAL TO
           WRITE RUN File-AID/MVS                                       
          END                                                           
        IF &PANID = &STR(UDAMU01) THEN -                               
          DO                                                           
           SET LMSG = &STR( )                                           
           ISPEXEC SETMSG MSG(IMM101)                                   
           WRITE ***  THIS IS AN INVALID OPTION  ***                   
           WRITE WHEN YOU INSTALL JAPANESE, YOU NEED A DBCS TERMINAL TO
           WRITE RUN File-AID/DATA SOLUTIONS                           
          END                                                           
      END                                                               
    ELSE -                                                             
     DO                                                                 
       WRITE  &XMODEPRM IS AN INVALID FILE-AID OPTION                   
       SET XMODEPRM = &STR()                                           
       ISPEXEC SELECT PANEL(&PANID) OPT(&XMODEPRM)                     
     END                                                               
  END                                                                   
ELSE -                                                                 
  DO                                                                   
    IF &LRC > 11 THEN -                                                 
       DO                                                               
         ISPEXEC CONTROL ERRORS CANCEL                                 
         ISPEXEC SELECT PANEL(&PANID)                                   
       END                                                             
  END                                                                   
/*********************************************************************/
/*                                                                   */
/*    THE NEXT TWO LINES CALL THE REXX EXEC TO PRESENT THE ACTIVITY  */
/*    USAGE PANEL AND TO LOG USER ACTIVITY TO THE LOG FILE           */
/*    (OPTIONAL - FAEVAL ROUTINE INVOKED ONLY IF INSTALLED)          */
/*********************************************************************/
ISPEXEC CONTROL ERRORS RETURN                                           
  %FAEVAL &STARTTIME                                                   
END                                                                     
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 8696
Location: Dubuque, Iowa, USA

PostPosted: Mon Apr 04, 2016 5:46 pm
Reply with quote

Have you talked to the vendor about what you want to do? If not, that should be your first conversation -- the vendor knows the product much better than anyone else and probably can tell you precisely how to do what you want to do.
Back to top
View user's profile Send private message
boyti ko

New User


Joined: 03 Nov 2014
Posts: 78
Location: Malaysia

PostPosted: Tue Apr 05, 2016 7:14 am
Reply with quote

Hello Robert,

Thanks for reply. As of now, I'm trying to find out to whom we can address our query here. I'm thinking that there might be someone who can answer here.
Back to top
View user's profile Send private message
boyti ko

New User


Joined: 03 Nov 2014
Posts: 78
Location: Malaysia

PostPosted: Tue Apr 05, 2016 3:16 pm
Reply with quote

Hello,

If anyone might be interested here. The field is stored under your own ISPPROF.
Back to top
View user's profile Send private message
Willy Jensen

Active Member


Joined: 01 Sep 2015
Posts: 712
Location: Denmark

PostPosted: Tue Apr 05, 2016 4:37 pm
Reply with quote

if the variables are stored in your profile ds then you can read and modify the values beforehand using 'VGET (xxxx) PROFILE' and 'VPUT (xxxx) PROFILE'. Beware of applid.
Back to top
View user's profile Send private message
boyti ko

New User


Joined: 03 Nov 2014
Posts: 78
Location: Malaysia

PostPosted: Fri Apr 08, 2016 2:31 pm
Reply with quote

Hi Willy,

I really appreciate your comment. I'll research more about the VGET and VPUT.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> Compuware & Other Tools

 


Similar Topics
Topic Forum Replies
No new posts FTP VB File from Mainframe retaining ... JCL & VSAM 8
No new posts Extract the file name from another fi... DFSORT/ICETOOL 6
No new posts How to split large record length file... DFSORT/ICETOOL 10
No new posts HILITE on Browse mode? TSO/ISPF 2
No new posts Extracting Variable decimal numbers f... DFSORT/ICETOOL 17
Search our Forums:

Back to Top