═══ 1. Overview ═══ How many times have you been in this situation? There is a foot-thick program listing sitting ominously on your desk, post-it notes sticking out everywhere. Within the next 24 hours (and you'll probably use most of them) you have to: 1) Figure out why it isn't working correctly. 2) Come up with a solution. 3) Verify the solution with a user in order to ensure that it will meet their needs. 4) Implement and test the fix. All of the time-consuming tasks listed above and more can be accomplished more quickly and effectively by quickly getting to the heart of the code. CASEy COBOL HyperCode is a unique utility program that transforms any COBOL program into a HyperText-linked OS/2 information file. This provides systems development organizations with a number of benefits, it: o Dramatically reduces the amount of time required in the discovery phase of system maintenance. o Brings new programmers up to speed quickly by allowing them to view examples of standardized code. The popup definitions can be used to clarify obscure programming commands and/or conventions. o Provides programmers with the ability to more quickly (and thoroughly) desk check programs before intensive testing. o Utilizes an organization's data dictionary to create a popup definition (in the HyperCode file) for each program variable or command. o Acquaints systems professionals with the advantages of using the PC as an analysis tool. This can open the door to utilizing many of the exceedingly powerful applications including PC compilers, CASE tools and client-server database applications. HyperCode is a small, but potentially very useful step in this direction. Related Information: o Menu Options o HyperCode Document Structure o Example Session/Utilities o Registration! ═══ 2. Menu options ═══ This section contains descriptions of the functions provided by the HyperCode menus. Menu options: o File Menu Options o Edit Menu Options o Run Menu Options Related Information: o Overview o HyperCode Document Structure o Example Session/Utilities o Registration! ═══ 2.1. File ═══ The File menu presents options for selecting which files to operate upon. Related Information: o Select COBOL Program o Select Popup Definition File o OS/2 Shell o Exit ═══ 2.1.1. Select COBOL Program ═══ The File|Select COBOL Program option presents a file dialog box from which the user can select a program to process with HyperCode. The default extension is .CBL but this can be overtyped if necessary. ═══ 2.1.2. Select Popup Definition File ═══ The File|Select Popup Definition File option presents a file dialog box from which the user can select a file to be used to build popup definitions within the HyperCode generated file. This is not required in order to execute HyperCode. The format for a popup definition file is as follows: $D$Label1 Definition Text Lines... Definition Text Lines... Definition Text Lines... Definition Text Lines... $D$Label2 Definition Text Lines... Definition Text Lines... Definition Text Lines... Definition Text Lines... Definition Text Lines... Each label is prefixed with a $D$ tag and the definition is placed on the following lines until the next $D$ tag is encountered. The text preceding the first $D$ tag is ignored. Each occurrence of the text of the label in the code is hyperlinked to the definition. The only thing that will pre-empt a popup definition hyperlink is a link to an identifier declaration. In this case, the popup will be located within the declaration. ═══ 2.1.3. OS/2 Shell ═══ The File|OS/2 Shell option starts an OS/2 window session from which you can manipulate files, execute programs, etc... ═══ 2.1.4. Exit ═══ The File|Exit option ends the current HyperCode session. ═══ 2.2. Edit ═══ The Edit menu contains selections for allowing the user to invoke an editor on selected files. Related Information: o Edit COBOL Program o Edit Popup Definition File ═══ 2.2.1. Edit COBOL Program ═══ The Edit|Edit COBOL Program option starts the user specified editor, loading the currently selected COBOL program. If no program is selected, the editor is started without opening a file. ═══ 2.2.2. Edit Popup Definition File ═══ The Edit|Edit Popup Definition File option starts the user specified editor, loading the currently selected popup definition file. If no file is selected, the editor is started without opening a file. ═══ 2.3. Run ═══ The Run menu contains selections for allowing the user to select options or execute HyperCode functions. Related Information: o Set Options o Build IPF File o Execute IPF Compiler o View HyperCode Program ═══ 2.3.1. Set Options ═══ The Run|Set Options option brings up a dialog box that allows the user to select various program options, including the program to use when editing files. The Editor Program field allows the user to change the default editor used by the Edit|Edit COBOL Program option and the Edit|Edit Popup Definition File option. The default editor installed by HyperCode is E.EXE, the OS/2 system editor. The Copybook Search Path field allows the user to set the directory HyperCode uses to look for a copybook file when it is not found in the same directory as the program source code. The Max. Structure Chart Level spin button allows the user to select the maximum level (depth) to generate structure charts for procedure division paragraphs/sections. The level is adjustable from 0 to 100 by using the up or down arrows on the spin button or by typing a value directly in the field. Most of the time, a 4-6 level structure chart is sufficient. This keeps each individual paragraph/section's structure chart relatively simple and you can go deeper into the structure by going to a lower-level item (from the structure chart) and bringing up the lower-level item's structure chart. The Keep expanded COBOL checkbox allows the user to tell HyperCode whether or not to delete the expanded COBOL source code used by its parser. You may wish to use this expanded file with another application or editor. The program default installed by HyperCode is unchecked. ═══ 2.3.2. Build IPF File ═══ The Run|Build IPF File option invokes the HyperCode parser and creates an .IPF source code file from the currently selected COBOL program. If no program is selected, an error message is displayed. ═══ 2.3.3. Execute IPF Compiler ═══ The Run|Execute IPF Compiler option invokes the OS/2 IPF compiler for a user selected .IPF file, this generates a .INF file which can be viewed using the OS/2 VIEW utility. ═══ 2.3.4. View HyperCode Program ═══ The Run|View HyperCode Program option invokes the OS/2 VIEW utility for a user selected .INF file, this is where the analysis of the program is done. For help on using the Information Presentation Facility, see the online help for VIEW. ═══ 3. HyperCode Document Structure ═══ The HyperCode IPF document Table of Contents is divided into four main entries representing the divisions of a COBOL program (IDENTIFICATION, ENVIRONMENT, DATA, PROCEDURE). These divisions can be expanded to show the sections that are contained within them by clicking on the plus (+) sign in front of the division name. Likewise, the sections can be expanded to show any paragraphs, "01" levels, FD, SD entries contained within them. This provides a thumbnail sketch of the high-level components of the program. When an item is expanded, the plus sign changes to a minus sign. Expanded items can be contracted by clicking on the minus sign. Every item in the Table of Contents can be double-clicked on to reveal the actual source code contained within that item. HyperCode also places hypertext links on certain items to allow you to quickly pull up information on that item or jump to its declaration within the program. If you use a popup definition file, any reference to a popup definition item in the program text will be highlighted and the popup definition will appear in a window when the highlight is double-clicked on. This allows you to include definitions from a data dictionary or explanations of obscure programming commands. In the procedure division, all references to data items are highlighted and contain hypertext links to the "01" level in which they were declared. This allows you to quickly jump back to working storage in order to look at formats, value statements, redefines etc... If the data name is referenced with an "OF" qualification, it is ignored, however the "OF" name will be linked and data references take you back to the top of the "01" anyway. The wide variety of navigation and search functions built into the Information Presentation Facility allow you to quickly find needed information. In the procedure division, all references (PERFORMs, GO TOs, etc...) to paragraphs and/or sections are highlighted and contain hypertext links to the actual paragraph/section in the document. This allows you to quickly follow program execution paths even when the paragraphs are hundreds of lines apart. Each section in the HyperCode document contains an editor icon that can be double-clicked on in order to start the OS/2 Enhanced Editor and bring up the appropriate source file, locating the cursor at the position where the section begins. This function locates the cursor at the source code line where the section started at the time when the HyperCode document was generated. If lines are added or removed, the cursor will not be located exactly where the section starts. In addition, all sections in the procedure division contain a structure icon which can be double-clicked on in order to bring up a footnote window that contains a textual procedure structure chart. The entries in the structure chart can also be double-clicked on in order to jump to that section in the document. When all of these features are combined, the HyperCode document becomes a very powerful analysis tool. Related Information: o Overview o Menu Options o Example Session/Utilities o Registration! ═══ 4. Example Session/Utilities ═══ o 1. The fist step in creating a HyperCode document for a COBOL program is to download the program source code, as well as any copybooks that the program uses. This task is aided by the HyperCode GETCOPY utility. This program simplifies the process of downloading all copybooks for a COBOL program. The command line for the GETCOPY utility is GETCOPY COBOLFile CommandFile where COBOLFile is a COBOL program and CommandFile is a .CMD or .BAT file that will be created. This file will contain one line for each copybook in the program. The format for the line is CALL DOWNLOAD Copybook. This file can then be used in conjunction with a .CMD or .BAT file named DOWNLOAD that you create that will download a specified source member from your host. An example DOWNLOAD.CMD file that we use is listed below. DOWNLOAD.CMD - Your version will vary ------------- RCV 'CASEYDEV.CBL.COPYLIB(%1)' C:\SOURCE\%1.CPY ASCII CRLF In this release of HyperCode, all copybooks used by a program must have a .CPY extension and must reside in the same directory as the COBOL program or in the copybook search path specified using the Run|HyperCode Options menu option. o 2. The next step in building a HyperCode document is to specify the COBOL program to use with the File|Select COBOL Program menu option. o 3. (Optional) After specifying the COBOL program to use, you may wish to create a Popup Definition File and select it using the File|Select Popup Definition File menu option. o 4. The HyperCode parser is then executed using the Run|Build IPF File menu option. This produces a .IPF source code file that can be compiled using the .IPF compiler to generate the HyperCode document. o 5. The .IPF compiler can be executed using the Run|Execute IPF Compiler menu option. This translates the .IPF file into a HyperCode document. o 6. The HyperCode document can be viewed using the Run|View HyperCode Program menu option. For information on the structure of the HyperCode document, see HyperCode Document Structure. o 7. The COBOL program source code can be modified directly from the HyperCode document using the editor icon located at the beginning of each section in the document. Related Information: o Overview o Menu Options o HyperCode Document Structure o Registration! ═══ 5. Registration! ═══ <<<<<<<<<< Print using Services|Print >>>>>>>>>> =============================================================== CASEY HyperCode Registration and Order Form =============================================================== Name:____________________________ Company:________________ Address:___________________________________________________ City:______________________________________________________ State/Province:________________ ZIP/Postal code:__________ Country:_______________________ Telephone:________________ ================================================================ PRODUCT QUANTITY TOTAL CASEy HyperCode Registration...$20 _____ _______ CASEy HyperCode Commercial (5 licenses)............................$59 _____ _______ CASEy HyperCode Commercial Value Pack (site license, unlimited use)..$149 _____ _______ TOTAL --------------------->_______ ------------------------------------------------------------ Disk size: [ ] 5.25" 360k, [ ] 3.5" 720k Compuserve File Transfer [ ] User ID: ______________ =============================================================== Mail this form w/check or money order to: CASEy Software P.O. Box 934 West Chester, OH 45071 =============================================================== THANK YOU FOR YOUR ORDER, AND THANK YOU FOR REGISTERING. =============================================================== ═══ ═══ The period of time spent looking at a program in order to determine how it is structured and intended to operate ═══ ═══ CASEy Software is a publisher of value-added applications for use with CASE tools, Re-Engineering and Legacy System Maintenance applications. Comments or questions can be directed to CASEy software at Compuserve user id # 72274,1630 or write to: CASEy Software P.O. Box 934 West Chester, OH 45071 ═══ ═══ OS/2 is a trademark of thr IBM Corporation. IPF, VIEW, EPM and E are components of the OS/2 operating system. ═══ ═══ A repository containing descriptions of data elements used within an organization. ═══ ═══ The Information Presentation Facility or IPF is the help engine for the OS/2 operating system.