COBOL (Common Business Oriented Language) – 12-15 sessions
--------
Intro COBOL Program Structure - Division, Section & Paragraph
-- DONE
Variable Declarations - Level Numbers, PIC clause,
Data types & Size -- DONE
Input-Output & Arithmetic - VALUE CLAUSE, Accept &
Display - Compute -- DONE
Data Movement Verbs - Simple Move, Move with Of
clause, Group Move & CORR -- DONE
Conditional Statements - IF & Evaluate Statement –
Continue & Next Sentence -- DONE
Control Sequence Verbs - Perform ,STOP RUN, GOBACK,
EXIT, EXIT PROGRAM, GOTO -- DONE
File Handling - OPEN, READ, WRITE, REWRITE,
DELETE & CLOSE
Memory Saving - Usage Clause, 88 Level
Number, Redefines & Renames 66 LEVEL
Array-Occurs table - Search & Search All - PERFORM
VARYING
Sub-Program - CALL Statement
(Static & Dynamic Call)
String Handling Verbs - String, Unstring, Inspect &
Referential
===================================================================================
==========================
1. DISPLAY PGM 2. ADDPGM01 -ABEND 3. CLAIM DATA 10 VARIABLE. 4. CUSTPGM3
5. CARDPGM1 6. ACCTPGM1, ACCTPGM2
7. ACCTPGM1 -2 FILE. 8. ASSIGMENT-(YOUTUBE CHANNEL-COBOL-11)
===================================================================================
==========================
COBOL CLASS 12:-
Memory Saving
- Usage Clause, 88 Level Number, Redefines & Renames 66 LEVEL
=====================
DATA POINT VIEW:-
DATA SECURITY -- MEMORY SAVINGS
HOW TO SAVE MEMORY SPACE & DATA SECURITY:
DATA -> 2 TYPES 1. NUEMRIC -- 9(4)
-- COMP & COMP-3 - READ -> HEX ON & FILE TOOL + COPYBOOK
2. ALP-NUMERIC -- X(4).
-- LIMIT/UNLIMITED - READ -> 88 LEVEL
NUMERIC:
01 VAR1 PIC S9(04). 1. READABLE
2. BYTES = 4 -BYTES
USAGE CLASUE: - WE CAN SECURE THE DATA & SAVE THE MEMORY SPACE.
-> USAGE -> WE CAN TELL THE SYSTEM IN DATA FORMAT WE WANT TO STORE IN
MEMORY
3 TYPES OF FORMAT
1. CHARACTER FORMAT
--- BY DEFAULT
2. BINARY FORMAT
3. HEX DECIMAL/PACKED DECIMAL FORMAT
>> CHARACTER FORMAT:
1. MEMORY UNIT -> BYTES - FOR EACH DIGIT = 1 BYTES
-- 9(04) = 4 BYTES
2. SYNTAX: 03 ACCT-BAL PIC 9(05) USAGE CHARATER.
03 ACCT-BAL PIC 9(05).
-- BY DEFAULT CHAR FORMAT
3. DATA STORED IN FILES ARE IN READABLE FORMAT (THIS IS NOT GOOD)
>> BINARY FORMAT: (0,1)
1. MEMORY UNIT -> BITS 1 BYTE = 8 BITS
MEMORY CAL: S9(01) - S9(04) == 2 BYTES
S9(05) - S9(09) == 4 BYTES
S9(10) - S9(18) == 8 BYTES
2. SYNTAX:
03 ACCT-BAL PIC S9(05) COMP.
3. DATA IS SECURE/NON-READABLE FORMAT.
>> PACKED DECIMAL/(HEX DEICMAL): (0,1,...9,A,B...F)
1. MEMORY UNIT --> NIBBLE 1 BYTE = 2 NIBBLE -> STORE 1
DIGIT IN 1 NIBBLE -> 2 DIGIT = 1 BYTE
MEMORY CAL -> S9(N) - N - EVEN = N/2 + 1
ODD = (N+1)/2
2. SYNTAX:
03 ACCT-BAL PIC S9(05) COMP-3.
3. DATA IS SECURE / NON-READABLE FORMAT
ON MEMORY -CHAR vs COMP vs COMP-3
---
CHAR(BYTES) COMP(BITS) COMP-3(NIBBLE)
S9(10) 10 8 6
- BY USING - COMP OR COMP-3 -> MEMORY SAVING -> 2-4 BYTES PER RECORD
DATA SECURITY? -> USING COMP OR COMP-3 -> WE CAN SECURE THE DATA ,
ITS NOT IN READABLE FORMAT -WHEN U OPEN THE FILE.
BUT --> USER -- HE WANT TO SEE THE DATA AND ANALYSIS
IT - U WANT TO SEE THE DATA - ANALYSIS
== ANIL -> HOW I CAN READ IT::
COMP-3: 2 WAYS 1. COPYBOOK + FILE TOOL
=> CAN I BUSINESS USER - LEARN THE TOOL??
2. HEX ON COMMAND ---> 3.4 ->
OPEN THE FILE -> HEX ON
12345 -
COMP-3 > .... -> HEX ON --> 2 LINE FORMAT - 135
24? C-+ , D>- ,
F=UNSIGN
COMP 1 WAY 1. COPYBOOK + FILE TOOL
COMP-3 vs COMP = WHICH I SHOULD USE -> COMP-3 IS ONLY ONE WE USE
IN THE PROJECT (DATA VAIRBALE ).
COMP -->
LENGTH VARIABLE
==
ALP-NUMERIC: HOW TO SECURE /SAVE MEMORY OF ALP-NUMERIC DATA
1. 2 KIND OF ALP-NUMERIC IN PROJECT
1. LIMITED VALUE TYPE FLD --ALSO
THESE CAN BE SECURE/SAVE MEMORY
2. UNLIMITED VALUE TYPE FLD --
UNSECURE...
-> ACCOUNT-TYPE : LIMITED > SAVING ,
CURRENT , FD , DEMAT , LOAN , CREDIT ..1 OR 2 => LIMITED -WE CAN LIST
-> CUST_NAME : UNLIMITED > !!!
--> ACCT-STATUS , CLAIM-STATUS , POLICY-STATUS
--> LIMIT
--> ACCT-TYPE , CLAIM-TYPE , POLICY-TYPE
--> LIMIT
CITY , CONUNTRY , PINCODE , ADDRESS
--> UNLIMIT
HOW TO SECURE THE LIMITED TYPE DATA VARIABLE:
EX: -> AMAZON --> RAKESH - 45K - LAPTOP
AFTER THE ORDER IS PLACED -> RAJESH 1. RELAX LET THE
PRODUCT COME
2. TRACK THE
ORDER - EVER HOUR
ORDER STATUS: SHIPPED , RECEVIED , IN-TRANSIT , OUT-OF-
DELIVERY , DELIVERY
S R I O
D
ORDER STATUS ? 1. BUSINESS FLD
2. LIMITED
PGM -> 03 ORDER-STATUS PIC X(15).
OR
03 ORDER-STATUS-CODE PIC X(01).
1. SECURE THE DATA
2. SAVE THE MEMORY
3. DATA LESS READABLE FOR USER AND URSELF..
FILE-F1: ORDER FILE
O1111,ANIL KUMAR,LAPTOP,45000.00,OUT-FOR-DELLIVERY
O1111,ANIL KUMAR,LAPTOP,45000.00,OUT-FOR-DELLIVERY
FILE-F2 : ORDER FILE
O1111,ANIL KUMAR,L001,......,O
O1111,ANIL KUMAR,L001,......,O == THIS IS BETTER 1.
SECURING THE DATA
2. SAVING THE MEMORY SPACE.
O3333,ANIL KUMAR,L001,......,X
O1111,ANIL KUMAR,L001,......,1
--> WHAT IS X .. WHAT IS 1??
EX: IN PGMP1 --> IF ORDER-STATUS-CODE = '2' --WHAT
IS 2 HERE
DO THIS???
HOW TO READ THESE DATA?? -- TO MAKE THE DATA CODE MORE READABLE -> 88 LEVEL
NUMBER
88 LEVEL NUMBER: 1. USED TO MAKE THE DATA MORE READABLE
2. NOT USED FOR MEMORY SPACE**
3. DO NOT USE A PIC (NO PIC - NO MEMORY ALLOCATE --
NO MEMORY SAVING)
4. USED IN PGM AS CONDITION NAME CONDITION (OPTIONAL)
03 ORDER-STATUS-CODE PIC X(1).
88 ORDER-RECEVIED VALUE 'R'.
88 ORDER-CANCALLED VALUE 'X'.
88 ORDER-RETURNED VALUE '1'.
88 ORDER-MISSING VALUE '2'.
EX: IN PGMP1 --> IF ORDER-STATUS-CODE = '2' -U
NEED TO GO OPEN THE COPYBOOK , CHECK 88 LEVEL
DO THIS???
EX: IN PGM P2 -> IF ORDER-MISSING -CONDITION
NAME
DO THIS