| Progress Load Utility |
| Progress 8.3x through 9.1x have limited capabilities when loading data into a table using the built in tools. As a DBA and SysAdmin, upgrades become more tedious when new versions of application require loading of table updates. Progress can not, without custom code, load record changes. You can easily load new records, but not delete old ones. This only supports loading of the whole record. Hopefully, this tool will fill the void. It will work on any database and I have used it on Progress 8.3x and I just recently enhanced it using Progress 9.1C. This does not use any code new from Progress versions later than 8.3. More than one database can be connected. It is comprised of a main program and 2 compile on the fly programs. You first choose a database, then a table, options and a load file. You can limit the updates committed using 3 catagories: new, changes and deletions. New and changed records are always checked, but you must choose to check for deletions due to processing time. Committing is optional, but output results are always logged and you can choose where the logs will be written. A log is written containing the new records, changed records (one log for the old records and one for the new), and one for deleted records (if processed). The logs are written in standard Progress export/dump format, so you can load them later using Progress. For those that often load updates to tables, this tool may be a big help. The logs let you see every update that will/could be made to a table when loading records. The files to be loaded must be in standard Progress dump format. By default, I disable load triggers, a simple comment in the sub2 program can change that. I know whether a record is new/changed/deleted by searching using fields from a unique index. If no unique index is defined for a table, this tool will report an error. For example, everytime TRW's AIM product, (now owned by QAD) shipped a new release, it contained the new base table dumps for building a new database. I used this tool to load the changes into our databases. |