home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / hyprco.zip / HYPRDEMO.INF (.txt) < prev    next >
OS/2 Help File  |  1994-10-09  |  15KB  |  411 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. IDENTIFICATION DIVISION ΓòÉΓòÉΓòÉ
  3.  
  4.  IDENTIFICATION DIVISION. 
  5.  PROGRAM-ID. 
  6.    HYPRDEMO. 
  7. *********************************************** 
  8. *                       * 
  9. *   H  Y  P  E  R  D  E  M  O    * 
  10. *                       * 
  11. *********************************************** 
  12. *                       * 
  13. *  PURPOSE: DEMONSTRATE THE FUNCTIONS OF THE * 
  14. *       COBOL  HYPERCODE  FACILITY.    * 
  15. *                       * 
  16. *  DESCRIPTION: THIS PROGRAM READS A FLAT   * 
  17. *         FILE CONTAINING CUSTOMER   * 
  18. *         RECORDS AND GENERATES A    * 
  19. *         REPORT TO BE PRINTED OUT   * 
  20. *         ON MAILING LABELS.  IN    * 
  21. *         ADDITION, THE RECORDS ARE   * 
  22. *         WRITTEN TO AN INDEXED FILE  * 
  23. *         FOR SUBSEQUENT PROCESSING.  * 
  24. *********************************************** 
  25.  AUTHOR. 
  26.    CASEy Software. 
  27. *COPY COPYRITE. 
  28. *********************************************** 
  29. *                       * 
  30. *   (c)Copyright 1994, CASEy Software    * 
  31. *                       * 
  32. *********************************************** 
  33.  
  34.  INSTALLATION. 
  35.    AMD 486. 
  36.  DATE-WRITTEN. 
  37.    SEPTEMBER 13 1994. 
  38.  DATE-COMPILED. 
  39.    SEPTEMBER 13 1994. 
  40.  SECURITY. 
  41.    NONE. 
  42.  
  43.  
  44. ΓòÉΓòÉΓòÉ 2. ENVIRONMENT DIVISION ΓòÉΓòÉΓòÉ
  45.  
  46.  ENVIRONMENT DIVISION. 
  47.  
  48.  
  49. ΓòÉΓòÉΓòÉ 2.1. CONFIGURATION SECTION ΓòÉΓòÉΓòÉ
  50.  
  51.  CONFIGURATION SECTION. 
  52.  SOURCE-COMPUTER. 
  53.    AMD-486 WITH DEBUGGING MODE. 
  54.  OBJECT-COMPUTER. 
  55.    AMD-486 MEMORY SIZE 384000 WORDS. 
  56.  SPECIAL-NAMES. 
  57.  
  58.  
  59. ΓòÉΓòÉΓòÉ 2.2. INPUT-OUTPUT SECTION ΓòÉΓòÉΓòÉ
  60.  
  61.  INPUT-OUTPUT SECTION. 
  62.  FILE-CONTROL. 
  63.  SELECT IN-FILE 
  64.    ASSIGN TO DISK. 
  65.    SELECT OUT-FILE 
  66.      ASSIGN TO DISK 
  67.      ORGANIZATION IS INDEXED 
  68.      ACCESS MODE IS RANDOM 
  69.      RECORD KEY IS OUT-KEY. 
  70.  
  71.  
  72. ΓòÉΓòÉΓòÉ 3. DATA DIVISION ΓòÉΓòÉΓòÉ
  73.  
  74.  DATA DIVISION. 
  75.  
  76.  
  77. ΓòÉΓòÉΓòÉ 3.1. FILE SECTION ΓòÉΓòÉΓòÉ
  78.  
  79.  FILE SECTION. 
  80.  
  81.  
  82. ΓòÉΓòÉΓòÉ 3.1.1. IN-FILE ΓòÉΓòÉΓòÉ
  83.  
  84.  FD  IN-FILE 
  85.    LABEL RECORDS ARE STANDARD 
  86.    BLOCK CONTAINS 0 RECORDS 
  87.    VALUE OF FILE-ID IS 'CUST.DAT' 
  88.    DATA RECORD IS  IN-FILE-RECORD . 
  89.  01  IN-FILE-RECORD . 
  90.    03  NAME . 
  91.     05  FIRST-NAME      PIC X(15). 
  92.     05  MI          PIC X(1). 
  93.     05  LAST-NAME      PIC X(15). 
  94.    03  ADDRESS . 
  95.     05  STREET-ADDRESS    PIC X(20). 
  96.     05  CITY         PIC X(15). 
  97.     05  STATE        PIC X(02). 
  98.     05  ZIP         PIC X(09). 
  99.    03  COMPUSERVE-ID      PIC X(09). 
  100.    03  PHONE . 
  101.     05  AREA-CODE      PIC X(03). 
  102.     05  PREFIX        PIC X(03). 
  103.     05  SUFFIX        PIC X(04). 
  104.  
  105.  
  106. ΓòÉΓòÉΓòÉ 3.1.2. OUT-FILE ΓòÉΓòÉΓòÉ
  107.  
  108.  FD OUT-FILE 
  109.    LABEL RECORDS ARE STANDARD 
  110.    VALUE OF FILE-ID IS 'OUTFILE.DAT' 
  111.    DATA RECORD IS  OUT-FILE-RECORD . 
  112.  01  OUT-FILE-RECORD . 
  113.    03 OUT-KEY        PIC X(31). 
  114.    03 FILLER         PIC X(65). 
  115.  
  116.  
  117. ΓòÉΓòÉΓòÉ 3.2. WORKING-STORAGE SECTION ΓòÉΓòÉΓòÉ
  118.  
  119.  WORKING-STORAGE SECTION. 
  120.  
  121.  
  122. ΓòÉΓòÉΓòÉ 3.2.1. IN-FILE-EOF-FLAG ΓòÉΓòÉΓòÉ
  123.  
  124.  01 IN-FILE-EOF-FLAG      PIC X(01) VALUE 'N'. 
  125.   88 IN-FILE-EOF   VALUE 'Y'. 
  126.  
  127.  
  128. ΓòÉΓòÉΓòÉ 4. PROCEDURE DIVISION ΓòÉΓòÉΓòÉ
  129.  
  130.  PROCEDURE DIVISION. 
  131.  
  132.  
  133. ΓòÉΓòÉΓòÉ 4.1. M1-MAINLINE ΓòÉΓòÉΓòÉ
  134.  
  135.  M1-MAINLINE  SECTION. 
  136. *********************************************** 
  137. *   M  1  -  M  A  I  N  L  I  N  E     * 
  138. *********************************************** 
  139.  
  140.  
  141. ΓòÉΓòÉΓòÉ 4.1.1. MAINLINE ΓòÉΓòÉΓòÉ
  142.  
  143.  MAINLINE . 
  144. *********************************************** 
  145. *     M  A  I  N  L  I  N  E        * 
  146. *********************************************** 
  147. *  MAIN DRIVER FOR THE  PROGRAM        * 
  148. *********************************************** 
  149.    PERFORM  OPEN-FILES . 
  150.    PERFORM  INFILE-GET-FIRST . 
  151.    IF NOT  IN-FILE-EOF 
  152.     PERFORM  INFILE-PROCESS-GET-NEXT 
  153.      UNTIL  IN-FILE-EOF . 
  154.    PERFORM  CLOSE-FILES . 
  155.    STOP RUN. 
  156.  
  157.  
  158. ΓòÉΓòÉΓòÉ 4.1.2. OPEN-FILES ΓòÉΓòÉΓòÉ
  159.  
  160.  OPEN-FILES . 
  161. *********************************************** 
  162. *   O  P  E  N   F  I  L  E  S        * 
  163. *********************************************** 
  164. *  OPENS FILES USED BY HYPRDEMO        * 
  165. *********************************************** 
  166.    OPEN INPUT  IN-FILE . 
  167.    OPEN OUTPUT  OUT-FILE . 
  168.  
  169.  
  170. ΓòÉΓòÉΓòÉ 4.1.3. INFILE-GET-FIRST ΓòÉΓòÉΓòÉ
  171.  
  172.  INFILE-GET-FIRST . 
  173. *********************************************** 
  174. *  I N F I L E - G E T - F I R S T       * 
  175. *********************************************** 
  176. *  GETS THE FIRST INPUT FILE RECORD      * 
  177. *********************************************** 
  178.    READ  IN-FILE 
  179.     AT END MOVE 'Y' TO  IN-FILE-EOF-FLAG . 
  180.  
  181.  
  182. ΓòÉΓòÉΓòÉ 4.1.4. INFILE-PROCESS-GET-NEXT ΓòÉΓòÉΓòÉ
  183.  
  184.  INFILE-PROCESS-GET-NEXT . 
  185. *********************************************** 
  186. *  I N F I L E - G E T - N E X T        * 
  187. *********************************************** 
  188. *  GETS THE NEXT INPUT FILE RECORD      * 
  189. *********************************************** 
  190.    PERFORM  PROCESS-IN-FILE 
  191.    READ  IN-FILE 
  192.     AT END MOVE 'Y' TO  IN-FILE-EOF-FLAG . 
  193.  
  194.  
  195. ΓòÉΓòÉΓòÉ 4.1.5. PROCESS-IN-FILE ΓòÉΓòÉΓòÉ
  196.  
  197.  PROCESS-IN-FILE . 
  198. *********************************************** 
  199. * P R O C E S S - I N - F I L E - R E C O R D * 
  200. *********************************************** 
  201. *  PRINTS THE CURRENT IN FILE RECORD TO THE  * 
  202. *  CONSOLE AND WRITES IT TO THE OUTPUT FILE  * 
  203. *********************************************** 
  204.    DISPLAY '              ' 
  205.    DISPLAY '=======MAILING LABEL=======' 
  206.    DISPLAY  FIRST-NAME  MI  LAST-NAME 
  207.    DISPLAY  STREET-ADDRESS  CITY  STATE  ZIP 
  208.    DISPLAY '              ' 
  209.  
  210.    MOVE  IN-FILE-RECORD  TO  OUT-FILE-RECORD . 
  211.    WRITE  OUT-FILE-RECORD . 
  212.  
  213.  
  214. ΓòÉΓòÉΓòÉ 4.1.6. CLOSE-FILES ΓòÉΓòÉΓòÉ
  215.  
  216.  CLOSE-FILES . 
  217. *********************************************** 
  218. *   C  L  O  S  E   F  I  L  E  S      * 
  219. *********************************************** 
  220. *  CLOSES FILES USED BY HYPRDEMO       * 
  221. *********************************************** 
  222.    CLOSE  IN-FILE . 
  223.    CLOSE  OUT-FILE . 
  224.  
  225.  
  226. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  227.  
  228.   M1-MAINLINE 
  229.   MAINLINE 
  230.    OPEN-FILES 
  231.    INFILE-GET-FIRST 
  232.    INFILE-PROCESS-GET-NEXT 
  233.    PROCESS-IN-FILE 
  234.    CLOSE-FILES 
  235.   OPEN-FILES 
  236.   INFILE-GET-FIRST 
  237.   INFILE-PROCESS-GET-NEXT 
  238.    PROCESS-IN-FILE 
  239.   PROCESS-IN-FILE 
  240.   CLOSE-FILES 
  241.  
  242.  
  243. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  244.  
  245.   MAINLINE 
  246.   OPEN-FILES 
  247.   INFILE-GET-FIRST 
  248.   INFILE-PROCESS-GET-NEXT 
  249.    PROCESS-IN-FILE 
  250.   CLOSE-FILES 
  251.  
  252.  
  253. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  254.  
  255.   OPEN-FILES 
  256.  
  257.  
  258. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  259.  
  260.   INFILE-GET-FIRST 
  261.  
  262.  
  263. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  264.  
  265.   INFILE-PROCESS-GET-NEXT 
  266.   PROCESS-IN-FILE 
  267.  
  268.  
  269. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  270.  
  271.   PROCESS-IN-FILE 
  272.  
  273.  
  274. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  275.  
  276.   CLOSE-FILES 
  277.  
  278.  
  279. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  280.  
  281.  
  282.  How many times have you been in this situation? 
  283.  
  284.  There is a foot-thick program listing sitting ominously 
  285.  on your desk, post-it notes sticking out everywhere. 
  286.  Within the next 24 hours (and you'll probably use most 
  287.  of them) you have to: 1) Figure out why it isn't 
  288.  working correctly. 2) Come up with a solution. 3) 
  289.  Verify the solution with a user in order to ensure that 
  290.  it will meet their needs. 4) Implement and test the 
  291.  fix. 
  292.  
  293.  All of the time-consuming tasks listed above and more 
  294.  can be accomplished more quickly and effectively by 
  295.  quickly getting to the heart of the code. 
  296.  
  297.  CASEy COBOL HyperCode is a unique utility program 
  298.  that transforms any COBOL program into a 
  299.  HyperText-linked OS/2 information file. 
  300.  
  301.  This provides systems development organizations with 
  302.  a number of benefits, it: 
  303.  
  304.  o Dramatically reduces the amount of time required in 
  305.   the discovery phase of system maintenance. 
  306.  o Brings new programmers up to speed quickly by 
  307.   allowing them to view examples of standardized code. 
  308.   The popup definitions can be used to clarify obscure 
  309.   programming commands and/or conventions. 
  310.  o Provides programmers with the ability to more 
  311.   quickly (and thoroughly) desk check programs before 
  312.   intensive testing. 
  313.  o Utilizes an organization's data dictionary to create a 
  314.   popup definition (in the HyperCode file) for each 
  315.   program variable or command. 
  316.  o Acquaints systems professionals with the advantages 
  317.   of using the PC as an analysis tool.  This can open 
  318.   the door to utilizing many of the exceedingly powerful 
  319.   applications including PC compilers, CASE tools and 
  320.   client-server database applications.  HyperCode is a 
  321.   small, but potentially very useful step in this 
  322.   direction. 
  323.  
  324.  
  325. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  326.  
  327. This record represents customer records downloaded from a BBS. 
  328.  
  329.  
  330. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  331.  
  332. This record represents the customer records written to a indexed file for later 
  333. use. 
  334.  
  335.  
  336. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  337.  
  338. The full name of the customer. 
  339.  
  340.  
  341. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  342.  
  343. The first name of the customer. 
  344.  
  345.  
  346. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  347.  
  348. The middle initial of the customer. 
  349.  
  350.  
  351. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  352.  
  353. The last name of the customer. 
  354.  
  355.  
  356. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  357.  
  358. The full address of the customer. 
  359.  
  360.  
  361. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  362.  
  363. The street address of the customer. 
  364.  
  365.  
  366. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  367.  
  368. The city of residence for the customer. 
  369.  
  370.  
  371. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  372.  
  373. The state of residence for the customer. 
  374.  
  375.  
  376. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  377.  
  378. The ZIP code of the customer. 
  379.  
  380.  
  381. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  382.  
  383. The Compuserve ID for the customer. 
  384.  
  385.  
  386. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  387.  
  388. The customer's full phone number. 
  389.  
  390.  
  391. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  392.  
  393. The customer's area code. 
  394.  
  395.  
  396. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  397.  
  398. The customer's phone prefix. 
  399.  
  400.  
  401. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  402.  
  403. The customer's phone suffix. 
  404.  
  405.  
  406. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  407.  
  408. The editor icon starts an editor window, bringing up the appropriate source 
  409. file with the cursor positioned at the start of the current section.  Because 
  410. the path to the source code file is hard-coded by HyperCode at run-time, this 
  411. demonstration file does not start the editor.