[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference clt::cobol

Title:VAX/DEC COBOL
Notice:Kit,doc,performance talk info-->DIR/KEY=KIT or DOC or PERF_TALK
Moderator:PACKED::BRAFFITT
Created:Mon Feb 03 1986
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:3250
Total number of notes:13077

3218.0. "linage file problem under DEC COBOL on Alpha" by CSC32::E_VAETH (Suffering from temporary brain cramp, stay tuned) Tue Mar 18 1997 13:24

    Hi,
    
    A customer is finding that their linage files do not print correctly
    when created under DEC COBOL on OpenVMS Alpha.  He used the book
    example as a basis for demonstrating the problem.  This program prints
    fine on the VAX when created using VAX COBOL.  On Alpha, the first line
    is printed at the bottom of each page and the rest continues on the
    next page.  Having a footing phrase doesn't change the behavior. 
    
    Is this a problem?
    
    Thanks,
    
    Elin
    
 IDENTIFICATION DIVISION.
 PROGRAM-ID. REPOVF.
 ENVIRONMENT DIVISION.
 INPUT-OUTPUT SECTION.
 FILE-CONTROL.
     SELECT INPUT-FILE ASSIGN TO "INPUT.DAT".
     SELECT REPORT-FILE ASSIGN TO "REPORT.DAT".
 DATA DIVISION.
 FILE SECTION.
 FD INPUT-FILE.
 01 INPUT-RECORD.
     02 I-NAME.
        03 I-FIRST        PIC X(10).
        03 I-MID          PIC X.
        03 I-LAST         PIC X(15).
     02 I-ADDRESS.
        03 I-STREET       PIC X(20).
        03 I-CITY         PIC X(15).
        03 I-STATE        PIC XX.
        03 I-ZIP          PIC 99999.
     02 I-ACCOUNT-NUMBER    PIC X(9).
     02 I-PURCHASE-DATE     PIC XXXXXX.
     02 I-PURCHASE-AMOUNT   PIC S9(6)V99.
     02 I-PURCHASE-DESCRIP  PIC X(20).
 FD REPORT-FILE
     LINAGE IS 58 LINES
*	   WITH FOOTING AT 58
	   LINES AT TOP 4
           LINES AT BOTTOM 4.
 01 PRINT-LINE             PIC X(80).
 WORKING-STORAGE SECTION.
 01 HEAD-1.
     02 H1-LC   PIC 99.
     02 FILLER  PIC X(20) VALUE "XYZ Clothing Store ".
     02 FILLER  PIC X(25) VALUE SPACES.
     02 FILLER  PIC X(6) VALUE "Page: ".
     02 H1-PAGE PIC Z(9).
 01 HEAD-2.
     02 H2-LC   PIC 99.
     02 FILLER  PIC X(20) VALUE "STATEMENT OF ACCOUNT".
     02 FILLER  PIC X(25) VALUE SPACES.
     02 FILLER  PIC X(6) VALUE "Date: ".
     02 H2-DATE PIC X(9).

 01 HEAD-3.
     02 H3-LC   PIC 99.
     02 FILLER  PIC X(6) VALUE "Name: ".
     02 H3-FNAME PIC X(10).
     02 FILLER  PIC X    VALUE SPACE.
     02 H3-MNAME PIC X.
     02 FILLER  PIC X    VALUE SPACE.
     02 H3-LNAME PIC X(15).
     02 FILLER  PIC X(17) VALUE " Account Number: ".
     02 H3-NUM  PIC Z(9).
 01 HEAD-4.
     02 H4-LC   PIC 99.
     02 FILLER  PIC X(9) VALUE "Address: ".
     02 H4-STRT PIC X(20).
     02 FILLER  PIC X    VALUE SPACE.
     02 H4-CITY PIC X(15).
     02 FILLER  PIC X    VALUE SPACE.
     02 H4-STATE PIC XX.
     02 FILLER  PIC X    VALUE SPACE.
     02 H4-ZIP  PIC 99999.
 01 HEAD-5.
     02 H5-LC   PIC 99.
     02 FILLER  PIC X(4) VALUE "Date".
     02 FILLER  PIC X(7) VALUE SPACES.
     02 FILLER  PIC X(6) VALUE "Amount".
     02 FILLER  PIC X(10) VALUE SPACES.
     02 FILLER  PIC X(11) VALUE "Description".
 01 HEAD-6      PIC X(61) VALUE ALL "-".
 01 DETAIL-LINE.
     02 DET-LC  PIC 99.
     02 DL-DATE PIC X(9).
     02 FILLER  PIC X    VALUE SPACE.
     02 DL-AMT  PIC $ZZZ,ZZZ.99-.
     02 FILLER  PIC X    VALUE SPACE.
     02 DL-DESC PIC X(20).
 01 TOTAL-LINE.
     02 TOT-LC  PIC 99.
     02 FILLER  PIC X(25) VALUE "Total purchases to date: ".
     02 TL      PIC $ZZZ,ZZZ,ZZZ.99-.
 01 TOTAL-PURCHASES       PIC S9(9)V99.
 01 PAGE-NUMBER          PIC S9(9).
 01 HOLD-I-ACCOUNT-NUMBER PIC X(9)  VALUE IS LOW-VALUES.
 01 END-OF-FILE          PIC X     VALUE IS "N".
 01 THESE-MANY           PIC 99    VALUE IS 1.

 PROCEDURE DIVISION.
 A000-BEGIN.
     OPEN INPUT INPUT-FILE
         OUTPUT REPORT-FILE.
     MOVE "06-JUL-94" TO H2-DATE.
     PERFORM A100-READ-INPUT UNTIL END-OF-FILE = "Y".
 A050-WRAP-UP.
     CLOSE INPUT-FILE
          REPORT-FILE.
     STOP RUN.
 A100-READ-INPUT.
     READ INPUT-FILE AT END MOVE "Y" TO END-OF-FILE
                         PERFORM A400-PRINT-TOTALS
                         MOVE HIGH-VALUES TO I-ACCOUNT-NUMBER.
     DISPLAY INPUT-RECORD.
     IF END-OF-FILE NOT = "Y"
        AND I-ACCOUNT-NUMBER NOT = HOLD-I-ACCOUNT-NUMBER
              PERFORM A200-NEW-CUSTOMER.
     IF END-OF-FILE NOT = "Y"
        AND I-ACCOUNT-NUMBER = HOLD-I-ACCOUNT-NUMBER
              PERFORM A300-PRINT-DETAIL-LINE.
     MOVE I-ACCOUNT-NUMBER TO HOLD-I-ACCOUNT-NUMBER.
 A200-NEW-CUSTOMER.
     IF HOLD-I-ACCOUNT-NUMBER = LOW-VALUES
           PERFORM A600-SET-UP-HEADERS
           PERFORM A500-PRINT-HEADERS
           PERFORM A300-PRINT-DETAIL-LINE
        ELSE
           PERFORM A400-PRINT-TOTALS
           PERFORM A600-SET-UP-HEADERS
           PERFORM A500-PRINT-HEADERS
           PERFORM A300-PRINT-DETAIL-LINE.
 A300-PRINT-DETAIL-LINE.
     MOVE I-PURCHASE-DATE   TO DL-DATE.
     MOVE I-PURCHASE-AMOUNT TO DL-AMT.
     MOVE I-PURCHASE-DESCRIP TO DL-DESC.
     WRITE PRINT-LINE FROM DETAIL-LINE
                    AT END-OF-PAGE PERFORM A500-PRINT-HEADERS.
     ADD I-PURCHASE-AMOUNT TO TOTAL-PURCHASES.
 A400-PRINT-TOTALS.
     MOVE TOTAL-PURCHASES TO TL.
     COMPUTE THESE-MANY = 25 - LINAGE-COUNTER.
     WRITE PRINT-LINE FROM TOTAL-LINE AFTER ADVANCING THESE-MANY LINES.
     MOVE 0 TO TOTAL-PURCHASES.



 A500-PRINT-HEADERS.
     ADD 1 TO PAGE-NUMBER.
     MOVE PAGE-NUMBER TO H1-PAGE.
     WRITE PRINT-LINE FROM HEAD-1 AFTER ADVANCING PAGE.
     WRITE PRINT-LINE FROM HEAD-2.
     MOVE SPACES TO PRINT-LINE.
     WRITE PRINT-LINE.
     WRITE PRINT-LINE FROM HEAD-3.
     WRITE PRINT-LINE FROM HEAD-4.
     WRITE PRINT-LINE FROM HEAD-5.
     WRITE PRINT-LINE FROM HEAD-6.
 A600-SET-UP-HEADERS.
     MOVE I-FIRST        TO H3-FNAME.
     MOVE I-MID          TO H3-MNAME.
     MOVE I-LAST         TO H3-LNAME.
     MOVE I-ACCOUNT-NUMBER TO H3-NUM.
     MOVE I-STREET       TO H4-STRT.
     MOVE I-CITY         TO H4-CITY.
     MOVE I-STATE        TO H4-STATE.
     MOVE I-ZIP          TO H4-ZIP.
    
    
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
Matt      WSilva          2190 Memorial Drive Clarksville    TN3704312345678901126710000000This is just a test.
T.RTitleUserPersonal
Name
DateLines
3218.1Temporary workaround - compile DEC COBOL /NOVFCPACKED::BRAFFITTWed Mar 19 1997 11:2012
>    fine on the VAX when created using VAX COBOL.  On Alpha, the first line
>    is printed at the bottom of each page and the rest continues on the
>    next page.  Having a footing phrase doesn't change the behavior. 
    
    I duplicated this behavior with DEC COBOL /VFC.
    
    As a temporary workaround, have the customer compile /NOVFC with DEC
    COBOL.  I was able to produce results which matched VAX COBOL for this
    program with DEC COBOL's /NOVFC.
    
    We'll post a note here when we understand what is causing this
    difference between DEC COBOL /VFC and VAX COBOL.
3218.2Thanks, I'll have the customer try /NOVFCCSC32::E_VAETHSuffering from temporary brain cramp, stay tunedWed Mar 19 1997 14:040