Customer Software Release Notice for @PROC@ Version 07.54.03 June 1999 VS SOFTWARE RELEASE NOTICE VS Procedure Interpreter Version 07.54.03 1.0 Distribution Information ________________________ Version 7.54.03 of @PROC@, the VS Procedure Interpreter, is a general release. This version is for 7.53 operating systems and their associated baselines. Please note section 3.2 for any software dependencies. 2.0 Release Abstract ________________ @PROC@, the VS Procedure Interpreter, executes procedures written in VS Procedure Language. PROC is a utility which allows users to display, edit, and run procedures or programs, and also allows users to syntax check and trace procedures. Many enhancements have been introduced since the 5.10.XX series of the VS Procedure Interpreter. It is highly recommended that you are familiar with all these enhancements prior to using the 7.53 baseline of Procedure Interpreters to insure that the Procedure Interpreter can be used to its full potential. 3.0 Prerequisites and Dependencies ______________________________ 3.1 Hardware Prerequisites ______________________ The Procedure Interpreter can be installed and used on any Wang VS system. 3.2 Software Prerequisites ______________________ The Procedure Interpreter requires Version 7.00.00 or later of the VS Editor. 4.0 Restrictions and Special Considerations _______________________________________ The Procedure Interpreter must be named @PROC@. An attempt to use the interpreter by any other name will fail. 5.0 Enhancements in 5.10.01 and greater ___________________________________ The Procedure Language supports the SPOOLSCR keyword for both the SET and EXTRACT statements. Below is the general format and an example of the SET and EXTRACT statement syntax using the SPOOLSCR keyword. 5.0.1 General Rules _____________ For the SET statement either a string constant or a string variable may be used for the value of SPOOLSCR. For the EXTRACT statement a string variable must be used for the value of SPOOLSCR. 5.0.2 General Formats _______________ [label:]...SET SPOOLSCR = [string constant] [string variable] [label:]...EXTRACT string variable = SPOOLSCR 5.0.3 Examples ________ Procedure Declare &scr string (1) initial "Y" Set SPOOLSCR = Y Set SPOOLSCR = &scr Procedure Declare &scr string(1) Extract &scr = SPOOLSCR 5.1 Enhancement in 5.10.03 and greater __________________________________ PROC is a utility from which you can run, edit, trace, or syntax check procedures. Previous versions of PROC would automatically use the version of the Procedure Interpreter found in the system library on the IPL volume. For tracing (PF 9) and syntax checking (PF 10) PROC version 05.01.01 first checks the library from where it is being run. If @PROC@ exists in this library, this version is used rather than the version in the system library. 5.2 Enhancement for DCR C500010571 in 5.10.04 _________________________________________ The Procedure Language supports the USERMSG and OPERMSG keywords for the EXTRACT statement. Below is the general format and an example the EXTRACT statement syntax using the USERMSG and OPERMSG keywords. 5.2.1 General Rules _____________ A string variable, length 80, must be used to receive data for the USERMSG or OPERMSG keywords. 5.2.2 General Format ______________ [label:]...EXTRACT string variable = USERMSG [label:]...EXTRACT string variable = OPERMSG 5.2.3 Example _______ Procedure Declare &usermsg, &opermsg string (80) EXTRACT &usermsg = USERMSG, &opermsg = OPERMSG 5.3 Enhancement for DCR C500011891 in 5.10.04 _________________________________________ The Procedure Language supports the REM and FIX keywords for the MOUNT statement. Below is the general format and an example of the MOUNT statement syntax using the REM and FIX keywords. 5.3.1 General Rules _____________ REM is the default if not included in the syntax. The REM or FIX keyword must immediately follow the MOUNT verb. The REM or FIX keywords are ignored if used in conjunction with the TAPE keyword. 5.3.2 General Format ______________ [label:]...MOUNT [REM] DISK ........ [FIX] 5.3.2 Examples ________ Procedure MOUNT REM abc on 32 PAGING = NO MOUNT REM DISK efj on 36 SECURE = NO MOUNT FIX DISK abc on 80 PAGING = YES 5.4 Enhancement for DCR P500013671 in 5.10.06 _________________________________________ The Procedure Language supports the PERM keyword for the SUBMIT statement. Below is the general format and an example of the SUBMIT statement syntax using the PERM keyword. 5.4.1 General Rules _____________ Valid values are YES or NO NO is the default if not included in the syntax. 5.4.2 General Format ______________ [label:]...SUBMIT JOB IN LIBRARY ON VOLUME, YES PERM = NO __ 5.4.2 Example _______ Procedure SUBMIT JOB1 IN LIBRARY ON VOLUME, CLASS = Z, DUMP = YES, CPULIMIT = 99, STATUS = RUN, ACTION = CANCEL, PERM = YES 5.5 Enhancement in 5.10.07 and greater __________________________________ PROC is a utility from which you can run, edit, trace, or syntax check procedures. Previous versions of PROC only allowed the use of the EDITOR (PF2) for editing procedures. In version 05.02.00 of PROC the option to use ADEPT (PF3) will appear on the menu if ADEPT exists in the system library. 5.6 Enhancement for DCR C800012910 in 5.10.07 _________________________________________ If the PROCEDURE IN PROGRESS message has not been disabled, prior to the execution of a RUN statement the workstation is cleared and the PROCEDURE IN PROGRESS message is displayed. If a Message or Prompt screen had been displayed prior to the RUN statement, it will be redisplayed after completion of the RUN statement. 5.7 Enhancement in 5.10.10 and greater __________________________________ The Procedure Language supports the USERMSGS keyword for the EXTRACT statement. Below is the general format and an example of the EXTRACT statement syntax using the USERMSGS keyword. 5.7.1 General Rules _____________ A string variable, length 1, must be used to receive data for the USERMSGS keyword. 5.7.2 General Format ______________ [label:]...EXTRACT string variable = USERMSGS 5.7.3 Example _______ Procedure Declare &usermsgs string (1) EXTRACT &usermsgs = USERMSGS 5.8 Enhancement in 5.10.11 and greater __________________________________ The Procedure Language supports the REDISPLAY keyword for the OPTIONS, PROMPT and MESSAGE statements. The REDISPLAY keyword allows the user to define how MESSAGE or PROMPT screens which preceed a RUN statement will be handled when control returns to the procedure. The OPTIONS statement allows the user to set the REDISPLAY option on a procedure wide basis whereas the PROMPT statement allows the user to override the procedure wide setting on an individual screen basis. Below are the general formats and examples of each statement syntax using the REDISPLAY keyword. 5.8.1 General Rules _____________ Valid values are YES or NO YES is the default if not included in the syntax of the OPTIONS statement. The procedure wide value is the default if not included in the syntax of the PROMPT statement. 5.8.2 General Format ______________ [label:]...OPTIONS YES ___ REDISPLAY = NO ..PROMPT YES REDISPLAY = NO 5.8.3 Example _______ Procedure PROC1 OPTIONS PROCMSG = NO, The procedure wide default REDISPLAY = NO is set to 'NO' DECLARE ..... MAINMENU: PROMPT REDISPLAY = YES, The screen will be redisplayed after a Run statement ERASE = YES, The screen will be erased before the text is written by this PROMPT PFKEY = &PFKEY The pfkey value will be placed in &PFKEY ROW 01 The text will start on row 1 CENTER "THE UPPER PORTION OF THE MENU";; CENTER "PFKEY (1) = APPLICATION 1"; CENTER "PFKEY (2) = APPLICATION 2"; CENTER "PFKEY (3) = APPLICATION 3"; CENTER "PFKEY (4) = APPLICATION 4"; CENTER "PFKEY (16) = RETURN IF &PFKEY = 16 RETURN CALL "AP"!!&PFKEY The value is AP1 GOTO MAINMENU AP1: RUN PROC2 run PROC2 (next screen) The previous PROMPT screen will be redisplayed (MAINMENU REDISPLAY=YES) ASSIGN &RC = AP1 IF &RC > 0 RETURN LOWMENU: PROMPT ERASE = NO, The screen will not be erased before the text is written by this PROMPT PFKEY = &PFKEY The pfkey value will be placed in &PFKEY ROW 07 The text will start on row 7, overlaying the PFKEY (16) line from the previous MAINMENU with the first line of this text. CENTER "PFKEY (5) = DISPLAY "; CENTER "PFKEY (6) = COPY "; CENTER "PFKEY (7) = APPLICATION 7"; CENTER "PFKEY (8) = APPLICATION 8";; CENTER "PFKEY (16) = RETURN IF &PFKEY = 16 RETURN CALL "AP"!!&PFKEY The value is AP5 END AP5: RUN DISPLAY Run display The previous PROMPT screen will be erased (LOWMENU did not override the procedure wide default of REDISPLAY = NO) NOTE: The screen will be blank prior to the next PROMPT screen. _____ Performing a PROMPT ERASE = NO will not bring back the previous screen. If any information from the screen is to be used by another PROMPT then REDISPLAY should be set to YES. END Procedure PROC2 OPTIONS PROCMSG = NO, The procedure wide default REDISPLAY = YES is set to 'YES' for this procedure DECLARE &PF INTEGER DECLARE &TM INTEGER INITIAL 100 MESS01: MESSAGE ERASE = YES The screen will be erased before the text is written by this MESSAGE CENTER "THIS IS PROCEDURE 'PROC2'";; CENTER "1ST MESSAGE (1 SECOND)"; RUN PAUSE IN VSSUBS USING &TM The previous MESSAGE screen will be redisplayed (the procedure wide default of REDISPLAY = YES) MESSAGE ERASE = NO The screen will not be erased before the text is written by this MESSAGE ROW 4 The text will start on row 4 CENTER "2ND MESSAGE (1 SECOND)"; RUN PAUSE IN VSSUBS USING &TM The previous MESSAGE screen will be redisplayed (the procedure wide default of REDISPLAY = YES) END 5.9 Enhancement for new DATE4 Built-In Function in 7.40.00 ______________________________________________________ &DATE4 extracts an eight-character string that represents the system date in the form of MMDDYYYY, where MM represents the month, DD represents the day of the month, and YYYY represents the year. In order to retrieve the year successfully the proper Operating System must be used. The 7.53.00 baseline of VS Operating Systems support the 4-digit year facility. Using any other Operating System in conjunction with this function will not provide the desired result. Be sure to read the General Rules carefully to be sure this is the proper function to be used. It is recommended that if running and Operating System prior to 7.53 that the DATE function be used in lieu of the DATE4 function. 5.9.1 General Rules _____________ &DATE4 requires no input parameters. An eight-character string value is returned in the form of MMDDYYYY, where MM is the month number, DD is the day of the month, and YYYY is the year. If the Operating System being run is prior to the 7.53 baseline the year results will contain 00 in the century digits. 5.9.2 General Format ______________ &date4 5.9.3 Example _______ procedure declare &saved-date string(8) declare &formatted date string(8) initial " / / " assign &saved-date = &date4 assign &formatted date(1,2) = &saved date(1,2) assign &formatted date(4,2) = &saved date(3,2) assign &formatted date(7,4) = &saved date(5,4) In the preceding example, if the date is December 15, 1986, the final value of &formatted date becomes 12/15/1986. If the Operating System being run if prior to the 7.53 baseline the final value of &formatted date wil be 12/15/0086. In this case the use of the DATE function would be highly recommended. 5.10 Enhancement for LOCAL keyword for the MOUNT statement in 7.50.00 ________________________________________________________________ The Procedure Language supports the LOCAL keyword for the MOUNT statement. Below is the general format and an example of the MOUNT statement syntax using the LOCAL keyword. 5.1-.1 General Rules _____________ Acceptable values for the LOCAL keyword are 'YES' or 'NO'. 5.10.2 General Format ______________ MOUNT REM [DISK] volname [VSID = volume-set-ID] ___ FIX (label) [ON unit#] [WITH] STANDARD LABEL NO LABELS SHARED [FOR] EXCLUSIVE USAGE PROTECTED RESTRICTED [REMOVAL] NO NO __ __ keyword = YES , keyword = YES ... variable variable where PAGING keyword = SECURE SPOOL WORK LOCAL 5.10.3 Examples ________ Procedure MOUNT DISKET on 32 PAGING = NO, LOCAL = YES 5.11 Enhancement for SUBMIT in 7.53.00 and greater _____________________________________________ The Procedure Language supports the PRIORITY keyword for the SUBMIT statement. Below is the general format and an example of the SUBMIT statement syntax using the PRIORITY keyword. 5.11.1 General Rules _____________ Valid integer values are 1 through 9 7 is the default if not included in the syntax. 5.11.2 General Format ______________ [label:]...SUBMIT JOB IN LIBRARY ON VOLUME, PRIORITY = 1 through 9 PRIORITY = (integer variable) 5.11.3 Example _______ PROCEDURE DECLARE PRIOR INTEGER INITIAL 1 SUBMIT JOB1 IN LIBRARY ON VOLUME, CLASS = "Z", DUMP = "YES", CPULIMIT = 99, STATUS = "RUN", ACTION = "CANCEL", PERM = "YES", PRIORITY = 4 SUBMIT JOB2 IN LIBRARY ON VOLUME, CLASS = "Z", DUMP = "YES", CPULIMIT = 99, STATUS = "RUN", ACTION = "CANCEL", PERM = "YES", PRIORITY = PRIOR 5.12 Enhancement for SET in 7.53.00 and greater __________________________________________ The Procedure Language supports lowerclass (a-z) setting for PRTCLASS of the SET statement. Below is the general format and an example of the SET statement syntax using a lowerclass PRTCLASS. 5.12.1 General Rules _____________ For the SET statement either a string constant or a string variable may be used for the value of PRTCLASS. 5.12.2 General Formats _______________ [label:]...SET PRTCLASS = [string constant] [string variable] 5.12.3 Examples ________ Procedure Declare &prtclass string (1) initial "a" Set PRTCLASS = a Set PRTCLASS = &prtclass 5.13 Enhancement for new DATE8 Built-In Function in 7.54.00 ______________________________________________________ &DATE8 extracts an eight-character string that represents the system date in the form of YYYYMMDD, where YYYY represents the year, MM represents the month, and DD represents the day of the month. In order to retrieve the year successfully the proper Operating System must be used. The 7.53.00 baseline of VS Operating Systems support the 4-digit year facility. Using any other Operating System in conjunction with this function will not provide the desired result. Be sure to read the General Rules carefully to be sure this is the proper function to be used. It is recommended that if running and Operating System prior to 7.53 that the DATE function be used in lieu of the DATE8 function. 5.13.1 General Rules _____________ &DATE8 requires no input parameters. An eight-character string value is returned in the form of YYYYMMDD, where YYYY represents the year, MM represents the month, and DD represents the day of the month. If the Operating System being run is prior to the 7.53 baseline the year results will contain 00 in the century digits. 5.13.2 General Format ______________ &date8 5.13.3 Example _______ procedure declare &saved-date string(8) declare &formatted date string(8) initial " / / " assign &saved-date = &date8 assign &formatted date(1,2) = &saved date(5,2) assign &formatted date(4,2) = &saved date(7,2) assign &formatted date(7,4) = &saved date(1,4) In the preceding example, if the date is December 15, 1986, the final value of &formatted date becomes 12/15/1986. If the Operating System being run if prior to the 7.53 baseline the final value of &formatted date wil be 12/15/0086. In this case the use of the DATE function would be highly recommended. 5.14 Enhancement for new CEXIT feature in 7.54.01 ____________________________________________ A modification has been made to support a new feature in the CEXIT macro. This is an internal change and is intended to be totally transparent to the user. 5.15 Enhancement for PRINT statement in 7.54.02 __________________________________________ The PRINT statement now accepts upper and lower case print class values 6.0 Problems Corrected Since Release 7.54.02 ________________________________________ In previous versions of the Procedure Interpreter the following scenario existed: If a TRACE statement existed in a procedure and the procedure was run inside the EDITOR without tracing being requested, the file, library, and volume specified in the TRACE statement were still ignored. The file name would be either the procedure name or the temporary file name currently being used by the EDITOR. The library and volume names were those specified in the Listing files specification from the EDITOR. If these were not specified first the SPOOLLIB and SPOOLVOL information would be used. If these were not specified the OUTLIB and OUTVOL information would be used. If neither of these had been set the user would receive a GETPARM requesting library and volume information. TRACING now functions as follows: If a TRACE statement exists in a procedure and the procedure is run either standalone, or from PROC or the EDITOR and tracing in these editing facilities has not been requested, the file, library, and volume specified by the TRACE statement will be used. If any other TRACE statements exist in that procedure or subsequent procedures the file, library, and volume information as well as the option settings will be used and will override the previous TRACE statements. If a TRACE statement exists in a procedure and the procedure in run from PROC or the EDITOR and tracing is requested the file, library and volume assignments work as in previous versions. TRACE statements in the procedure are ignored and any option setting changes will not occur. 6.1 Problems Corrected Since Release 7.53.02 ________________________________________ The correction to the &DATE4 format made in release 7.53.00 has had a negative impact to users who were using the previous version of the &DATE4 builtin function with the YYYYMMDD format. In order to allow these procedures to remain with as little impact as possible the new &DATE8 function is provided for use in liew of the &DATE4 builtin function. Please review the enhancements section of this CSRN for a detailed explanation of the differences in these two builtin functions. 6.3 Problems Corrected Since Release 7.53.01 ________________________________________ It has been reported that some users are attempting to use the 7.53 series of the Procedure Interpreter on Operating Systems prior to 7.53.00. Although the Procedure Interpreter will run on these operating systems the attempt to use unsupported features may cause unexpected results. The DATE4 feature was found to be one of these features. In this case the YYYY format was not returning zeros as expected but sometimes illegible results. The Procedure Interpreter now retrives the date as before but insures that the century digits not provided by pre-7.53.00 operating systems contains valid zeros instead of illegible text. 6.3 Problems Corrected Since Release 7.53.00 ________________________________________ The DATE4 feature was not working as documented. In previous supporting versions the date was incorrectly retrieved in YYYYMMDD format. The Procedure Interpreter now retrives the date in the documented format of MMDDYYYY. 7.0 Known Anomalies _______________ None. 8.0 Media Contents ______________ Volume = PIDISK Library = INSTALLP Protection Blocks Module Version Class ______ _______ _____ @PROC@ 7.54.03 @ PROC 7.54.03 @ Volume = PIDISK Library = CSRNLIB Module Description ______ ___________ PI075403 CSRN 9.0 Installation Instructions _________________________ The following instructions explain how to install the @PROC@ program. In this installation process you will have to IPL your system twice. 1. First you must copy the INSTALLP library from PIDISK to your system volume. 2. IPL your system. Press PF1 on the CONFIG file screen to IPL using one workstation and one disk drive (the disk drive with the system volume on it). 3. When you log on be sure that a procedure is not running when the installation is attempted. 4. Rename or scratch the files PROC and @PROC@ in library @SYSTEM@ on the system volume. It is recommended that you rename your current procedure interpreter (@PROC@) when you are installing a new procedure interpreter. 5. Using the Copy utility, copy the file @PROC@ in library INSTALLP on the system volume (sysvol) to file @PROC@ in library @SYSTEM@ on the system volume. 6. Using the Copy utility, copy the file PROC in library INSTALLP on the system volume (sysvol) to file PROC in library @SYSTEM@ on the system volume. 7. Run PROC and verify that the correct version number is installed. The version number of the Procedure Interpreter you have in your system library will appear at the top of the screen. Once you have verified that the installation is successful, scratch the library INSTALLP on the system volume. 8. RE-IPL the system in the normal manner.