ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/trunk/fbintf/client/2.5/FB25Array.pas
(Generate patch)

Comparing ibx/trunk/fbintf/client/2.5/FB25Array.pas (file contents):
Revision 56 by tony, Mon Mar 6 10:20:02 2017 UTC vs.
Revision 113 by tony, Thu Jan 18 14:37:59 2018 UTC

# Line 78 | Line 78 | const
78    sGetArrayMetaData = 'Select F.RDB$CHARACTER_SET_ID '+
79                        'From RDB$FIELDS F JOIN RDB$RELATION_FIELDS RF '+
80                        'On F.RDB$FIELD_NAME = RF.RDB$FIELD_SOURCE '+
81 <                      'Where RF.RDB$RELATION_NAME = ? and RF.RDB$FIELD_NAME = ?';
81 >                      'Where RF.RDB$RELATION_NAME = ? and RF.RDB$FIELD_NAME = ? '+
82 >                      'UNION '+
83 >                      'Select F.RDB$CHARACTER_SET_ID '+
84 >                      'From RDB$FIELDS F JOIN RDB$PROCEDURE_PARAMETERS PP '+
85 >                      'On F.RDB$FIELD_NAME = PP.RDB$FIELD_SOURCE '+
86 >                      'Where PP.RDB$PROCEDURE_NAME = ? and PP.RDB$PARAMETER_NAME = ?';
87  
88    { TFB25ArrayMetaData }
89  
# Line 109 | Line 114 | begin
114      begin
115        SQLParams[0].AsString := RelationName;
116        SQLParams[1].AsString := ColumnName;
117 +      SQLParams[2].AsString := RelationName;
118 +      SQLParams[3].AsString := ColumnName;
119        with OpenCursor do
120        if FetchNext then
121        begin
# Line 122 | Line 129 | begin
129          else
130          begin
131            FCodePage := CP_NONE;
132 <          FirebirdClientAPI.CharSetID2CodePage(FCharSetID,FCodePage);
132 >          FAttachment.CharSetID2CodePage(FCharSetID,FCodePage);
133          end;
134        end;
135      end;
# Line 131 | Line 138 | begin
138        (FCharSetID = 0) then {This really shouldn't be necessary - but it is :(}
139    with aAttachment as TFBAttachment do
140    begin
141 <    if HasDefaultCharSet  and FirebirdClientAPI.CharSetWidth(CharSetID,CharWidth) then
141 >    if HasDefaultCharSet  and FAttachment.CharSetWidth(CharSetID,CharWidth) then
142        FArrayDesc.array_desc_length := FArrayDesc.array_desc_length * CharWidth;
143    end;
144   end;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines