Subject Re: [IBO] About post, commit, delete
Author Paul Vinkenoog
Hi Gediminas,

> 1. trigger BEFORE INSERT, active:
>
> BEGIN
> if ( NEW."ClassDance_ID" is null ) then NEW."ClassDance_ID" =
> gen_id( "Gen_ClassDance_ID_BI" , 1 );
> END
>
> 2. generatorlinks:
> pQuery->GeneratorLinks->Add(
> "CLASS_DANCES.\"ClassDance_ID\"=\"Gen_ClassDance_ID_BI\"" );
>
> 3. left stuff (it's not needed, but provide in case):
> pQuery->SQL->Add( "select ks.* , s.\"Name\" from CLASS_DANCES ks
> inner join DANCES s on ks.\"Dance_ID\"=s.\"Dance_ID\";" );
> pQuery->KeyLinks->Add( "CLASS_DANCES.\"ClassDance_ID\"" );
> pQuery->KeyRelation = "CLASS_DANCES";
> pQuery->RequestLive = true;
> pQuery->MasterLinks->Add(
> "CLASS_DANCES.\"Class_ID\"=CLASSES.\"Class_ID\"" );
> pQuery->MasterSource = pDataSource;

Are you sure all this runtime "Add" stuff is executed _exactly_ once?
If some of it isn't executed. or executed twice, there's trouble.

In general it's safer to set these properties in the Object Inspector
and/or the Query Editor. The Query Editor (this is what you see if you
double-click a query icon on your design form) may look a little
confusing at first, but once you get to know it, you'll find it's the
best place to set up and finetune your queries.


Greetings
Paul Vinkenoog