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

File Contents

# Content
1 (*
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 {$IFDEF MSWINDOWS}
64 {$DEFINE WINDOWS}
65 {$ENDIF}
66
67 {$IFDEF FPC}
68 {$mode delphi}
69 {$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 ibxeServiceRunning,
243 ibxeUniqueRelationReqd,
244 ibxeInterfaceNotSupported
245 );
246
247 function GetErrorMessage(ErrMess: TIBClientError): AnsiString;
248
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 SArray = '(array)';
270 SBlob = '(blob)';
271
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 SInvalidArrayDimensions = 'Invalid number of array dimensions (%d)';
416 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 SUniqueRelationReqd = 'All Output Fields must derived from the same table';
440 SInterfaceNotSupported = 'Interface not supported; Guid %s not found';
441
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 SServiceRunning,
603 SUniqueRelationReqd,
604 SInterfaceNotSupported
605 );
606
607 function GetErrorMessage(ErrMess: TIBClientError): AnsiString;
608 begin
609 Result := IBErrorMessages[ErrMess];
610 end;
611
612 end.
613