powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / EVariantOverflowError
10 сообщений из 10, страница 1 из 1
EVariantOverflowError
    #34060125
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
select @@version
Adaptive Server Enterprise/12.5.1/EBF 11428/P/NT (IX86)/OS 4.0/ase1251/1823/32-bit/OPT/Wed Sep 17 11:10:54 2003

Provider: Sybase.ASEOLEDBProvider
При попытке прочитать 999999999999999999 из decimal(18,0) ( numeric(18,0) )
Код: plaintext
tmpCurrency=ADODataSet->FieldByName(SybaseFieldName)->AsCurrency;
имею
EVariantOverflowError
Overflow while converting variant of type (Decimal) into type (Currency)

Проверил в VS2003 на этом же провайдере - там все сухо... Выходит Борман снова обложался?.. Или это лечиться как-то?.. Я так понимаю происходит переполнение в As...

P.S. Связал с Grid'ом
Grid
BCD overflow


P.P.S. BCB6+sp4, w2k+sp3
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
EVariantOverflowError
    #34060500
Марсель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все правильно, вроде
Currency - это 20 знаков, в том числе 4 после запятой
используй, может поможет
FieldByName('xxx')->Value

кстати как заведены fields в ADODataSet, в дизайн-тайме или в ран-тайме,
если в дизайн, то какого они типа ?
...
Рейтинг: 0 / 0
EVariantOverflowError
    #34060750
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марсель
используй, может поможет
FieldByName('xxx')->Value

Перепробовал уже все: AsFloat , AsString , AsInteger , AsVariant , AsBCD , AsCurrency , Value - что мертвому припарки... Все тот же EVariantOverflowError

Марсель
кстати как заведены fields в ADODataSet, в дизайн-тайме или в ран-тайме,
если в дизайн, то какого они типа?

DataSet заполняется select'ом в run-time. Тип, согласно FieldDefs-Items[]->DataType - ftBCD.
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
EVariantOverflowError
    #34061082
Марсель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
плохо, должно быть ftFMTBcd
ftBcd - втури тотже currency, насколько я помню

PS: модерам - не пинайте за оффтоп :)
...
Рейтинг: 0 / 0
EVariantOverflowError
    #34062820
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тады шо - сливаем воду?..
Марсель
модерам - не пинайте за оффтоп

А куда еще писать? Борманистам? А сколько из них ваще слово Sybase знает?
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
EVariantOverflowError
    #34063972
Марсель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробуй поле увеличить до numeric(20,0), или больше
ну или
ADODataSet.EnableBCD := false;

тогда у тебя будет float со всеми вытекающими :)
...
Рейтинг: 0 / 0
EVariantOverflowError
    #34065142
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марсель
попробуй поле увеличить до numeric(20,0), или больше

ну разве шо ради спортивного интереса... а так - это приблуда, перегоняющая info из Sybase в dbf. По сему заранее неизвестно, какого типа поля будут... а перегнать-то их нуна все...
Марсель
или
ADODataSet.EnableBCD := false;

тогда у тебя будет float со всеми вытекающими :)

не... "...такой хоккей нам не нужен..."
Если это непобедимо - прийдется под .NET переписать... А жаль... Так хотелось что бы все было stanalone (без всех этих "...причалов, пароходов...")
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
EVariantOverflowError
    #34065189
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Softну разве шо ради спортивного интереса... а так - это приблуда, перегоняющая info из Sybase в dbf. По сему заранее неизвестно, какого типа поля будут... а перегнать-то их нуна все...А зачем тогда что-то писать вообще? isql же это и так умеет.
...
Рейтинг: 0 / 0
EVariantOverflowError
    #34065375
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl
isql же это и так умеет

Ну... Если это не дюжжечки страшная военная тайна
- подскажите: как?
BTW, а char'овские данные он могет в другую cp сразу же при экспорте перегонять? А указать целевую dbf'ку и тока необходимые поля ему можно? А из SP (с несколькими recordset'ами) он данные могет экспортить?
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
EVariantOverflowError
    #34067794
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft White Owl
isql же это и так умеет

Ну... Если это не дюжжечки страшная военная тайна
Команда OUTPUT.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / EVariantOverflowError
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]