Problem with Master/Detail tables



Hello everybody.
I use Delphi 2006, Access 2003, ADO. Provider is Microsoft.Jet.OLEDB.4.0.
I'm writing a stand alone application that uses two tables with
master/detail relationship.
I decided to use TADODataset. CursorLocation is clUseClient and CursorType
is ctStatic.
In the AfterOpen event of both ADODatasets I set
ADODataset.Properties['Update Criteria'].Value := adCriteriaKey;
Master primary key is based on two fields: Date (that is ftDateTime) and
Time (ftString).
Detail table contains the same two fields (Date and Time) and an index based
on those fields.
Master/detail relationship is consequently based on Date and Time.
In Access I set up the relation and I set also the referential integrity
with cascading update and cascading delete.
Everything worked fine during all the tests.
But one day I had to change the Date value of a record in the Master table
and here is my problem.
Date field in Detail table is NOT updated and the corresponding record
disappears from detail grid until I move back to the old Date value in the
master table. That is, the relation is broken for that record.
Why does this happen? What's wrong? If I do the same change of Date value
using Access instead of my application, the corresponding value in Detail
table is regularly updated.
Thanks for your help.

Alverio


.



Relevant Pages

  • Re: Problem with Master/Detail tables
    ... I use Delphi 2006, Access 2003, ADO. ... Master/detail relationship is consequently based on Date and Time. ... But one day I had to change the Date value of a record in the Master table ... Those changes do not get set back to the ADO tables. ...
    (borland.public.delphi.database.ado)
  • Re: Problem with Master/Detail tables
    ... In the OnChange event of the two fields that make the PrimaryKey in the ... One solution could be adding an AutoInc field in the master table as primary ... Master/detail relationship is consequently based on Date and Time. ... with cascading update and cascading delete. ...
    (borland.public.delphi.database.ado)
  • Re: Many problems with ADO
    ... If I scroll the Master table, ... >But if I try to cancel or modify the record just added, ... Your choices are adCriteriaKey, adCriteriaAllCols, ... >With CursorLocation as clUseClient and CursorType as ctStatic, ...
    (borland.public.delphi.database.ado)