Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2006.12.24;
Скачать: [xml.tar.bz2];

Вниз

Обрезание знаков после запятой   Найти похожие ветки 

 
Fin ©   (2006-10-13 11:02) [0]

Позор мне, но вот столкнулся, в запросе суммирую числа у которых количество знаков после запятой доходит до 10, но результат обрезается до 4 знаков, подскажите как вернуть все 10 знаков.
Заранее спасибо.


 
sniknik ©   (2006-10-13 11:09) [1]

> подскажите как вернуть все 10 знаков.
форматированием отображения.


 
Fin ©   (2006-10-13 11:28) [2]

В том то и дело что отображается 10 знаков после запятой но последние 6 знаков нули.


 
stone ©   (2006-10-13 11:32) [3]

DisplayFormat + F1


 
sniknik ©   (2006-10-13 11:52) [4]

> отображается 10 знаков после запятой но последние 6 знаков нули.
значит в суммировании (жутко суперсекретном кстати...) используются денежные типы, или чтото другое, но это чтото заставляет принять результат тот же денежный тип. а нужен double.


 
Fin ©   (2006-10-13 11:55) [5]

Спасибо конечно, может я не совсем корректно сформулировал вопрос, но "DisplayFormat", это когда просто показать то что скрыто визуально, у меня же проблема в том что после выполнения запроса агрегатная функция SUM округляет значение до 4 знаков, и это видно из того, что результат я и так форматирую и показываю 10 знаков после запятой и последние 6 знаков забиты нулями. нет ли какого нибудь параметра у функции SUM ?


 
Johnmen ©   (2006-10-13 11:59) [6]

Тип поля набора данных определён неверно....


 
Fin ©   (2006-10-13 12:04) [7]

<Johnmen ©   (13.10.06 11:59) [6] >

<Тип поля набора данных определён неверно....>

Как заставить определить верно?


 
sniknik ©   (2006-10-13 12:12) [8]

> Как заставить определить верно?
утюг, паяльник уже применяли? ... ну тогда программиста на цепь, и не кормить пока не определит верно...


 
Fin ©   (2006-10-13 12:16) [9]

Опять я наверное не корректно спросил, можно ли заставить определить тип суммируемого  поля прямо в запросе. Так как в dbf файле всё предельно просто тип numeric 16,10 и запрос предельно прост
select sum(sup)
from table.dbf


 
sniknik ©   (2006-10-13 12:19) [10]

попробуй
select sum(CDbl(sup)) from table.dbf
сработает или нет будет зависеть от неприведенных сдесь данных.


 
Fin ©   (2006-10-13 12:27) [11]

не поддерживается, а какой информации не хватает?


 
sniknik ©   (2006-10-13 12:34) [12]

что используется. ну, уже очевидно что BDE.


 
sniknik ©   (2006-10-13 12:54) [13]

и кстати неправильный тип может быть не только в таблице/запросе но и в программе определен(результируюший TField)... тогда еше нехватает того как ты получаеш результат, в чем, как оно определено.

попробуй например свой запрос без изменений но не в своей програме, а SQL Explorer-е например...


 
Fin ©   (2006-10-13 13:42) [14]

результат получаю в дбгрид из компонента  query на вкладке BDE.
Пробовал запрос через Database Desktop тот же результат, только 4 знака. Но вот из акцесса результат получается нужный.
Вот засада!!!


 
sniknik ©   (2006-10-13 13:52) [15]

> через Database Desktop тот же результат, только 4 знака
ну значит тип устанавлиевается всетаки в запросе при сумировании, смотри как делается приведение типа в BDE, принцип он один, только функция отличается от [10].


 
Fin ©   (2006-10-13 16:55) [16]

Уважаемые, не ужели ни кто не сталкивался с подобным в BDE? Всё ни как не могу решить вопрос. Буду признателен за помощь!


 
sniknik ©   (2006-10-13 17:01) [17]

