Поиск:

Ответ в темуСоздание новой темы Создание опроса
> АДО вывод дробных чисел 
V
    Опции темы
Burka
Дата 4.6.2009, 15:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 429
Регистрация: 11.5.2007

Репутация: 1
Всего: 2



Использую ADOTable и DBGrid и DBGRidEh.
Такая проблема, заполняю таблицу через грид, допустим ввожу значение 1,4, после нажатия энтера там отображается "1,39004030340340" ну что то в таком роде. В базе записано конкретно 1,4. 
DBGRidEh и DBGRid выводят одинаково, так что помоему данные как то преобразовывает сам ADOtable, хотя в свойствах полей и тп ничего не менял. Что можно попробовать сделать?


--------------------
Великие умы обсуждают идеи; средние умы обсуждают события; мелкие умы обсуждают людей.
PM MAIL   Вверх
Keeper89
Дата 4.6.2009, 15:51 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 1
Всего: 58



Смотрите в ADOTable свойство DisplayFormat для этого поля. Точно не скажу, но кажется в DBGRidEh свойство то же.

Это сообщение отредактировал(а) Keeper89 - 4.6.2009, 15:52


--------------------
PM MAIL WWW   Вверх
Deniz
Дата 5.6.2009, 06:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1251
Регистрация: 16.10.2004
Где: Новый Уренгой

Репутация: 8
Всего: 44



Цитата(Burka @  4.6.2009,  18:40 Найти цитируемый пост)
В базе записано конкретно 1,4. 
а как проверил?
Цитата(Keeper89 @  4.6.2009,  18:51 Найти цитируемый пост)
Смотрите в ADOTable свойство DisplayFormat для этого поля
чуток поправлю, найти в ADOTable список полей, там найти нужное и установить у него DisplayFormat, например: '#,##0.00'
PS: точки и запятые в формате зависят от настроек системы.
PSS: на свойстве DisplayFormat можно нажать F1.


--------------------
"Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с)
PM ICQ   Вверх
Akella
Дата 5.6.2009, 09:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Цитата(Deniz @  5.6.2009,  06:06 Найти цитируемый пост)
Цитата(Burka @  4.6.2009,  18:40 Найти цитируемый пост)
В базе записано конкретно 1,4. 
а как проверил?

ну он же сам лично ввёл 1,4, значит 1,4 хранится smile

Добавлено через 1 минуту и 13 секунд
Burka, советую прочесть небольшую, но очень полезную, особенно в твоей сложившейся ситуации, книгу "О чём не пишут в книгах по Delphi".
PM MAIL   Вверх
Hang
Дата 18.6.2009, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 77
Регистрация: 16.12.2007
Где: Вологда

Репутация: нет
Всего: 3



Цитата(Burka @  4.6.2009,  15:40 Найти цитируемый пост)
хотя в свойствах полей и тп ничего не менял.


Такая ситуация мне встречалась из-за того, что в БД (в моем случае это был MS Access) для поля таблицы был выбран тип данных "Числовой", а размер поля - "Одинарное с плавающей точкой", когда для правильно отображения нужно было выбрать - "Двойное с плавающей точкой"
PM ICQ   Вверх
Burka
Дата 25.6.2009, 09:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 429
Регистрация: 11.5.2007

Репутация: 1
Всего: 2



Извините, долго не отвечал, занимался другой проблемой)

Цитата

В базе записано конкретно 1,4. 
а как проверил?

Легко на самом деле, через ацесс посмотрел.


Цитата

чуток поправлю, найти в ADOTable список полей, там найти нужное и установить у него DisplayFormat, например: '#,##0.00'

Да, это помогло, но один недостаток есть, если ввести "1,2" то будет выводить "1,20", а так все отлично, Спасибо.



--------------------
Великие умы обсуждают идеи; средние умы обсуждают события; мелкие умы обсуждают людей.
PM MAIL   Вверх
Akella
Дата 26.6.2009, 19:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Цитата(Burka @  25.6.2009,  09:50 Найти цитируемый пост)
Легко на самом деле, через ацесс посмотрел.

 smile

Добавлено через 33 секунды
А с чего ты взял, что акцесс показывает _неформатированное_ значение?

Добавлено через 3 минуты и 44 секунды
Попробуй:
Цитата
#,##0.

PM MAIL   Вверх
Burka
Дата 2.7.2009, 11:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 429
Регистрация: 11.5.2007

Репутация: 1
Всего: 2



Цитата

Попробуй:
Цитата
#,##0.


Я сразу #,##.## сделал) показвает все как надо, без лишних цифр.

Цитата

А с чего ты взял, что акцесс показывает _неформатированное_ значение?

Не с чего, просто посмотрел что в ацесе показывает то что я ввел, а не приблизительное значение =)


--------------------
Великие умы обсуждают идеи; средние умы обсуждают события; мелкие умы обсуждают людей.
PM MAIL   Вверх
Burka
Дата 16.7.2009, 10:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 429
Регистрация: 11.5.2007

Репутация: 1
Всего: 2



А оказывается #,##.## помогло, но только на половину))) В таблицу при просмотре все нормально отображается, такое же число которое вводишь. Но если войти в режим редактирования ячейки таблицы, он почему то меняет опять на приблизительное, именно во время редактирования. ### какой-то)

В базе тип поля - одинарное с плавающей точкой

upd: нашел в АДоТейбле в свойствах поля EditFormat, подставил тоже "#,##.##" и вроде помогло. Но все равно странное поведение, раньше такого не было.

Это сообщение отредактировал(а) Burka - 16.7.2009, 10:37


--------------------
Великие умы обсуждают идеи; средние умы обсуждают события; мелкие умы обсуждают людей.
PM MAIL   Вверх
Akella
Дата 22.7.2009, 17:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Цитата(Burka @  2.7.2009,  11:28 Найти цитируемый пост)
Не с чего, просто посмотрел что в ацесе показывает то что я ввел, а не приблизительное значение =)

Вот именно - показывает. Только показывает. А что там внутрях - фиг его знает.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0617 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.