Subject error with RecordCount and Int64
Author achidan

I'm using firebird 1.0 and migrated from Delphi 5.0 to Delphi 6.0 and
at the same time from IBObjects 3.6 to IBObjects 4.2c. Since then I
have a problem with RecordCount (I guess it's record count).

I get the following message:
arithmetic exception, numeric overflow, or string truncation
Cannot transliterate character between character sets

In SQL Trace I find that it is cause by a statement like this:

SELECT COUNT( DISTINCT ParamID || '.zZz.' || ParamName || '.zZz.' ||
ParamDesc || '.zZz.' || ParamTypeCd )
FROM Param join ParamType on Param.ParamTypeID = ParamType.ParamTypeID
join ActType on Param.ActTypeID = ActType.ActTypeID WHERE ActTypeCd
= ? /* pActTypeCd */

My database and connection is with Character set ISO8856_1.

The problem must be cause by ParamID. ParamID is of type Numeric(18,0)
(Int64). If I execute the statement in i.e. IBConsole without the
field ParamID I don't get the error above.

Has anyone an explanation for that problem and a way to get rid of it?

Thank you very much for your help.

Daniel Achermann