Report generation control system for text processing machines4417322Abstract A report generation control system for operating a text processor to produce output reports containing inter-report summary data from data processing-type files. The system is compatible with text pagination functions and is useable by a text entry/revision operator with no programming skills. The system permits the operator to describe the desired report by keying an example page of the report in the exact desired format and then editing the example page by replacing the required variable file data examples with descriptive instructions and by inserting summary instructions. The system scans the edited example page for instructions, breaks it down into logical components and compiles the components into program routines which will produce the desired output report. Claims We claim: Description DESCRIPTION
______________________________________
File Report Preface [FRP]
Identifies a section of
the file report merge
control document which
is to be generated only
once, at the beginning
of the report, and
intended to be used for
cover letters, report
title pages, etc.
Define Control Group [DCG]
Identifies a section of
the file report merge
control document which
is to be generated at
the beginning of each
group of related
records, and specifies
the criteria to be used
in identifying the group
(e.g., "All accounts for
a particular salesman").
Intended to be used for
heading information
concerning the following
group of records, etc.
The text contained
within this section is
generated each time
there is a "control
break" (i.e., a
transition from one
group of related records
to the next) and after
any Control Group
Summary has been
produced for the prior
group of records.
Record Detail [RCD]
Identifies a section of
the file report merge
control document which
is to be generated for
each record. This
section typically
consists of file data
insertion instructions,
to insert the fields
from the current record,
perform line totals,
etc.
Control Group Summary [CGS]
Identifies a section of
the file report merge
control document which
is to be generated each
time there is a control
break, prior to the
generation of headings
for the next group.
This section typically
consists of headings
and/or titles for
summary information on
the group of records
just processed, and
Total instructions
specifying accumulators
used to maintain the
totals for the group.
If this section is
specified, a correspond-
ing Define Control Group
section must be speci-
fied, even if it
contains no text to be
generated (i.e., The
Define Control Group
instruction establishes
the criteria for the
"control break" which
triggers the Control
Group Summary).
File Report Summary [FRS]
This section of the file
report merge control
document contains text
which is generated when
an "end of file" condi-
tion occurs in the Pri-
mary input file. When
record selection is be-
ing performed it signals
the end of qualified
records. This section
is intended to contain
headings and/or titles
for summary information
on all records process-
ed, and Total instruc-
tions specifying
accumulators used to
maintain the totals for
the file.
Total [TOT] This instruction is used
within the Control Group
Summary and File Report
Summary sections of a
file report merge con-
trol document to request
a system maintained
total. When used within
a Control Group Summary
section, it performs a
total for a field within
the control group. As
records within a group
are read, the values of
the specified field from
each record are automa-
tically summed in a
specified "accumulator".
During a control break,
the summed value can be
inserted into the report
and the accumulator is
reset in preparation for
the next group of
records. When used
within a File Report
Summary section, the
Total instruction causes
the field values from
all selected records to
be summed and allows the
sum to be inserted when
the File Report Summary
is generated (i.e., at
end of file).
______________________________________
Now, referring back to FIG. 5, the flow of the control routine will be described. The block 50 shows the overall structure of a file report merge control document. This will be described in greater detail below with reference to file report examples. At block 51 the file report preface which shows a file report title for example is printed and the file report summary accumulators are cleared. Table 1 shows a program design language implementation (PDL) example of this block. At block 52, a first record is read and at block 54, a test is conducted to determine is the end of the record file has been reached. Assuming that the end of file has not been reached, at block 56 a test is conducted to determine if a control break has been reached. If no control break has been reached, then a branch is taken to block 66 where the details from the current record are inserted into the document and the totals are accumulated. Table 2 shows an example of a PDL routine for generating the record detail. At block 68 the updated record is written back into the file and a branch is taken back to block 52 to read the next record. TABLE 1 DESCRIPTIVE-NAME=FILE REPORT OUTPUT INITIATOR FUNCTION=Initiates file report generation, following report descriptor document compilation. Initiation includes report generation storage allocation, initialization of paginator-based input/output and record gen processes, and actual generation of report preface text (FRP). BEGINPDL 010,010 ALFTRGB (INITIATE REPORT OUTPUT) MAIN SEGMENT INVOKE RESTORE COMMON WORK AREAS (FTCCRRES) INCLUDE BEGIN INPUT/OUTPUT PROCESSING (FTRGB020) INCLUDE BEGIN PAGINATOR PROCESSING (FTRGB040) INCLUDE BEGIN REPORT PROCESSING (FTRGB050) INCLUDE PUT FIRST PAGE START FORMAT (FTRGB060) CALL GENERATE FRP TEXT OUTPUT -ALFTRGE-(CALL) SET FIRST DETAIL OUTPUT INDICATOR (#PGDA BASE DOCUMENT START PAGE TO `FIRST`) INVOKE SAVE COMMON WORK AREAS (FTCCRSAV) INCLUDE GENERATOR NORMAL RETURN PARAMETER (FTRGB140) RETURN TO MERGE FILE/TEXT MAINLINE (RETURN) ENDSEGMENT ALFTRGB (INITIATE REPORT OUTPUT) ENDPDL TABLE 2 DESCRIPTIVE-NAME=FILE REPORT DETAIL GENERATOR FUNCTION=Generates report object document output associated with a single primary file record, including appropriate control group text when this record represents one or more report control breaks. BEGINPDL 010,010 ALFTRGC (GENERATE REPORT DETAIL) MAIN SEGMENT INVOKE RESTORE COMMON WORK AREAS (FTCCRRES) INCLUDE ALLOCATE WORK AREAS (FTRGC010) SET ASCENDING CONTROL GROUP INDEX (I=1) DO WHILE (I) <=MAX CONTROL GROUP LEVEL CALL GET NEW DCG(I) CONTROL VALUE (PARSEEXP) ASSIGN=YES, CAPLIZE=NO, EXPTYP=(A,C,FLD), EDITING=YES, EXPLEN=RGWA CONTROL BREAK LENGTH, EXPRESS=RGWA CONTROL BREAK NAME, PAFDSYS=RGPL PARALLEL FILE DESCRIPTOR SYSID, PRFDSYS=RGPL PRIMARY FILE DESCRIPTOR SYSID, SYMPAGE=RGPL SYMBOLS PAGE, SYMSYS=RGPL WORK DOC SYSID, WORKBUF=WK EXP EVAL WORK BUFFER@, KEYUPD=DISALLOW, EVAL=YES, PRREC@=RGPL PRIMARY RECORD ADDR, PAREC@=RGPL PARALLEL RECORD ADDR, MCDSYS=RGPL SOURCE DOC SYSID, EXEC=YES IF EE RETURN CODE IS `OK`, THEN IF LEVEL (I) CONTROL BREAK, THEN INCLUDE PERFORM LEVEL (I) BREAK (FTRGC030) ELSE (NO LEVEL (I) CONTROL BREAK) INCREMENT CONTROL GROUP INDEX (I=I+1) ENDIF INVOKE FREE THE RESULT BUFFER (FTRGC070) ELSE (EXPRESSION EVAL FAILED) SET ABORT PROCESS CODE TO `EXPRESSION EVAL ERROR` TRANSFER TO ERROR PROCESSOR PGN -ALFTRGF-(XCTL) ENDIF ENDDO SET SOURCE DOCUMENT CURRENT PAGE TO RGWA RCD TEXT PAGE NAME CALL GENERATE RCD TEXT OUTPUT (ALFTRGE) SET SOURCE DOCUMENT CURRENT PAGE TO ZERO SET DESCENDING CONTROL GROUP INDEX (J=MAX) DO WHILE (J) >=(REPORT LEVEL INDEX=0) INCLUDE CALCULATE CGS(J) TOTALS (FTRGC040) DECREMENT CONTROL GROUP INDEX (J=J-1) ENDDO IF FRS TOTALS REQUIRED, THEN INCLUDE CALCULATE FRS TOTALS (FTRGC045) ENDIF RESET FIRST DETAIL OUTPUT INDICATOR INVOKE SAVE COMMON WORK AREAS (FTCCRSAC) INCLUDE FREE WORK AREAS (FTRGC020) ESTABLISH GENERATOR NORMAL RETURN PARAMETERS (FTRGC060) RETURN TO MERGE FILE/TEXT MAINLINE (RETURN) ENDSEGMENT ALFTRGC (GENERATE REPORT DETAIL) ENDPDL Assuming the next record causes a control break at block 56 then a test is conducted at block 58 to determine if the record just read is the first record. If not then a control group summary for the records just completed is generated at block 60. At block 62 the accumulators for the control group summary are cleared and at block 64 the control group headings are printed prior to beginning the next group of records. Table 3 shows a PDL routine for processing the control break. TABLE 3 BEGINPDL 010,010 FTRGC030 (PERFORM CONTROL BREAK) INCLUDED SEGMENT SET DESCENDING CONTROL GROUP INDEX (J=MAX) DO UNTIL (J) <CONTROL BREAK LEVEL (I) IF NOT FIRST DETAIL OUTPUT PROCESS, THEN ESTABLISH LAST BREAK RECORD DATA POINTERS SET SOURCE DOCUMENT CURRENT PAGE TO RGWA CGS (J) TEXT PAGE NAME CALL GENERATE CGS (J) TEXT OUTPUT-ALFTRGE-(CALL) SET SOURCE DOCUMENT CURRENT PAGE TO ZERO RESTORE NEW BREAKRECORD DATA POINTERS ENDIF INCLUDE CLEAR CGS(J) TOTALS (FTRGC050) CALL GET NEW DCG(J) CONTROL VALUE (PARSEEXP) ASSIGN=YES, CAPLIZE=NO, EXPTYP=(A,C,FLD), EDITING=YES, EXPLEN=RGWA CONTROL BREAK LENGTH, EXPRESS=RGWA CONTROL BREAK NAME, PAFDSYS=RGPL PARALLEL FILE DESCRIPTOR SYSID, PRFDSYS=RGPL PRIMARY FILE DESCRIPTOR SYSID, SYMPAGE=RGPL SYMBOLS PAGE, SYMSYS=RGPL WORK DOC SYSID, WORKBUF=WK EXP EVAL WORK BUFFER@, KEYUPD=DISALLOW, EVAL=YES, PRREC@=PRIMARY RECORD ADDR, PAREC@=RGPL PARALLEL RECORD ADDR, MCDSYS=RGPL SOURCE DOC SYSID, EXEC=YES IF EE RETURN CODE IS `OK`, THEN SAVE NEW DCG(J) CONTROL FIELD VALUE `DECREMENT CONTROL GROUP INDEX (J=J-1) INVOKE FREE RESULT BUFFER (FTRGC070) ELSE (EXPRESSION EVAL FAILED) SET ABORT PROCESS CODE TO `EXPRESSION EVAL ERROR` TRANSFER TO ERROR PROCESSOR PGN -ALFTRGF-(XCTL) ENDIF ENDDO SAVE NEW RECORD DATA FOR NEXT GROUP SUMMARY DO UNTIL (I) >MAX CONTROL GROUP LEVEL SET SOURCE DOCUMENT CURRENT PAGE TO RGWA DCG(I) TEXT PAGE NAME CALL GENERATE DCG(I) TEXT OUTPUT -ALFTRGE-(CALL) SET SOURCE DOCUMENT CURRENT PAGE TO ZERO INCREMENT CONTROL GROUP INDEX (I=I+1) ENDDO ENDSEGMENT FTRGC030 (PERFORM CONTROL BREAK) ENDPDL The control system continues to cycle through the routine until the end of the record file is sensed at block 54. When this occurs a branch is taken to block 69 where the control group summary is generated in accordance with the routine shown in Table 4 and the file report summary is generated at block 70 in accordance with the program routine shown in Table 5. At this point processing is completed. TABLE 4 BEGINPDL 010,010 FTRGC040 (CALCULATE CGS(J) TOTALS) INCLUDED SEGMENT FIND CGS `TOT` INSTRUCTION COUNT IF `TOT` INSTRUCTION COUNT>0, THEN SET `TOT` INSTRUCTION INDEX (T=1) DO UNTIL (T)>`TOT` INSTRUCTION COUNT ACCESS CGS(J) TOTAL (T) ANN ACCUMULATOR NAME CALL GET CGS(J) TOTAL (T) EXPRESSION (GDOCDATA) SYSID=RGPL WORK DOC SYSID, DATATYPE=ADJUNT, BUFUSE=NO, POPREQ=#, POPTNUM=RGWA) TOTAL SYMBOL NAME+1, POPSET=NO, PAGETYPE=FINAL, PAGESET=NO, PAGENAM=RGWA CSG(J) TEXT PAGE NAME, PAGEVCE=NO, FP=0, EXEC=YES IF ANY INPUT PROCESS EXCEPTION, THEN SET ABORT PROCESS CODE TO `TEMP DOCUMENT INPUT ERROR` TRANSFER TO ERROR PROCESSOR PGN -ALFTRGF-(XCTL) ENDIF CALL EVALUATE `ANN=ANN+EXPRESSION` (PARSEEXP) ASSIGN=YES, CAPLIZE=NO, EXPTYP=(A,C,), EDITING=YES, EXPLEN=RGWA TOTAL LENGTH, EXPRESS=HAM OUTPUT BUFFER 1, PAFDSYS=RGPL PARALLEL FILE DESCRIPTOR SYSID, PRFDSYS=RGPL PRIMARY FILE DESCRIPTOR SYSID, SYMPAGE=RGPL SYMBOLS PAGE, SYMSYS=RGPL WORK DOC SYSID, WORKBUF=WK EXP EVAL WORK BUFFER@, KEYUPD=DISALLOW, EVAL=YES, PRREC@=RGPL PRIMARY RECORD ADDR, PAREC@=RGPL PARALLEL RECORD ADDR, MCDSYS`RGPL SOURCE DOC SYSID, EXEC=YES IF EE RETURN CODE IS `OK`, THEN INCREMENT `TOT` INSTRUCTION INDEX (T=T+1) ELSE (EXPRESSION EVAL FAILED) SET ABORT PROCESS CODE TO `EXPRESSION EVAL ERROR` TRANSFER TO ERROR PROCESSOR PGN -ALFTRGF-(XCTL) ENDIF ENDDO ENDIF ENDSEGMENT FTRGC040 (CALCULATE CGS(J) TOTALS) ENDPDL TABLE 5 BEGINPDL 010,010 FTRGC045 (CALCULATE FRS TOTALS) INCLUDED SEGMENT SET `TOT` INSTRUCTION INDEX (T=1) DO UNTIL (T)>`TOT` INSTRUCTION COUNT ACCESS FRS TOTAL (T) ANN ACCUMULATOR NAME CALL GET FRS TOTAL (T) EXPRESSION (GDOCDATA) SYSID=RGPL WORK DOC SYSID, DATATYP=ADJUNCT, BUFUSE=NO, POPREQ=#, POPTNUM=T, POPSET=NO, PAGETYP=FINAL, PAGESET=NO, PAGENAM=RGWA FRS TEXT PAGE NAME, PAGEREQ=#, PAGEVCE=NO, FP=0, EXEC=YES IF ANY INPUT PROCESS EXCEPTION, THEN SET ABORT PROCESS CODE TO `TEMP DOCUMENT INPUT ERROR` TRANSFER TO ERROR PROCESSOR PGN -ALFTRGF-(XCTL) ENDIF CALL EVALUATE `ANN=ANN+EXPRESSION` (PARSEEXP) ASSIGN=YES, CAPLIZE=NO, EXPTYP=(A,C), EDITING=YES, EXPLEN=RGWA TOTAL LENGTH, EXPRESS=HAM OUTPUT BUFFER 1, PAFDSYS=RGPL PARALLEL FILE DESCRIPTOR SYSID, PRFDSYS=RGPL PRIMARY FILE DESCRIPTOR SYSID, SYMSYS=RGPL WORK DOC SYSID, WORKBUF=WK EXP EVAL WORK BUFFER@, KEYUPD=DISALLOW, EVAL=YES, PRREC@=RGPL PRIMARY RECORD ADDR, PAREC@=RGPL PARALLEL RECORD ADDR, MCDSYS=RGPL SOURCE DOC SYSID, EXEC=YES IF EE RETURN CODE IS `OK`, THEN INCREMENT `TOT` INSTRUCTION INDEX (T=T+1) ELSE (EXPRESSION EVAL FAILED) SET ABORT PROCESS CODE TO `EXPRESSION EVAL ERROR` TRANSFER TO ERROR PROCESSOR PGN -ALFTRGF-(XCTL) ENDIF ENDDO ENDSEGMENT FTRGC045 (CALCULATE FRS TOTALS) ENDPDL The operation of the text processing system control function will now be described with reference to a specific example of a document generated using the present invention. Referring now to FIG. 6, there is illustrated a draft of a desired report. To key the draft, the operator places the system in a "Create Document" mode. In creating the draft, the information for each record is formatted and grouped together by common fields in the same manner as is desired of the final report. In the example of FIG. 6, it is assumed that a file contains records for each customer sale by a salesman in a branch office. Each "sales record" contains the customer's name, salesman's name, salesman's territory number, and the amount of the sale. The desired report is to list each sale, grouped by salesman, report the total sales by a salesman and the total of all sales for the branch office. After the example has been drafted, the file report merge control document shown in FIG. 7 is created by editing the document to delete redundant repetitions in the example, inserting instructions to identify the sections of the report, replacing examples of field data with insertion instructions and adding total instructions. This is accomplished by the operator by controlling the processor 11 through the keyboard 10 to produce the appropriate display of text material on the display 14. Referring to FIG. 7, the first instruction entered is the [FRP] instruction indicating the file report preface section of the document which includes data to be printed only one time. In the example, the text data included is the heading "Sales Analysis By Territory". This information is centered on the display using conventional text centering methods. On the next line, a define control group instruction [DCG] is entered specifying the territory number field as the control group field from the record file. On the line following the [DCG] the operator enters the heading information which is to be generated for each group of sales for a salesman. This section starts with two carrier returns to provide the desired spacing. A line format change specified by the character F is performed to set a tab at column 48 for positioning the "Territory:" and "Order Total" titles. The title "Salesman:" is then entered followed by an insertion instruction for the SALESMAN name field, a tab to column 48, the title "Territory:" and an insertion instruction for TERRITORY NUMBER. The line is ended with a carrier return and another carrier return is entered for spacing and the "Account" and "Order Total" headings are entered and underscored. The record detail section, which will be generated for each record selected from the file, is described next starting with a [RCD] instruction followed by a line format change code "F" to set a decimal tab at column 58 to cause decimal point alignment of the order total fields from each record. An insertion instruction is then entered for the ACCT NAME field followed by a tab and the insertion instruction for the ORDER AMOUNT. Following the record detail section, the section describing totals for the group of records for a salesman is entered. The section begins with a control group summary [CGS] instruction which causes the section to be generated at the end of each group of records having the same territory number. Following the CGS instruction, a total instruction is entered to cause the order amount from each record to be accumulated into accumulator "A01". The "TOT" instruction causes no vertical escapement in the generated output so two carrier returns are entered for the desired spacing. Because the same decimal tab is to be used here as was used in the record detail section, no line format change is required. The summary line starts with a tab to the decimal tab column 58, followed by the title "Territory Total:" and the insertion instruction (INS). These characters move to the left as they are entered due to the decimal alignment but the generated output will be properly aligned. The title "Territory Total:" is entered as part of the "decimal alignment field" in order to make it "float" a fixed number of spaces in front of the total amount, regardless of the length of the inserted total. Following the "CGS" section, a file report summary (FRS) section is specified in order to insert a grand total for all records selected. This section is similar to the prior one except that a line format change is performed to move the decimal tab from column 58 to column 68. The title is "Grand Total:" and accumulator A02 is used because A01 is cleared for each group. Once the file report merge control document has been set up as shown in FIG. 7, the operator places the system in a "Use" mode and the control system scans the document to identify the sections described by the instructions. Each section present is copied into temporary working storage in the disk storage 16. This function is accomplished under the control of the file report source compiler shown in Table 6. The record data is then processed in accordance with the flow algorithm of FIG. 5 as was previously described to produce the report shown in FIG. 8. TABLE 6 DESCRIPTIVE-NAME=FILE REPORT SOURCE COMPILER FUNCTION=Processes a file report merge control document to isolate individual report group text components and store each component in a separate page of the merge file/text working document. These text pages are then available for actual report generation, being directly addressable and stripped of all file report control instructions. This module determines the type of file report control instruction that is to be processed and calls either ALFTRGG which processes `FRP`, `DCG`, `RCD` or ALFTRGH which processes `CGS`, `FRS`, `TOT`. File report control instructions are: FRP=FILE REPORT PREFACE TEXT DCG=DEFINE CONTROL GROUP, BEGIN GROUP TEXT RCD=BEGIN RECORD DETAIL TEXT CGS=BEGIN CONTROL GROUP SUMMARY TEXT FRS=FILE REPORT SUMMARY TEXT TOT=CALCULATE ACCUMULATE TOTAL Example implementation notes: A file report merge control document is contained entirely on a single page (the first page of the document), and must adhere to one of the structures identified below:
______________________________________
TEXT (TREATED AS RCD)
TEXT
(FRS) STXT
(FRP) TEXT
(FRP) TEXT
(DCG) TEXT (UP TO TWO ALLOWED)
(FRP) TEXT
(RCD) TEXT
(FRP) TEXT
(FRS) STXT
(FRP) TEXT
(DCG) TEXT (UP TO TWO ALLOWED)
(RCD) TEXT
(FRP) TEXT
(DCG) TEXT (UP TO TWO ALLOWED)
(CGS) STXT
(FRP) TEXT
(DCG) TEXT (UP TO TWO ALLOWED)
(FRS) STXT
(FRP) TEXT
(RCD) TEXT
(FRS) STXT
(FRP) TEXT
(DCG) TEXT (UP TO TWO ALLOWED)
(RCD) TEXT
(CGS) STXT (SAME NUMBER AS DCG'S)
(FRP) TEXT
(DCG) TEXT (UP TO TWO ALLOWED)
(RCD) TEXT
(FRS) STXT
(FRP) TEXT
(DCG) TEXT (UP TO TWO ALLOWED)
(CGS) STXT (SAME NUMBER AS DCG'S)
(FRS) STXT
(FRP) TEXT
(DCG) TEXT (UP TO TWO ALLOWED)
(RCD) TEXT
(CGS) STXT (SAME NUMBER AS DCG'S)
(FRS) STXT
(DCG) TEXT (UP TO TWO ALLOWED)
(DCG) TEXT (UP TO TWO ALLOWED)
(RCD) TEXT
(DCG) TEXT (UP TO TWO ALLOWED)
(CGS) STXT (SAME NUMBER AS DCG'S)
(DCG) TEXT (UP TO TWO ALLOWED)
(FRS) STXT
(DCG) TEXT (UP TO TWO ALLOWED)
(RCD) TEXT
(CGS) STXT (SAME NUMBER AS DCG'S)
(DCG) TEXT (UP TO TWO ALLOWED)
(RCD) TEXT
(FRS) STXT
(DCG) TEXT (UP TO TWO ALLOWED)
(CGS) STXT (SAME NUMBER AS DCG'S)
(FRS) STXT
(DCG) TEXT (UP TO TWO ALLOWED)
(RCD) TEXT
(CGS) STXT (SAME NUMBER AS DCG'S)
(FRS) STXT
(RCD) TEXT
(RCD) TEXT
(FRS) STXT
(FRS) STXT
______________________________________
The following definitions apply:
__________________________________________________________________________
TEXT
= ANY VALID TEXT DOCUMENT STRING (NO
LIMIT) WHICH DOES NOT CONTAIN A FILE
REPORT CONTROL INSTRUCTION. INTER-
PRETED AS RECORD DETAIL TEXT WHEN THE
DOCUMENT DOES NOT BEGIN WITH A FILE
REPORT CONTROL INSTRUCTION.
STXT
= ANY VALID TEXT DOCUMENT STRING (NO
LIMIT) WHICH DOES NOT C A FILE REPORT
CONTROL INSTRUCTION, EXCEPT THIS
STRING MAY CONTAIN ONE OR MORE `TOT`
INSTRUCTIONS.
(FRP)
= A `REPORT-LEVEL PREFACE` INSTRUCTION
OF THE FORM `(FRP . . . )`. ONLY ONE OF
THESE IS PERMITTED IN A FILE REPORT
MERGE CONTROL DOCUMENT, AND THIS MUST
BE THE FIRST FILE REPORT CONTROL
INSTRUCTION IN THE DOCUMENT.
(RCD)
= A `RECORD DETAIL` INSTRUCTION OF THE
FORM `(RCD . . . )`. ONLY ONE OF THESE
IS PERMITTED IN A FILE REPORT MERGE
CONTROL DOCUMENT.
(DCG)
= AN X'TH LEVEL (X=1, 2, . . . , M) `DEFINE
CTL GROUP` INSTRUCTION OF THE FORM
`(DCG . . . ,BREAKNAME)`, UP TO TWO MAY
BE SPECIFIED IN A FILE REPORT MERGE
CONTROL DOCUMENT.
(CGS)
= AN X'TH LEVEL (X=1, 2, . . . , M) `CTL
GROUP SUMMARY` INSTRUCTION OF THE
FORM `(CGS . . . )`. IF USED, ONE OF
THESE INSTRUCTIONS IS REQUIRED TO
PAIR WITH EACH SPECIFIED (DCG)
INSTRUCTION.
(FRS)
= A `REPORT-LEVEL SUMMARY` INSTRUCTION
OF THE FORM `(FRS . . . )`. ONLY ONE OF
THESE IS PERMITTED IN A FILE REPORT
MERGE CONTROL DOCUMENT, AND THIS MUST
BE THE LAST FILE REPORT CONTROL
INSTRUCTION IN THE DOCUMENT.
__________________________________________________________________________
As mentioned above, `TOT` instructions may appear only in control group or report summary text-STXT. These instructions are of the form `(TOT . . . , ANN, EXPRESSION EDITCODE)` and, during each generation-time record detail process, the value of <EXPRESSION> is to be added to <ANN>. Compiler processing saves all information that is required for the summing operation. While the invention has been particularly shown and described with reference to a preferred embodiment thereof, it should be understood by those skilled in the art, the certain changes in form and detail may be made therein without departing from the scope of the invention.
|
Same subclass Same class Consider this |
||||||||||
