ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/branches/udr/client/FBMessages.pas
(Generate patch)

Comparing ibx/trunk/fbintf/client/FBMessages.pas (file contents):
Revision 209 by tony, Wed Mar 14 12:48:51 2018 UTC vs.
Revision 291 by tony, Fri Apr 17 10:26:08 2020 UTC

# Line 60 | Line 60
60   {                                                                        }
61   {************************************************************************}
62   unit FBMessages;
63 < {$IFDEF MSWINDOWS}
64 < {$DEFINE WINDOWS}
63 > {$IFDEF MSWINDOWS}
64 > {$DEFINE WINDOWS}
65   {$ENDIF}
66  
67   {$IFDEF FPC}
# Line 75 | Line 75 | uses
75    Classes, SysUtils;
76  
77   type
78  TIBDataBaseErrorMessage    = (ShowSQLCode,
79                                  ShowIBMessage,
80                                  ShowSQLMessage);
81
82  TIBDataBaseErrorMessages   = set of TIBDataBaseErrorMessage;
78    TIBClientError            = (
84      ibxeUnknownError,
79        ibxeInterBaseMissing,
86      ibxeInterBaseInstallMissing,
80        ibxeIB60feature,
81        ibxeNotSupported,
82        ibxeNotPermitted,
90      ibxeFileAccessError,
91      ibxeConnectionTimeout,
92      ibxeCannotSetDatabase,
93      ibxeCannotSetTransaction,
94      ibxeOperationCancelled,
95      ibxeDPBConstantNotSupported,
96      ibxeDPBConstantUnknown,
97      ibxeTPBConstantNotSupported,
98      ibxeTPBConstantUnknown,
83        ibxeDatabaseClosed,
100      ibxeDatabaseOpen,
101      ibxeDatabaseNameMissing,
84        ibxeNotInTransaction,
103      ibxeInTransaction,
104      ibxeTimeoutNegative,
105      ibxeNoDatabasesInTransaction,
106      ibxeUpdateWrongDB,
107      ibxeUpdateWrongTR,
108      ibxeDatabaseNotAssigned,
85        ibxeTransactionNotAssigned,
110      ibxeXSQLDAIndexOutOfRange,
111      ibxeXSQLDANameDoesNotExist,
86        ibxeEOF,
87        ibxeBOF,
88        ibxeInvalidStatementHandle,
115      ibxeSQLOpen,
89        ibxeSQLClosed,
117      ibxeDatasetOpen,
118      ibxeDatasetClosed,
90        ibxeUnknownSQLDataType,
91        ibxeInvalidColumnIndex,
121      ibxeInvalidParamColumnIndex,
92        ibxeInvalidDataConversion,
123      ibxeColumnIsNotNullable,
93        ibxeBlobCannotBeRead,
94        ibxeBlobCannotBeWritten,
95        ibxeBlobNotOpen,
96        ibxeEmptyQuery,
128      ibxeCannotOpenNonSQLSelect,
129      ibxeNoFieldAccess,
130      ibxeFieldReadOnly,
97        ibxeFieldNotFound,
132      ibxeNotEditing,
133      ibxeCannotInsert,
134      ibxeCannotPost,
135      ibxeCannotUpdate,
136      ibxeCannotDelete,
137      ibxeCannotRefresh,
138      ibxeBufferNotSet,
139      ibxeCircularReference,
98        ibxeSQLParseError,
141      ibxeUserAbort,
142      ibxeDataSetUniDirectional,
143      ibxeCannotCreateSharedResource,
144      ibxeWindowsAPIError,
145      ibxeColumnListsDontMatch,
146      ibxeColumnTypesDontMatch,
147      ibxeCantEndSharedTransaction,
148      ibxeFieldUnsupportedType,
149      ibxeCircularDataLink,
150      ibxeEmptySQLStatement,
99        ibxeIsASelectStatement,
152      ibxeRequiredParamNotSet,
153      ibxeNoStoredProcName,
100        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,
101        ibxeMaximumEvents,
168      ibxeNoEventsRegistered,
169      ibxeInvalidQueueing,
170      ibxeInvalidRegistration,
171      ibxeInvalidBatchMove,
172      ibxeSQLDialectInvalid,
173      ibxeSPBConstantNotSupported,
174      ibxeSPBConstantUnknown,
102        ibxeServiceActive,
103        ibxeServiceInActive,
104        ibxeServerNameMissing,
178      ibxeQueryParamsError,
179      ibxeStartParamsError,
105        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,
106        ibxeEmptyAttachmentsList,
208      ibxeFirebirdLibraryLoaded,
209      ibxeInfoBufferIndexError,
107        ibxeInfoBufferTypeError,
211      ibxeInfoBufferOverflow,
108        ibxServiceRequestIndexError,
109        ibxServiceParamTypeError,
110        ibxeOutputBlockIndexError,
# Line 226 | Line 122 | type
122        ibxArrayBoundsCantIncrease ,
123        ibxeStatementNotPrepared,
124        ibxeInterfaceOutofDate,
229      ibxeUnexpectedDatabaseInfoResp,
125        ibxeInvalidBlobMetaData,
126        ibxeNoDPB,
127        ibxeInEventWait,
# Line 234 | Line 129 | type
129        ibxeMissingColumnName,
130        ibxStringTooLong,
131        ibxFieldNotinDataSet,
237      ibxeNotCurrentArray,
132        ibxeNoDefaultCharacterSet,
133        ibxeParamBufferOverflow,
134        ibxeInvalidParamCount,
135        ibxeInvalidVariantType,
242      ibxeServiceRunning,
243      ibxeUniqueRelationReqd,
136        ibxeInterfaceNotSupported,
137        ibxeCharacterSetExists,
138        ibxeUnknownUserCharSet,
139        ibxeUninitializedInputParameter,
140 <      ibxeNegativeGenerator,
141 <      ibxeServiceUnavailable,
142 <      ibxeBadConnectString,
143 <      ibxeServiceNotStarted,
144 <      ibxeNotRequiredDataSetSource,
145 <      ibxeNoLimboTransactionInsert,
254 <      ibxeDatabaseNotConnected
140 >      ibxeMultiThreadRequired,
141 >      ibxeTokenQueueOverflow,
142 >      ibxeTokenQueueUnderflow,
143 >      ibxErrorParsing,
144 >      ibxeDLInfoError,
145 >      ibxeDifferentAPIs
146        );
147  
148   function GetErrorMessage(ErrMess: TIBClientError): AnsiString;
149  
150 + {IBError is used internally and by IBX to throw an EIBClientError}
151 +
152 + procedure IBError(ErrMess: TIBClientError; const Args: array of const);
153 +
154   resourcestring
155    { generic strings used in code }
261  SEOFReached = 'SEOFReached';
262  SEOFInComment = 'EOF in comment detected';
263  SEOFInString = 'EOF in string detected';
156    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?';
157    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';
158    SFirebirdAPIFuncNotFound = 'Unable to load Firebird Client Library Function "%s"';
276  SDatabaseFilter = 'Database Files (*.fdb; *.gdb)|*.gdb; *.fdb|All files (*.*)|*.*';
159    STrue = 'true';
160    SFalse = 'false';
161    SArray = '(array)';
280  SBlob = '(blob)';
162  
163   implementation
164  
165 < uses IBUtils;
165 > uses IBUtils, IB;
166  
167   resourcestring
168  
169   { strings used in error messages}
289  SUnknownError = 'Unknown error';
170    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';
171    SIB60feature = '%s is an InterBase 6 function. Please upgrade to InterBase 6 to use this functonality';
172    SNotSupported = 'Unsupported feature';
173    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';
174    SDatabaseClosed = 'Cannot perform operation -- DB is not open';
305  SDatabaseOpen = 'Cannot perform operation -- DB is currently open';
306  SDatabaseNameMissing = 'Database name is missing';
175    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';
176    STransactionNotAssigned = 'Transaction not assigned';
315  SXSQLDAIndexOutOfRange = 'XSQLDA index out of range';
316  SXSQLDANameDoesNotExist = 'XSQLDA name does not exist (%s)';
177    SEOF = 'End of file';
178    SBOF = 'Beginning of file';
179    SInvalidStatementHandle = 'Invalid statement handle';
320  SSQLOpen = 'IBSQL Open';
180    SSQLClosed = 'IBSQL Closed';
322  SDatasetOpen = 'Dataset open';
323  SDatasetClosed = 'Dataset closed';
181    SUnknownSQLDataType = 'Unknown SQL Data type (%d)';
182    SInvalidColumnIndex = 'Invalid column index (index exceeds permitted range)';
326  SInvalidParamColumnIndex = 'Invalid parameter index (index exceeds permitted range)';
183    SInvalidDataConversion = 'Invalid data conversion';
328  SColumnIsNotNullable = 'Column cannot be set to null (%s)';
184    SBlobCannotBeRead = 'Blob stream cannot be read';
185    SBlobCannotBeWritten = 'Blob stream cannot be written';
186    SBlobNotOpen = 'The Blob is not open';
187    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';
188    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';
189    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';
190    SIsASelectStatement = 'use Open for a Select Statement';
362  SRequiredParamNotSet = 'Required parameter "%s" value not set';
363  SNoStoredProcName = 'No Stored Procedure Name assigned';
191    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';
192    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';
193    SServiceActive = 'Cannot perform operation -- service is not attached';
194    SServiceInActive = 'Cannot perform operation -- service is attached';
195    SServerNameMissing = 'Server Name Missing';
388  SQueryParamsError = 'Query Parameters missing or incorrect';
389  SStartParamsError = 'start Parameters missing or incorrect';
196    SOutputParsingError = 'Unexpected Output buffer value (%d) - %s';
391  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?';
197    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)';
198    SInfoBufferTypeError = 'Invalid operation for Info Buffer Type (%d)';
417  SInfoBufferOverflow = 'Info Buffer overlow';
199    SServiceRequestIndexError = 'Service Request Index Out of Range (%d)';
200    SServiceParamTypeError = 'Invalid Request for Service Param Type';
201    SOutputBlockIndexError = 'Output Block Index Out of Range (%d)';
# Line 432 | Line 213 | resourcestring
213    SArrayBoundsCantIncrease = 'Array Bounds can only be narrowed';
214    SStatementNotPrepared = 'The Statement has not been prepared';
215    SInterfaceOutofDate = 'This interface is no longer up-to-date';
435  SUnexpectedDatabaseInfoResp = 'Unexpected Database Information Response';
216    SInvalidBlobMetaData = 'Unable to Access Blob Meta Data';
217    SNoDPB = 'A DPB must be provided';
218    SInEventWait = 'Already in Event Wait State';
# Line 440 | Line 220 | resourcestring
220    SMissingColumnName = 'Relation or Column Name Missing';
221    SStringTooLong = 'String "%s" is too long. Max %d characters';
222    SFieldNotinDataSet = 'Field %s is not a member of DataSet %s';
443  SNotCurrentArray = 'Cannot Edit an Array that is not part of the current record';
223    SNoDefaultCharacterSet = 'A connection default character set is required to perform this operation';
224    SParamBufferOverflow = 'Parameter Buffer Overflow';
225    SInvalidParamCount = 'Invalid Parameter Count. %d expected, %d found';
226    SInvalidVariantType = 'Invalid variant type';
448  SServiceRunning = 'Cannot start a new service while an existing service is running';
449  SUniqueRelationReqd = 'All Output Fields must derived from the same table';
227    SInterfaceNotSupported = 'Interface not supported; Guid %s not found';
228    SCharacterSetExists = 'Character set "%s" is already defined';
229    SUnknownUserCharSet = 'Unknown user character set "%s"';
230    SUninitializedInputParameter = 'SQL Param No. %d (%s) is uninitialised';
231 <  SNegativeGenerator = 'A Generator Increment cannot be negative';
232 <  SServiceUnavailable = 'Request Service is not available';
233 <  SBadConnectString = 'Parse Error in Connect String';
234 <  SServiceNotStarted = 'Cannot Query running service until the service has been started';
235 <  SNotRequiredDataSetSource = 'Object of class %s is not a valid dataset source';
236 <  SNoLimboTransactionInsert = 'You cannot add to a Limbo Transaction list';
237 <  SDatabaseNotConnected = 'Cannot connect using an unattached database';
231 >  SMultiThreadRequired = 'Multi-threading required for %s but not enabled. Please recompile with multi-threading support enabled. '+
232 >                         'Hint: you probably need to add -dUseCThreads to the Custom Options.';
233 >  STokenQueueOverflow = 'Error in SQL Token Analyser - token queue overflow';
234 >  STokenQueueUnderflow = 'Error in SQL Token Analyser - token queue underflow';
235 >  SErrorParsing = 'Error parsing SQL Statement at clause starting with %s';
236 >  SDLInfoError = 'dlinfo returned error - %s';
237 >  SDifferentAPIs = 'All transaction attachments must use the same Firebird Library';
238  
239   const
240    IBErrorMessages: array[TIBClientError] of string = (
464    SUnknownError,
241      SInterBaseMissing,
466    SInterBaseInstallMissing,
242      SIB60feature,
243      SNotSupported,
244      SNotPermitted,
470    SFileAccessError,
471    SConnectionTimeout,
472    SCannotSetDatabase,
473    SCannotSetTransaction,
474    SOperationCancelled,
475    SDPBConstantNotSupported,
476    SDPBConstantUnknown,
477    STPBConstantNotSupported,
478    STPBConstantUnknown,
245      SDatabaseClosed,
480    SDatabaseOpen,
481    SDatabaseNameMissing,
246      SNotInTransaction,
483    SInTransaction,
484    STimeoutNegative,
485    SNoDatabasesInTransaction,
486    SUpdateWrongDB,
487    SUpdateWrongTR,
488    SDatabaseNotAssigned,
247      STransactionNotAssigned,
490    SXSQLDAIndexOutOfRange,
491    SXSQLDANameDoesNotExist,
248      SEOF,
249      SBOF,
250      SInvalidStatementHandle,
495    SSQLOpen,
251      SSQLClosed,
497    SDatasetOpen,
498    SDatasetClosed,
252      SUnknownSQLDataType,
253      SInvalidColumnIndex,
501    SInvalidParamColumnIndex,
254      SInvalidDataConversion,
503    SColumnIsNotNullable,
255      SBlobCannotBeRead,
256      SBlobCannotBeWritten,
257      SBlobNotOpen,
258      SEmptyQuery,
508    SCannotOpenNonSQLSelect,
509    SNoFieldAccess,
510    SFieldReadOnly,
259      SFieldNotFound,
512    SNotEditing,
513    SCannotInsert,
514    SCannotPost,
515    SCannotUpdate,
516    SCannotDelete,
517    SCannotRefresh,
518    SBufferNotSet,
519    SCircularReference,
260      SSQLParseError,
521    SUserAbort,
522    SDataSetUniDirectional,
523    SCannotCreateSharedResource,
524    SWindowsAPIError,
525    SColumnListsDontMatch,
526    SColumnTypesDontMatch,
527    SCantEndSharedTransaction,
528    SFieldUnsupportedType,
529    SCircularDataLink,
530    SEmptySQLStatement,
261      SIsASelectStatement,
532    SRequiredParamNotSet,
533    SNoStoredProcName,
262      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,
263      SMaximumEvents,
548    SNoEventsRegistered,
549    SInvalidQueueing,
550    SInvalidRegistration,
551    SInvalidBatchMove,
552    SSQLDialectInvalid,
553    SSPBConstantNotSupported,
554    SSPBConstantUnknown,
264      SServiceActive,
265      SServiceInActive,
266      SServerNameMissing,
558    SQueryParamsError,
559    SStartParamsError,
267      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,
268      SEmptyAttachmentsList,
588    SFirebirdLibraryLoaded,
589    SInfoBufferIndexError,
269      SInfoBufferTypeError,
591    SInfoBufferOverflow,
270      SServiceRequestIndexError,
271      SServiceParamTypeError,
272      SOutputBlockIndexError,
# Line 606 | Line 284 | const
284      SArrayBoundsCantIncrease,
285      SStatementNotPrepared,
286      SInterfaceOutofDate,
609    SUnexpectedDatabaseInfoResp,
287      SInvalidBlobMetaData,
288      SNoDPB,
289      SInEventWait,
# Line 614 | Line 291 | const
291      SMissingColumnName,
292      SStringTooLong,
293      SFieldNotinDataSet,
617    SNotCurrentArray,
294      SNoDefaultCharacterSet,
295      SParamBufferOverflow,
296      SInvalidParamCount,
297      SInvalidVariantType,
622    SServiceRunning,
623    SUniqueRelationReqd,
298      SInterfaceNotSupported,
299      SCharacterSetExists,
300      SUnknownUserCharSet,
301      SUninitializedInputParameter,
302 <    SNegativeGenerator,
303 <    SServiceUnavailable,
304 <    SBadConnectString,
305 <    SServiceNotStarted,
306 <    SNotRequiredDataSetSource,
307 <    SNoLimboTransactionInsert,
634 <    SDatabaseNotConnected
302 >    SMultiThreadRequired,
303 >    STokenQueueOverflow,
304 >    STokenQueueUnderflow,
305 >    SErrorParsing,
306 >    SDLInfoError,
307 >    SDifferentAPIs
308    );
309  
310   function GetErrorMessage(ErrMess: TIBClientError): AnsiString;
# Line 639 | Line 312 | begin
312    Result := IBErrorMessages[ErrMess];
313   end;
314  
315 + procedure IBError(ErrMess: TIBClientError; const Args: array of const);
316 + begin
317 +  raise EIBClientError.Create(Ord(ErrMess),
318 +                              Format(GetErrorMessage(ErrMess), Args));
319 + end;
320 +
321   end.
322  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines