CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file ·...

34
CPSC3111/CISM3111 COBOL Structured COBOL Programming Text: murach’s structured COBOL Authors: Murach, Prince, Menendez

Transcript of CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file ·...

Page 1: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

CPSC3111/CISM3111 COBOL

Structured COBOL ProgrammingText: murach’s structured COBOLAuthors: Murach, Prince, Menendez

Page 2: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

What is a Computer?Components of a Computer Input Unit(s); Keyboard, tape, disks Output Unit(s); CRT, tape, disks Memory (Storage) units [Addresses] Control Unit (Executes Instructions) Arithmetic/Logic Unit (Math and Logic) Only ‘understands’ machine language

Page 3: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

Hardware / SoftwareHardware: Physical equipmentSoftware: Programs, commands, etc. System: O/S, compilers, utilities, etc. Application: User or third party supplied. Languages: Assembler, Basic(VB), Fortran,

RPG, Easytrieve, C, C++, C#, Ada, Java, … Compiler’s job - translate ‘source’

language to machine language (or ‘byte’ code)

Page 4: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

Online vs InteractiveOff-line = batch Local Batch Remote BatchOnline = Interactive Many users with terminals (PC’s) Can be either local or remote Single/Multiple User - Timesharing

Page 5: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

Data OrganizationBit - Binary digIT - [on/off] or [1/0]Character - byte (8 Bits)Field - One or more Bytes (Characters)Record - One or more FieldsFile - One or more RecordsDatabase - One or more Files Usually contains ‘metadata’

Page 6: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

Report ComponentsPage HeadingColumn HeadingsReport Body Possibly with subtotals, etc.Summary Final totals, summary totals, etc.

Page 7: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

Program DesignProgram Sequence of instructions describing

actions to be taken by the computerFlowchart Graphical description of program logic Uses rectangles, diamonds, ovals, etcPseudocode Symbolic representation of program logic More ENGLISH-like

Page 8: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

Data Information NeededType and SizeTypes Alphabetic (Seldom used = A) Alphanumeric (X) Numeric (Sign and Decimal)

BinaryNumericPacked NumericFloating Point, etc. (Compatibility)

Page 9: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

Program DevelopmentDefine problemDesign test dataDesign programCode programCompile programTest programDocument Program

Page 10: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

Identifier Rules30 Character MaximumA-Z, a-z, 0-9, ‘-’ Characters‘-’ not first or last characterUsually at least 1 alphabetic

Page 11: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

‘CARD’ FORMAT01 - 06 Line Numbers (XNU)07 Comment / Debug08 - 11 Margin ‘A’12 - 72 Margin ‘B’73 - 80 Identification (XNU)

Page 12: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

COBOL DivisionsIDENTIFICATION DIVISION.ENVIRONMENT DIVISION.DATA DIVISION.PROCEDURE DIVISION.

Divisions can be divided into SECTIONSSections can be divided into PARAGRAPHSParagraphs are composed of SENTENCES

Page 13: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

IDENTIFICATIONIDENTIFICATION DIVISION.PROGRAM-ID. PROG1.

All other entries are obsoleteAn ‘*’ in cc07 can be used (Comment)

Page 14: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

ENVIRONMENTENVIRONMENT DIVISION.INPUT-OUTPUT SECTION.FILE-CONTROL.SELECT INPUT-FILE

ASSIGN TO MYINFILE.SELECT PRINT-FILE ASSIGN TO MYREPORT.

Page 15: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

ENVIRONMENT (SELECTS)SELECT PRINT-FILE ASSIGN TO “\RMC\DATA\INPUT.DAT”.(For PC Files)

SELECT PRINT-FILE ASSIGN TO PRINTER-QPRINT.(For AS400 Files)

Page 16: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

DATADATA DIVISION.FILE SECTION.FD INPUT-FILE.01 INPUT-REC. 10 FILLER PIC X(80).FD PRINT-FILE.01 PRINT-REC. 10 FILLER PIC X(132).

Page 17: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

WORKING-STORAGEWORKING-STORAGE SECTION. Program’s ‘scratchpad’ LEVEL NUMBERS 01-49 01 STARTS IN COLUMN 8 02-49 COLUMN 12 AND UP

Usually use 05, 10, 15, 20,… EACH 01 IS A NEW RECORD All fields must be specified

Page 18: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

PROCEDUREPROCEDURE DIVISION.010-START-HERE.(INITIALIZATION)

(PROCESS CONTROL LOOP)

(TERMINATION)

Page 19: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

OPENOPEN INPUT file-nameOPEN OUTPUT file-name(Gets files ready for processing)

Page 20: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

ACCEPTACCEPT identifier FROM DATE identifier will contain YYMMDDACCEPT identifier FROM TIME identifier will contain HHMMSSMS (Used to get date and time)ACCEPT identifier [options] Gets data from keyboard

Page 21: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

MOVEMOVE identifier-1 TO identifier-2 (Alpha - Left Just. - Space Filled) (Numeric - decimal aligned) (Edited - follows edit characters)

Page 22: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

READREAD file-name [into WS-name] AT END ANY IMPERATIVE STATEMENT(S)END-READREAD INPUT-FILE INTO WS-IN-REC AT END MOVE “YES” TO EOF-FLAGEND-READ

Page 23: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

WRITE (Generic)WRITE record-name [FROM ws-name] AFTER ADVANCING identifier LINESEND-WRITE

WRITE PRINT-REC FROM WS-PRINT-REC AFTER ADVANCING WS-SPACINGEND-WRITE

Page 24: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

WRITE (New-Page)MOVE SPACES TO PRINT-RECWRITE PRINT-REC AFTER ADVANCING PAGEEND-WRITE (Used to start new page for heading.)

Page 25: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

PERFORMPERFORM Paragraph-namePERFORM Paragraph-name UNTIL Condition

PERFORM 100-READ-INPUTPERFORM 300-PROCESS-DATA UNTIL EOF-FLAG = “YES”

Page 26: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

ADDADD literal TO identifier-1ADD 1 TO REC-COUNT

ADD identifier-1 TO identifier-2ADD WS-SPACING TO WS-LINES

Page 27: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

Decisions - SimpleIF Condition-1 True StatementsEND-IF

Page 28: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

Relational Conditions> GREATER THAN< LESS THAN= EQUAL TO>= GREATER OR EQUAL<= LESS OR EQUALNOT can be used with all of the above

Page 29: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

Decisions - ELSEIF condition-1 True StatementsELSE False StatementsEND-IF

Page 30: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

Decisions - ExamplesIF HOURS-WORKED > 40 PERFORM 350-CALC-OVERTIMEELSE PERFORM 360-CALC-REGTIMEEND-IF

Page 31: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

Decisions - complexIF complex-condition True statementsELSE False statementsEND-IF

Page 32: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

Complex - conditionsTwo or more simple conditions connected with ‘AND’ or ‘OR’.IF (DEPARTMENT = 234 AND HIRE-DATE < “96-06-01”) ADD 1 TO OVER-5-YEARSEND-IF

Page 33: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

CLOSECLOSE file-nameCLOSE INPUT-FILE (Terminate file processing.)

Page 34: CPSC1111 Cobol - Columbus State Universitycsc.columbusstate.edu/rogers/COBOL-I.ppt · PPT file · Web view · 2015-01-19CPSC3111/CISM3111 COBOL Structured COBOL Programming Text:

GOBACK / STOP RUNGOBACK. (Returns to ‘calling’ entity.)

STOP RUN. (Returns to Operating System)