- - * - WhiteUnicorn - * - -




* #WhiteUnicorn/ StartPage/ Documentation/DelphiFAQ >


Frequently Asked Questions

How to use the TUpdateSQLProvider.OnUpdateRecord method

Question:

How do I use TUpdateSQLProvider.OnUpdateRecord?

Answer:

In the UpdateRecord event, if UpdateKind is ukModify then

there are 2 records that designate the important values.

The first record contains old values, the second contains

new values.  In the event, the cursor will start on the

second record. 



The following example forces a field called Test to

UpperCase.  



procedure TForm1.UpdateSQLProvider1UpdateRecord(DataSet: 

  TClientDataSet;  UpdateKind: TUpdateKind; 

  UpdateQuery: TQuery; var Applied: Boolean);

begin

  with DataSet do

  begin

    if (UpdateKind in [ukModify, ukInsert]) and

       (not VarIsEmpty(FieldByName('TEST').NewValue) then

      UpdateQuery.ParamByName('TEST').Value :=

    UpperCase(FieldByName('TEST').NewValue);

  end;

end;



I use VarIsEmpty on the NewValue to see if the value

has changed, then I set the correct param for the query

to the value I actually want it to be.




* #WhiteUnicorn/ StartPage/ Documentation/DelphiFAQ >



- - * - Anastasija aka WhiteUnicorn - * - - LJLiveJournal
PFPhotoFile