From 30f2e6e9181a1388e6a3f803539e538c021ea640 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B5=D0=B9=20=D0=97=D0=B0?= =?UTF-8?q?=D0=B1=D0=BB=D0=BE=D1=86=D0=BA=D0=B8=D0=B9?= Date: Thu, 16 Nov 2023 09:49:35 +0300 Subject: [PATCH] status --- connectionsdmunit.pas | 2 +- exttypes.pas | 19 ++++++++++++++++++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/connectionsdmunit.pas b/connectionsdmunit.pas index 91e669a..2fd62fb 100644 --- a/connectionsdmunit.pas +++ b/connectionsdmunit.pas @@ -341,7 +341,7 @@ begin begin Answer := cmd.currentStage; if assigned(cmd.Results) then - cmd.Results.AssignTo(Code,RetValue,Answer,rValues,iValues,ByteData); + cmd.Results.AssignTo(Code,RetValue,Answer,rValues); code := cmd.Status; if (code=StatusComplete) and assigned(cmd.Results.Data) then RetValue:=cmd.Results.Data.Size diff --git a/exttypes.pas b/exttypes.pas index 981021f..b0f3662 100644 --- a/exttypes.pas +++ b/exttypes.pas @@ -72,7 +72,8 @@ type constructor Create(ACode:DWORD;AParam:QWord; AName: string; AKeys: TStrings; AValues: TParamArray; AData: TStream); overload; constructor Create(ACode:DWORD;AParam:QWord; AName: string;const AKeys: Array of string; AValues: TParamArray; AData: TStream); overload; destructor Destroy; override; - procedure AssignTo(out ACode:DWORD;out AParam:QWord; out AName: string; out AKeys: TStrings; out AValues: TParamArray; out AData: TStream); + procedure AssignTo(out ACode:DWORD;out AParam:QWord; out AName: string; out AKeys: TStrings; out AValues: TParamArray; out AData: TStream); overload; + procedure AssignTo(out ACode:DWORD;out AParam:QWord; out AName: string; out AKeys: TStrings); overload; end; procedure CopyBytes(var Dest: PByte; const Data: byte); overload; procedure CopyBytes(var Dest: PByte; const Data: word); overload; @@ -463,5 +464,21 @@ begin CopyParamArray(iValues,AValues); end; +procedure TCommandData.AssignTo(out ACode: DWORD; out AParam: QWord; out + AName: string; out AKeys: TStrings); +begin + ACode := Code; + AParam := Param; + AName := Name; + if assigned(Keys) then + begin + AKeys := TStringList.Create; + AKeys.Assign(Keys); + end + else + AKeys := nil; + +end; + end.