hi, i some circomstances i get the the error in subject
now this seems to happen when i have a child table linked using mmparams method and when applying a new record in the master table AND when the child table is open but has a recordcount of 0
(this is still DA3 interface)
tried to get a hint of what’s wrong stepping through the code but no go
so if you have a hint on where to start looking…
can you check that your OutgoingDeltaParameter
is assigned and has rtBinary
datatype ?
{ Fill Input Parameters }
lParam := UpdateDataCall.Params.FindParam(UpdateDataCall.OutgoingDeltaParameter);
if not assigned(lParam) or (lParam.DataType <> rtBinary) then
raise Exception.Create('OutgoingDeltaParameter parameter of UpdateDataCall is not properly defined.');
well lparam is nil after the findparam
it searches for ‘delta’ and only ‘result’ and ‘remotedelta’ are in the params[]
it must be some kind of config but i does not see it at this moment…
looks like you need to specify remotedelta
instead of delta
in OutgoingDeltaParameter
that only seems logical
question remains why
i’ll investigate further…
OMG nevermind
seems there is a specifice updatedatacall … which has the param defined as remotedelta…
case closed and thx!
the only thing to remark is why it wants to applyupdates for a dataset that has 0 records… (if it is a child - didn’t test if this also happens on regular datasets)
if you call ApplyUpdates manually - DAD does it because you could delete existed record.
ofc, you can add checking manually like:
if table.delta.count > 0 then table.ApplyUpdates;
well same could be handled in applyupdates but ok no problem