2) COBOL Class 01 - Variable Declaration
2) COBOL Class 01 - Variable Declaration
----------------------------------------------------------------
Intro COBOL Program Structure - Division, Section & Paragraph
1. CODE THE COBOL PGM --> 2. COMPILE THE PGM -LOAD 3. CODE THE TEST
RUNJCL EXECUTE.
VARIBALE -> TEMPORARY MEMORY SPACE -WITHIN THE PGM - USED TO STORE & PROCESS THE
DATA
REAL DATA -> FILE/TABLE**(MILLION RECORDS) -- GET 1 RECORD -> PGM (VARIBALE -
STORE + PROCESS- SEND IT ) --> FILE/TABLE(PROCESSED DATA)
EX:- VAR-A
VAR-B -> WE CANNOT TELL THE TYPE BY NAMES
-> SYSTEM ALSO -> CANNOT DECIDE THE TYPE BY NAME.
LEVEL-NUMBER -> IN COBOL - ALL THE VARIBALE MUST BE PREFIXD WITH A LEVEL NUMBER
-> USED TO TELL THE STRUCTURE OF THE DATA RECORDS
-> 77 -> ONLY ELEMENTARY -> IGNORE IT -> USE ALWAYS 01.
-> 66 * 88 -> LATER.
01 ACCT-DETAILS.
03 ACCT-NUMBER PIC X
03 CUST-NAME PIC X
03 CUST-ADDRESS.
05 CITY PIC X
05 STATE PIC X
05 PINCODE PIC X
03 ACCT-BAL PIC S-9-V
03 ACCT-TYPE PIC X
03 ACCT-OPEN-DATE PIC X
03 ACCT-CLOSE-DATE.
05 YYYY PIC 9
05 MM PIC 9
05 DD PIC 9
03 ACCT-STATUS PIC X
-> DEV-1 -> CODED A PGM P1 -> 2010 IN THE PGM HE DEFINED SOME VAIRBALE..
-> 2023 -> WE JOINED THE PROJECT -> ASKED -ANALYSIS THE PGM P1
-> 2023 -> WE JOINED THE PROJECT -> ASKED -ANALYSIS THE PGM P2
-
-> CLAIM-STATUS -> --EASY TO UNDERSTAND.
3. PIC -> USED TO PROVIDE THE DATA-TYPE & SIZE FOR A ELEMENTARY VARIBALE
|
PICTURE
DATA-TYPE -> TELL -> WHAT KIND OF DATA -IS STORED IN THAT VARIBALE.
NUMERIC -> ALLOW -> 0-9 => ALP -> A-Z SYMBOL ==> ALP=NUM =-> 0-9 & A-
Z -SPACE.
EX:
->NUMERIC: -9
VALUE 123 PIC 9(03) 9 -NUMERIC DATA ,
03 MEMORY ALLOCATION
VALUE +/-123 PIC S9(03) S- SIGEN
NUMBEIC = 9 - 03 MEMORY
VALUE +/-123.45 PIC S9(03)V9(2) S - SIGNED - V-
ASSUMED DECIMAL
-> ALP-NUMERIC
X VALUE ANIL PIC X(04)
VALUE 1234 PIC X(04).
VALUE ANIL1234 PIC X(08)
PONIT#:IF THE DATA IS INVLOVED IN CAL -> THEN IT WILL BE NUMERIC -- IF NOT
ALP-NUMERIC.
->DEVELOP -> CODE THE PGM** -> FOR THEM - PGM IS THE MOST IMPORTANT ->
WRONG
---------
DATA = IS MORE IMPORTANT:
1. ALWAYS INCREASE
2. NO DUPLICATE
POINT#3
DATES** -> SOME THEY ARE DISPLAY
=> X
SOME OF THEM ARE CALUCATION -> AGE OF THE CUSTOMER. , EMI
DUE , POST BILL DATE =>9
============================
COBOL: AS A DEVELOPER:-
2. CALUCATION
EACH DAY -> HAVING 1 CLAIM TO PROCESS -> CAN I DO IT MANUALLY? -> YES
100 YES MANUAL
-
1000000 million -1. MAY BE ISSUE -> TIME CONSUION
MANUL ERROR
-->
-> WE AS HUMAN CAN PROCESS SOME AMT OF DATA
-> AS PROJECT -> DAILY -WE GET MILLION OF RECORD TO PROCESS
-> FOR THIS WE NEED A MACHINE -> MAINFRAME
-> COBOL IS ALWAYS LENGTH -> SMALL LOGIC -> 300 LINES CODE
GOOD PROJECT LEVEL -> 3000 LINE CODE.
DIVISION
SECTION
PARAGRAPHS
STATEMENT --> INSTRUCTION TELLING THE SYSTEM WHAT TO DO.
ADD -STATEMENT
READ FILE -> STATEMENT
EX: ANILPGM1 , ANILPGM2 --> ARE THESE VALID NAME? -> YES
CAN I USE THIS NAMING STYLE IN MY PROJECT ->
NO
-> PROJECT -> APPLICATION-A --> Z1YNnnnn -> NEW PGM -> Z1YN1881 -->
Z1YN0 -> KINDS , Z1YN1.. , Z1YN2..
APP- B --> Z1YEnnnn -> NEW PGM -> Z1YE1881
--> ENVIRONMENT DIVISION:- -> USED TO DEFINE THE FILES REQUIRED IN THE PGM (IF
ANY)
-> IN SOME PGM DO NOT HAVE A FILE -> THIS DIVISION IS OPTIONAL**
VARIBALE: IN THE PGM -> IS TEMP MEMORY SPACE - USED TO STORE AND PROCESS THE
DATA
4. PROCEDURE DIVISION:-
1. CONTAINS THE PGM LOGIC + CAL => TO PROCESS THE DATA
2. IN THIS DIVIISON - WE DO NOT HAVE ANY PRE-DEFINED
SECTION/PARAGRAPHS
3. AS A DEVELOPER -> WE CAN DEFINE OUR OWN SECTION.
->
-> EX: LET US GO TO A MOVIE (NEW MOVIE) -< ALL OF GET THE
SCREEN/AUDIT ->MOVIE START
-> HAPPY / ANGRY -> WHY UR ANGRY? -> MISS THE WHOLE STORY
-->
ID DIVISION. PGM NAME *TITLE
ENVIRONEMENT. FILE NAME (CAST)
DATA DIVISION. VARIBALE NAME (TECH)
--
PROCEDURE DIVISION --> WHOLE STORY - 80% WORK LOAD
- STATMENTS => INSTRUCTION TO
SYSTEM HOW TO PROCESS THE DATA
12-72 -> AREA-B -> CODE THE STATEMENT ( U BREAK A STATEMENT INTO MANY LINES)
1 8 12
ID DIVISION.
PROGRAM-ID. CBLPGM01.
AUTHER. NAME.
DATE-WRITTEN. TODAY.
ENVIRONMENT DIVISION.
INPUT-OUTOUT SECTION.
FILE-CONTROL.
DATA DIVISION.
FILE SECTION.
WORKING-STORAGE SECTION.
LINKAGE SECTION.
PROCEDURE DIVISION.
000-MAIN-PARA.