F4 edit macro exit
Extend the processing of the enhanced search key by providing a REXX edit macro to be called from the FMNSRCHK exec.
- LIBDEF invocation:
-
FMNELIBD KEY X(exec_name) - Non-LIBDEF invocation:
-
FMNSRCHK X(exec_name
- CRZXDSN
- This contains a list of one or more data sets and member names, or both, separated by
commas.
If the cursor is positioned on the command line, it will represent all the data set names referenced in the member.
If the cursor is positioned on a JCLLIB or a DD statement, it will be populated with all the associated data set names.
If the cursor is positioned on a exec procedure name, then it will be populated with the originating procedure data set name concatenated with the procedure name in parenthesis.
If the cursor is positioned on a EXEC PGM=name, then it will be populated with the load library from where this program will be loaded, concatenated with the program name in parenthesis.
- CRZXCSRW
- The word where the cursor is currently positioned. If the cursor is on the command line, then this value will be ‘’ or null.
Example
Set up sample REXX MYEKEY to display various values from the current edit or
view section.
F16 FMNELIBD KEY X(MYEKEY)
/* REXX Sample EXEC - Exit values for the Edit or View key */
address ISPEXEC 'CONTROL ERRORS RETURN'
address ISPEXEC 'VGET (CRZXDSN CRZXCSRW) SHARED'
say 'exit CRZXDSN =' CRZXDSN /* Data set names */
say 'exit CRZXCSRW =' CRZXCSRW /* Word at cursor */
address ISREDIT
'(LNO,LPOS) = CURSOR '
'(lval) = LINE 'lno
say 'current line number = 'lno
say 'current line pos = 'lpos
say 'current line value = 'lval
return
Edit session – position to &SYSUID..DEMOGSE.CNTL and press
F16 (shift + F4)
File Edit Edit_Settings Menu Utilities Compilers Test Help
VIEW FMN.DEMOGSE.REFS(DEMO1) - 01.02 Columns 00001 00072
Command ===> Scroll ===> CSR
000010 &SYSUID..DEMOGSE.CNTL(CBLPROC) ! Option 2 Variable substitution
000011 &SYSUID..DEMOGSE.CNTL(PRINT) ! Option 3 SELECT
000012 &SYSUID..DEMOGSE ! Option 4 DSLIST
000013 &SYSUID..DEMOGSE.NEWDSN ! Option 13 Create/allocate Use 6 Try GR
000014 &SYSUID..DEMOGSE.CNTL ! Option 13 change - convert to a PDSE 2
000015 &SYSUID..DEMOGSE.CNTL ! Option 12 PDSE2 workbench
000016 &SYSUID..DEMOGSE.KSDS ! Option 13 LIST Catalog services
000017 &SYSUID..DEMOGSE.**
000018 &SYSUID..DEMOGSE.SEARCH.** ! Option 11 Search the data set
****** **************************** Bottom of Data ****************************
exit CRZXDSN = MYUSER.DEMOGSE.CNTL(CBLPROC) exit CRZXCSRW = &SYSUID..DEMOGSE.CNTL current line number = 00000010 current line pos = 00014 current line value = &SYSUID..DEMOGSE.CNTL(CBLPROC) ! Option 2 Variable substitution