In this topic, we described about the below sections -
Why Data item?
In every language, the program processes the input data to get the desired outputs. The data generally stores in the memory location and can’t be processed directly in the program.
So, the program requires some pointers to map the data from the memory location. COBOL uses the data items that can point the data from the memory location. These data items should declare in the program before using to process the data.
What is Data item?
Data item holds the data that process in the application programs. Data item is a data unit that require one or several bytes or words to represent an entity.
How to declare data item?
The data item declaration is different from programming language to programming language. The most used data item declaration in COBOL language is below –
The declaration has the below components –
- Level number - The level number specifies the hierarchy or levels of data entries/items.
- Data-item - Variable is a name used to identify the memory location where the program writes, retrieves the data while processing.
- REDEFINES Clause - The REDEFINES clause allows to use multiple data description (data item) entries to describe the same storage area.
- BLANK WHEN ZERO Clause - This clause specified only for elementary item where its picture clause defined as category numeric-edited or numeric without the symbol S or *.
- JUSTIFIED Clause - The JUSTIFIED clause overrides standard positioning rules for category alphabetic or alphanumeric.
- OCCURS Clause - OCCURES clause specifies the number that represents how many times the data item repeated in the table.
- PICTURE Clause - PICTURE clause specifies the characteristics of the data items. i.e. data item type, length etc,.
- Data Type - Data type describes the data items characteristics that are declared in the program.
- SIGN Clause - The SIGN clause specifies the position and representation mode of the sign.
- SYNCHRONIZED Clause - Specifies the alignment of an elementary item on a natural boundary in storage.
- USAGE Clause - The USAGE clause specifies the format how the data is stored in memory.
- VALUE clause - Specifies the initial values of a data item or the values associated with a condition-name.
What are the types of Data items?
Based on the level numbers, the data items divided into three categories -
- Individual data item
- Group data item
- Elementary data item
Individual data item -
Individual data item is a data-item that is not part of the group data item. Individual data item always have a data-name-1, picture clause and no sub items. Individual data item name should be unique in a program or in all communicating programs(calling/called). Individual data item level numbers are from 01 to 49.
Group data item -
Group data item is a data-item that has the sub items. Group data item didn’t have a data-name-1 and picture clause. Group data item name should be unique in a program or in all communicating programs(calling/called). Group data item level numbers are from 01 to 48.
Elementary data item -
Elementary data item is a data item which is under the group data item. Elementary data item has a data-name-1 and picture clause. Elementary data item may not require to be unique and can be same under different group data item. The elementary data items under the different group data item can refer with OF keyword followed with Group item name. Elementary data item level numbers are from 02 to 49.
Practical Example -
Scenario - Below example describes how to declare data items in the program.
----+----1----+----2----+----3----+----4----+----5----+----6----+----7-- ***************************** Top of Data ****************************** IDENTIFICATION DIVISION. PROGRAM-ID. DECLDI. AUTHOR. MTH. DATA DIVISION. WORKING-STORAGE SECTION. *INDIVIDUAL VARIABLE / DATA ITEM 01 WS-LEVEL01 PIC 9(03) VALUE 128. *GROUP VARIABLE / DATA ITEM 01 WS-GROUP. *ELEMENTARY VARIABLE / DATA ITEM 05 WS-ELEM1 PIC 9(03). 05 WS-ELEM2 PIC 9(03). PROCEDURE DIVISION. DISPLAY "INDIVIDUAL VARIABLE VALUE: " WS-LEVEL01. MOVE 128 TO WS-ELEM1 MOVE 256 TO WS-ELEM2. DISPLAY "ELEMNTARY VARIABLE1 VALUE: " WS-ELEM1. DISPLAY "ELEMNTARY VARIABLE2 VALUE: " WS-ELEM2. DISPLAY "GROUP VARIABLE VALUE: " WS-GROUP. STOP RUN. **************************** Bottom of Data ****************************
Explaining Example -
In the above example, WS-LEVEL01 is the individual variable or data item. WS-GROUP is the group variable or data item that contains two elementary items. WS-ELEM1 & WS-ELEM2 are the elementary variable or data item under the group variable WS-GROUP.
WS-LEVEL01, WS-ELEM1 and WS-ELEM2 displays the values assigned to them. WS-GROUP variable displays the WS-ELEM1 and WS-ELEM2 variables data together one after the other.