The METHOD-ID statement in object-oriented COBOL defines a method within a class or interface. It specifies the method name, parameters, and implementation, allowing objects to perform specific operations.
The METHOD-ID statement follows a specific structure:
123456789METHOD-ID. method-name. DATA DIVISION. LINKAGE SECTION. 01 parameter1 PIC X(10). 01 parameter2 PIC 9(5). PROCEDURE DIVISION USING parameter1, parameter2. * Method implementation EXIT METHOD. END METHOD method-name.
Methods can have parameters and return values.
12345678METHOD-ID. GetName. DATA DIVISION. LINKAGE SECTION. 01 return-name PIC X(30). PROCEDURE DIVISION RETURNING return-name. MOVE employee-name TO return-name EXIT METHOD. END METHOD GetName.
12345678910METHOD-ID. CalculateSalary. DATA DIVISION. LINKAGE SECTION. 01 hours-worked PIC 9(3). 01 hourly-rate PIC 9(3)V99. 01 total-salary PIC 9(6)V99. PROCEDURE DIVISION USING hours-worked, hourly-rate RETURNING total-salary. COMPUTE total-salary = hours-worked * hourly-rate EXIT METHOD. END METHOD CalculateSalary.
Here are some practical uses of METHOD-ID in object-oriented COBOL:
12345678910111213141516171819202122232425262728CLASS-ID. Employee. ENVIRONMENT DIVISION. CONFIGURATION SECTION. OBJECT-COMPUTER. DATA DIVISION. WORKING-STORAGE SECTION. 01 employee-name PIC X(30). 01 employee-id PIC 9(6). 01 employee-salary PIC 9(7)V99. PROCEDURE DIVISION. METHOD-ID. SetName. DATA DIVISION. LINKAGE SECTION. 01 new-name PIC X(30). PROCEDURE DIVISION USING new-name. MOVE new-name TO employee-name EXIT METHOD. END METHOD SetName. METHOD-ID. GetSalary. DATA DIVISION. LINKAGE SECTION. 01 return-salary PIC 9(7)V99. PROCEDURE DIVISION RETURNING return-salary. MOVE employee-salary TO return-salary EXIT METHOD. END METHOD GetSalary. END CLASS Employee.
Methods for getting and setting employee data.
123456789101112131415161718192021METHOD-ID. Add. DATA DIVISION. LINKAGE SECTION. 01 a PIC 9(5). 01 b PIC 9(5). 01 result PIC 9(6). PROCEDURE DIVISION USING a, b RETURNING result. COMPUTE result = a + b EXIT METHOD. END METHOD Add. METHOD-ID. Multiply. DATA DIVISION. LINKAGE SECTION. 01 a PIC 9(5). 01 b PIC 9(5). 01 result PIC 9(10). PROCEDURE DIVISION USING a, b RETURNING result. COMPUTE result = a * b EXIT METHOD. END METHOD Multiply.
Mathematical operation methods.
1. What is the primary purpose of the METHOD-ID statement in COBOL?
2. In which type of COBOL is METHOD-ID used?
3. What sections can a METHOD-ID contain?
4. How do you pass parameters to a method?
5. What is the difference between a method and a paragraph?