I created a custom table. When creating a new table, when is it required to Generate the Table? Also under what circumstances is it necessary to run the Generate Header File option? A report using the custom table seems able to write to a table only when Generate Header File is done.
When creating a custom table in Table Design Aid (TDA), there are design specifications only. When you click save in TDA, the design is saved as specs in the specs folder of the path code and at the same time the header file (.h file) of the table is created in the include folder of the path code in the local workstation.
In order to perform table operations on the custom table such as “Insert”, “Update”, “Delete”, “Select” etc. the table needs to be created in the database. When intially creating and saving a table in TDA, the custom table does not yet exist in the database. To create the table in the database, use the Generate Table option. The Generate Table is a database operation whereby there is a “Drop Table” and a “CREATE TABLE IF NOT EXISTS” command at the database side. The Generate Table option will generate both the table and the table indexes. The existence of the table can be verified via UTB (Universal Table Browser) or in the RDBMS after the Generate Table operation. The Generate Index option will perform a database operation of “Drop Index” and “Create Index” to update the indexes for the table. This option does not generate the table information.
There is no need to do a “Generate Header File” because this is done automatically when doing a SAVE of the table specs in TDA. It is only required to click on “Generate Header File” when there are modifications to the table such as Software Updates or modifications by other developers, a check-out of Get was done in OMW to get the updated specifications of the table and you want to bypass the “Save” operation within TDA.
The purpose of the table header file is for business function use. It is an include file (.h) that defines the structure of the table so the business function developer can access the table using the JDB_OpenTable, JDB_InsertTable, JDB_UpdateTable APIs etc.
To preserve the specifications of the newly created table so that it is included in the package build, then check-in the table using OMW. By checking-in, this will transfer the specs from the local workstation to the database Central Objects.
Depending on the business functions used and event rules within a report, the header file may be required, but the Generate Table step to create the table in the database is definitely required for the report or any process to write to the table