Seq # *Modification Id* Act
----------------------------+
00001 M01S00001.rform +++|PROC RPCEJCT ((FETP),(LINES));
00002 M01S00002.rform +++|# TITLE RPCEJCT - CONDITIONALLY ISSUES A PAGE EJECT. #
00003 M01S00003.rform +++| BEGIN # RPCEJCT #
00004 M01S00004.rform +++|
00005 M01S00005.rform +++|#
00006 M01S00006.rform +++|** RPCEJCT - CONDITIONALLY ISSUES A PAGE EJECT.
00007 M01S00001.281l803 +++|*
00008 M01S00002.281l803 +++|* COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
00009 M01S00007.rform +++|*
00010 M01S00008.rform +++|* *RPCEJCT* ISSUES A PAGE EJECT IF THE NUMBER OF
00011 M01S00009.rform +++|* LINES REMAINING ON THE PAGE IS LESS THAN THE NUMBER
00012 M01S00010.rform +++|* OF LINES TO BE CHECKED.
00013 M01S00011.rform +++|*
00014 M01S00012.rform +++|* PROC RPCEJCT((FETP),(LINES))
00015 M01S00013.rform +++|*
00016 M01S00014.rform +++|* ENTRY (FETP) = FWA OF *FET*.
00017 M01S00015.rform +++|* (LINES) = NUMBER OF LINES TO BE CHECKED.
00018 M01S00016.rform +++|#
00019 M01S00017.rform +++|
00020 M01S00018.rform +++| ITEM FETP I; # *FET* LOCATION #
00021 M01S00019.rform +++| ITEM LINES I; # NUMBER OF LINES TO BE CHECKED #
00022 M01S00020.rform +++|
00023 M01S00021.rform +++|#
00024 M01S00022.rform +++|**** PROC RPCEJCT - XREF LIST BEGIN.
00025 M01S00023.rform +++|#
00026 M01S00024.rform +++|
00027 M01S00025.rform +++| XREF
00028 M01S00026.rform +++| BEGIN
00029 M01S00027.rform +++| PROC RPEJECT; # ISSUES PAGE EJECT #
00030 M01S00028.rform +++| PROC RPSRCH; # SEARCHES PRINT TABLE #
00031 M01S00029.rform +++| END
00032 M01S00030.rform +++|
00033 M01S00031.rform +++|#
00034 M01S00032.rform +++|**** PROC RPCEJCT - XREF LIST END.
00035 M01S00033.rform +++|#
00036 M01S00034.rform +++|
00037 M01S00035.rform +++| DEF LISTCON #0#; # TURN COMDECK LISTING OFF #
00038 M01S00036.rform +++|*CALL COMAMSS
00039 M01S00037.rform +++|*CALL COMUFMT
00040 M01S00038.rform +++|*CALL COMUOUT
00041 M01S00039.rform +++|
00042 M01S00040.rform +++| CONTROL EJECT;
00043 M01S00041.rform +++|
00044 M01S00042.rform +++|#
00045 M01S00043.rform +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED.
00046 M01S00044.rform +++|#
00047 M01S00045.rform +++|
00048 M01S00046.rform +++| IF FETP EQ NULLFILE
00049 M01S00047.rform +++| THEN
00050 M01S00048.rform +++| BEGIN
00051 M01S00049.rform +++| RETURN;
00052 M01S00050.rform +++| END
00053 M01S00051.rform +++|
00054 M01S00052.rform +++| RPSRCH(FETP); # SEARCH PRINT TABLE #
00055 M01S00053.rform +++|
00056 M01S00054.rform +++|#
00057 M01S00055.rform +++|* IF THE NUMBER OF LINES REMAINING ON THE PAGE IS
00058 M01S00056.rform +++|* LESS THAN THE NUMBER OF LINES TO BE CHECKED, ISSUE
00059 M01S00057.rform +++|* A PAGE EJECT.
00060 M01S00058.rform +++|#
00061 M01S00059.rform +++|
00062 M01S00060.rform +++| IF (PRTLINELIM[ORD] - PRTLINE[ORD] + 1) GQ LINES
00063 M01S00061.rform +++| THEN
00064 M01S00062.rform +++| BEGIN
00065 M01S00063.rform +++| RETURN;
00066 M01S00064.rform +++| END
00067 M01S00065.rform +++|
00068 M01S00066.rform +++| RPEJECT(FETP);
00069 M01S00067.rform +++| RETURN;
00070 M01S00068.rform +++| END # RPCEJCT #
00071 M01S00069.rform +++|
00072 M01S00070.rform +++| TERM
00073 M01S00071.rform +++|PROC RPCLOSE((FETP));
00074 M01S00072.rform +++|# TITLE RPCLOSE - CLOSES A REPORT FILE. #
00075 M01S00073.rform +++|
00076 M01S00074.rform +++| BEGIN # RPCLOSE #
00077 M01S00075.rform +++|
00078 M01S00076.rform +++|#
00079 M01S00077.rform +++|** RPCLOSE - CLOSES A REPORT FILE.
00080 M01S00078.rform +++|*
00081 M01S00079.rform +++|* THIS PROCEDURE WRITES THE MESSAGE *REPORT
00082 M01S00080.rform +++|* COMPLETE* ON THE REPORT FILE, CLEARS THE
00083 M01S00081.rform +++|* *FET* ADDRESS IN THE PRINT TABLE ENTRY, AND
00084 M01S00082.rform +++|* CALLS *WRITER* TO CLOSE THE REPORT FILE.
00085 M01S00083.rform +++|*
00086 M01S00084.rform +++|* PROC RPCLOSE((FETP)).
00087 M01S00085.rform +++|*
00088 M01S00086.rform +++|* ENTRY (FETP) - ADDRESS OF REPORT FILE *FET*.
00089 M01S00087.rform +++|* = *NULLFILE*, NO REPORT PROCESSING DONE.
00090 M01S00088.rform +++|* (VALUE DEFINED IN *COMUOUT*)
00091 M01S00089.rform +++|* = OTHER, ADDRESS OF *FET*.
00092 M01S00090.rform +++|*
00093 M01S00091.rform +++|* EXIT REPORT FILE IS CLOSED. A PAGE EJECT IS ISSUED AND
00094 M01S00092.rform +++|* *REPORT COMPLETE* IS PRINTED.
00095 M01S00093.rform +++|*
00096 M01S00094.rform +++|* NOTES *RPCLOSE* CALLS *WRITER* TO WRITE AN
00097 M01S00095.rform +++|* END-OF-RECORD ON THE REPORT FILE, AND
00098 M01S00096.rform +++|* CLEARS THE VALUE OF *FETP* FROM THE PRINT
00099 M01S00097.rform +++|* TABLE ENTRY TO INDICATE THAT THE ENTRY
00100 M01S00098.rform +++|* IS NOW EMPTY.
00101 M01S00099.rform +++|#
00102 M01S00100.rform +++|
00103 M01S00101.rform +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* #
00104 M01S00102.rform +++|
00105 M01S00103.rform +++|#
00106 M01S00104.rform +++|**** PROC RPCLOSE - XREF LIST BEGIN.
00107 M01S00105.rform +++|#
00108 M01S00106.rform +++|
00109 M01S00107.rform +++| XREF
00110 M01S00108.rform +++| BEGIN
00111 M01S00109.rform +++| PROC RPLINEX; # PRINTS A REPORT LINE #
00112 M01S00110.rform +++| PROC RPSRCH; # SEARCHES THE PRINT TABLE #
00113 M01S00111.rform +++| PROC WRITER; # WRITES *EOR* ON REPORT FILE #
00114 M01S00112.rform +++| END
00115 M01S00113.rform +++|
00116 M01S00114.rform +++|#
00117 M01S00115.rform +++|**** PROC RPCLOSE - XREF LIST END.
00118 M01S00116.rform +++|#
00119 M01S00117.rform +++|
00120 M01S00118.rform +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS #
00121 M01S00119.rform +++|*CALL COMAMSS
00122 M01S00120.rform +++|*CALL COMUFMT
00123 M01S00121.rform +++|*CALL COMUOUT
00124 M01S00122.rform +++|CONTROL EJECT;
00125 M01S00123.rform +++|
00126 M01S00124.rform +++|#
00127 M01S00125.rform +++|* NO PROCESSING IS DONE IF NO REPORT FILE IS INDICATED.
00128 M01S00126.rform +++|#
00129 M01S00127.rform +++|
00130 M01S00128.rform +++| IF FETP EQ NULLFILE
00131 M01S00129.rform +++| THEN
00132 M01S00130.rform +++| BEGIN
00133 M01S00131.rform +++| RETURN;
00134 M01S00132.rform +++| END
00135 M01S00133.rform +++|
00136 M01S00134.rform +++|#
00137 M01S00135.rform +++|* PRINT COMPLETION MESSAGE AND CLEAR THE PRINT TABLE.
00138 M01S00136.rform +++|#
00139 M01S00137.rform +++|
00140 M01S00138.rform +++| RPSRCH(FETP); # SEARCH PRINT TABLE #
00141 M01S00139.rform +++| RPLINEX(FETP,"1**REPORT COMPLETE**",0,20,0);
00142 M01S00140.rform +++| P<RPFET> = FETP;
00143 M01S00141.rform +++| WRITER(RPFET[0],RCL); # WRITE END-OF-RECORD #
00144 M01S00142.rform +++|
00145 M01S00143.rform +++| PRTFETP[ORD] = EMPTY; # CLEAR *FET* ADDRESS FROM TABLE #
00146 M01S00144.rform +++| RETURN;
00147 M01S00145.rform +++| END # RPCLOSE #
00148 M01S00146.rform +++|
00149 M01S00147.rform +++| TERM
00150 M01S00148.rform +++|PROC RPEJECT((FETP));
00151 M01S00149.rform +++|# TITLE RPEJECT - STARTS A NEW REPORT PAGE. #
00152 M01S00150.rform +++|
00153 M01S00151.rform +++| BEGIN # RPEJECT #
00154 M01S00152.rform +++|
00155 M01S00153.rform +++|#
00156 M01S00154.rform +++|** RPEJECT - STARTS NEW REPORT PAGE.
00157 M01S00155.rform +++|*
00158 M01S00156.rform +++|* THIS PROCEDURE ADVANCES THE REPORT FILE
00159 M01S00157.rform +++|* TO A NEW PAGE, SETS THE CURRENT LINE NUMBER
00160 M01S00158.rform +++|* EQUAL TO ONE, AND PRINTS THE PAGE HEADING.
00161 M01S00159.rform +++|*
00162 M01S00160.rform +++|* PROC RPEJECT((FETP)).
00163 M01S00161.rform +++|*
00164 M01S00162.rform +++|* ENTRY (FETP) - ADDRESS OF THE REPORT FILE *FET*.
00165 M01S00163.rform +++|* = *NULLFILE*, NO REPORT PROCESSING DONE.
00166 M01S00164.rform +++|* (VALUE DEFINED IN *COMUOUT*)
00167 M01S00165.rform +++|* = OTHER, ADDRESS OF *FET*.
00168 M01S00166.rform +++|*
00169 M01S00167.rform +++|* EXIT NEW PAGE HEADING IS COMPLETED.
00170 M01S00168.rform +++|*
00171 M01S00169.rform +++|* NOTES *RPEJECT* SETS UP THE PAGE HEADER LINE
00172 M01S00170.rform +++|* WITH DATE, TIME, PAGE NUMBER, AND
00173 M01S00171.rform +++|* CARRIAGE CONTROL CHARACTER. AFTER
00174 M01S00172.rform +++|* PRINTING THIS LINE, THE LINE BUFFER
00175 M01S00173.rform +++|* IS BLANK-FILLED AND *XPRC* IS CALLED
00176 M01S00174.rform +++|* TO EXECUTE THE HEADER PROCEDURE. THE
00177 M01S00175.rform +++|* REPORT FILE MUST HAVE ALREADY BEEN OPENED
00178 M01S00176.rform +++|* BY CALLING *RPOPEN*.
00179 M01S00177.rform +++|#
00180 M01S00178.rform +++|
00181 M01S00179.rform +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* #
00182 M01S00180.rform +++|
00183 M01S00181.rform +++|#
00184 M01S00182.rform +++|**** PROC RPEJECT - XREF LIST BEGIN.
00185 M01S00183.rform +++|#
00186 M01S00184.rform +++|
00187 M01S00185.rform +++| XREF
00188 M01S00186.rform +++| BEGIN
00189 M01S00187.rform +++| PROC RPSRCH; # SEARCHES THE PRINT TABLE #
00190 M01S00188.rform +++| PROC WRITEH; # WRITES LINE ON REPORT FILE #
00191 M01S00189.rform +++| FUNC XCDD C(10); # CONVERTS INTEGER TO DISPLAY #
00192 M01S00190.rform +++| PROC XPRC; # EXECUTES A PROCEDURE #
00193 M01S00191.rform +++| END
00194 M01S00192.rform +++|
00195 M01S00193.rform +++|#
00196 M01S00194.rform +++|**** PROC RPEJECT - XREF LIST END.
00197 M01S00195.rform +++|#
00198 M01S00196.rform +++|
00199 M01S00197.rform +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS #
00200 M01S00198.rform +++|*CALL COMAMSS
00201 M01S00199.rform +++|*CALL COMUFMT
00202 M01S00200.rform +++|*CALL COMUOUT
00203 M01S00201.rform +++| ITEM PAGENUM C(10); # PAGE NUMBER IN DISPLAY CODE #
00204 M01S00202.rform +++|CONTROL EJECT;
00205 M01S00203.rform +++|
00206 M01S00204.rform +++|#
00207 M01S00205.rform +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED.
00208 M01S00206.rform +++|#
00209 M01S00207.rform +++|
00210 M01S00208.rform +++| IF FETP EQ NULLFILE
00211 M01S00209.rform +++| THEN
00212 M01S00210.rform +++| BEGIN
00213 M01S00211.rform +++| RETURN;
00214 M01S00212.rform +++| END
00215 M01S00213.rform +++|
00216 M01S00214.rform +++|
00217 M01S00215.rform +++|#
00218 M01S00216.rform +++|* UPDATE PAGE AND LINE COUNTS.
00219 M01S00217.rform +++|#
00220 M01S00218.rform +++|
00221 M01S00219.rform +++| RPSRCH(FETP); # SEARCH PRINT TABLE FOR *FETP* #
00222 M01S00220.rform +++|
00223 M01S00221.rform +++| PRTPAGE[ORD] = PRTPAGE[ORD] + 1;
00224 M01S00222.rform +++| PRTLINE[ORD] = 1;
00225 M01S00223.rform +++| PAGENUM = XCDD(PRTPAGE[ORD]); # PAGE NUMBER IN DISPLAY CODE #
00226 M01S00224.rform +++|
00227 M01S00225.rform +++|#
00228 M01S00226.rform +++|* SET UP AND PRINT THE PAGE HEADER LINE.
00229 M01S00227.rform +++|#
00230 M01S00228.rform +++|
00231 M01S00229.rform +++| LIN$CNTRL[ORD] = PRCEJ; # CAUSE PAGE EJECT #
00232 M01S00230.rform +++| LIN$HEAD[ORD] = PRTHEADT[ORD]; # CURRENT MESSAGE #
00233 M01S00231.rform +++| LIN$DATE[ORD] = PRTDATE[ORD]; # CURRENT DATE #
00234 M01S00232.rform +++| LIN$TIME[ORD] = PRTTIME[ORD]; # CURRENT TIME #
00235 M01S00233.rform +++| LIN$PAGE[ORD] = "PAGE";
00236 M01S00234.rform +++| LIN$PAGENM[ORD] = C<4,6>PAGENUM; # PAGE NUMBER #
00237 M01S00235.rform +++| P<RPFET> = FETP;
00238 M01S00236.rform +++| WRITEH(RPFET[0],LINEBUFF[ORD],LINELEN); # PRINT LINE #
00239 M01S00237.rform +++| PRTLINE[ORD] = PRTLINE[ORD] + 1; # INCREMENT LINE COUNTER #
00240 M01S00238.rform +++|
00241 M01S00239.rform +++| LIN$BUF[ORD] = SPACES; # BLANK FILL *LINEBUFF* #
00242 M01S00240.rform +++|
00243 M01S00241.rform +++|#
00244 M01S00242.rform +++|* EXECUTE SPECIFIED HEADER PROCEDURE.
00245 M01S00243.rform +++|#
00246 M01S00244.rform +++|
00247 M01S00245.rform +++| XPRC(PRTHEADP[ORD],FETP,BLANK);
00248 M01S00246.rform +++| RETURN;
00249 M01S00247.rform +++| END # RPEJECT #
00250 M01S00248.rform +++|
00251 M01S00249.rform +++| TERM
00252 M01S00250.rform +++|PROC RPHEAD((FETP),(MESG),(COL),(LEN));
00253 M01S00251.rform +++|# TITLE RPHEAD - SETS UP HEADER PRINT FIELD. #
00254 M01S00252.rform +++|
00255 M01S00253.rform +++| BEGIN # RPHEAD #
00256 M01S00254.rform +++|
00257 M01S00255.rform +++|#
00258 M01S00256.rform +++|** RPHEAD - SETS UP HEADER PRINT FIELD.
00259 M01S00257.rform +++|*
00260 M01S00258.rform +++|* *RPHEAD* SETS UP AN OPTIONAL HEADER PRINT FIELD IN THE
Line S00259 Modification History |
M01 (Added by) | rform |
M02 (Updated by) | ns22000 |
Seq # *Modification Id* Act
----------------------------+
00261 M02S00259.ns22000 ---|* FIRST THIRTY-SEVEN CHARACTERS OF THE HEADER PAGE LINE.
00262 M01S00001.ns22000 +++|* FIRST ONE HUNDRED CHARACTERS OF THE HEADER PAGE LINE.
00263 M01S00260.rform +++|*
00264 M01S00261.rform +++|* PROC RPHEAD((FETP),(MESG),(COL),(LEN))
00265 M01S00262.rform +++|*
00266 M01S00263.rform +++|* ENTRY (FETP) - ADDRESS OF *FET* FOR REPORT FILE.
00267 M01S00264.rform +++|* (MESG) - HEADER MESSAGE.
00268 M01S00265.rform +++|* (COL) - STARTING COLUMN.
00269 M01S00266.rform +++|* (LEN) - CHARACTER LENGTH OF FIELD.
00270 M01S00267.rform +++|*
00271 M01S00268.rform +++|* EXIT HEADER PRINT FIELD IS SET UP.
00272 M01S00269.rform +++|*
00273 M01S00270.rform +++|* NOTES THE SPECIFIED MESSAGE WILL BE PRINTED ON EVERY
00274 M01S00271.rform +++|* SUBSEQUENT PAGE HEADING UNTIL CHANGED OR CLEARED
00275 M01S00272.rform +++|* BY ANOTHER CALL TO *RPHEAD*. THE MAXIMUM NUMBER
00276 M01S00273.rform +++|* OF CHARACTERS ALLOWED FOR THE HEADER FIELD IS
Line S00274 Modification History |
M01 (Added by) | rform |
M02 (Updated by) | ns22000 |
Seq # *Modification Id* Act
----------------------------+
00277 M02S00274.ns22000 ---|* THIRTY-SEVEN.
00278 M01S00002.ns22000 +++|* ONE HUNDRED.
00279 M01S00003.ns22000 +++|* (*COL* + *LEN* -1) MUST BE LESS THAN OR EQUAL
00280 M01S00004.ns22000 +++|* TO ONE HUNDRED.
00281 M01S00275.rform +++|#
00282 M01S00276.rform +++|
00283 M01S00277.rform +++| ITEM FETP U; # ADDRESS OF REPORT FILE FET #
Line S00278 Modification History |
M01 (Added by) | rform |
M02 (Updated by) | ns22000 |
Seq # *Modification Id* Act
----------------------------+
00284 M02S00278.ns22000 ---| ITEM MESG C(37); # HEADER MESSAGE #
00285 M01S00005.ns22000 +++| ITEM MESG C(100); # HEADER MESSAGE #
00286 M01S00279.rform +++| ITEM COL U; # STARTING COLUMN FOR FIELD #
00287 M01S00280.rform +++| ITEM LEN U; # LENGTH OF PRINT FIELD #
00288 M01S00281.rform +++|
00289 M01S00282.rform +++|#
00290 M01S00283.rform +++|**** PROC RPHEAD - XREF LIST BEGIN.
00291 M01S00284.rform +++|#
00292 M01S00285.rform +++|
00293 M01S00286.rform +++| XREF
00294 M01S00287.rform +++| BEGIN
00295 M01S00288.rform +++| PROC RPSRCH; # SEARCHES PRINT TABLE #
00296 M01S00289.rform +++| END
00297 M01S00290.rform +++|
00298 M01S00291.rform +++|#
00299 M01S00292.rform +++|**** PROC RPHEAD - XREF LIST END.
00300 M01S00293.rform +++|#
00301 M01S00294.rform +++|
00302 M01S00295.rform +++| DEF LISTCON #0#; # TURN LISTING OFF #
00303 M01S00296.rform +++|*CALL COMAMSS
00304 M01S00297.rform +++|*CALL COMUFMT
00305 M01S00298.rform +++|*CALL COMUOUT
00306 M01S00299.rform +++|
00307 M01S00300.rform +++| CONTROL EJECT;
00308 M01S00301.rform +++|
00309 M01S00302.rform +++|#
00310 M01S00303.rform +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED.
00311 M01S00304.rform +++|#
00312 M01S00305.rform +++|
00313 M01S00306.rform +++| IF FETP EQ NULLFILE
00314 M01S00307.rform +++| THEN
00315 M01S00308.rform +++| BEGIN
00316 M01S00309.rform +++| RETURN;
00317 M01S00310.rform +++| END
00318 M01S00311.rform +++|
00319 M01S00312.rform +++|#
00320 M01S00313.rform +++|* SET UP PRINT FIELD.
00321 M01S00314.rform +++|#
00322 M01S00315.rform +++|
00323 M01S00316.rform +++| RPSRCH(FETP); # FIND PRINT TABLE ENTRY #
00324 M01S00317.rform +++| C<COL-1,LEN>PRTHEADT[ORD] = C<0,LEN>MESG;
00325 M01S00318.rform +++| END # RPHEAD #
00326 M01S00319.rform +++|
00327 M01S00320.rform +++| TERM
00328 M01S00321.rform +++|PROC RPLINE((FETP),FIELD,(COL),(LEN),(FLAG));
00329 M01S00322.rform +++|
00330 M01S00323.rform +++|# TITLE RPLINE - CALLS *RPLINEX* TO PRINT A LINE. #
00331 M01S00324.rform +++|
00332 M01S00325.rform +++| BEGIN # RPLINE #
00333 M01S00326.rform +++|
00334 M01S00327.rform +++|#
00335 M01S00328.rform +++|** RPLINE - CALLS *RPLINEX* TO PRINT A LINE.
00336 M01S00329.rform +++|*
00337 M01S00330.rform +++|* THIS PROCEDURE CHECKS THE CURRENT LINE NUMBER AND CALLS
00338 M01S00331.rform +++|* *RPEJECT* IF THE LINE LIMIT IS EXCEEDED. IT THEN CALLS
00339 M01S00332.rform +++|* *RPLINEX* TO SET UP PRINT FIELD *FIELD* IN THE LINE BUFFER.
00340 M01S00333.rform +++|* THE LINE IS EITHER PRINTED OR SAVED, DEPENDING ON THE VALUE
00341 M01S00334.rform +++|* OF *FLAG* SPECIFIED.
00342 M01S00335.rform +++|*
00343 M01S00336.rform +++|* PROC RPLINE((FETP),FIELD,(COL),(LEN),(FLAG)).
00344 M01S00337.rform +++|*
00345 M01S00338.rform +++|* ENTRY (FETP) - ADDRESS OF *FET* FOR REPORT FILE.
00346 M01S00339.rform +++|* = *NULLFILE*, NO REPORT PROCESSING IS DONE.
00347 M01S00340.rform +++|* (VALUE DEFINED IN *COMUOUT*)
00348 M01S00341.rform +++|* = OTHER, ADDRESS OF *FET*.
00349 M01S00342.rform +++|* (FIELD) - STRING TO BE PRINTED.
00350 M01S00343.rform +++|* (COL) - STARTING COLUMN FOR *FIELD*.
00351 M01S00344.rform +++|* (LEN) - CHARACTER LENGTH OF *FIELD*.
00352 M01S00345.rform +++|* (FLAG) - INDICATES CONTINUATION OF LINE.
00353 M01S00346.rform +++|* (VALUES DEFINED IN *COMUOUT*)
00354 M01S00347.rform +++|* = *END$LN*, CONTENTS OF BUFFER ARE PRINTED.
00355 M01S00348.rform +++|* = *CONT$LN*, CONTENTS OF BUFFER ARE SAVED.
00356 M01S00349.rform +++|*
00357 M01S00350.rform +++|* EXIT LINE IS PRINTED OR CONTENTS OF BUFFER ARE SAVED
00358 M01S00351.rform +++|* UNTIL NEXT CALL TO *RPLINE*. THE MAXIMUM FIELD
00359 M01S00352.rform +++|* SIZE IS 138 CHARACTERS.
00360 M01S00353.rform +++|#
00361 M01S00354.rform +++|
00362 M01S00355.rform +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* #
00363 M01S00356.rform +++|
00364 M01S00357.rform +++| ARRAY FIELD [0:0] S(14); # ARRAY CONTAINING PRINT FIELD #
00365 M01S00358.rform +++| BEGIN
00366 M01S00359.rform +++| ITEM FIELDPR C(00,00,138); # PRINT STRING #
00367 M01S00360.rform +++| END
00368 M01S00361.rform +++|
00369 M01S00362.rform +++| ITEM COL U; # STARTING COLUMN OF FIELD #
00370 M01S00363.rform +++| ITEM LEN U; # LENGTH OF PRINT FIELD #
00371 M01S00364.rform +++| ITEM FLAG U; # INDICATES LINE CONTINUATION #
00372 M01S00365.rform +++|
00373 M01S00366.rform +++|
00374 M01S00367.rform +++|
00375 M01S00368.rform +++|#
00376 M01S00369.rform +++|**** PROC RPLINE - XREF LIST BEGIN.
00377 M01S00370.rform +++|#
00378 M01S00371.rform +++|
00379 M01S00372.rform +++| XREF
00380 M01S00373.rform +++| BEGIN
00381 M01S00374.rform +++| PROC RPEJECT; # STARTS NEW REPORT PAGE #
00382 M01S00375.rform +++| PROC RPLINEX; # PRINTS LINE ON REPORT FILE #
00383 M01S00376.rform +++| PROC RPSRCH; # SEARCHES PRINT TABLE #
00384 M01S00377.rform +++| END
00385 M01S00378.rform +++|
00386 M01S00379.rform +++|#
00387 M01S00380.rform +++|**** PROC RPLINE - XREF LIST END.
00388 M01S00381.rform +++|#
00389 M01S00382.rform +++|
00390 M01S00383.rform +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS #
00391 M01S00384.rform +++|
00392 M01S00385.rform +++|*CALL COMAMSS
00393 M01S00386.rform +++|*CALL COMUFMT
00394 M01S00387.rform +++|*CALL COMUOUT
00395 M01S00388.rform +++|CONTROL EJECT;
00396 M01S00389.rform +++|
00397 M01S00390.rform +++|
00398 M01S00391.rform +++|#
00399 M01S00392.rform +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED.
00400 M01S00393.rform +++|#
00401 M01S00394.rform +++|
00402 M01S00395.rform +++| IF FETP EQ NULLFILE
00403 M01S00396.rform +++| THEN
00404 M01S00397.rform +++| BEGIN
00405 M01S00398.rform +++| RETURN;
00406 M01S00399.rform +++| END
00407 M01S00400.rform +++|
00408 M01S00401.rform +++|#
00409 M01S00402.rform +++|* CHECK LINE COUNT AND PRINT REPORT LINE.
00410 M01S00403.rform +++|#
00411 M01S00404.rform +++|
00412 M01S00405.rform +++| RPSRCH(FETP); # SEARCH FOR MATCHING *FETP* #
00413 M01S00406.rform +++|
00414 M01S00407.rform +++| IF PRTLINE[ORD] GR PRTLINELIM[ORD]
00415 M01S00408.rform +++| THEN # NEW PAGE NEEDED #
00416 M01S00409.rform +++| BEGIN
00417 M01S00410.rform +++| RPEJECT(FETP);
00418 M01S00411.rform +++| END
00419 M01S00412.rform +++|
00420 M01S00413.rform +++| RPLINEX(FETP,FIELD,COL,LEN,FLAG);
00421 M01S00414.rform +++|
00422 M01S00415.rform +++|
00423 M01S00416.rform +++|
00424 M01S00417.rform +++| RETURN;
00425 M01S00418.rform +++| END # RPLINE #
00426 M01S00419.rform +++|
00427 M01S00420.rform +++| TERM
00428 M01S00421.rform +++|PROC RPLINEX((FETP),FIELD,(COL),(LEN),(FLAG));
00429 M01S00422.rform +++|# TITLE RPLINEX - PRINTS A REPORT LINE. #
00430 M01S00423.rform +++|
00431 M01S00424.rform +++| BEGIN # RPLINEX #
00432 M01S00425.rform +++|
00433 M01S00426.rform +++|#
00434 M01S00427.rform +++|** RPLINEX - PRINTS A LINE ON THE REPORT FILE.
00435 M01S00428.rform +++|*
00436 M01S00429.rform +++|* *RPLINEX* SETS UP PRINT FIELD *FIELD* IN A LINE BUFFER.
00437 M01S00430.rform +++|* THE CONTENTS OF THE BUFFER ARE EITHER PRINTED OR SAVED, DEPENDING
00438 M01S00431.rform +++|* ON THE VALUE OF *FLAG*. MORE THAN ONE FIELD PER PRINT
00439 M01S00432.rform +++|* LINE CAN BE SPECIFIED BY MAKING MORE THAN ONE CALL TO
00440 M01S00433.rform +++|* *RPLINEX*.
00441 M01S00434.rform +++|*
00442 M01S00435.rform +++|* PROC RPLINEX((FETP),FIELD,(COL),(LEN),(FLAG)).
00443 M01S00436.rform +++|*
00444 M01S00437.rform +++|* ENTRY (FETP) - ADDRESS OF *FET* FOR REPORT FILE.
00445 M01S00438.rform +++|* = *NULLFILE*, NO REPORT PROCESSING IS DONE.
00446 M01S00439.rform +++|* (VALUE DEFINED IN *COMUOUT*)
00447 M01S00440.rform +++|* = OTHER, ADDRESS OF *FET*.
00448 M01S00441.rform +++|* (FIELD) - STRING TO BE PRINTED.
00449 M01S00442.rform +++|* (COL) - STARTING COLUMN FOR *FIELD*.
00450 M01S00443.rform +++|* (LEN) - CHARACTER LENGTH OF *FIELD*.
00451 M01S00444.rform +++|* (FLAG) - INDICATES CONTINUATION OF LINE.
00452 M01S00445.rform +++|* (VALUES DEFINED IN *COMUOUT*)
00453 M01S00446.rform +++|* = *END$LN*, CONTENTS OF BUFFER ARE PRINTED.
00454 M01S00447.rform +++|* = *CONT$LN*, CONTENTS OF BUFFER ARE SAVED.
00455 M01S00448.rform +++|*
00456 M01S00449.rform +++|* EXIT LINE IS PRINTED OR CONTENTS OF BUFFER ARE SAVED
00457 M01S00450.rform +++|* UNTIL NEXT CALL TO *RPLINEX*. THE LINE COUNTER IS
00458 M01S00451.rform +++|* INCREMENTED AS NEEDED.
00459 M01S00452.rform +++|#
00460 M01S00453.rform +++|
00461 M01S00454.rform +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* #
00462 M01S00455.rform +++|
00463 M01S00456.rform +++|
00464 M01S00457.rform +++| ARRAY FIELD [0:0] S(14); # ARRAY CONTAINING PRINT FIELD #
00465 M01S00458.rform +++| BEGIN
00466 M01S00459.rform +++| ITEM FIELDPR C(00,00,138); # PRINT STRING #
00467 M01S00460.rform +++| END
00468 M01S00461.rform +++|
00469 M01S00462.rform +++| ITEM COL U; # STARTING COLUMN OF FIELD #
00470 M01S00463.rform +++| ITEM LEN U; # LENGTH OF PRINT FIELD #
00471 M01S00464.rform +++| ITEM FLAG U; # INDICATES LINE CONTINUATION #
00472 M01S00465.rform +++|
00473 M01S00466.rform +++|#
00474 M01S00467.rform +++|**** PROC RPLINEX - XREF LIST BEGIN.
00475 M01S00468.rform +++|#
00476 M01S00469.rform +++|
00477 M01S00470.rform +++| XREF
00478 M01S00471.rform +++| BEGIN
00479 M01S00472.rform +++| PROC RPSRCH; # SEARCHES PRINT TABLE #
00480 M01S00473.rform +++| PROC WRITEH; # WRITES LINE ON REPORT FILE #
00481 M01S00474.rform +++| END
00482 M01S00475.rform +++|
00483 M01S00476.rform +++|#
00484 M01S00477.rform +++|**** PROC RPLINEX - XREF LIST END.
00485 M01S00478.rform +++|#
00486 M01S00479.rform +++|
00487 M01S00480.rform +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS #
00488 M01S00481.rform +++|
00489 M01S00482.rform +++|*CALL COMAMSS
00490 M01S00483.rform +++|*CALL COMUFMT
00491 M01S00484.rform +++|*CALL COMUOUT
00492 M01S00485.rform +++|
00493 M01S00486.rform +++|CONTROL EJECT;
00494 M01S00487.rform +++|
00495 M01S00488.rform +++|
00496 M01S00489.rform +++|#
00497 M01S00490.rform +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED.
00498 M01S00491.rform +++|#
00499 M01S00492.rform +++|
00500 M01S00493.rform +++| IF FETP EQ NULLFILE
00501 M01S00494.rform +++| THEN
00502 M01S00495.rform +++| BEGIN
00503 M01S00496.rform +++| RETURN;
00504 M01S00497.rform +++| END
00505 M01S00498.rform +++|
00506 M01S00499.rform +++|
00507 M01S00500.rform +++|#
00508 M01S00501.rform +++|* THE CHARACTER STRING *FIELD* IS PLACED IN THE
00509 M01S00502.rform +++|* APPROPRIATE LOCATION IN *LINEBUFF*. IF THE VALUE
00510 M01S00503.rform +++|* OF *FLAG* IS *CONT$LN*, THE CONTENTS OF *LINEBUFF*
00511 M01S00504.rform +++|* ARE SAVED. OTHERWISE A LINE IS PRINTED.
00512 M01S00505.rform +++|#
00513 M01S00506.rform +++|
00514 M01S00507.rform +++| RPSRCH(FETP); # FIND PRINT TABLE ENTRY #
00515 M01S00508.rform +++| P<RPFET> = FETP;
00516 M01S00509.rform +++|
00517 M01S00510.rform +++| IF FIELDPR[0] NQ EMPTY # IF *FIELD* CONTAINS STRING #
00518 M01S00511.rform +++| THEN
00519 M01S00512.rform +++| BEGIN
00520 M01S00513.rform +++| C<COL,LEN>LIN$BUF[ORD] = FIELDPR[0]; # SET UP PRINT FIELD #
00521 M01S00514.rform +++| END
00522 M01S00515.rform +++|
00523 M01S00516.rform +++| IF FLAG EQ CONT$LN # IF LINE CONTINUED #
00524 M01S00517.rform +++| THEN
00525 M01S00518.rform +++| BEGIN
00526 M01S00519.rform +++| RETURN; # SAVE CONTENTS OF *LINEBUFF* #
00527 M01S00520.rform +++| END
00528 M01S00521.rform +++|
00529 M01S00522.rform +++|#
00530 M01S00523.rform +++|* WRITE PRINT LINE.
00531 M01S00524.rform +++|#
00532 M01S00525.rform +++|
00533 M01S00526.rform +++| WRITEH(RPFET[0],LINEBUFF[ORD],LINELEN);
00534 M01S00527.rform +++| IF LIN$CNTRL[ORD] EQ PRDBL
00535 M01S00528.rform +++| THEN # DOUBLE SPACE DONE #
00536 M01S00529.rform +++| BEGIN
00537 M01S00530.rform +++| PRTLINE[ORD] = PRTLINE[ORD] + 2; # INCREMENT LINE COUNT #
00538 M01S00531.rform +++| END
00539 M01S00532.rform +++|
00540 M01S00533.rform +++| ELSE # SINGLE SPACE ASSUMED #
00541 M01S00534.rform +++| BEGIN
00542 M01S00535.rform +++| PRTLINE[ORD] = PRTLINE[ORD] + 1; # INCREMENT BY ONE #
00543 M01S00536.rform +++| END
00544 M01S00537.rform +++|
00545 M01S00538.rform +++| LIN$BUF[ORD] = SPACES; # BLANK FILL *LINEBUFF* #
00546 M01S00539.rform +++| RETURN;
00547 M01S00540.rform +++|
00548 M01S00541.rform +++| END # RPLINEX #
00549 M01S00542.rform +++|
00550 M01S00543.rform +++| TERM
00551 M01S00544.rform +++|PROC RPOPEN((NAME),(FETP),HEADPROC);
00552 M01S00545.rform +++|# TITLE RPOPEN - OPENS A REPORT FILE. #
00553 M01S00546.rform +++|
00554 M01S00547.rform +++| BEGIN # RPOPEN #
00555 M01S00548.rform +++|
00556 M01S00549.rform +++|#
00557 M01S00550.rform +++|** RPOPEN - OPENS A REPORT FILE.
00558 M01S00551.rform +++|*
00559 M01S00552.rform +++|* THIS PROCEDURE SETS UP THE PRINT TABLE
00560 M01S00553.rform +++|* FOR A REPORT FILE AND CALLS *RPEJECT*
00561 M01S00554.rform +++|* TO START THE FIRST PAGE.
00562 M01S00555.rform +++|*
00563 M01S00556.rform +++|* PROC RPOPEN((NAME),(FETP),HEADPROC).
00564 M01S00557.rform +++|*
00565 M01S00558.rform +++|* ENTRY (NAME) - NAME OF REPORT FILE.
00566 M01S00559.rform +++|* (FETP) - REPORT FILE *FET* OPTION.
00567 M01S00560.rform +++|* = *NULLFILE*, NO REPORT PROCESSING IS DONE.
00568 M01S00561.rform +++|* (VALUE DEFINED IN *COMUOUT*)
00569 M01S00562.rform +++|* = OTHER, ADDRESS OF REPORT FILE *FET*.
00570 M01S00563.rform +++|* (HEADPROC) - HEADER PROCEDURE OPTION.
00571 M01S00564.rform +++|* = *DEFLT$HDR*, DEFAULT PAGE HEADER USED.
00572 M01S00565.rform +++|* (VALUE DEFINED IN *COMUOUT*)
00573 M01S00566.rform +++|* = NAME OF USER-SUPPLIED PROCEDURE TO
00574 M01S00567.rform +++|* BE EXECUTED AFTER EACH PAGE EJECT.
00575 M01S00568.rform +++|*
00576 M01S00569.rform +++|* EXIT REPORT FILE OPENED OR PRINT TABLE FULL.
00577 M01S00570.rform +++|*
00578 M01S00571.rform +++|* NOTES *RPOPEN* INITIALIZES A PRINT TABLE ENTRY FOR
00579 M01S00572.rform +++|* THE REPORT FILE SPECIFIED. UP TO *PRTABENT* REPORT
00580 M01S00573.rform +++|* FILES MAY BE OPEN SIMULTANEOUSLY. AFTER EACH
00581 M01S00574.rform +++|* PAGE EJECT, A LINE IS PRINTED CONTAINING THE
00582 M01S00575.rform +++|* THE CURRENT DATE, TIME, AND PAGE NUMBER.
00583 M01S00576.rform +++|* FOLLOWING THIS THE USER SUPPLIED HEADER PROCEDURE
00584 M01S00577.rform +++|* IS EXECUTED.
00585 M01S00578.rform +++|* TO AVOID RECURSIVE CALLS, THE HEADER PROCEDURE MUST
00586 M01S00579.rform +++|* NOT CALL *RPLINE* OR *RPSPACE*. INSTEAD *RPLINEX*
00587 M01S00580.rform +++|* SHOULD BE USED. TO PRINT A BLANK LINE, CALL:
00588 M01S00581.rform +++|* RPLINEX(FETP,0,0,0,0).
00589 M01S00582.rform +++|#
00590 M01S00583.rform +++|
00591 M01S00584.rform +++| ITEM NAME C(7); # NAME OF THE REPORT FILE #
00592 M01S00585.rform +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* #
00593 M01S00586.rform +++| FPRC HEADPROC; # USER-SUPPLIED HEADER PROCEDURE #
00594 M01S00587.rform +++|
00595 M01S00588.rform +++|#
00596 M01S00589.rform +++|**** PROC RPOPEN - XREF LIST BEGIN.
00597 M01S00590.rform +++|#
00598 M01S00591.rform +++|
00599 M01S00592.rform +++| XREF
00600 M01S00593.rform +++| BEGIN
00601 M01S00594.rform +++| PROC CLOCK; # GETS CURRENT TIME #
00602 M01S00595.rform +++| PROC DATE; # GETS CURRENT DATE #
00603 M01S00596.rform +++| PROC RPEJECT; # STARTS NEW REPORT PAGE #
00604 M01S00597.rform +++| PROC RPLINEX; # PRINTS A LINE #
00605 M01S00598.rform +++| PROC RPSRCH; # SEARCHES THE PRINT TABLE #
00606 M01S00599.rform +++| PROC ZSETFET; # INITIALIZES A *FET* #
00607 M01S00600.rform +++| END
00608 M01S00601.rform +++|
00609 M01S00602.rform +++|#
00610 M01S00603.rform +++|**** PROC RPOPEN - XREF LIST END.
00611 M01S00604.rform +++|#
00612 M01S00605.rform +++|
00613 M01S00606.rform +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS #
00614 M01S00607.rform +++|*CALL COMAMSS
00615 M01S00608.rform +++|*CALL COMUFMT
00616 M01S00609.rform +++|*CALL COMUOUT
00617 M01S00610.rform +++|
00618 M01S00611.rform +++|
00619 M01S00612.rform +++|
00620 M01S00613.rform +++| ITEM DTEMP C(10); # TEMPORARY LOCATION FOR DATE #
00621 M01S00614.rform +++| ITEM TTEMP C(10); # TEMPORARY LOCATION FOR TIME #
00622 M01S00615.rform +++| ITEM PRBUFP U; # ADDRESS OF *CIO* BUFFER #
00623 M01S00616.rform +++|
00624 M01S00617.rform +++| BASED
00625 M01S00618.rform +++| ARRAY HEADWORD [0:0] S(1); # USED TO TEST *HEADPROC* #
00626 M01S00619.rform +++| BEGIN
00627 M01S00620.rform +++| ITEM HEADNAME U(00,00,60); # NAME OF HEADER PROCEDURE #
00628 M01S00621.rform +++| END
00629 M01S00622.rform +++|
00630 M01S00623.rform +++|CONTROL EJECT;
00631 M01S00624.rform +++|
00632 M01S00625.rform +++|#
00633 M01S00626.rform +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED.
00634 M01S00627.rform +++|#
00635 M01S00628.rform +++|
00636 M01S00629.rform +++| IF FETP EQ NULLFILE
00637 M01S00630.rform +++| THEN
00638 M01S00631.rform +++| BEGIN
00639 M01S00632.rform +++| RETURN;
00640 M01S00633.rform +++| END
00641 M01S00634.rform +++|
00642 M01S00635.rform +++|
00643 M01S00636.rform +++|#
00644 M01S00637.rform +++|* SEARCH FOR AN EMPTY ENTRY IN THE PRINT TABLE.
00645 M01S00638.rform +++|#
00646 M01S00639.rform +++|
00647 M01S00640.rform +++| RPSRCH(EMPTY); # SEARCH TABLE FOR EMPTY ENTRY #
00648 M01S00641.rform +++|
00649 M01S00642.rform +++| DATE(DTEMP); # GET CURRENT DATE #
00650 M01S00643.rform +++| CLOCK(TTEMP); # GET CURRENT TIME #
00651 M01S00644.rform +++|
00652 M01S00645.rform +++|#
00653 M01S00646.rform +++|* INITIALIZE PRINT TABLE FIELDS.
00654 M01S00647.rform +++|#
00655 M01S00648.rform +++|
00656 M01S00649.rform +++| PRBUFP = LOC(PRBUF[ORD]); # ADDRESS OF *CIO* BUFFER #
00657 M01S00650.rform +++| PRTLFN[ORD] = NAME;
00658 M01S00651.rform +++| PRTLINE[ORD] = MAXLINE;
00659 M01S00652.rform +++| PRTHEADT[ORD] = " ";
00660 M01S00653.rform +++| PRTFETP[ORD] = FETP;
00661 M01S00654.rform +++| PRTPAGE[ORD] = 0;
00662 M01S00655.rform +++| PRTLINELIM[ORD] = PRDEFLIM;
00663 M01S00656.rform +++| PRTDATE[ORD] = DTEMP;
00664 M01S00657.rform +++| PRTTIME[ORD] = TTEMP;
00665 M01S00658.rform +++|
00666 M01S00659.rform +++|#
00667 M01S00660.rform +++|* SAVE ADDRESS OF THE HEADER PROCEDURE.
00668 M01S00661.rform +++|#
00669 M01S00662.rform +++|
00670 M01S00663.rform +++| P<HEADWORD> = LOC(HEADPROC);
00671 M01S00664.rform +++| IF HEADNAME[0] EQ DEFLT$HDR
00672 M01S00665.rform +++| THEN # DEFAULT HEADER CHOSEN #
00673 M01S00666.rform +++| BEGIN
00674 M01S00667.rform +++| PRTHEADP[ORD] = LOC(RPLINEX); # GET ADDRESS OF *RPLINEX* #
00675 M01S00668.rform +++| END
00676 M01S00669.rform +++|
00677 M01S00670.rform +++| ELSE # HEADER PROVIDED #
00678 M01S00671.rform +++| BEGIN
00679 M01S00672.rform +++| PRTHEADP[ORD] = LOC(HEADPROC); # GET HEADER ADDRESS #
00680 M01S00673.rform +++| END
00681 M01S00674.rform +++|
00682 M01S00675.rform +++|#
00683 M01S00676.rform +++|* INITIALIZE *FET* AND START FIRST PAGE.
00684 M01S00677.rform +++|#
00685 M01S00678.rform +++|
00686 M01S00679.rform +++| ZSETFET(FETP,NAME,PRBUFP,PRBUFL,SFETL);
00687 M01S00680.rform +++|
00688 M01S00681.rform +++| LIN$BUF[ORD] = SPACES; # BLANK FILL *LINEBUFF* #
00689 M01S00682.rform +++| RETURN;
00690 M01S00683.rform +++|
00691 M01S00684.rform +++| END # RPOPEN #
00692 M01S00685.rform +++|
00693 M01S00686.rform +++| TERM
00694 M01S00687.rform +++|PROC RPSPACE((FETP),(SPTYP),(NUM));
00695 M01S00688.rform +++|# TITLE RPSPACE - DOES REPORT SPACING. #
00696 M01S00689.rform +++|
00697 M01S00690.rform +++| BEGIN # RPSPACE #
00698 M01S00691.rform +++|
00699 M01S00692.rform +++|#
00700 M01S00693.rform +++|** RPSPACE - DOES REPORT SPACING.
00701 M01S00694.rform +++|*
00702 M01S00695.rform +++|* THIS PROCEDURE DOES VARIOUS TYPES OF REPORT
00703 M01S00696.rform +++|* PROCESSING, DEPENDING ON THE VALUE OF *SPTYP*
00704 M01S00697.rform +++|* SPECIFIED.
00705 M01S00698.rform +++|*
00706 M01S00699.rform +++|* PROC RPSPACE((FETP),(SPTYP),(NUM)).
00707 M01S00700.rform +++|*
00708 M01S00701.rform +++|* ENTRY (FETP) - ADDRESS OF REPORT FILE *FET*.
00709 M01S00702.rform +++|* (SPTYP) - STATUS ITEM INDICATING PROCESSING.
00710 M01S00703.rform +++|* (VALUES DEFINED IN *COMUOUT*)
00711 M01S00704.rform +++|* = *LIMIT*, CHANGE PAGE LINE LIMIT TO *NUM*.
00712 M01S00705.rform +++|* = *LINE*, ADVANCE TO LINE *NUM*.
00713 M01S00706.rform +++|* = *SPACE*, PRINT *NUM* BLANK LINES.
00714 M01S00707.rform +++|* (NUM) - NUMBER USED IN ACCORDANCE WITH THE
00715 M01S00708.rform +++|* VALUE OF *SPTYP*.
00716 M01S00709.rform +++|*
00717 M01S00710.rform +++|* EXIT REPORT SPACING IS COMPLETE.
00718 M01S00711.rform +++|*
00719 M01S00712.rform +++|* ERRORS LINE LIMIT EXCEEDS MAXIMUM.
00720 M01S00713.rform +++|*
00721 M01S00714.rform +++|* MESSAGES * MAXIMUM LINE COUNT TAKEN AS LIMIT.*.
00722 M01S00715.rform +++|#
00723 M01S00716.rform +++|
00724 M01S00717.rform +++| ITEM FETP U; # ADDRESS OF *FET* #
00725 M01S00718.rform +++| ITEM NUM I; # NUMBER OF SPACES, LINE NUMBER,
00726 M01S00719.rform +++| OR NEW LINE LIMIT #
00727 M01S00720.rform +++|
00728 M01S00721.rform +++|#
00729 M01S00722.rform +++|**** PROC RPSPACE - XREF LIST BEGIN.
00730 M01S00723.rform +++|#
00731 M01S00724.rform +++|
00732 M01S00725.rform +++| XREF
00733 M01S00726.rform +++| BEGIN
00734 M01S00727.rform +++| PROC MESSAGE; # DISPLAYS DAYFILE MESSAGE #
00735 M01S00728.rform +++| PROC RPSRCH; # SEARCHES THE PRINT TABLE #
00736 M01S00729.rform +++| PROC RPLINEX; # PRINTS A LINE ON REPORT FILE #
00737 M01S00730.rform +++| PROC RPEJECT; # STARTS NEW REPORT PAGE #
00738 M01S00731.rform +++| END
00739 M01S00732.rform +++|
00740 M01S00733.rform +++|#
00741 M01S00734.rform +++|**** PROC RPSPACE - XREF LIST END.
00742 M01S00735.rform +++|#
00743 M01S00736.rform +++|
00744 M01S00737.rform +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS #
00745 M01S00738.rform +++|*CALL COMAMSS
00746 M01S00739.rform +++|*CALL COMUFMT
00747 M01S00740.rform +++|*CALL COMUOUT
00748 M01S00741.rform +++| ITEM I I; # INDUCTION VARIABLE #
00749 M01S00742.rform +++| ITEM LINESLEFT U; # LINES LEFT ON PAGE #
00750 M01S00743.rform +++| ITEM SPTYP S:SP; # TYPE OF SPACING SPECIFIED #
00751 M01S00744.rform +++|
00752 M01S00745.rform +++| SWITCH LABTYP:SP # SWITCH CONTROLLING PROCESSING #
00753 M01S00746.rform +++| LIMITYP:LIMIT, # CHANGE PAGE LINE LIMIT #
00754 M01S00747.rform +++| LINETYP:LINE, # ADVANCE TO ABSOLUTE LINE #
00755 M01S00748.rform +++| SPACETYP:SPACE; # PRINT BLANK LINES #
00756 M01S00749.rform +++|
00757 M01S00750.rform +++|CONTROL EJECT;
00758 M01S00751.rform +++|
00759 M01S00752.rform +++|
00760 M01S00753.rform +++|
00761 M01S00754.rform +++|#
00762 M01S00755.rform +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED.
00763 M01S00756.rform +++|#
00764 M01S00757.rform +++|
00765 M01S00758.rform +++| IF FETP EQ NULLFILE
00766 M01S00759.rform +++| THEN
00767 M01S00760.rform +++| BEGIN
00768 M01S00761.rform +++| RETURN;
00769 M01S00762.rform +++| END
00770 M01S00763.rform +++|
00771 M01S00764.rform +++|
00772 M01S00765.rform +++|#
00773 M01S00766.rform +++|* FIND PRINT TABLE ENTRY AND PROCESS REQUEST.
00774 M01S00767.rform +++|#
00775 M01S00768.rform +++|
00776 M01S00769.rform +++| RPSRCH(FETP);
00777 M01S00770.rform +++| GOTO LABTYP[SPTYP]; # DO APPROPRIATE PROCESSING #
00778 M01S00771.rform +++|
00779 M01S00772.rform +++|LIMITYP: # CHANGE LINE LIMIT TO *NUM* #
00780 M01S00773.rform +++| IF NUM LS MAXLC
00781 M01S00774.rform +++| THEN # LIMIT REQUESTED IS PERMISSABLE #
00782 M01S00775.rform +++| BEGIN
00783 M01S00776.rform +++| PRTLINELIM[ORD] = NUM;
00784 M01S00777.rform +++| END
00785 M01S00778.rform +++|
00786 M01S00779.rform +++| ELSE # EXCESSIVE LIMIT REQUESTED #
00787 M01S00780.rform +++| BEGIN
00788 M01S00781.rform +++| PRTLINELIM[ORD] = MAXLC; # MAXIMUM LINE LIMIT USED #
00789 M01S00782.rform +++| MSGITEM[0] = " MAXIMUM LINE COUNT TAKEN AS LIMIT." ;
00790 M01S00783.rform +++| MESSAGE(MSGITEM[0],UDFL1);
00791 M01S00784.rform +++| END
00792 M01S00785.rform +++|
00793 M01S00786.rform +++| RETURN;
00794 M01S00787.rform +++|
00795 M01S00788.rform +++|LINETYP: # SKIP TO LINE NUMBER #
00796 M01S00789.rform +++| IF NUM LQ PRTLINE[ORD]
00797 M01S00790.rform +++| THEN # LINE IS ON NEXT PAGE #
00798 M01S00791.rform +++| BEGIN
00799 M01S00792.rform +++| RPEJECT(FETP); # EJECT TO NEW PAGE #
00800 M01S00793.rform +++| END
00801 M01S00794.rform +++|
00802 M01S00795.rform +++| NUM = NUM - PRTLINE[ORD];
00803 M01S00796.rform +++| SLOWFOR I = 1 STEP 1 UNTIL NUM
00804 M01S00797.rform +++| DO
00805 M01S00798.rform +++| BEGIN
00806 M01S00799.rform +++| RPLINEX(FETP,BLANK); # PRINT BLANK LINE #
00807 M01S00800.rform +++| END
00808 M01S00801.rform +++|
00809 M01S00802.rform +++| RETURN;
00810 M01S00803.rform +++|
00811 M01S00804.rform +++|SPACETYP: # SKIP SPECIFIED NUMBER OF LINES #
00812 M01S00805.rform +++| IF PRTLINE[ORD] GR PRTLINELIM[ORD]
00813 M01S00806.rform +++| THEN
00814 M01S00807.rform +++| BEGIN
00815 M01S00808.rform +++| RPEJECT(FETP); # EJECT TO NEW PAGE #
00816 M01S00809.rform +++| END
00817 M01S00810.rform +++|
00818 M01S00811.rform +++| LINESLEFT = (PRTLINELIM[ORD] - PRTLINE[ORD]) + 1;
00819 M01S00812.rform +++| IF NUM GQ LINESLEFT
00820 M01S00813.rform +++| THEN # PAGE EJECT NECESSARY #
00821 M01S00814.rform +++| BEGIN
00822 M01S00815.rform +++| NUM = NUM - LINESLEFT;
00823 M01S00816.rform +++| RPEJECT(FETP);
00824 M01S00817.rform +++| END
00825 M01S00818.rform +++|
00826 M01S00819.rform +++| SLOWFOR I = 1 STEP 1 UNTIL NUM
00827 M01S00820.rform +++| DO # PRINT *NUM* BLANK LINES #
00828 M01S00821.rform +++| BEGIN
00829 M01S00822.rform +++| RPLINEX(FETP,BLANK); # PRINT *NUM* BLANK LINES #
00830 M01S00823.rform +++| END
00831 M01S00824.rform +++|
00832 M01S00825.rform +++|
00833 M01S00826.rform +++| RETURN;
00834 M01S00827.rform +++| END # RPSPACE #
00835 M01S00828.rform +++|
00836 M01S00829.rform +++| TERM
00837 M01S00830.rform +++|PROC RPSRCH((FETP));
00838 M01S00831.rform +++|
00839 M01S00832.rform +++|# TITLE RPSRCH - SEARCHES THE PRINT TABLE. #
00840 M01S00833.rform +++|
00841 M01S00834.rform +++| BEGIN # RPSRCH #
00842 M01S00835.rform +++|
00843 M01S00836.rform +++|#
00844 M01S00837.rform +++|** RPSRCH - SEARCHES THE PRINT TABLE FOR AN ENTRY WITH A
00845 M01S00838.rform +++|* MATCHING *FETP*.
00846 M01S00839.rform +++|*
00847 M01S00840.rform +++|* *RPSRCH* SEARCHES THE PRINT TABLE FOR EITHER AN EMPTY
00848 M01S00841.rform +++|* ENTRY, OR THE ENTRY FOR A FILE ALREADY OPENED BY
00849 M01S00842.rform +++|* *RPOPEN*.
00850 M01S00843.rform +++|*
00851 M01S00844.rform +++|* PROC RPSRCH((FETP)).
00852 M01S00845.rform +++|*
00853 M01S00846.rform +++|* ENTRY (FETP) - THE *FET* ADDRESS FOR REPORT FILE.
00854 M01S00847.rform +++|* = *EMPTY*, SEARCH FOR EMPTY ENTRY.
00855 M01S00848.rform +++|* (VALUE DEFINED IN *COMUFMT*)
00856 M01S00849.rform +++|* = OTHER, ADDRESS OF *FET*.
00857 M01S00850.rform +++|*
00858 M01S00851.rform +++|* EXIT (ORD) - ITEM IN COMMON CONTAINING THE ORDINAL
00859 M01S00852.rform +++|* OF THE PRINT TABLE ENTRY FOUND.
00860 M01S00853.rform +++|* IF THE PRINT TABLE IS FULL, OR A MATCHING
00861 M01S00854.rform +++|* ENTRY IS NOT FOUND, PROCESSING IS ABORTED.
00862 M01S00855.rform +++|*
00863 M01S00856.rform +++|* MESSAGES * PRINT TABLE ENTRY NOT FOUND.*
00864 M01S00857.rform +++|* * PRINT TABLE FULL.*
00865 M01S00858.rform +++|#
00866 M01S00859.rform +++|
00867 M01S00860.rform +++|
00868 M01S00861.rform +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* #
00869 M01S00862.rform +++|
00870 M01S00863.rform +++|
00871 M01S00864.rform +++|#
00872 M01S00865.rform +++|**** PROC RPSRCH - XREF LIST BEGIN.
00873 M01S00866.rform +++|#
00874 M01S00867.rform +++|
00875 M01S00868.rform +++| XREF
00876 M01S00869.rform +++| BEGIN
00877 M01S00870.rform +++| PROC ABORT; # ABORTS PROCESSING #
00878 M01S00871.rform +++| PROC MESSAGE; # DISPLAYS DAYFILE MESSAGE #
00879 M01S00872.rform +++| END
00880 M01S00873.rform +++|
00881 M01S00874.rform +++|#
00882 M01S00875.rform +++|**** PROC RPSRCH - XREF LIST END.
00883 M01S00876.rform +++|#
00884 M01S00877.rform +++|
00885 M01S00878.rform +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS #
00886 M01S00879.rform +++|
00887 M01S00880.rform +++|*CALL COMAMSS
00888 M01S00881.rform +++|*CALL COMUFMT
00889 M01S00882.rform +++|*CALL COMUOUT
00890 M01S00883.rform +++|
00891 M01S00884.rform +++|
00892 M01S00885.rform +++|CONTROL EJECT;
00893 M01S00886.rform +++|
00894 M01S00887.rform +++|#
00895 M01S00888.rform +++|* FIND PRINT TABLE ENTRY WITH AN EMPTY OR MATCHING *FETP*.
00896 M01S00889.rform +++|#
00897 M01S00890.rform +++|
00898 M01S00891.rform +++| ORD = 1;
00899 M01S00892.rform +++| REPEAT WHILE PRTFETP[ORD] NQ FETP AND ORD LQ PRTABENT
00900 M01S00893.rform +++| DO
00901 M01S00894.rform +++| BEGIN
00902 M01S00895.rform +++| ORD = ORD + 1;
00903 M01S00896.rform +++| END
00904 M01S00897.rform +++|
00905 M01S00898.rform +++| IF ORD GR PRTABENT # MATCHING ENTRY NOT FOUND #
00906 M01S00899.rform +++| THEN
00907 M01S00900.rform +++| BEGIN
00908 M01S00901.rform +++| IF FETP EQ EMPTY # CALLED BY *RPOPEN* #
00909 M01S00902.rform +++| THEN
00910 M01S00903.rform +++| BEGIN
00911 M01S00904.rform +++| MSGITEM[0] = " PRINT TABLE FULL." ;
00912 M01S00905.rform +++| END
00913 M01S00906.rform +++|
00914 M01S00907.rform +++| ELSE
00915 M01S00908.rform +++| BEGIN
00916 M01S00909.rform +++| MSGITEM[0] = " PRINT TABLE ENTRY NOT FOUND." ;
00917 M01S00910.rform +++| END
00918 M01S00911.rform +++|
00919 M01S00912.rform +++| MESSAGE(MSGITEM[0],UDFL1);
00920 M01S00913.rform +++| ABORT; # ISSUE MESSAGE AND ABORT #
00921 M01S00914.rform +++| END
00922 M01S00915.rform +++|
00923 M01S00916.rform +++| RETURN;
00924 M01S00917.rform +++| END # RPSRCH #
00925 M01S00918.rform +++|
00926 M01S00919.rform +++| TERM