ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/branches/udr/client/FBMessages.pas
Revision: 60
Committed: Mon Mar 27 15:21:02 2017 UTC (7 years, 7 months ago) by tony
Content type: text/x-pascal
Original Path: ibx/trunk/fbintf/client/FBMessages.pas
File size: 23518 byte(s)
Log Message:

File Contents

# User Rev Content
1 tony 45 (*
2     * Firebird Interface (fbintf). The fbintf components provide a set of
3     * Pascal language bindings for the Firebird API. Although predominantly
4     * a new development they include source code taken from IBX and may be
5     * considered a derived product. This software thus also includes the copyright
6     * notice and license conditions from IBX.
7     *
8     * Except for those parts dervied from IBX, contents of this file are subject
9     * to the Initial Developer's Public License Version 1.0 (the "License"); you
10     * may not use this file except in compliance with the License. You may obtain a
11     * copy of the License here:
12     *
13     * http://www.firebirdsql.org/index.php?op=doc&id=idpl
14     *
15     * Software distributed under the License is distributed on an "AS
16     * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
17     * implied. See the License for the specific language governing rights
18     * and limitations under the License.
19     *
20     * The Initial Developer of the Original Code is Tony Whyman.
21     *
22     * The Original Code is (C) 2016 Tony Whyman, MWA Software
23     * (http://www.mwasoftware.co.uk).
24     *
25     * All Rights Reserved.
26     *
27     * Contributor(s): ______________________________________.
28     *
29     *)
30     {************************************************************************}
31     { }
32     { Borland Delphi Visual Component Library }
33     { InterBase Express core components }
34     { }
35     { Copyright (c) 1998-2000 Inprise Corporation }
36     { }
37     { InterBase Express is based in part on the product }
38     { Free IB Components, written by Gregory H. Deatz for }
39     { Hoagland, Longo, Moran, Dunst & Doukas Company. }
40     { Free IB Components is used under license. }
41     { }
42     { The contents of this file are subject to the InterBase }
43     { Public License Version 1.0 (the "License"); you may not }
44     { use this file except in compliance with the License. You }
45     { may obtain a copy of the License at http://www.Inprise.com/IPL.html }
46     { Software distributed under the License is distributed on }
47     { an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either }
48     { express or implied. See the License for the specific language }
49     { governing rights and limitations under the License. }
50     { The Original Code was created by InterBase Software Corporation }
51     { and its successors. }
52     { Portions created by Inprise Corporation are Copyright (C) Inprise }
53     { Corporation. All Rights Reserved. }
54     { Contributor(s): Jeff Overcash }
55     { }
56     { IBX For Lazarus (Firebird Express) }
57     { Contributor: Tony Whyman, MWA Software http://www.mwasoftware.co.uk }
58     { Portions created by MWA Software are copyright McCallum Whyman }
59     { Associates Ltd 2011 - 2015 }
60     { }
61     {************************************************************************}
62     unit FBMessages;
63 tony 56 {$IFDEF MSWINDOWS}
64     {$DEFINE WINDOWS}
65     {$ENDIF}
66 tony 45
67     {$IFDEF FPC}
68 tony 56 {$mode delphi}
69 tony 45 {$codepage UTF8}
70     {$ENDIF}
71    
72     interface
73    
74     uses
75     Classes, SysUtils;
76    
77     type
78     TIBDataBaseErrorMessage = (ShowSQLCode,
79     ShowIBMessage,
80     ShowSQLMessage);
81    
82     TIBDataBaseErrorMessages = set of TIBDataBaseErrorMessage;
83     TIBClientError = (
84     ibxeUnknownError,
85     ibxeInterBaseMissing,
86     ibxeInterBaseInstallMissing,
87     ibxeIB60feature,
88     ibxeNotSupported,
89     ibxeNotPermitted,
90     ibxeFileAccessError,
91     ibxeConnectionTimeout,
92     ibxeCannotSetDatabase,
93     ibxeCannotSetTransaction,
94     ibxeOperationCancelled,
95     ibxeDPBConstantNotSupported,
96     ibxeDPBConstantUnknown,
97     ibxeTPBConstantNotSupported,
98     ibxeTPBConstantUnknown,
99     ibxeDatabaseClosed,
100     ibxeDatabaseOpen,
101     ibxeDatabaseNameMissing,
102     ibxeNotInTransaction,
103     ibxeInTransaction,
104     ibxeTimeoutNegative,
105     ibxeNoDatabasesInTransaction,
106     ibxeUpdateWrongDB,
107     ibxeUpdateWrongTR,
108     ibxeDatabaseNotAssigned,
109     ibxeTransactionNotAssigned,
110     ibxeXSQLDAIndexOutOfRange,
111     ibxeXSQLDANameDoesNotExist,
112     ibxeEOF,
113     ibxeBOF,
114     ibxeInvalidStatementHandle,
115     ibxeSQLOpen,
116     ibxeSQLClosed,
117     ibxeDatasetOpen,
118     ibxeDatasetClosed,
119     ibxeUnknownSQLDataType,
120     ibxeInvalidColumnIndex,
121     ibxeInvalidParamColumnIndex,
122     ibxeInvalidDataConversion,
123     ibxeColumnIsNotNullable,
124     ibxeBlobCannotBeRead,
125     ibxeBlobCannotBeWritten,
126     ibxeBlobNotOpen,
127     ibxeEmptyQuery,
128     ibxeCannotOpenNonSQLSelect,
129     ibxeNoFieldAccess,
130     ibxeFieldReadOnly,
131     ibxeFieldNotFound,
132     ibxeNotEditing,
133     ibxeCannotInsert,
134     ibxeCannotPost,
135     ibxeCannotUpdate,
136     ibxeCannotDelete,
137     ibxeCannotRefresh,
138     ibxeBufferNotSet,
139     ibxeCircularReference,
140     ibxeSQLParseError,
141     ibxeUserAbort,
142     ibxeDataSetUniDirectional,
143     ibxeCannotCreateSharedResource,
144     ibxeWindowsAPIError,
145     ibxeColumnListsDontMatch,
146     ibxeColumnTypesDontMatch,
147     ibxeCantEndSharedTransaction,
148     ibxeFieldUnsupportedType,
149     ibxeCircularDataLink,
150     ibxeEmptySQLStatement,
151     ibxeIsASelectStatement,
152     ibxeRequiredParamNotSet,
153     ibxeNoStoredProcName,
154     ibxeIsAExecuteProcedure,
155     ibxeUpdateFailed,
156     ibxeNotCachedUpdates,
157     ibxeNotLiveRequest,
158     ibxeNoProvider,
159     ibxeNoRecordsAffected,
160     ibxeNoTableName,
161     ibxeCannotCreatePrimaryIndex,
162     ibxeCannotDropSystemIndex,
163     ibxeTableNameMismatch,
164     ibxeIndexFieldMissing,
165     ibxeInvalidCancellation,
166     ibxeInvalidEvent,
167     ibxeMaximumEvents,
168     ibxeNoEventsRegistered,
169     ibxeInvalidQueueing,
170     ibxeInvalidRegistration,
171     ibxeInvalidBatchMove,
172     ibxeSQLDialectInvalid,
173     ibxeSPBConstantNotSupported,
174     ibxeSPBConstantUnknown,
175     ibxeServiceActive,
176     ibxeServiceInActive,
177     ibxeServerNameMissing,
178     ibxeQueryParamsError,
179     ibxeStartParamsError,
180     ibxeOutputParsingError,
181     ibxeUseSpecificProcedures,
182     ibxeSQLMonitorAlreadyPresent,
183     ibxeCantPrintValue,
184     ibxeEOFReached,
185     ibxeEOFInComment,
186     ibxeEOFInString,
187     ibxeParamNameExpected,
188     ibxeSuccess,
189     ibxeDelphiException,
190     ibxeNoOptionsSet,
191     ibxeNoDestinationDirectory,
192     ibxeNosourceDirectory,
193     ibxeNoUninstallFile,
194     ibxeOptionNeedsClient,
195     ibxeOptionNeedsServer,
196     ibxeInvalidOption,
197     ibxeInvalidOnErrorResult,
198     ibxeInvalidOnStatusResult,
199     ibxeDPBConstantUnknownEx,
200     ibxeTPBConstantUnknownEx,
201     ibxeSV5APIError,
202     ibxeThreadFailed,
203     ibxeFieldSizeError,
204     ibxeTransactionNotEnding,
205     ibxeDscInfoTokenMissing,
206     ibxeNoLoginDialog,
207     ibxeEmptyAttachmentsList,
208     ibxeFirebirdLibraryLoaded,
209     ibxeInfoBufferIndexError,
210     ibxeInfoBufferTypeError,
211     ibxeInfoBufferOverflow,
212     ibxServiceRequestIndexError,
213     ibxServiceParamTypeError,
214     ibxeOutputBlockIndexError,
215     ibxeOutputBlockTypeError,
216     ibxePBIndexError,
217     ibxePBParamTypeError,
218     ibxeDuplicateParamName,
219     ibxeInvalidArrayDimensions,
220     ibxeNotAMultiDatabaseTransaction,
221     ibxeAttachmentListIndexError,
222     ibxeNotAnArray,
223     ibxeNotABlob,
224     ibxeInvalidSubscript,
225     ibxeArrayElementOverFlow,
226     ibxArrayBoundsCantIncrease ,
227     ibxeStatementNotPrepared,
228     ibxeInterfaceOutofDate,
229     ibxeUnexpectedDatabaseInfoResp,
230     ibxeInvalidBlobMetaData,
231     ibxeNoDPB,
232     ibxeInEventWait,
233     ibxeIncompatibleBlob,
234     ibxeMissingColumnName,
235     ibxStringTooLong,
236     ibxFieldNotinDataSet,
237     ibxeNotCurrentArray,
238     ibxeNoDefaultCharacterSet,
239     ibxeParamBufferOverflow,
240     ibxeInvalidParamCount,
241     ibxeInvalidVariantType,
242 tony 47 ibxeServiceRunning,
243 tony 56 ibxeUniqueRelationReqd,
244 tony 60 ibxeInterfaceNotSupported,
245     ibxeCharacterSetExists,
246     ibxeUnknownUserCharSet
247 tony 45 );
248    
249 tony 56 function GetErrorMessage(ErrMess: TIBClientError): AnsiString;
250 tony 45
251     resourcestring
252     { generic strings used in code }
253     SEOFReached = 'SEOFReached';
254     SEOFInComment = 'EOF in comment detected';
255     SEOFInString = 'EOF in string detected';
256     SParamNameExpected = 'Parameter name expected';
257     SCantPrintValue = 'Cannot print value';
258     SSuccess = 'Successful execution';
259     SDisconnectDatabase = 'Database is currently connected. Disconnect and continue?';
260     SCommitTransaction = 'Transaction is currently Active. Rollback and continue?';
261     sSQLErrorSeparator = ' When Executing: ';
262     SNoDataSet = 'No dataset association';
263     SSQLGenSelect = 'Must select at least one key field and one update field';
264     SSQLNotGenerated = 'Update SQL statements not generated, exit anyway?';
265     SSQLDataSetOpen = 'Unable to determine field names for %s';
266     SDefaultTransaction = '%s, Default';
267     SFirebirdAPIFuncNotFound = 'Unable to load Firebird Client Library Function "%s"';
268     SDatabaseFilter = 'Database Files (*.fdb; *.gdb)|*.gdb; *.fdb|All files (*.*)|*.*';
269     STrue = 'true';
270     SFalse = 'false';
271 tony 47 SArray = '(array)';
272     SBlob = '(blob)';
273 tony 45
274     implementation
275    
276     uses IBUtils;
277    
278     resourcestring
279    
280     { strings used in error messages}
281     SUnknownError = 'Unknown error';
282     SInterBaseMissing = 'Firebird library not found in the path. Please install Firebird to use this functionality';
283     SInterBaseInstallMissing = 'InterBase Install DLL ibinstall.dll not found in the path. Please install InterBase 6 to use this functionality';
284     SIB60feature = '%s is an InterBase 6 function. Please upgrade to InterBase 6 to use this functonality';
285     SNotSupported = 'Unsupported feature';
286     SNotPermitted = 'Not permitted';
287     SFileAccessError = 'Temporary file access error';
288     SConnectionTimeout = 'Database connection timed out';
289     SCannotSetDatabase = 'Cannot set database';
290     SCannotSetTransaction = 'Cannot set transaction';
291     SOperationCancelled = 'Operation cancelled at user''s request';
292     SDPBConstantNotSupported = 'DPB Constant (isc_dpb_%s) is unsupported';
293     SDPBConstantUnknown = 'DPB Constant (%d) is unknown';
294     STPBConstantNotSupported = 'TPB Constant (isc_tpb_%s) is unsupported';
295     STPBConstantUnknown = 'TPB Constant (%d) is unknown';
296     SDatabaseClosed = 'Cannot perform operation -- DB is not open';
297     SDatabaseOpen = 'Cannot perform operation -- DB is currently open';
298     SDatabaseNameMissing = 'Database name is missing';
299     SNotInTransaction = 'Transaction is not active';
300     SInTransaction = 'Transaction is active';
301     STimeoutNegative = 'Timeout values cannot be negative';
302     SNoDatabasesInTransaction = 'No databases are listed in transaction component';
303     SUpdateWrongDB = 'Updating wrong database';
304     SUpdateWrongTR = 'Updating wrong transaction. Unique transaction expected in set';
305     SDatabaseNotAssigned = 'Database not assigned';
306     STransactionNotAssigned = 'Transaction not assigned';
307     SXSQLDAIndexOutOfRange = 'XSQLDA index out of range';
308     SXSQLDANameDoesNotExist = 'XSQLDA name does not exist (%s)';
309     SEOF = 'End of file';
310     SBOF = 'Beginning of file';
311     SInvalidStatementHandle = 'Invalid statement handle';
312     SSQLOpen = 'IBSQL Open';
313     SSQLClosed = 'IBSQL Closed';
314     SDatasetOpen = 'Dataset open';
315     SDatasetClosed = 'Dataset closed';
316     SUnknownSQLDataType = 'Unknown SQL Data type (%d)';
317     SInvalidColumnIndex = 'Invalid column index (index exceeds permitted range)';
318     SInvalidParamColumnIndex = 'Invalid parameter index (index exceeds permitted range)';
319     SInvalidDataConversion = 'Invalid data conversion';
320     SColumnIsNotNullable = 'Column cannot be set to null (%s)';
321     SBlobCannotBeRead = 'Blob stream cannot be read';
322     SBlobCannotBeWritten = 'Blob stream cannot be written';
323     SBlobNotOpen = 'The Blob is not open';
324     SEmptyQuery = 'Empty query';
325     SCannotOpenNonSQLSelect = 'Cannot "open" a non-select statement. Use ExecQuery';
326     SNoFieldAccess = 'No access to field "%s"';
327     SFieldReadOnly = 'Field "%s" is read-only';
328     SFieldNotFound = 'Field "%s" not found';
329     SNotEditing = 'Not in edit mode';
330     SCannotInsert = 'Cannot insert into dataset. (No insert query)';
331     SCannotPost = 'Cannot post. (No update/insert query)';
332     SCannotUpdate = 'Cannot update. (No update query)';
333     SCannotDelete = 'Cannot delete from dataset. (No delete query)';
334     SCannotRefresh = 'Cannot refresh row. (No refresh query)';
335     SBufferNotSet = 'Buffer not set';
336     SCircularReference = 'Circular references not permitted';
337     SSQLParseError = 'SQL Parse Error:' + CRLF + CRLF + '%s';
338     SUserAbort = 'User abort';
339     SDataSetUniDirectional = 'Data set is uni-directional';
340     {$IFDEF UNIX}
341     SCannotCreateSharedResource = 'Cannot create shared resource. %s';
342     {$ELSE}
343     SCannotCreateSharedResource = 'Cannot create shared resource. (Windows error %d)';
344     {$ENDIF}
345     SWindowsAPIError = 'Windows API error. (Windows error %d [$%.8x])';
346     SColumnListsDontMatch = 'Column lists do not match';
347     SColumnTypesDontMatch = 'Column types don''t match. (From index: %d; To index: %d)';
348     SCantEndSharedTransaction = 'Can''t end a shared transaction unless it is forced and equal ' +
349     'to the transaction''s TimeoutAction';
350     SFieldUnsupportedType = 'Unsupported Field Type';
351     SCircularDataLink = 'Circular DataLink Reference';
352     SEmptySQLStatement = 'Empty SQL Statement';
353     SIsASelectStatement = 'use Open for a Select Statement';
354     SRequiredParamNotSet = 'Required parameter "%s" value not set';
355     SNoStoredProcName = 'No Stored Procedure Name assigned';
356     SIsAExecuteProcedure = 'use ExecProc for Procedure; use TQuery for Select procedures';
357     SUpdateFailed = 'Update Failed';
358     SNotCachedUpdates = 'CachedUpdates not enabled';
359     SNotLiveRequest = 'Request is not live - cannot modify';
360     SNoProvider = 'No Provider';
361     SNoRecordsAffected = 'No Records Affected';
362     SNoTableName = 'No Table Name assigned';
363     SCannotCreatePrimaryIndex = 'Cannot Create Primary Index; are created automatically';
364     SCannotDropSystemIndex = 'Cannot Drop System Index';
365     STableNameMismatch = 'Table Name Mismatch';
366     SIndexFieldMissing = 'Index Field Missing';
367     SInvalidCancellation = 'Cannot Cancel events while processing';
368     SInvalidEvent = 'Invalid Event';
369     SMaximumEvents = 'Exceded Maximum Event limits';
370     SNoEventsRegistered = 'No Events Registered';
371     SInvalidQueueing = 'Invalid Queueing';
372     SInvalidRegistration = 'Invalid Registration';
373     SInvalidBatchMove = 'Invalid Batch Move';
374     SSQLDialectInvalid = 'SQL Dialect Invalid';
375     SSPBConstantNotSupported = 'SPB Constant Not supported';
376     SSPBConstantUnknown = 'SPB Constant Unknown';
377     SServiceActive = 'Cannot perform operation -- service is not attached';
378     SServiceInActive = 'Cannot perform operation -- service is attached';
379     SServerNameMissing = 'Server Name Missing';
380     SQueryParamsError = 'Query Parameters missing or incorrect';
381     SStartParamsError = 'start Parameters missing or incorrect';
382     SOutputParsingError = 'Unexpected Output buffer value (%d)';
383     SUseSpecificProcedures = 'Generic ServiceStart not applicable: Use Specific Procedures to set configuration params';
384     SSQLMonitorAlreadyPresent = 'SQL Monitor Instance is already present';
385     SDelphiException = 'DelphiException %s';
386     SNoOptionsSet = 'No Install Options selected';
387     SNoDestinationDirectory = 'DestinationDirectory is not set';
388     SNosourceDirectory = 'SourceDirectory is not set';
389     SNoUninstallFile = 'Uninstall File Name is not set';
390     SOptionNeedsClient = '%s component requires Client to function properly';
391     SOptionNeedsServer = '%s component requires Server to function properly';
392     SInvalidOption = 'Invalid option specified';
393     SInvalidOnErrorResult = 'Unexpected onError return value';
394     SInvalidOnStatusResult = 'Unexpected onStatus return value';
395    
396     SDPBConstantUnknownEx = 'DPB Constant (%s) is unknown';
397     STPBConstantUnknownEx = 'TPB Constant (%s) is unknown';
398     SSV5APIError = 'SV5 API API Error - %s';
399     SThreadFailed = '%s Thread failed with Exception: %s';
400     sFieldSizeError = 'Field %s is too small to receive the data';
401     STransactionNotEnding = 'Transaction is not being completed';
402     SDscInfoTokenMissing = '%s token not found';
403     SNoLoginDialog = 'Default Login Dlalog not found. Have you included ibexpress ' +
404     'in your program uses list?';
405     SEmptyAttachmentsList = 'The list of database attachments cannot be empty';
406     SFirebirdLibraryLoaded = 'The Firebird Library is already loaded';
407     SInfoBufferIndexError = 'Info Buffer Index Out of Range (%d)';
408     SInfoBufferTypeError = 'Invalid operation for Info Buffer Type (%d)';
409     SInfoBufferOverflow = 'Info Buffer overlow';
410     SServiceRequestIndexError = 'Service Request Index Out of Range (%d)';
411     SServiceParamTypeError = 'Invalid Request for Service Param Type';
412     SOutputBlockIndexError = 'Output Block Index Out of Range (%d)';
413     SOutputBlockTypeError = 'Invalid Request for Output Block Type';
414     SPBIndexError = 'DPB Index out of range (%d)';
415     SPBParamTypeError = 'Invalid Request for DPB Param Type';
416     SDuplicateParamName = 'Blob or array parameter name must be unique (%s)';
417 tony 47 SInvalidArrayDimensions = 'Invalid number of array dimensions (%d)';
418 tony 45 SNotAMultiDatabaseTransaction = 'This is not a multi-database transaction';
419     SAttachmentListIndexError = 'Attachment List index out of range (%d)';
420     SNotAnArray = 'Table Column must be an array';
421     SNotABlob = 'Table Column must be a Blob';
422     SInvalidSubscript = 'Invalid Subscript (%d) for Array Dimension %d';
423     SArrayElementOverFlow = 'Array Element too big';
424     SArrayBoundsCantIncrease = 'Array Bounds can only be narrowed';
425     SStatementNotPrepared = 'The Statement has not been prepared';
426     SInterfaceOutofDate = 'This interface is no longer up-to-date';
427     SUnexpectedDatabaseInfoResp = 'Unexpected Database Information Response';
428     SInvalidBlobMetaData = 'Unable to Access Blob Meta Data';
429     SNoDPB = 'A DPB must be provided';
430     SInEventWait = 'Already in Event Wait State';
431     SIncompatibleBlob = 'Incompatible Blob SubTypes. %d expected, %d found';
432     SMissingColumnName = 'Relation or Column Name Missing';
433     SStringTooLong = 'String "%s" is too long. Max %d characters';
434     SFieldNotinDataSet = 'Field %s is not a member of DataSet %s';
435     SNotCurrentArray = 'Cannot Edit an Array that is not part of the current record';
436     SNoDefaultCharacterSet = 'A connection default character set is required to perform this operation';
437     SParamBufferOverflow = 'Parameter Buffer Overflow';
438     SInvalidParamCount = 'Invalid Parameter Count. %d expected, %d found';
439     SInvalidVariantType = 'Invalid variant type';
440     SServiceRunning = 'Cannot start a new service while an existing service is running';
441 tony 47 SUniqueRelationReqd = 'All Output Fields must derived from the same table';
442 tony 56 SInterfaceNotSupported = 'Interface not supported; Guid %s not found';
443 tony 60 SCharacterSetExists = 'Character set "%s" is already defined';
444     SUnknownUserCharSet = 'Unknown user character set "%s"';
445 tony 45
446     const
447     IBErrorMessages: array[TIBClientError] of string = (
448     SUnknownError,
449     SInterBaseMissing,
450     SInterBaseInstallMissing,
451     SIB60feature,
452     SNotSupported,
453     SNotPermitted,
454     SFileAccessError,
455     SConnectionTimeout,
456     SCannotSetDatabase,
457     SCannotSetTransaction,
458     SOperationCancelled,
459     SDPBConstantNotSupported,
460     SDPBConstantUnknown,
461     STPBConstantNotSupported,
462     STPBConstantUnknown,
463     SDatabaseClosed,
464     SDatabaseOpen,
465     SDatabaseNameMissing,
466     SNotInTransaction,
467     SInTransaction,
468     STimeoutNegative,
469     SNoDatabasesInTransaction,
470     SUpdateWrongDB,
471     SUpdateWrongTR,
472     SDatabaseNotAssigned,
473     STransactionNotAssigned,
474     SXSQLDAIndexOutOfRange,
475     SXSQLDANameDoesNotExist,
476     SEOF,
477     SBOF,
478     SInvalidStatementHandle,
479     SSQLOpen,
480     SSQLClosed,
481     SDatasetOpen,
482     SDatasetClosed,
483     SUnknownSQLDataType,
484     SInvalidColumnIndex,
485     SInvalidParamColumnIndex,
486     SInvalidDataConversion,
487     SColumnIsNotNullable,
488     SBlobCannotBeRead,
489     SBlobCannotBeWritten,
490     SBlobNotOpen,
491     SEmptyQuery,
492     SCannotOpenNonSQLSelect,
493     SNoFieldAccess,
494     SFieldReadOnly,
495     SFieldNotFound,
496     SNotEditing,
497     SCannotInsert,
498     SCannotPost,
499     SCannotUpdate,
500     SCannotDelete,
501     SCannotRefresh,
502     SBufferNotSet,
503     SCircularReference,
504     SSQLParseError,
505     SUserAbort,
506     SDataSetUniDirectional,
507     SCannotCreateSharedResource,
508     SWindowsAPIError,
509     SColumnListsDontMatch,
510     SColumnTypesDontMatch,
511     SCantEndSharedTransaction,
512     SFieldUnsupportedType,
513     SCircularDataLink,
514     SEmptySQLStatement,
515     SIsASelectStatement,
516     SRequiredParamNotSet,
517     SNoStoredProcName,
518     SIsAExecuteProcedure,
519     SUpdateFailed,
520     SNotCachedUpdates,
521     SNotLiveRequest,
522     SNoProvider,
523     SNoRecordsAffected,
524     SNoTableName,
525     SCannotCreatePrimaryIndex,
526     SCannotDropSystemIndex,
527     STableNameMismatch,
528     SIndexFieldMissing,
529     SInvalidCancellation,
530     SInvalidEvent,
531     SMaximumEvents,
532     SNoEventsRegistered,
533     SInvalidQueueing,
534     SInvalidRegistration,
535     SInvalidBatchMove,
536     SSQLDialectInvalid,
537     SSPBConstantNotSupported,
538     SSPBConstantUnknown,
539     SServiceActive,
540     SServiceInActive,
541     SServerNameMissing,
542     SQueryParamsError,
543     SStartParamsError,
544     SOutputParsingError,
545     SUseSpecificProcedures,
546     SSQLMonitorAlreadyPresent,
547     SCantPrintValue,
548     SEOFReached,
549     SEOFInComment,
550     SEOFInString,
551     SParamNameExpected,
552     SSuccess,
553     SDelphiException,
554     SNoOptionsSet,
555     SNoDestinationDirectory,
556     SNosourceDirectory,
557     SNoUninstallFile,
558     SOptionNeedsClient,
559     SOptionNeedsServer,
560     SInvalidOption,
561     SInvalidOnErrorResult,
562     SInvalidOnStatusResult,
563     SDPBConstantUnknownEx,
564     STPBConstantUnknownEx,
565     SSV5APIError,
566     SThreadFailed,
567     SFieldSizeError,
568     STransactionNotEnding,
569     SDscInfoTokenMissing,
570     SNoLoginDialog,
571     SEmptyAttachmentsList,
572     SFirebirdLibraryLoaded,
573     SInfoBufferIndexError,
574     SInfoBufferTypeError,
575     SInfoBufferOverflow,
576     SServiceRequestIndexError,
577     SServiceParamTypeError,
578     SOutputBlockIndexError,
579     SOutputBlockTypeError,
580     SPBIndexError,
581     SPBParamTypeError,
582     SDuplicateParamName,
583     SInvalidArrayDimensions,
584     SNotAMultiDatabaseTransaction,
585     SAttachmentListIndexError,
586     SNotAnArray,
587     SNotABlob,
588     SInvalidSubscript,
589     SArrayElementOverFlow,
590     SArrayBoundsCantIncrease,
591     SStatementNotPrepared,
592     SInterfaceOutofDate,
593     SUnexpectedDatabaseInfoResp,
594     SInvalidBlobMetaData,
595     SNoDPB,
596     SInEventWait,
597     SIncompatibleBlob,
598     SMissingColumnName,
599     SStringTooLong,
600     SFieldNotinDataSet,
601     SNotCurrentArray,
602     SNoDefaultCharacterSet,
603     SParamBufferOverflow,
604     SInvalidParamCount,
605     SInvalidVariantType,
606 tony 47 SServiceRunning,
607 tony 56 SUniqueRelationReqd,
608 tony 60 SInterfaceNotSupported,
609     SCharacterSetExists,
610     SUnknownUserCharSet
611 tony 45 );
612    
613 tony 56 function GetErrorMessage(ErrMess: TIBClientError): AnsiString;
614 tony 45 begin
615     Result := IBErrorMessages[ErrMess];
616     end;
617    
618     end.
619