Halide
12-13-2002, 02:01 PM
Ok, here's some code from my 1st semester in cobol *GASP*
I was thinking...this looks a little verbose for what I need it to do. It's kind of like a "stack" of "levels" and I think there would be a way to simplify the code. Of course, it might be easier in another language :)
FUN-PROCESS-RECS.
ADD 1 TO WS-REC-CT.
EVALUATE TRUE
WHEN FIRST-TIME = 'Y'
PERFORM FUN-DISTR-BREAK-START
PERFORM FUN-COUNTY-BREAK-START
PERFORM FUN-CITY-BREAK-START
MOVE 'N' TO FIRST-TIME
WHEN DISTR-IN NOT = WS-HOLD-DISTR
PERFORM FUN-CITY-BREAK-END
PERFORM FUN-COUNTY-BREAK-END
PERFORM FUN-DISTR-BREAK-END
IF EOF = 'N'
PERFORM FUN-DISTR-BREAK-START
PERFORM FUN-COUNTY-BREAK-START
PERFORM FUN-CITY-BREAK-START
END-IF
WHEN COUNTY-IN NOT = WS-HOLD-COUNTY
PERFORM FUN-CITY-BREAK-END
PERFORM FUN-COUNTY-BREAK-END
IF EOF = 'N'
PERFORM FUN-COUNTY-BREAK-START
PERFORM FUN-CITY-BREAK-START
END-IF
WHEN CITY-IN NOT = WS-HOLD-CITY
PERFORM FUN-CITY-BREAK-END
IF EOF = 'N'
PERFORM FUN-CITY-BREAK-START
END-IF
END-EVALUATE.
ADD CONSTR-AMT-IN TO WS-CITY-TOTAL.
IF WS-LINE-CT > WS-LINES-PER-PAGE
PERFORM FUN-WRITE-HEADERS
END-IF.
Any comments on how crappy my coding is... :eh:
I was thinking...this looks a little verbose for what I need it to do. It's kind of like a "stack" of "levels" and I think there would be a way to simplify the code. Of course, it might be easier in another language :)
FUN-PROCESS-RECS.
ADD 1 TO WS-REC-CT.
EVALUATE TRUE
WHEN FIRST-TIME = 'Y'
PERFORM FUN-DISTR-BREAK-START
PERFORM FUN-COUNTY-BREAK-START
PERFORM FUN-CITY-BREAK-START
MOVE 'N' TO FIRST-TIME
WHEN DISTR-IN NOT = WS-HOLD-DISTR
PERFORM FUN-CITY-BREAK-END
PERFORM FUN-COUNTY-BREAK-END
PERFORM FUN-DISTR-BREAK-END
IF EOF = 'N'
PERFORM FUN-DISTR-BREAK-START
PERFORM FUN-COUNTY-BREAK-START
PERFORM FUN-CITY-BREAK-START
END-IF
WHEN COUNTY-IN NOT = WS-HOLD-COUNTY
PERFORM FUN-CITY-BREAK-END
PERFORM FUN-COUNTY-BREAK-END
IF EOF = 'N'
PERFORM FUN-COUNTY-BREAK-START
PERFORM FUN-CITY-BREAK-START
END-IF
WHEN CITY-IN NOT = WS-HOLD-CITY
PERFORM FUN-CITY-BREAK-END
IF EOF = 'N'
PERFORM FUN-CITY-BREAK-START
END-IF
END-EVALUATE.
ADD CONSTR-AMT-IN TO WS-CITY-TOTAL.
IF WS-LINE-CT > WS-LINES-PER-PAGE
PERFORM FUN-WRITE-HEADERS
END-IF.
Any comments on how crappy my coding is... :eh: