ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/trunk/fbintf/client/FBMessages.pas
Revision: 209
Committed: Wed Mar 14 12:48:51 2018 UTC (6 years, 8 months ago) by tony
Content type: text/x-pascal
File size: 24579 byte(s)
Log Message:
Fixes Merged

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