Breaking change in 9.5.111.1397 RTM

dataabstract
delphi

(EvgenyK) #1

DataAbstract for Delphi 9.5.111.1397

Parameter of the TDARemoteCommand.Execute method was changed from in to out direction:

was:

function Execute(aCommandName: string; aInputParameters: DataParameterArray;
                           aOutputParameters: DataParameterArray): Integer; override;

now:

function Execute(aCommandName: string; aInputParameters: DataParameterArray;
                           out aOutputParameters: DataParameterArray): Integer; override;

Make sure that if you are using this method, you don’t create aOutputParameters before execution of this method and destroy aOutputParameters object after execution of this method, like

lOutputParameters := nil;
try
  // filling lInputParameters
  DARemoteCommand.Execute(lCommandName, lInputParameters, lOutputParameters);
  // processing lOutputParameters
finally
  lOutputParameters.Free;
end;

(marcantheunis) #2

why the change?


(EvgenyK) #3

we have improved Business Script API and add possibility to launch commands from scripting events.
as a result, TDARemoteCommand and TDALocalCommand began to have the same ancestor and the same method’s declaration.