ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/branches/udr/client/FBMessages.pas
Revision: 56
Committed: Mon Mar 6 10:20:02 2017 UTC (7 years, 8 months ago) by tony
Content type: text/x-pascal
Original Path: ibx/trunk/fbintf/client/FBMessages.pas
File size: 23284 byte(s)
Log Message:
Committing updates for Trunk

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     ibxeInterfaceNotSupported
245 tony 45 );
246    
247 tony 56 function GetErrorMessage(ErrMess: TIBClientError): AnsiString;
248 tony 45
249     resourcestring
250     { generic strings used in code }
251     SEOFReached = 'SEOFReached';
252     SEOFInComment = 'EOF in comment detected';
253     SEOFInString = 'EOF in string detected';
254     SParamNameExpected = 'Parameter name expected';
255     SCantPrintValue = 'Cannot print value';
256     SSuccess = 'Successful execution';
257     SDisconnectDatabase = 'Database is currently connected. Disconnect and continue?';
258     SCommitTransaction = 'Transaction is currently Active. Rollback and continue?';
259     sSQLErrorSeparator = ' When Executing: ';
260     SNoDataSet = 'No dataset association';
261     SSQLGenSelect = 'Must select at least one key field and one update field';
262     SSQLNotGenerated = 'Update SQL statements not generated, exit anyway?';
263     SSQLDataSetOpen = 'Unable to determine field names for %s';
264     SDefaultTransaction = '%s, Default';
265     SFirebirdAPIFuncNotFound = 'Unable to load Firebird Client Library Function "%s"';
266     SDatabaseFilter = 'Database Files (*.fdb; *.gdb)|*.gdb; *.fdb|All files (*.*)|*.*';
267     STrue = 'true';
268     SFalse = 'false';
269 tony 47 SArray = '(array)';
270     SBlob = '(blob)';
271 tony 45
272     implementation
273    
274     uses IBUtils;
275    
276     resourcestring
277    
278     { strings used in error messages}
279     SUnknownError = 'Unknown error';
280     SInterBaseMissing = 'Firebird library not found in the path. Please install Firebird to use this functionality';
281     SInterBaseInstallMissing = 'InterBase Install DLL ibinstall.dll not found in the path. Please install InterBase 6 to use this functionality';
282     SIB60feature = '%s is an InterBase 6 function. Please upgrade to InterBase 6 to use this functonality';
283     SNotSupported = 'Unsupported feature';
284     SNotPermitted = 'Not permitted';
285     SFileAccessError = 'Temporary file access error';
286     SConnectionTimeout = 'Database connection timed out';
287     SCannotSetDatabase = 'Cannot set database';
288     SCannotSetTransaction = 'Cannot set transaction';
289     SOperationCancelled = 'Operation cancelled at user''s request';
290     SDPBConstantNotSupported = 'DPB Constant (isc_dpb_%s) is unsupported';
291     SDPBConstantUnknown = 'DPB Constant (%d) is unknown';
292     STPBConstantNotSupported = 'TPB Constant (isc_tpb_%s) is unsupported';
293     STPBConstantUnknown = 'TPB Constant (%d) is unknown';
294     SDatabaseClosed = 'Cannot perform operation -- DB is not open';
295     SDatabaseOpen = 'Cannot perform operation -- DB is currently open';
296     SDatabaseNameMissing = 'Database name is missing';
297     SNotInTransaction = 'Transaction is not active';
298     SInTransaction = 'Transaction is active';
299     STimeoutNegative = 'Timeout values cannot be negative';
300     SNoDatabasesInTransaction = 'No databases are listed in transaction component';
301     SUpdateWrongDB = 'Updating wrong database';
302     SUpdateWrongTR = 'Updating wrong transaction. Unique transaction expected in set';
303     SDatabaseNotAssigned = 'Database not assigned';
304     STransactionNotAssigned = 'Transaction not assigned';
305     SXSQLDAIndexOutOfRange = 'XSQLDA index out of range';
306     SXSQLDANameDoesNotExist = 'XSQLDA name does not exist (%s)';
307     SEOF = 'End of file';
308     SBOF = 'Beginning of file';
309     SInvalidStatementHandle = 'Invalid statement handle';
310     SSQLOpen = 'IBSQL Open';
311     SSQLClosed = 'IBSQL Closed';
312     SDatasetOpen = 'Dataset open';
313     SDatasetClosed = 'Dataset closed';
314     SUnknownSQLDataType = 'Unknown SQL Data type (%d)';
315     SInvalidColumnIndex = 'Invalid column index (index exceeds permitted range)';
316     SInvalidParamColumnIndex = 'Invalid parameter index (index exceeds permitted range)';
317     SInvalidDataConversion = 'Invalid data conversion';
318     SColumnIsNotNullable = 'Column cannot be set to null (%s)';
319     SBlobCannotBeRead = 'Blob stream cannot be read';
320     SBlobCannotBeWritten = 'Blob stream cannot be written';
321     SBlobNotOpen = 'The Blob is not open';
322     SEmptyQuery = 'Empty query';
323     SCannotOpenNonSQLSelect = 'Cannot "open" a non-select statement. Use ExecQuery';
324     SNoFieldAccess = 'No access to field "%s"';
325     SFieldReadOnly = 'Field "%s" is read-only';
326     SFieldNotFound = 'Field "%s" not found';
327     SNotEditing = 'Not in edit mode';
328     SCannotInsert = 'Cannot insert into dataset. (No insert query)';
329     SCannotPost = 'Cannot post. (No update/insert query)';
330     SCannotUpdate = 'Cannot update. (No update query)';
331     SCannotDelete = 'Cannot delete from dataset. (No delete query)';
332     SCannotRefresh = 'Cannot refresh row. (No refresh query)';
333     SBufferNotSet = 'Buffer not set';
334     SCircularReference = 'Circular references not permitted';
335     SSQLParseError = 'SQL Parse Error:' + CRLF + CRLF + '%s';
336     SUserAbort = 'User abort';
337     SDataSetUniDirectional = 'Data set is uni-directional';
338     {$IFDEF UNIX}
339     SCannotCreateSharedResource = 'Cannot create shared resource. %s';
340     {$ELSE}
341     SCannotCreateSharedResource = 'Cannot create shared resource. (Windows error %d)';
342     {$ENDIF}
343     SWindowsAPIError = 'Windows API error. (Windows error %d [$%.8x])';
344     SColumnListsDontMatch = 'Column lists do not match';
345     SColumnTypesDontMatch = 'Column types don''t match. (From index: %d; To index: %d)';
346     SCantEndSharedTransaction = 'Can''t end a shared transaction unless it is forced and equal ' +
347     'to the transaction''s TimeoutAction';
348     SFieldUnsupportedType = 'Unsupported Field Type';
349     SCircularDataLink = 'Circular DataLink Reference';
350     SEmptySQLStatement = 'Empty SQL Statement';
351     SIsASelectStatement = 'use Open for a Select Statement';
352     SRequiredParamNotSet = 'Required parameter "%s" value not set';
353     SNoStoredProcName = 'No Stored Procedure Name assigned';
354     SIsAExecuteProcedure = 'use ExecProc for Procedure; use TQuery for Select procedures';
355     SUpdateFailed = 'Update Failed';
356     SNotCachedUpdates = 'CachedUpdates not enabled';
357     SNotLiveRequest = 'Request is not live - cannot modify';
358     SNoProvider = 'No Provider';
359     SNoRecordsAffected = 'No Records Affected';
360     SNoTableName = 'No Table Name assigned';
361     SCannotCreatePrimaryIndex = 'Cannot Create Primary Index; are created automatically';
362     SCannotDropSystemIndex = 'Cannot Drop System Index';
363     STableNameMismatch = 'Table Name Mismatch';
364     SIndexFieldMissing = 'Index Field Missing';
365     SInvalidCancellation = 'Cannot Cancel events while processing';
366     SInvalidEvent = 'Invalid Event';
367     SMaximumEvents = 'Exceded Maximum Event limits';
368     SNoEventsRegistered = 'No Events Registered';
369     SInvalidQueueing = 'Invalid Queueing';
370     SInvalidRegistration = 'Invalid Registration';
371     SInvalidBatchMove = 'Invalid Batch Move';
372     SSQLDialectInvalid = 'SQL Dialect Invalid';
373     SSPBConstantNotSupported = 'SPB Constant Not supported';
374     SSPBConstantUnknown = 'SPB Constant Unknown';
375     SServiceActive = 'Cannot perform operation -- service is not attached';
376     SServiceInActive = 'Cannot perform operation -- service is attached';
377     SServerNameMissing = 'Server Name Missing';
378     SQueryParamsError = 'Query Parameters missing or incorrect';
379     SStartParamsError = 'start Parameters missing or incorrect';
380     SOutputParsingError = 'Unexpected Output buffer value (%d)';
381     SUseSpecificProcedures = 'Generic ServiceStart not applicable: Use Specific Procedures to set configuration params';
382     SSQLMonitorAlreadyPresent = 'SQL Monitor Instance is already present';
383     SDelphiException = 'DelphiException %s';
384     SNoOptionsSet = 'No Install Options selected';
385     SNoDestinationDirectory = 'DestinationDirectory is not set';
386     SNosourceDirectory = 'SourceDirectory is not set';
387     SNoUninstallFile = 'Uninstall File Name is not set';
388     SOptionNeedsClient = '%s component requires Client to function properly';
389     SOptionNeedsServer = '%s component requires Server to function properly';
390     SInvalidOption = 'Invalid option specified';
391     SInvalidOnErrorResult = 'Unexpected onError return value';
392     SInvalidOnStatusResult = 'Unexpected onStatus return value';
393    
394     SDPBConstantUnknownEx = 'DPB Constant (%s) is unknown';
395     STPBConstantUnknownEx = 'TPB Constant (%s) is unknown';
396     SSV5APIError = 'SV5 API API Error - %s';
397     SThreadFailed = '%s Thread failed with Exception: %s';
398     sFieldSizeError = 'Field %s is too small to receive the data';
399     STransactionNotEnding = 'Transaction is not being completed';
400     SDscInfoTokenMissing = '%s token not found';
401     SNoLoginDialog = 'Default Login Dlalog not found. Have you included ibexpress ' +
402     'in your program uses list?';
403     SEmptyAttachmentsList = 'The list of database attachments cannot be empty';
404     SFirebirdLibraryLoaded = 'The Firebird Library is already loaded';
405     SInfoBufferIndexError = 'Info Buffer Index Out of Range (%d)';
406     SInfoBufferTypeError = 'Invalid operation for Info Buffer Type (%d)';
407     SInfoBufferOverflow = 'Info Buffer overlow';
408     SServiceRequestIndexError = 'Service Request Index Out of Range (%d)';
409     SServiceParamTypeError = 'Invalid Request for Service Param Type';
410     SOutputBlockIndexError = 'Output Block Index Out of Range (%d)';
411     SOutputBlockTypeError = 'Invalid Request for Output Block Type';
412     SPBIndexError = 'DPB Index out of range (%d)';
413     SPBParamTypeError = 'Invalid Request for DPB Param Type';
414     SDuplicateParamName = 'Blob or array parameter name must be unique (%s)';
415 tony 47 SInvalidArrayDimensions = 'Invalid number of array dimensions (%d)';
416 tony 45 SNotAMultiDatabaseTransaction = 'This is not a multi-database transaction';
417     SAttachmentListIndexError = 'Attachment List index out of range (%d)';
418     SNotAnArray = 'Table Column must be an array';
419     SNotABlob = 'Table Column must be a Blob';
420     SInvalidSubscript = 'Invalid Subscript (%d) for Array Dimension %d';
421     SArrayElementOverFlow = 'Array Element too big';
422     SArrayBoundsCantIncrease = 'Array Bounds can only be narrowed';
423     SStatementNotPrepared = 'The Statement has not been prepared';
424     SInterfaceOutofDate = 'This interface is no longer up-to-date';
425     SUnexpectedDatabaseInfoResp = 'Unexpected Database Information Response';
426     SInvalidBlobMetaData = 'Unable to Access Blob Meta Data';
427     SNoDPB = 'A DPB must be provided';
428     SInEventWait = 'Already in Event Wait State';
429     SIncompatibleBlob = 'Incompatible Blob SubTypes. %d expected, %d found';
430     SMissingColumnName = 'Relation or Column Name Missing';
431     SStringTooLong = 'String "%s" is too long. Max %d characters';
432     SFieldNotinDataSet = 'Field %s is not a member of DataSet %s';
433     SNotCurrentArray = 'Cannot Edit an Array that is not part of the current record';
434     SNoDefaultCharacterSet = 'A connection default character set is required to perform this operation';
435     SParamBufferOverflow = 'Parameter Buffer Overflow';
436     SInvalidParamCount = 'Invalid Parameter Count. %d expected, %d found';
437     SInvalidVariantType = 'Invalid variant type';
438     SServiceRunning = 'Cannot start a new service while an existing service is running';
439 tony 47 SUniqueRelationReqd = 'All Output Fields must derived from the same table';
440 tony 56 SInterfaceNotSupported = 'Interface not supported; Guid %s not found';
441 tony 45
442     const
443     IBErrorMessages: array[TIBClientError] of string = (
444     SUnknownError,
445     SInterBaseMissing,
446     SInterBaseInstallMissing,
447     SIB60feature,
448     SNotSupported,
449     SNotPermitted,
450     SFileAccessError,
451     SConnectionTimeout,
452     SCannotSetDatabase,
453     SCannotSetTransaction,
454     SOperationCancelled,
455     SDPBConstantNotSupported,
456     SDPBConstantUnknown,
457     STPBConstantNotSupported,
458     STPBConstantUnknown,
459     SDatabaseClosed,
460     SDatabaseOpen,
461     SDatabaseNameMissing,
462     SNotInTransaction,
463     SInTransaction,
464     STimeoutNegative,
465     SNoDatabasesInTransaction,
466     SUpdateWrongDB,
467     SUpdateWrongTR,
468     SDatabaseNotAssigned,
469     STransactionNotAssigned,
470     SXSQLDAIndexOutOfRange,
471     SXSQLDANameDoesNotExist,
472     SEOF,
473     SBOF,
474     SInvalidStatementHandle,
475     SSQLOpen,
476     SSQLClosed,
477     SDatasetOpen,
478     SDatasetClosed,
479     SUnknownSQLDataType,
480     SInvalidColumnIndex,
481     SInvalidParamColumnIndex,
482     SInvalidDataConversion,
483     SColumnIsNotNullable,
484     SBlobCannotBeRead,
485     SBlobCannotBeWritten,
486     SBlobNotOpen,
487     SEmptyQuery,
488     SCannotOpenNonSQLSelect,
489     SNoFieldAccess,
490     SFieldReadOnly,
491     SFieldNotFound,
492     SNotEditing,
493     SCannotInsert,
494     SCannotPost,
495     SCannotUpdate,
496     SCannotDelete,
497     SCannotRefresh,
498     SBufferNotSet,
499     SCircularReference,
500     SSQLParseError,
501     SUserAbort,
502     SDataSetUniDirectional,
503     SCannotCreateSharedResource,
504     SWindowsAPIError,
505     SColumnListsDontMatch,
506     SColumnTypesDontMatch,
507     SCantEndSharedTransaction,
508     SFieldUnsupportedType,
509     SCircularDataLink,
510     SEmptySQLStatement,
511     SIsASelectStatement,
512     SRequiredParamNotSet,
513     SNoStoredProcName,
514     SIsAExecuteProcedure,
515     SUpdateFailed,
516     SNotCachedUpdates,
517     SNotLiveRequest,
518     SNoProvider,
519     SNoRecordsAffected,
520     SNoTableName,
521     SCannotCreatePrimaryIndex,
522     SCannotDropSystemIndex,
523     STableNameMismatch,
524     SIndexFieldMissing,
525     SInvalidCancellation,
526     SInvalidEvent,
527     SMaximumEvents,
528     SNoEventsRegistered,
529     SInvalidQueueing,
530     SInvalidRegistration,
531     SInvalidBatchMove,
532     SSQLDialectInvalid,
533     SSPBConstantNotSupported,
534     SSPBConstantUnknown,
535     SServiceActive,
536     SServiceInActive,
537     SServerNameMissing,
538     SQueryParamsError,
539     SStartParamsError,
540     SOutputParsingError,
541     SUseSpecificProcedures,
542     SSQLMonitorAlreadyPresent,
543     SCantPrintValue,
544     SEOFReached,
545     SEOFInComment,
546     SEOFInString,
547     SParamNameExpected,
548     SSuccess,
549     SDelphiException,
550     SNoOptionsSet,
551     SNoDestinationDirectory,
552     SNosourceDirectory,
553     SNoUninstallFile,
554     SOptionNeedsClient,
555     SOptionNeedsServer,
556     SInvalidOption,
557     SInvalidOnErrorResult,
558     SInvalidOnStatusResult,
559     SDPBConstantUnknownEx,
560     STPBConstantUnknownEx,
561     SSV5APIError,
562     SThreadFailed,
563     SFieldSizeError,
564     STransactionNotEnding,
565     SDscInfoTokenMissing,
566     SNoLoginDialog,
567     SEmptyAttachmentsList,
568     SFirebirdLibraryLoaded,
569     SInfoBufferIndexError,
570     SInfoBufferTypeError,
571     SInfoBufferOverflow,
572     SServiceRequestIndexError,
573     SServiceParamTypeError,
574     SOutputBlockIndexError,
575     SOutputBlockTypeError,
576     SPBIndexError,
577     SPBParamTypeError,
578     SDuplicateParamName,
579     SInvalidArrayDimensions,
580     SNotAMultiDatabaseTransaction,
581     SAttachmentListIndexError,
582     SNotAnArray,
583     SNotABlob,
584     SInvalidSubscript,
585     SArrayElementOverFlow,
586     SArrayBoundsCantIncrease,
587     SStatementNotPrepared,
588     SInterfaceOutofDate,
589     SUnexpectedDatabaseInfoResp,
590     SInvalidBlobMetaData,
591     SNoDPB,
592     SInEventWait,
593     SIncompatibleBlob,
594     SMissingColumnName,
595     SStringTooLong,
596     SFieldNotinDataSet,
597     SNotCurrentArray,
598     SNoDefaultCharacterSet,
599     SParamBufferOverflow,
600     SInvalidParamCount,
601     SInvalidVariantType,
602 tony 47 SServiceRunning,
603 tony 56 SUniqueRelationReqd,
604     SInterfaceNotSupported
605 tony 45 );
606    
607 tony 56 function GetErrorMessage(ErrMess: TIBClientError): AnsiString;
608 tony 45 begin
609     Result := IBErrorMessages[ErrMess];
610     end;
611    
612     end.
613