289 |
|
function GetStatement: IStatement; |
290 |
|
procedure SetName(AValue: AnsiString); |
291 |
|
protected |
292 |
+ |
FArrayIntf: IArray; |
293 |
|
function GetAttachment: IAttachment; virtual; abstract; |
294 |
|
function GetSQLType: cardinal; virtual; abstract; |
295 |
|
function GetSubtype: integer; virtual; abstract; |
320 |
|
procedure SetString(aValue: AnsiString); |
321 |
|
procedure Changed; virtual; |
322 |
|
procedure RowChange; virtual; |
323 |
< |
function GetAsArray(Array_ID: TISC_QUAD): IArray; virtual; abstract; |
323 |
> |
function GetAsArray: IArray; virtual; abstract; |
324 |
|
function GetAsBlob(Blob_ID: TISC_QUAD; BPB: IBPB): IBlob; virtual; abstract; |
325 |
|
function CreateBlob: IBlob; virtual; abstract; |
326 |
|
function GetArrayMetaData: IArrayMetaData; virtual; abstract; |
328 |
|
function getColMetadata: IParamMetaData; |
329 |
|
procedure Initialize; virtual; |
330 |
|
procedure SaveMetaData; |
331 |
+ |
procedure SetArray(AValue: IArray); |
332 |
|
|
333 |
|
public |
334 |
|
property AliasName: AnsiString read GetAliasName; |
770 |
|
FColMetaData := TSQLParamMetaData.Create(self); |
771 |
|
end; |
772 |
|
|
773 |
+ |
procedure TSQLVarData.SetArray(AValue: IArray); |
774 |
+ |
begin |
775 |
+ |
FArrayIntf := AValue; |
776 |
+ |
end; |
777 |
+ |
|
778 |
|
constructor TSQLVarData.Create(aParent: TSQLDataArea; aIndex: integer); |
779 |
|
begin |
780 |
|
inherited Create; |
805 |
|
|
806 |
|
procedure TSQLVarData.RowChange; |
807 |
|
begin |
808 |
+ |
FArrayIntf := nil; |
809 |
|
FModified := false; |
810 |
|
FVarString := ''; |
811 |
|
end; |
1613 |
|
function GetStrLen(p: PAnsiChar; FieldWidth, MaxDataLength: cardinal): integer; |
1614 |
|
var i: integer; |
1615 |
|
cplen: integer; |
1608 |
– |
s: AnsiString; |
1616 |
|
begin |
1617 |
|
Result := 0; |
1611 |
– |
s := strpas(p); |
1618 |
|
for i := 1 to FieldWidth do |
1619 |
|
begin |
1620 |
|
cplen := UTF8CodepointSizeFull(p); |
2171 |
|
end; |
2172 |
|
|
2173 |
|
procedure TSQLDataItem.SetAsBcd(aValue: tBCD); |
2168 |
– |
var C: Currency; |
2174 |
|
begin |
2175 |
|
CheckActive; |
2176 |
|
Changing; |
2420 |
|
function TIBSQLData.GetAsArray: IArray; |
2421 |
|
begin |
2422 |
|
CheckActive; |
2423 |
< |
result := FIBXSQLVAR.GetAsArray(AsQuad); |
2423 |
> |
result := FIBXSQLVAR.GetAsArray; |
2424 |
|
end; |
2425 |
|
|
2426 |
|
function TIBSQLData.GetAsBlob: IBlob; |
2674 |
|
if not FIBXSQLVAR.UniqueName then |
2675 |
|
IBError(ibxeDuplicateParamName,[FIBXSQLVAR.Name]); |
2676 |
|
|
2677 |
+ |
FIBXSQLVAR.SetArray(anArray); {save array interface} |
2678 |
|
SetAsQuad(AnArray.GetArrayID); |
2679 |
|
end; |
2680 |
|
|