File indexing completed on 2024-05-19 15:23:13

0001 <!DOCTYPE html>
0002 <html><head>
0003 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
0004 <title>highlight.cbl</title>
0005 <meta name="generator" content="KF5::SyntaxHighlighting - Definition (COBOL) - Theme (Breeze Dark)"/>
0006 </head><body style="background-color:#232629;color:#cfcfc2"><pre>
0007 <span style="color:#7a7c7d;">*&gt; These are equivalent.</span>
0008 <span style="font-weight:bold;">INVOKE</span> my-class <span style="color:#f44f4f;">&quot;foo&quot;</span> <span style="color:#27ae60;">RETURNING</span> var
0009 <span style="font-weight:bold;">MOVE</span> my-class::<span style="color:#f44f4f;">&quot;foo&quot;</span> <span style="color:#27ae60;">TO</span> var <span style="color:#7a7c7d;">*&gt; Inline method invocation</span>
0010 
0011 <span style="font-weight:bold;">ADD</span> <span style="color:#f67400;">1</span> <span style="color:#27ae60;">TO</span> x
0012 <span style="font-weight:bold;">ADD</span> <span style="color:#f67400;">1</span>, a, b <span style="color:#27ae60;">TO</span> x <span style="color:#27ae60;">ROUNDED</span>, y, z <span style="color:#27ae60;">ROUNDED</span>
0013 
0014 <span style="font-weight:bold;">ADD</span> a, b <span style="color:#27ae60;">TO</span> c
0015     <span style="color:#27ae60;">ON</span> <span style="color:#27ae60;">SIZE</span> <span style="color:#27ae60;">ERROR</span>
0016         <span style="font-weight:bold;">DISPLAY</span> <span style="color:#f44f4f;">&quot;Error&quot;</span>
0017 <span style="font-weight:bold;">END-ADD</span>
0018 
0019 <span style="font-weight:bold;">ADD</span> a <span style="color:#27ae60;">TO</span> b
0020     <span style="color:#27ae60;">NOT</span> <span style="color:#27ae60;">SIZE</span> <span style="color:#27ae60;">ERROR</span>
0021         <span style="font-weight:bold;">DISPLAY</span> <span style="color:#f44f4f;">&quot;No error&quot;</span>
0022     <span style="color:#27ae60;">ON</span> <span style="color:#27ae60;">SIZE</span> <span style="color:#27ae60;">ERROR</span>
0023         <span style="font-weight:bold;">DISPLAY</span> <span style="color:#f44f4f;">&quot;Error&quot;</span>
0024 
0025 <span style="font-weight:bold;">RD</span>  sales-report
0026     <span style="color:#27ae60;">PAGE</span> <span style="color:#27ae60;">LIMITS</span> <span style="color:#f67400;">60</span> <span style="color:#27ae60;">LINES</span>
0027     <span style="color:#27ae60;">FIRST</span> <span style="color:#27ae60;">DETAIL</span> <span style="color:#f67400;">3</span>
0028     <span style="color:#27ae60;">CONTROLS</span> seller-name.
0029 
0030 <span style="color:#7a7c7d;font-style:italic;">01</span>  <span style="color:#27ae60;">TYPE</span> <span style="color:#27ae60;">PAGE</span> <span style="color:#27ae60;">HEADING</span>.
0031     <span style="color:#7a7c7d;font-style:italic;">03</span>  <span style="color:#27ae60;">COL</span> <span style="color:#f67400;">1</span>                    <span style="color:#27ae60;">VALUE</span> <span style="color:#f44f4f;">&quot;Sales Report&quot;</span>.
0032     <span style="color:#7a7c7d;font-style:italic;">03</span>  <span style="color:#27ae60;">COL</span> <span style="color:#f67400;">74</span>                   <span style="color:#27ae60;">VALUE</span> <span style="color:#f44f4f;">&quot;Page&quot;</span>.
0033     <span style="color:#7a7c7d;font-style:italic;">03</span>  <span style="color:#27ae60;">COL</span> <span style="color:#f67400;">79</span>                   <span style="color:#27ae60;">PIC</span> <span style="color:#2980b9;">Z9</span> <span style="color:#27ae60;">SOURCE</span> <span style="color:#27ae60;">PAGE-COUNTER</span>.
0034 
0035 <span style="color:#7a7c7d;font-style:italic;">01</span>  sales-on-day <span style="color:#27ae60;">TYPE</span> <span style="color:#27ae60;">DETAIL</span>, <span style="color:#27ae60;">LINE</span> + <span style="color:#f67400;">1</span>.
0036     <span style="color:#7a7c7d;font-style:italic;">03</span>  <span style="color:#27ae60;">COL</span> <span style="color:#f67400;">3</span>                    <span style="color:#27ae60;">VALUE</span> <span style="color:#f44f4f;">&quot;Sales on&quot;</span>.
0037     <span style="color:#7a7c7d;font-style:italic;">03</span>  <span style="color:#27ae60;">COL</span> <span style="color:#f67400;">12</span>                   <span style="color:#27ae60;">PIC</span> <span style="color:#2980b9;">99/99/9999</span> <span style="color:#27ae60;">SOURCE</span> sales-date.
0038     <span style="color:#7a7c7d;font-style:italic;">03</span>  <span style="color:#27ae60;">COL</span> <span style="color:#f67400;">21</span>                   <span style="color:#27ae60;">VALUE</span> <span style="color:#f44f4f;">&quot;were&quot;</span>.
0039     <span style="color:#7a7c7d;font-style:italic;">03</span>  <span style="color:#27ae60;">COL</span> <span style="color:#f67400;">26</span>                   <span style="color:#27ae60;">PIC</span> <span style="color:#2980b9;">$$$$9.99</span> <span style="color:#27ae60;">SOURCE</span> sales-amount.
0040 
0041 <span style="color:#7a7c7d;font-style:italic;">01</span>  invalid-sales <span style="color:#27ae60;">TYPE</span> <span style="color:#27ae60;">DETAIL</span>, <span style="color:#27ae60;">LINE</span> + <span style="color:#f67400;">1</span>.
0042     <span style="color:#7a7c7d;font-style:italic;">03</span>  <span style="color:#27ae60;">COL</span> <span style="color:#f67400;">3</span>                    <span style="color:#27ae60;">VALUE</span> <span style="color:#f44f4f;">&quot;INVALID RECORD:&quot;</span>.
0043     <span style="color:#7a7c7d;font-style:italic;">03</span>  <span style="color:#27ae60;">COL</span> <span style="color:#f67400;">19</span>                   <span style="color:#27ae60;">PIC</span> <span style="color:#2980b9;">X(34)</span> <span style="color:#27ae60;">SOURCE</span> sales-record.
0044 
0045 <span style="color:#7a7c7d;font-style:italic;">01</span>  <span style="color:#27ae60;">TYPE</span> <span style="font-weight:bold;">CONTROL</span> <span style="color:#27ae60;">HEADING</span> seller-name, <span style="color:#27ae60;">LINE</span> + <span style="color:#f67400;">2</span>.
0046     <span style="color:#7a7c7d;font-style:italic;">03</span>  <span style="color:#27ae60;">COL</span> <span style="color:#f67400;">1</span>                    <span style="color:#27ae60;">VALUE</span> <span style="color:#f44f4f;">&quot;Seller:&quot;</span>.
0047     <span style="color:#7a7c7d;font-style:italic;">03</span>  <span style="color:#27ae60;">COL</span> <span style="color:#f67400;">9</span>                    <span style="color:#27ae60;">PIC</span> <span style="color:#2980b9;">X(30)</span> <span style="color:#27ae60;">SOURCE</span> seller-name.
0048 
0049 <span style="color:#27ae60;">PIC</span> <span style="color:#2980b9;">99</span>.
0050 <span style="color:#27ae60;">PIC</span> <span style="color:#2980b9;">9(7)V99</span>.
0051 <span style="color:#27ae60;">PIC</span> <span style="color:#2980b9;">9(10)</span>.  <span style="color:#7a7c7d;">*&gt; sads</span>
0052 <span style="color:#27ae60;">PIC</span> <span style="color:#2980b9;">9(5)V9(2)</span>.
0053 <span style="color:#27ae60;">PIC</span> <span style="color:#2980b9;">9(5)</span>
0054 <span style="color:#27ae60;">PIC</span> <span style="color:#2980b9;">+++++</span>
0055 <span style="color:#27ae60;">PIC</span> <span style="color:#2980b9;">99/99/9(4)</span>
0056 <span style="color:#27ae60;">PIC</span> <span style="color:#2980b9;">*(4)9.99</span>
0057 <span style="color:#27ae60;">PIC</span> <span style="color:#2980b9;">X(3)BX(3)BX(3)</span>
0058 
0059 <span style="font-weight:bold;">OPEN</span> <span style="font-weight:bold;">INPUT</span> sales, <span style="font-weight:bold;">OUTPUT</span> report-out
0060 <span style="font-weight:bold;">INITIATE</span> sales-report
0061 
0062 <span style="font-weight:bold;">PERFORM</span> <span style="color:#27ae60;">UNTIL</span> <span style="color:#f67400;">1</span> &lt;&gt; <span style="color:#f67400;">1</span>
0063     <span style="font-weight:bold;">READ</span> sales
0064         <span style="color:#27ae60;">AT</span> <span style="font-weight:bold;">END</span>
0065             <span style="font-weight:bold;">EXIT</span> <span style="font-weight:bold;">PERFORM</span>
0066     <span style="font-weight:bold;">END-READ</span>
0067 
0068     <span style="color:#27ae60;">VALIDATE</span> sales-record
0069     <span style="font-weight:bold;">IF</span> valid-record
0070         <span style="font-weight:bold;">GENERATE</span> sales-on-day
0071     <span style="font-weight:bold;">ELSE</span>
0072         <span style="font-weight:bold;">GENERATE</span> invalid-sales
0073     <span style="font-weight:bold;">END-IF</span>
0074 <span style="font-weight:bold;">END-PERFORM</span>
0075 
0076 <span style="font-weight:bold;">TERMINATE</span> sales-report
0077 <span style="font-weight:bold;">CLOSE</span> sales, report-out
0078 
0079 <span style="font-weight:bold;">EVALUATE</span> <span style="color:#27ae60;">TRUE</span> <span style="color:#27ae60;">ALSO</span> desired-speed <span style="color:#27ae60;">ALSO</span> current-speed
0080     <span style="font-weight:bold;">WHEN</span> lid-closed <span style="color:#27ae60;">ALSO</span> min-speed <span style="color:#27ae60;">THRU</span> max-speed <span style="color:#27ae60;">ALSO</span> <span style="font-weight:bold;font-style:italic;">LESS</span> <span style="font-weight:bold;font-style:italic;">THAN</span> desired-speed
0081         <span style="font-weight:bold;">PERFORM</span> speed-up-machine
0082     <span style="font-weight:bold;">WHEN</span> lid-closed <span style="color:#27ae60;">ALSO</span> min-speed <span style="color:#27ae60;">THRU</span> max-speed <span style="color:#27ae60;">ALSO</span> <span style="font-weight:bold;font-style:italic;">GREATER</span> <span style="font-weight:bold;font-style:italic;">THAN</span> desired-speed
0083         <span style="font-weight:bold;">PERFORM</span> slow-down-machine
0084     <span style="font-weight:bold;">WHEN</span> lid-open <span style="color:#27ae60;">ALSO</span> <span style="color:#27ae60;">ANY</span> <span style="color:#27ae60;">ALSO</span> <span style="color:#27ae60;">NOT</span> <span style="color:#27aeae;font-weight:bold;">ZERO</span>
0085         <span style="font-weight:bold;">PERFORM</span> emergency-stop
0086     <span style="font-weight:bold;">WHEN</span> <span style="color:#27ae60;">OTHER</span>
0087         <span style="font-weight:bold;">CONTINUE</span>
0088 <span style="font-weight:bold;">END-EVALUATE</span>
0089 
0090 <span style="color:#7a7c7d;">//COBUCLG  JOB (001),'COBOL BASE TEST',                                 00010000</span>
0091 <span style="color:#7a7c7d;">//             CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1)                        00020000</span>
0092 <span style="color:#7a7c7d;">//BASETEST EXEC COBUCLG                                                 00030000</span>
0093 <span style="color:#7a7c7d;">//COB.SYSIN DD *                                                        00040000</span>
0094  <span style="color:#7a7c7d;font-style:italic;">00000</span><span style="color:#7a7c7d;">* VALIDATION OF BASE COBOL INSTALL                                00050000</span>
0095  <span style="color:#7a7c7d;font-style:italic;">01000</span> <span style="color:#2980b9;background-color:#153042;">IDENTIFICATION DIVISION</span>.                                         <span style="color:#f67400;">00060000</span>
0096  <span style="color:#7a7c7d;font-style:italic;">01100</span> <span style="font-weight:bold;">PROGRAM-ID</span>. <span style="color:#f44f4f;">'HELLO'</span>.                                             <span style="color:#f67400;">00070000</span>
0097  <span style="color:#7a7c7d;font-style:italic;">02000</span> <span style="color:#2980b9;background-color:#153042;">ENVIRONMENT DIVISION</span>.                                            <span style="color:#f67400;">00080000</span>
0098  <span style="color:#7a7c7d;font-style:italic;">02100</span> <span style="color:#2980b9;background-color:#153042;">CONFIGURATION SECTION</span>.                                           <span style="color:#f67400;">00090000</span>
0099  <span style="color:#7a7c7d;font-style:italic;">02110</span> <span style="color:#27ae60;">SOURCE-COMPUTER</span>.  GNULINUX.                                      <span style="color:#f67400;">00100000</span>
0100  <span style="color:#7a7c7d;font-style:italic;">02120</span> <span style="color:#27ae60;">OBJECT-COMPUTER</span>.  HERCULES.                                      <span style="color:#f67400;">00110000</span>
0101  <span style="color:#7a7c7d;font-style:italic;">02200</span> <span style="font-weight:bold;">SPECIAL-NAMES</span>.                                                   <span style="color:#f67400;">00120000</span>
0102  <span style="color:#7a7c7d;font-style:italic;">02210</span>     CONSOLE <span style="color:#27ae60;">IS</span> CONSL.                                            <span style="color:#f67400;">00130000</span>
0103  <span style="color:#7a7c7d;font-style:italic;">03000</span> <span style="color:#2980b9;background-color:#153042;">DATA DIVISION</span>.                                                   <span style="color:#f67400;">00140000</span>
0104  <span style="color:#7a7c7d;font-style:italic;">04000</span> <span style="color:#2980b9;background-color:#153042;">PROCEDURE DIVISION</span>.                                              <span style="color:#f67400;">00150000</span>
0105  <span style="color:#7a7c7d;font-style:italic;">04100</span> 00-MAIN.                                                         <span style="color:#f67400;">00160000</span>
0106  <span style="color:#7a7c7d;font-style:italic;">04110</span>     <span style="font-weight:bold;">DISPLAY</span> <span style="color:#f44f4f;">'HELLO, WORLD'</span> <span style="color:#27ae60;">UPON</span> CONSL.                           <span style="color:#f67400;">00170000</span>
0107  <span style="color:#7a7c7d;font-style:italic;">04900</span>     <span style="font-weight:bold;">STOP</span> <span style="font-weight:bold;">RUN</span>.                                                    <span style="color:#f67400;">00180000</span>
0108 <span style="color:#7a7c7d;">//LKED.SYSLIB DD DSNAME=SYS1.COBLIB,DISP=SHR                            00190000</span>
0109 <span style="color:#7a7c7d;">//            DD DSNAME=SYS1.LINKLIB,DISP=SHR                           00200000</span>
0110 <span style="color:#7a7c7d;">//GO.SYSPRINT DD SYSOUT=A                                               00210000</span>
0111 <span style="color:#7a7c7d;">//                                                                      00220000</span>
0112 
0113 <span style="color:#7a7c7d;">*&gt; COBOL with embedded SQL.</span>
0114 <span style="color:#7a7c7d;">*&gt; Normally for extensions pco, scb and sqb, but currently integrated into COBOL</span>
0115 <span style="color:#2980b9;background-color:#153042;">EXEC SQL</span>
0116     <span style="font-weight:bold;">select</span> <span style="color:#8e44ad;">count</span>(<span style="color:#3f8058;">*</span>) <span style="font-weight:bold;">from</span> abc
0117 <span style="color:#2980b9;background-color:#153042;">END-EXEC</span>
0118 <span style="font-weight:bold;">ADD</span> <span style="color:#f67400;">1</span> <span style="color:#27ae60;">TO</span> x
0119 </pre></body></html>