Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.04;
Скачать: CL | DM;

Вниз

Рубли без копеек   Найти похожие ветки 

 
Explorer ©   (2002-06-10 14:35) [0]

Добрый день, мастера!

Есть две таблицы. В первую заношу какие-то денежные данные
(money). При просмотре данные отображаются корректно, т.е.
рубли с копейками (Ex.: 14.50).
В приложении некоторые поля первой таблицы приравниваю второй и
получаю только рубли (14). Тип данных в обеих таблицах одинаковый.
Где я мог напортачить?


 
TSV ©   (2002-06-10 14:59) [1]

Покажи код, как ты это (приравнивание) делаешь.


 
Explorer ©   (2002-06-10 15:12) [2]

TSV ©
Код:

StoredProcChangeNewDogovor.ParamByName("@CostPerDayDogovor").AsCurrency:=
QueryFreeCells.FieldByName("CostPerDayFiz").AsCurrency;

А пытался вывести данные в DBEdit и просто просмотреть. Но та же проблема!


 
Explorer ©   (2002-06-11 06:27) [3]

Ну подкиньте, хоть какие-нибудь еще идеи?


 
Explorer ©   (2002-06-11 07:43) [4]

Блин, а вот когда пишу вот так в запросе для Query

rtrim(convert(varchar(20),t2.CostPerDayFiz)) as CostPerDayFiz

то все правильно выводиться, с "копейками".

Но когда пишу
t2.CostPerDayFiz , то только "рубли"!

Почему так?


 
Johnmen ©   (2002-06-11 09:13) [5]

А выводится в дбгрид ? И если есть копейки, то они просто не показываются ? Если да - то округляются, отсекаются ?



 
Explorer ©   (2002-06-11 10:18) [6]

когда пишу t2.CostPerDayFiz
В дбгрид тоже не выводятся полностью. Отсекаются!

Но, когда пишу так
rtrim(convert(varchar(20),t2.CostPerDayFiz)) as CostPerDayFiz
то все нормально! Не могу понять почему?!
Так бы и оставил, но мне просто надо в дальнейшем с этими "деньгами" работать (разные операции над ними проводить).
Еще поднял мануал, так там пишут, что если использовать тип данных money, то "надо перед значещей цифрой ставить знак доллара или другой валюты, определенной для вышего региона".
Это обязательно?
Если, да, то как это воплотить в процедурах?


 
Johnmen ©   (2002-06-11 10:23) [7]

А если попробовать работать с полем как AsFloat ?
Какого типа поле в таблице ?


 
Explorer ©   (2002-06-11 10:47) [8]

Johnmen ©
1)потытаюсь конечно
2)поле - money


 
Johnmen ©   (2002-06-11 10:55) [9]

Не знаю особенностей типа поля money в MSSQL.
Предпочитаю для денег всегда использовать FLOAT"о-подобные типы полей - так меньше вероятность нарваться на непредвиденные особенности реализации типа...



 
Explorer ©   (2002-06-11 11:08) [10]

Спасибочки! Попробую!


 
Explorer ©   (2002-06-11 12:02) [11]

Johnmen ©
почему когда пишу в Query, такой запрос на проверку

declare @m float set @m = 1.22
select mom = @m


выдается ошибка: Error creating cursor handle

Тоже самое пишу в SQL Query Analyzer, то все нормально



 
Johnmen ©   (2002-06-11 12:23) [12]

К сожалению я не специалист по MSSQL (патологическая нелюбовь :))
И соответственно не знаком с синтаксисом при работе с курсорами...


 
Explorer ©   (2002-06-11 12:36) [13]

>Johnmen ©
Все равно спасибо!



Страницы: 1 вся ветка

Текущий архив: 2002.07.04;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.011 c
1-9848
ef2000
2002-06-21 10:38
2002.07.04
как получить handle


1-9827
TsvIlya
2002-06-24 14:35
2002.07.04
Писать текст в чужой проге


3-9708
Oleg_er
2002-06-07 08:00
2002.07.04
вернемся к алиасам


7-10039
Serey
2002-04-08 13:21
2002.07.04
Free disk space


6-9959
Xort
2002-04-12 00:30
2002.07.04
Сетевое администрирование