John,
I don't know how much of a VFP perspective I have ... haven't used it for applications in 5 years. <g>
As far as change tracking goes, in the app we had been working on, we were only worried about row-level change tracking and not field-level ... but there is no reason one could not do field-level change tracking with only some minor changes.
Currently, a call to MyDataSet.GetChanges() returns a DataSet that contains only the changed rows. This could easily be modified to check on a field-by-field basis to return only changed fields in changed rows. Look at the following code snippet:
There's no modified property for DataColumn, but you can still easily find the changed columns like this:
for (int i=0; i < MyTable.Columns.Count; i++)
{
if (!row[i, DataRowVersion.Current].Equals(row[i, DataRowVersion.Original]))
{
// it's changed, process it here
}
}
Easy enough to create a method based on the above that will return you what you want.
What we then do is use a DataSet.GetXml() to get the XML string and pass it through a Web Service to the backend where it gets re-serialized back into a DataSet and processed.
What else would you like to know? =0)
~~Bonnie
>Walter,
>
>Bonnie B seems very smart and obviously is making full use of the typed dataset. It is a shame she is so busy or we could ask her for a mini-tutorial from a VFP perspective on the typed dataset and how she is managing field-level change tracking, something that will be of interest to many current VFP developers.