ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/trunk/fbintf/changelog
(Generate patch)

Comparing ibx/trunk/fbintf/changelog (file contents):
Revision 309 by tony, Tue Jul 21 08:00:42 2020 UTC vs.
Revision 315 by tony, Thu Feb 25 11:56:36 2021 UTC

# Line 1 | Line 1
1 + FBINTF Change Log  version          (1.2-0 Build 12476) Wed, 17 Feb 2021 10:13:50 +0000
2 +
3 + 1. Imported (Firebird) constants updated for Firebird 4.
4 +
5 + 2. Firebird.pas from Firebird 4 integrated into source code tree.
6 +
7 + 3. Added Support for TIMETAMP WITH TIME ZONE and TIME WITH TIME ZONE data types.
8 +
9 + 4. Added Support for SQL_DEC16, SQL_DEC34 and extended NUMERIC precision.
10 +
11 + 5. New unit 'FBClientLib.pas' added and provides new interface IFBIMasterProvider.
12 +   QueryInterface may be used to coerce this interface from IFirebirdAPI. The
13 +   interface provides a single method "function GetIMasterIntf: IMaster". This provides
14 +   type safe access to the Firebird IMaster interface and avoids the need to turn
15 +   off object checks when coercing "function GetIMaster: TObject" to IMaster.
16 +
17 + 6. New IFirebirdAPI Calls:
18 +    function HasLocalTZDB: boolean;
19 +    function HasTimeZoneSupport: boolean;
20 +    function HasExtendedTZSupport: boolean;
21 +    procedure SQLDecFloatEncode(aValue: tBCD; SQLType: cardinal; bufptr: PByte);
22 +    function SQLDecFloatDecode(SQLType: cardinal; scale: integer; bufptr: PByte): tBCD;
23 +
24 + 7. New IAttachment Calls:
25 +    function HasDecFloatSupport: boolean;
26 +    function GetTimeZoneServices: ITimeZoneServices;
27 +    function HasTimeZoneSupport: boolean;
28 +
29 + 8. New Interface ITimeZoneServices.
30 +
31 + 9. New ISQLData API Calls:
32 +    procedure GetAsDateTime(var aDateTime: TDateTime; var dstOffset: smallint; var aTimezoneID: TFBTimeZoneID); overload;
33 +    procedure GetAsDateTime(var aDateTime: TDateTime; var dstOffset: smallint; var aTimezone: AnsiString); overload;
34 +    procedure GetAsTime(var aTime: TDateTime; var dstOffset: smallint; var aTimezoneID: TFBTimeZoneID; OnDate: TDateTime); overload;
35 +    procedure GetAsTime(var aTime: TDateTime; var dstOffset: smallint; var aTimezone: AnsiString; OnDate: TDateTime); overload;
36 +    function GetAsUTCDateTime: TDateTime;
37 +    function GetAsBCD: tBCD;
38 +
39 + 10. New ISQLParam API Calls
40 +    procedure GetAsDateTime(var aDateTime: TDateTime; var dstOffset: smallint; var aTimezoneID: TFBTimeZoneID); overload;
41 +    procedure GetAsDateTime(var aDateTime: TDateTime; var dstOffset: smallint; var aTimezone: AnsiString); overload;
42 +    procedure GetAsTime(var aTime: TDateTime; var dstOffset: smallint; var aTimezoneID: TFBTimeZoneID; OnDate: TDateTime); overload;
43 +    procedure GetAsTime(var aTime: TDateTime; var dstOffset: smallint; var aTimezone: AnsiString; OnDate: TDateTime); overload;
44 +    function GetAsUTCDateTime: TDateTime;
45 +    function GetAsBCD: tBCD;
46 +    function GetStatement: IStatement;
47 +    function GetTransaction: ITransaction;
48 +    procedure SetAsTime(aValue: TDateTime; OnDate: TDateTime; aTimeZoneID: TFBTimeZoneID); overload;
49 +    procedure SetAsTime(aValue: TDateTime; OnDate: TDateTime; aTimeZone: AnsiString); overload;
50 +    procedure SetAsDateTime(aValue: TDateTime; aTimeZoneID: TFBTimeZoneID); overload;
51 +    procedure SetAsDateTime(aValue: TDateTime; aTimeZone: AnsiString); overload;
52 +    procedure SetAsUTCDateTime(aUTCTime: TDateTime);
53 +    procedure SetAsBcd(aValue: tBCD);
54 +
55 + 11. New IArray API Calls
56 +    procedure GetAsDateTime(index: array of integer; var aDateTime: TDateTime; var dstOffset: smallint; var aTimezoneID: TFBTimeZoneID); overload;
57 +    procedure GetAsDateTime(index: array of integer; var aDateTime: TDateTime; var dstOffset: smallint; var aTimezone: AnsiString); overload;
58 +    procedure GetAsTime(index: array of integer; var aTime: TDateTime; var dstOffset: smallint; var aTimezoneID: TFBTimeZoneID; OnDate: TDateTime); overload;
59 +    procedure GetAsTime(index: array of integer; var aTime: TDateTime; var dstOffset: smallint; var aTimezone: AnsiString; OnDate: TDateTime); overload;
60 +    function GetAsUTCDateTime(index: array of integer): TDateTime;
61 +    procedure SetAsDateTime(index: array of integer; aValue: TDateTime; aTimeZoneID: TFBTimeZoneID); overload;
62 +    procedure SetAsDateTime(index: array of integer; aValue: TDateTime; aTimeZone: AnsiString); overload;
63 +    procedure SetAsTime(index: array of integer; aValue: TDateTime; OnDate: TDateTime; aTimeZoneID: TFBTimeZoneID); overload;
64 +    procedure SetAsTime(index: array of integer; aValue: TDateTime; OnDate: TDateTime; aTimeZone: AnsiString); overload;
65 +
66 + 12. Utility functions in IBUtils
67 +    function ParseDateTimeTZString(aDateTimeStr: Ansistring; var aDateTime: TDateTime;
68 +              var aTimezone: AnsiString; aFormatSettings: TFormatSettings; TimeOnly: boolean=false): boolean;
69 +    procedure FBDecodeTime(aTime: TDateTime; var Hour, Minute, Second: word; var DeciMillisecond: cardinal);
70 +    function FBEncodeTime(Hour, Minute, Second, DeciMillisecond: cardinal): TDateTime;
71 +    function FBFormatDateTime(fmt: AnsiString; aDateTime: TDateTime): AnsiString;
72 +    function FormatTimeZoneOffset(EffectiveTimeOffsetMins: integer): AnsiString;
73 +    function DecodeTimeZoneOffset(TZOffset: AnsiString; var dstOffset: integer): boolean;
74 +
75 + 13. IDPB, ITPB and ISPB: new interface method
76 +      function AddByTypeName(ParamTypeName: AnsiString): IDPBItem/ITPBItem/ISPBItem;
77 +    This is used to add a parameter block item by the string equivalent of its
78 +    symbolic type name. e.g. DPB.AddByTypeName('isc_dpb_user_name').AsString := '...'
79 +
80 + 14. IDPBItem/ITPBItem/ISPBItem: new interface method:
81 +      function getParamTypeName: AnsiString;
82 +
83 + 15. fb_shutdown now called before unloading Firebird library. This can avoid a
84 +     SIGEVENT error when a programme using the embeded server is unloaded.
85 +
86   FBINTF Change Log  version          (1.1-6 Build 12237) Tue, 21 Jul 2020 08:54:21 +0100
87  
88   1. GetImplementationVersion now correctly returns '3.0' for Firebird 3 API
# Line 27 | Line 112 | FBINTF Change Log  version          (1.1
112   7.  IColumnMetaData and IArrayMetaData: new method
113        function GetCharSetWidth: integer;
114  
115 <
31 < FBINTF Change Log  version          (1.1-5 Build 12044) Fri, 17 Apr 2020 12:30:01 +0100
115 > FBINTF Change Log  version          (1.1-5 Build 12022) Fri, 17 Apr 2020 10:35:55 +0100
116  
117   1. ISQLParams.GetHasCaseSensitiveParams added. Returns true if param names are
118     case sensitive
# Line 38 | Line 122 | FBINTF Change Log  version          (1.1
122   3. New API Calls:
123          IColumnMetaData.GetStatement
124          IColumnMetaData.GetTransaction
125 <        ISQLData.GetStrLength
125 >        ISQLData.GetStrDataLength
126          IResults.GetStatement
127          IAttachment.OpenBlob (using Blob metadata)
128          IAttachment.OpenArray (using array metadata)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines