Before you can compile and run your new program, you need to add code that declares the table, provides a COBOL record to receive the data, and provides a COBOL record for indicator variables. You can use OpenESQL Assistant to generate a copybook that contains all of this code and an INCLUDE statement to call the copybook. You can also use the OpenESQL Assistant to embed the INCLUDE statement into the program.
You can generate a copybook using the Host Variable Declarations feature on the Auxiliary Code tab of the OpenESQL Assistant.
The default name of the copybook is tablename.cpy, which in this case is EMP.cpy.
*> ------------------------------------------- *> COBOL HOST VARIABLES FOR TABLE EMP *> ------------------------------------------- 01 EMP-EMPNO STRING. 01 EMP-FIRSTNME STRING. 01 EMP-MIDINIT STRING. 01 EMP-LASTNAME STRING. 01 EMP-WORKDEPT STRING. 01 EMP-PHONENO STRING. 01 EMP-HIREDATE type System.DateTime. 01 EMP-JOB STRING. 01 EMP-EDLEVEL BINARY-SHORT. 01 EMP-SEX STRING. 01 EMP-BIRTHDATE type System.DateTime. 01 EMP-SALARY DECIMAL. 01 EMP-BONUS DECIMAL. 01 EMP-COMM DECIMAL. *> ------------------------------------------- *> COBOL INDICATOR VARIABLES FOR TABLE EMP *> ------------------------------------------- 01 EMP-WORKDEPT-NULL BINARY-SHORT. 01 EMP-PHONENO-NULL BINARY-SHORT. 01 EMP-HIREDATE-NULL BINARY-SHORT. 01 EMP-JOB-NULL BINARY-SHORT. 01 EMP-EDLEVEL-NULL BINARY-SHORT. 01 EMP-SEX-NULL BINARY-SHORT. 01 EMP-BIRTHDATE-NULL BINARY-SHORT. 01 EMP-SALARY-NULL BINARY-SHORT. 01 EMP-BONUS-NULL BINARY-SHORT. 01 EMP-COMM-NULL BINARY-SHORT.
On the Auxiliary Code tab, you should see that OpenESQL Assistant has also generated an INCLUDE statement to call the copybook from the program. You need to embed the generated INCLUDE statement into your program.
You can see that the generated code now appears in Program1.cbl.
When you run this application, you want to be able to see the results of the query as easily as you can see them on the Results tab in the OpenESQL Assistant. To achieve this, you need to add some code to the program that formats SALARY data, and code that sends all data to the console in a readable format.
01 EDIT-PAY PIC Z,ZZ99.99.
IF SQLCODE=0
MOVE EMP-SALARY TO EDIT-PAY
DISPLAY 'ROW FOUND'
with
DISPLAY 'NAME: ' EMP-LASTNAME ', ' EMP-FIRSTNME ' SALARY: ' EDIT-PAY UPON CONSOLE