уважаемый, да тебе все разжевали, и разве что в рот не положили... неужели заглянуть в хелп, узнать как преобразования типов в BDE делается, для себя же, и ломает?...

p.s. какой ленивый и наглый народ пошол...


 
Fin ©   (2006-10-13 17:14) [18]

sniknik вы с самого начала пытаетесь меня пристыдить, не хотите не надо не помогайте, я с утра над этим ломаюсь, "весь" хелп перевернул, в инете всё излазил при этом как раз про bde встречал только посты о невозможности так поступить. и что вы там разжевали то что проблема в bde и что функция там другая, спасибо конечно, вот только самой функции сдаётся нема или не могу найти, посему и спрашиваю моожет кто уже сталкивался и нашол решение.
Вот же блин не хотел оффтоп разводить, ну что "слабых всегда обижают".
И всё же, пересетупим через гордость, если кому не трудно - вопросик в силе.


 
sniknik ©   (2006-10-13 17:23) [19]

> вот только самой функции сдаётся нема
есть. и я (и не только) ее знаю.
но
> моожет кто уже сталкивался и нашол решение.
не сталкивался, поэтому не подхожу под условия для ответа...

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


 
Fin ©   (2006-10-13 17:26) [20]

>есть. и я (и не только) ее знаю.
Скажите пожалуйста эту функцию.
Спасибо.


 
Desdechado ©   (2006-10-13 17:57) [21]

можно попробовать
SELECT CAST( Sum( n ) AS NUMERIC(16,10) ) FROM tabl


 
Anatoly Podgoretsky ©   (2006-10-13 18:50) [22]

Парадокс не поддерживает BCD, нельзя же называть BCD, у которого только и только 4 знака после запятой, все остальное Float


 
Fin ©   (2006-10-13 21:18) [23]

Скорее всего весь день боролся с "ветрянной мельницей", так как пришол домой и на домашней машине проверил , не кокого округления и обрезания не происходит. Плохо что не взял с собоq конфиг настроек bde с работы, но на память все настрйки проверил и отличий не обнаружил, теперь только в понедельник проверю - возму config из дома. Или ищу не там?


 
Mike Kouzmine ©   (2006-10-14 11:28) [24]

Anatoly Podgoretsky ©   (13.10.06 18:50) [22] Точно не помню, но, кажется там есть Разрешить ВСД - правда-ложь


 
sniknik ©   (2006-10-14 11:53) [25]

Mike Kouzmine ©   (14.10.06 11:28) [24]
флаг то есть, но тип ВСД не поддержан в полной мере, и передача значения идет через currency (/money) денежный тип в общем, а у него только 4 возможных знака после запятой... (у "истинного" ВСД переменное(заданное) количество, до максимума толи 100 толи 99 знаков, не помню)


 
Anatoly Podgoretsky ©   (2006-10-14 14:10) [26]

Mike Kouzmine ©   (14.10.06 11:28) [24]
Парадокс сплошной обман, хороший продукт Парадоксом не назовут.
Там BCD эмулируется масками отображения, а BCD по сути Money


 
Mike Kouzmine ©   (2006-10-14 23:25) [27]

sniknik ©   (14.10.06 11:53) [25]
Anatoly Podgoretsky ©   (14.10.06 14:10) [26]
Понял.



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

Форум: "Базы";
Текущий архив: 2006.12.24;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.51 MB
Время: 0.042 c
15-1164688328
vajo
2006-11-28 07:32
2006.12.24
Саммит НАТО в Риге


11-1142321403
avs
2006-03-14 10:30
2006.12.24
KolBitBtn.TBButtonPressed


15-1161853040
Наиль
2006-10-26 12:57
2006.12.24
DMClient


15-1164834016
Cyrax
2006-11-30 00:00
2006.12.24
Структура .vdx-файлов


1-1163162706
allrussia
2006-11-10 15:45
2006.12.24
Не могу заставить работать 2 компонента одновременно





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский