Information on PPGCOS General Information: if no WORKING-STORAGE can be detected in a GCOS program it is now automatically inserted by PPGCOS. The ALPHABET directive eg. ALPHABET is "ASCII word ASCII" eg. ALPHABET is "HBCD copy PPHBCD2.SSC" FORCE eg. ALPHABET is "HBCD1 lit ABCDEFGHIJKLMNOPQRSTUVWXYZ" word = just a word understood by the compiler lit = literal without quotes copy = a name of a copy that is inserted This directive is useful for example when you have the clause PROGRAM COLLATING SEQUENCE IS HBCD in your GCOS program. HBCD sequence is unknown to the compiler. GDT provides a copy called "PPHBCD.SSC" which can then be used. The DISPLAY directive. - DISPLAY Vx DISPLAY V0 forces the old behavior and is the DEFAULT. DISPLAY V1 traps all DISPLAY statements and reinserts them as paragraphs. Under GDTBATCH the DISPLAYS are shown on the SCREEN and in the JOR. Under GDTMON7 they will be shown on a file. The ACCEPT directive. ACCEPT Vx [options] ACCEPT V0 is default and is also the old behavior. ACCEPT V1 [UPCASE | LOCASE | ANYCASE ] ACCEPTS with V1 are now shown in the JOR! If UPCASE is used then all ACCEPTS are translated into upper-case character for the user program. The default is ANYCASE. PPGCOS handles the COMPLETE COMMUNICATION SECTION by its own. This gives the ability to handle the situation where both types of descriptions were used in the CD INPUT and/or CD OUTPUT description. There should now be no problem to intermix the usage of fields described in the CD section by their NAMES or by using the LEVEL-NUMBER description. e.g CD CD-IN-NAMES FOR INPUT SYMBOLIC QUEUE IS SYMINQ SYMBOLIC SOURCE IS SYMINS ............ . 01 CD-IN-LEVEL-NUMBER. 05 INSYMQ PIC X(12). 05 FILLER PIC X(50). 05 INSYMS PIC X(12). CD-IN-NAMES and CD-IN-LEVEL-NUMBER both are addressed to the SAME memory space (as on GCOS) and you can intermix the fields. Whenever you move something to INSYMQ you will also find the modification is done in SYMINQ. 1 Information on PPGCOS General Information Continued: PPGCOS directive ‘DISPLAY IS V1’ does support display statements using numeric literals (without quotes). PPGCOS handles copybook names that are the same as a program name in the GDT libraries. ‘SEND cd-out FROM FIELD (SUB) ...’ Format is supported. Older GCOS Documentation did not allow use of a subscripted or indexed field as the SOURCE of the SEND statement. It is supported with PPGCOS. TDS call 'EXITS' is available. This implementation is not 100% to the GCOS rules. 2 Information on PPGCOS Using PPGCOS Trace: First you need to make sure TRACE is set in the PPGCOS.DIR file. This allows for the creation of the PPGCOS.OUT when compiling a program and traces the Preprocessor Code. Now we will compile the ADDRESS.CBL program. PPGCOS.OUT is now produced. Make sure to save off your original source code ( COPY ADDRESS.CBL ADDRESS_SAVE.CBL). 3 Information on PPGCOS This converts the PPGCOS.OUT file back to the program ADDRESS.CBL. This program will now contain the preprocessor code. Here is the comparison of the ADDRESS_SAVE.CBL (original source) and the ADDRESS.CBL (containing preprocessor code). 4 Information on PPGCOS We now need to compile the new ADDRESS.CBL (without the preprocessor being used!). Make sure the PREPROCESS(PPGCOS) is removed from cobol.dir and that the COMPILE batch job does not contain the PREPROCESS(PPGCOS) directive as well. 5 Information on PPGCOS Here is the compilation of the program. Now we will run the batch job which will open up the NetExpress IDE and put the program in Debug Mode. 6 Information on PPGCOS Here we are in the animator…Note the PREPROCESSOR CODE. 7 Information on PPGCOS Job runs to successful completion. 8 Information on PPGCOS Commonality Among Customer’ PPGCOS Directives To make this list 3 out of 4 customers were using the directive: ACCEPT V1 or ACCEPT V1 UPCASE - mandatory UPCASE recommended. COMP is “COMP-6” - mandatory COMP-1 is "BINARY PIC S9(004)" - mandatory COMP-2 is "BINARY PIC S9(009)" - mandatory CONFIRM – customer preference DISPLAY V1 - mandatory ERRQ – customer preference EXTFH is "GDTMONFH" - mandatory NO FILEPATH - mandatory RECEIVE - mandatory RMVSCTNR – customer preference SELECT MANUAL - mandatory SYSIN - mandatory SYSOUT - mandatory TP-STRG is "TDS-STORAGE" - mandatory TRACE – user preference TRPRFMS – user preference VIPEMUL – mandatory 9 Information on PPGCOS Common PPGCOS Directives with Definitions: ACCEPT V1 GDT set to activate ACCEPT, ACCEPT from console will be accepted from GDTConsole or from Window CASE SENSITIVE ACCEPT V1 UPCASE GDT set to activate display, display upon console will be displayed on GDTConsole and GepFile UPPER CASE ALPHABET IS "ASCII WORD ASCII" Enables the usage of several additional Alphabets allowed on GCOS. In this case the ASCII one. This entry is mandatory for programs that have references like ‘SORT SEQUENCE IS alphabetname’ in the program. ALPHABET is "EBCDIC WORD EBCDIC" Enables the usage of several additional Alphabets allowed on GCOS. In this case the EBCDIC one. This entry is mandatory for programs that have references like ‘SORT SEQUENCE IS alphabetname’ in the program. ALPHABET IS "NATIVE word ASCII" Enables the usage of several additional Alphabets allowed on GCOS. In this case the ASCII one. This entry is mandatory for programs that have references like ‘SORT SEQUENCE IS alphabetname’ in the program. ALPHABET IS "NATIVE word NATIVE" Enables the usage of several additional Alphabets allowed on GCOS. In this case the NATIVE one. This entry is mandatory for programs that have references like ‘SORT SEQUENCE IS alphabetname’ in the program. 10 Information on PPGCOS CHANNEL Enables the emulation of CHANNELS used on Mainframe. This type of channels is not supported by the compiler and handled then by GDT. COMP is "COMP-6" Defines how Mainframe COMP has to be converted internally. COMP-1 is "BINARY PIC S9(004)" Defines how Mainframe COMP-1 has to be converted internally. COMP-2 is "BINARY PIC S9(009)" Defines how Mainframe COMP-2 has to be converted internally. COMP-3 is "COMP-6" Defines how Mainframe COMP-3 has to be converted internally. CONFIRM Parameters are displayed on the screen from here onwards. DISPLAY is V1 GDT set to activate DISPLAY, DISPLAY upon console will be displayed on GDTConsole and GepFile DISPLAY V1 GDT set to activate DISPLAY, DISPLAY upon console will be displayed on GDTConsole and GepFile ERRQ If an error occurs inside PPGCOS then the error message is displayed and PPGCOS waits for keyboard input. EXTFH is "GDTMONFH" Defines the external file handler that should be used for TDS access. 11 Information on PPGCOS IDXINIT Forces PPGCOS to detect all fields declared by a ‘USAGE IS INDEX’ verb and initialize all these indexes before the program executes. NO FILEPATH Forces PPGCOS to not insert a file-path for all the EFN’s in the selects. RECEIVE This enables detection of RECEIVE verbs and translate them into approbriate calls to the GDT runtime system. RMVSCTNR This enables the detection of SECTION-NUMBERS in the SECTION declaration and remove this numbers. This will avoid splitted generated program code into multiple .GNT files. SELECT MANUAL Used in conjunction with the ‘NO FILEPATH’ directive, the EFN’s in the programs are surrounded then by Doublequotes. SYSIN Allows the support of SYSIN handling as on Mainframe. SYSOUT Allows the support of SYSOUT handling as on Mainframe. TP-STRG is "TDS-STORAGE" Defines the trigger string to identify TPR’s, otherwise it will be a BATCH program. TRACE Enables the internal trace capabilities and will create a file PPGCOS.OUT, this can be send to GDT for analyzation. Internal use only. 12 Information on PPGCOS TRACE WITH CHECKER Enables the internal trace capabilities and will create a file PPGCOS.OUT, this can be send to GDT for analyzation. Also the MicroFocus checker will be traced and output will be written to the same file. Internal use only. TRPRFMS Enables the translation of PREFORMS calls into FORMS calls. VIPEMUL Enables the add-on product VIPEMUL to handle hard-coded screens. 13