![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Рубли без копеек [D6, MSSQL]
Explorer © (2002-06-10 14:35:00)Добрый день, мастера!
Есть две таблицы. В первую заношу какие-то денежные данные
(money). При просмотре данные отображаются корректно, т.е.
рубли с копейками (Ex.: 14.50).
В приложении некоторые поля первой таблицы приравниваю второй и
получаю только рубли (14). Тип данных в обеих таблицах одинаковый.
Где я мог напортачить?
Explorer (2002-06-11 12:36:00) [1]>Johnmen ©
Все равно спасибо!
Johnmen (2002-06-11 12:23:00) [2]К сожалению я не специалист по MSSQL (патологическая нелюбовь :))
И соответственно не знаком с синтаксисом при работе с курсорами...
Explorer (2002-06-11 12:02:00) [3]Johnmen ©
почему когда пишу в Query, такой запрос на проверку
declare @m float set @m = 1.22
select mom = @m
выдается ошибка: Error creating cursor handle
Тоже самое пишу в SQL Query Analyzer, то все нормально
Explorer (2002-06-11 11:08:00) [4]Спасибочки! Попробую!
Johnmen (2002-06-11 10:55:00) [5]Не знаю особенностей типа поля money в MSSQL.
Предпочитаю для денег всегда использовать FLOAT"о-подобные типы полей - так меньше вероятность нарваться на непредвиденные особенности реализации типа...
Explorer (2002-06-11 10:47:00) [6]Johnmen ©
1)потытаюсь конечно
2)поле - money
Johnmen (2002-06-11 10:23:00) [7]А если попробовать работать с полем как AsFloat ?
Какого типа поле в таблице ?
Explorer (2002-06-11 10:18:00) [8]когда пишу
t2.CostPerDayFiz
В дбгрид тоже не выводятся полностью. Отсекаются!
Но, когда пишу так
rtrim(convert(varchar(20),t2.CostPerDayFiz)) as CostPerDayFiz
то все нормально! Не могу понять почему?!
Так бы и оставил, но мне просто надо в дальнейшем с этими "деньгами" работать (разные операции над ними проводить).
Еще поднял мануал, так там пишут, что если использовать тип данных money, то "надо перед значещей цифрой ставить знак доллара или другой валюты, определенной для вышего региона".
Это обязательно?
Если, да, то как это воплотить в процедурах?
Johnmen (2002-06-11 09:13:00) [9]А выводится в дбгрид ? И если есть копейки, то они просто не показываются ? Если да - то округляются, отсекаются ?
Explorer (2002-06-11 07:43:00) [10]Блин, а вот когда пишу вот так в запросе для Query
rtrim(convert(varchar(20),t2.CostPerDayFiz)) as CostPerDayFiz
то все правильно выводиться, с "копейками".
Но когда пишу
t2.CostPerDayFiz, то только "рубли"!
Почему так?
Explorer (2002-06-11 06:27:00) [11]Ну подкиньте, хоть какие-нибудь еще идеи?
Explorer (2002-06-10 15:12:00) [12]TSV ©
Код:
StoredProcChangeNewDogovor.ParamByName("@CostPerDayDogovor").AsCurrency:=
QueryFreeCells.FieldByName("CostPerDayFiz").AsCurrency;
А пытался вывести данные в DBEdit и просто просмотреть. Но та же проблема!
TSV (2002-06-10 14:59:00) [13]Покажи код, как ты это (приравнивание) делаешь.