Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблема с представлением дробных чисел Oracle [D6, Oracle, ]


EternalWonderer ©   (2001-12-29 09:32:00) 

Дано: поле NUMBER(8,2) в ORACLE. Используется TSQLClientDataSet (из комплекта dbExpress), TBCDField (DisplayFormat="#0.00", Precision=8, Size=2), dbGrid.
Задача: в DBGrid получить "нормальное" отображение чисел.
Проблема: число 1.12 в DBGrid выводится как 112.00, т.е. теряется десятичная запятая.
Дополнительная информация: до этого из Interbase всё выводилось, как надо (поле было типа TFloatField).
Что делать? Заранее спасибо за совет.


ben   (2002-01-03 11:24:00) [1]

Для floadfield есть precision-знаков опосля ","
но куды ставить не знаю.
Если найдете, подскажите убогому


EternalWonderer   (2001-12-31 13:37:00) [2]

М-да... Кажется, есть трудности.
Если уж даже профи ничего не могут посоветовать ...


petr_v_a   (2001-12-29 15:22:00) [3]

Зависит скорее, все-таки от кривых компонент доступа. У Oracle своей кривизны, конечно, хватает, но это вряли тот случай - обратите внимание: практически нет вопросов по приколам DOA или ODAC, а по dbExpress и BDE - каждый день


Yuvich   (2001-12-29 13:13:00) [4]

Попробуйте поставить
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0\NLS_LANG=AMERICAN_AMERICA. CL8MSWIN1251

Будут только сообщения на English.

Это, конечно, не выход, но во всяком случае все остальное правильно.

Мне думается, это зависит от Oracle, потому что с RUSSIAN_CIS.CL8MSWIN1251 на 8.1.7 у нас тоже проблемы, но чуть другого характера, а с другой версией Oracle 8.0.5 - проблем нет.


Илья   (2001-12-29 12:09:00) [5]


Если вместо
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0\NLS_LANG=RUSSIAN_CIS.CL8MSWIN1251
поставить
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0\NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1

то все нормально. Но это конечно не выход, т.к.
вси данные на русском будут колябушками. У меня та же проблема.
Если кто-то что дельное вам присоветует, то напишите пожалуйста.
Я , в свою очередь, тоже напишу, если справлюсь.


EternalWonderer   (2001-12-29 11:47:00) [6]

Илья (29.12.01 10:55)
У меня пропачканный D6 :)


EternalWonderer   (2001-12-29 11:38:00) [7]

>sky3d © (29.12.01 09:59)
Боюсь, не пройдёт: TSQLConnection не использует настройки BDE.
Использовать поле типа TFloatField не удаётся - пишет, ожидается другой тип данных ...


Илья   (2001-12-29 10:55:00) [8]

Вроде это было пропачкано в Delphi6 Update #1


sky3d   (2001-12-29 09:59:00) [9]

В настройках алиаса Oracle значение параметра Enable BCD установить в False.
Удачи.


Наверх

Титульная страница Поиск, карта сайта Написать письмо