Updating the reports dictionary is a two-step process. Two steps are necessary because two types of changes can be made that affect reports. The reports themselves can be changed, and the database structure (tables, keys and so on) used by reports also can be changed.
The first step in updating the reports dictionary is similar to updating a forms dictionary. Resources in the reports dictionary are updated to make them compatible with the application dictionary. This process can be started in one of the following ways:
After this portion of the update operation is complete, the compatibility ID in the reports dictionary will be the same as the compatibility ID in the application dictionary. Then the runtime engine will be able to access resources from the reports dictionary.
The second step in updating a reports dictionary is necessary if you have made database changes that can affect reports. For example, assume a field was removed from table A and added to table B. A report that looks in table A for the field won’t be able to find it. The report needs to be updated to look in table B. The second part of the report update process performs these types of updates.
The information necessary to perform the second portion of the report update can’t be derived from your application dictionary. You must supply a text file that contains the instructions describing how to handle each database change.
Contact Dexterity Technical Support for information about how to create this input file for your integration.
The second part of the report update process can be started only by the Dict_UpdateReportsDictionary() function. When you call this function, you can specify the input file that contains information about performing the second part of the report update. If you don’t specify an input file, the second part of the report update performs a simple “cleanup” operation on the reports dictionary.
Because some “cleanup” tasks are performed, it’s a good idea to run the second portion of the report update process, even if you haven’t made any database changes that affect reports.
If you are using a chunk to package your application, you can call the Dict_UpdateReportsDictionary() function from within an installation script that runs after the unchunking process. In this case, you won’t supply the previous version of your dictionary, so this function will simply perform the second portion of the report update. The first portion will have already been performed as a part of the unchunking process.