In a solution globals.js I’m explicitly opening a database like this:
function onSolutionOpen()
{
var suppForm = solutionModel.getForm('SupplierForm');
suppForm.dataSource = 'db:/testdbf/1_pname';
}
I also have a text field on the form which picks up a column in 1_pname.dbf which is fine, except in the situation where I have not first opened 1_pname in Servoy Developer and told it which row is the row_ident.
So my question is: can I programmatically tell Servoy what the row_ident is ?
I take it that’s a no then.
Alan,
We currently have no API for that.
But it should also not be necessary.
Servoy is asking the driver what the pk of the table is, I guess the table is not defined with the right pk.
If the driver does not tell you, then you can do this in developer: mark column as row_ident.
Rob
Thanks Rob.
It’s not a Servoy issue (although it would be nice to have programmatic access to that API), it’s more a combination of the way that my legacy DBF data is named and structured, and limitations of the HXTT DBF driver. What that driver should do with Visual FoxPro data is what the OLE DB driver does - let you either point at a directory full of free DBF tables, or at a .DBC database container. In the case of the latter, it should get the list of owned tables from the DBC and refer to them by their names in the DBC, which are not necessarily the same as the name of the physical disk file name. That’s a thing for HXTT to do, though.