|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
Подскажите пожалуйста, если сталкивались с проблемой. Используется Informix 10 и CBuilder 6 + dbExpress в качестве клиента. Есть ХП, у которой есть входные параметры с типом Money. В описании компонента SQLStoredProc свойство DataType этих параметров трактуется как ftBCD. Не могу правильно подобрать тип конкретных значений для таких параметров. Приложение выводит ошибку "BCD overflow". Например: присваиваем параметру значение Код: plaintext 1.
Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2010, 11:23 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
Подскажите хотя бы можно ли проконтролировать значение параметра в момент вызова ХП непосредственно в Informix и как это сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2010, 13:35 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
Юрий Р., А если задать целое число, то есть ошибка? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2010, 13:43 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
Ikir, С параметрами целого и строкового типа проблем нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2010, 14:41 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
Юрий Р. С параметрами целого и строкового типа проблем нет. Скорей всего опять пресловутая проблема с разделителем дробной части: точка или запятая. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2010, 14:46 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
Поменять тип параметра в ручную на ftFloat или ftCurrency ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2010, 15:12 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
TmpFile(), На ftCurrency менял - без изменений, поэтому на ftFloat думаю нет смысла. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2010, 15:24 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
Ikir Скорей всего опять пресловутая проблема с разделителем дробной части: точка или запятая. +1 в особенности если так отработает Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2010, 17:17 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
Daugava, Нет, проблема не в разделителе. Если использовать точку, получаем ошибку. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2010, 11:12 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
А что за драйвер dbExpress используется? Может, это его баг драйвера... А если этот, http://sourceforge.net/projects/open-dbexpress/, попробовать? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2010, 15:02 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
В.К.А что за драйвер dbExpress используется? Может, это его баг драйвера... А если этот, http://sourceforge.net/projects/open-dbexpress/, попробовать? Я понял, что этот драйвер только для ODBC, а я пытаюсь использовать для Informix. Через ODBC я пробовал ADO, но уж больно долго запрос идет. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2010, 16:09 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
Я понял, что этот драйвер только для ODBC, а я пытаюсь использовать для Informix. Более-менее рабочим dbexpress для Informix стал в Delphi 2010 ( http://www.sql.ru/forum/actualthread.aspx?tid=707999#7864909 ). Перейдите на нее. В качестве альтенативы можете попробовать скачать и собрать dbexpress от Luxena, он недавно стал Open source ( http://www.sql.ru/forum/actualthread.aspx?tid=738143 ). Через ODBC я пробовал ADO, но уж больно долго запрос идет. Это скорее всего проблема ADO, а не ODBC. Попробуйте работать с ODBC через AnyDAC - резльтат может вас приятно удивить. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2010, 22:02 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
Исключение EConvertError вызывает StrToCurr hlp Delphi The DecimalSeparator global variable defines the character that is used as a decimal point. Thousand separators and currency symbols are not allowed in the string. If the string doesn't contain a valid value, StrToCurr raises an EConvertError exception. В Делфи, не думаю, что билдер чем-то отличается. hlp Delphi var CurrencyString: string; var CurrencyFormat: Byte; var NegCurrFormat: Byte; var ThousandSeparator: Char; var DecimalSeparator: Char; var CurrencyDecimals: Byte; var DateSeparator: Char; var ShortDateFormat: string; var LongDateFormat: string; var TimeSeparator: Char; var TimeAMString: string; var TimePMString: string; var ShortTimeFormat: string; var LongTimeFormat: string; var ShortMonthNames: array[1..12] of string; var LongMonthNames: array[1..12] of string; var ShortDayNames: array[1..7] of string; var LongDayNames: array[1..7] of string; var SysLocale: TSysLocale; var EraNames: array[1..7] of string; var EraYearOffsets: array[1..7] of Integer; var TwoDigitYearCenturyWindow: Word = 50; var TListSeparator: Char; Разделе инициализации модуля Код: plaintext 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.03.2010, 11:19 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
Код: plaintext 1. 2. 3.
И кто собственно выдавал ошибку "BCD overflow"? посмотреть лог (смотреть на TSQLMonitor), того что передается на сервер, и какие значения привязываются к параметрам процедуры. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.03.2010, 11:29 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
Юрий Р.В.К.А что за драйвер dbExpress используется? Может, это его баг драйвера... А если этот, http://sourceforge.net/projects/open-dbexpress/, попробовать? Я понял, что этот драйвер только для ODBC, а я пытаюсь использовать для Informix. Через ODBC я пробовал ADO, но уж больно долго запрос идет. Вопрос пока не в скорости. Если другой драйвер при тех же данных, настройках среды Informix и том же приложении не вернет ошибки - проблема, вероятно, в используемом сейчас драйвере :) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.03.2010, 21:14 |
|
Тип значения параметра ХП
|
|||
---|---|---|---|
#18+
Решил проблему через компонент SQLQuery. Т.е.: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Всем спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2010, 16:28 |
|
|
start [/forum/topic.php?fid=44&fpage=24&tid=1607615]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
61ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
others: | 11ms |
total: | 162ms |
0 / 0 |