Goldstar Software Utilities: DXUtil
Pervasive DataExchange Maintenance Tool
The DXUtil tool was created to address specific needs of DataExchange users. The current version supports six key functions needed in a DataExchange environment that are otherwise not possible or difficult to accomplish with existing tools.
The first function of DXUTIL is the CLONE functionality. Similar to BUTIL -CLONE, the DXUtil tool improves on BUTIL by adding the ability to create a file on top of itself, effectively blanking the file's records. This can be helpful when blanking a PDC table to reset a file needing re-replication. Additionally, DXUtil gives you the ability to create the cloned file in any file version (currently 5.x through 9.5) supported by your engine. We've been wanting this feature from BUTIL for years!
The next three functions of DXUtil are similar in function to the BUTIL functions: RECOVER, SAVE, and LOAD. The DXUtil versions of these functions also export (and subsequently reload) the system data values from the data file. When rebuilding data files that may have been corrupted with BUTIL, you end up with a whole new set of system data values, which then requires you to reinitialize the PDC and re-run DXSyncTables, then replicate the entire database across the link. By rebuilding the files with DXUtil, you can maintain your existing system data values, eliminating the need to perform manual steps to re-sync the data. The /I and /J flags from BUTIL are also supported here for improved recovery of damaged files.
Ever need to force re-replication of a single file? Need to replicate changes made to a file off-line by the application vendor? Instead of blanking the PDC, you can use the UPDATE function, which tells DXUtil to force a database-level update to every record in the specified database file. This causes all records to be touched, and subsequently marked for replication in the next replication cycle. This function is safe to run in just about any environment, though it should be run during period of low utilization, both to improve performance and to avoid locks from other processes.
Another function, FORCE, tells DXUtil to forcibly update a specified PDC table with new LastModified timestamps. While being less "safe" than the UPDATE option (since it cannot run while replication is running), it is actually faster than the UPDATE since it hits JUST the PDC table.
The last two functions of DXUtil provide access to the Btrieve file operations RENAME and DELETE. These can be useful if you need to rename or delete a file, but you don't have OS level access to the folder in question.
DXUtil can be purchased as a single-DX license or as a site license. We can also provide licensing information for developers or consultants if you are interested in including DXUtil for your customers. Contact us for details!