Is there a tool to copy data from one Topspeed file to another?

Currently I’ve got two versions of an application, one had a temporary key added, sadly due to this, the data file cannot be opened in the other version due to the file version being changed - is there a Topspeed tool which I can use to copy over the data from this new version of the file, to the normal one which didn’t have the key added? The columns are the same - the versions are created by the Data Version Control extension.

You can always write your own utility with valid table definitions for both.

There is TopCopy in your Clarion bin folder. I haven’t used it in 20 years, so don’t really recall it’s capabilities.

TopScan (also in your Clarion bin folder) has an export function. You could export the data from one of the files and the write an import to pull that data into the other file.

perhaps you could ask claude to make you an export tool based on this GitHub - msarson/TpsParser: Reads encrypted and unencrypted TPS files. · GitHub

The DCT has a File Viewer (data base viewer) that compares the disk file format to the DCT format. If different it offers to convert it multiple ways, the easiest is in place. That will spot the missing key and add it by writing a new file

And if writing your own code to copy records from one file to another, then these are valid

File1Prefix:Record :=: File2Prefix:Record

Which is the equivalent of writing

File1Prefix:Id = File2Prefix:Id
File1Prefix:FirstName = File2Prefix:FirstName
File1Prefix:SurName = File2Prefix:SurName

Just remember that BLOB and MEMO data are not inside the RECORD so you have to address those separately.

There is the TopMatch.EXE tool in the Bin folder. It has been there since C6. It is gone in C12. There’s no Help file. I don’t find it in the IDE PDF. Seems like there was a TopSpeed Tools doc that covered TopScan, TPSFix etc.

It looks like it will do what the DCT does and take a TPS File plus an Example TPS and make the file Match the Example. This may be another way to get the Key added to the Older file.