You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It occurs when .Fields and .FieldDefs collections of TDataSet have different member count and type. A typical case when that happens is when calculated or lookup fields are created only in FieldDefs collection.
In general when TFieldDef is created, immediately after that TField is created. But when that`s not the case a "Index out of bounds" exception is raised in methods XMLNodeToDatasetRow and DatasetRowToXMLNode.
I have created a branch with a Delphi project which cloud be used to reproduce the problem. TdxMemData and TClientDataSet are used for comparison.
I had a problem when I used the methods mentioned above with TdxMemData which is in-memory dataset from DevExpress.
Also I have commited a potential fix for the bug.
If you need more information or more tests with different TDataSet descendants, I will provide more ;)
The text was updated successfully, but these errors were encountered:
I have found a bug in OmniXMLDatabase.pas.
It occurs when .Fields and .FieldDefs collections of TDataSet have different member count and type. A typical case when that happens is when calculated or lookup fields are created only in FieldDefs collection.
In general when TFieldDef is created, immediately after that TField is created. But when that`s not the case a "Index out of bounds" exception is raised in methods XMLNodeToDatasetRow and DatasetRowToXMLNode.
I have created a branch with a Delphi project which cloud be used to reproduce the problem. TdxMemData and TClientDataSet are used for comparison.
I had a problem when I used the methods mentioned above with TdxMemData which is in-memory dataset from DevExpress.
Also I have commited a potential fix for the bug.
If you need more information or more tests with different TDataSet descendants, I will provide more ;)
The text was updated successfully, but these errors were encountered: