Вопрос № 45692: Здравствуйте, эксперты.
Допустим, имеется элементарный запрос
select A from T;
Тип А - вещественный. Пусть вывод будет таким:
3,13
3,245
5,3
Теперь вопросик. Каким образом сделать вывод так, чтобы вывод...Вопрос № 45735: Здравствуйте, эксперты.
Прошу прощения за прошлый свой вопрос. Я кое-что недописал. Используется компонент вкладки ADO - ADOQuery. В общем там нет такого свойства как DisplayFormat. А вывод осуществляется в DBGrid вкладки DataControls.
Повтор...
Вопрос № 45.692
Здравствуйте, эксперты.
Допустим, имеется элементарный запрос
select A from T;
Тип А - вещественный. Пусть вывод будет таким:
3,13
3,245
5,3
Теперь вопросик. Каким образом сделать вывод так, чтобы выводилось СТРОГО две цифры после запятой, типо вот так
3,13
3,25
5,30
Заранее, спасибо!
Отправлен: 09.06.2006, 01:45
Вопрос задал: Repose (статус: 1-ый класс)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 3)
Ответ отправил: Злоумышленник (статус: 9-ый класс)
Ответ отправлен: 09.06.2006, 06:16
Отвечает: Маренич Владимир
Здравствуйте, Repose!
Смотря что имеется в виду под "вывод".
1. Установить формат отображения поля А как в ответе от "Злоумышленник". Только использование формата '0.##' Вам не подходит - он будет давать результат
3,13
3,25
5,3 <---- !!!
А если будет какое-нибудь целое значение (например, 1), то и вовсе без десятичной точки...
Нужно задавать в Вашем случае формат вывода '0.00'.
2. Если Вы хотите получить значение поля в виде строки, то тогда используйте функцию форматирования FormatFloat:
s:=FormatFloat('0.00', Query1.FieldByName('A').AsFloat);
Ответ отправил: Маренич Владимир (статус: Студент)
Ответ отправлен: 09.06.2006, 07:48
Вопрос № 45.735
Здравствуйте, эксперты.
Прошу прощения за прошлый свой вопрос. Я кое-что недописал. Используется компонент вкладки ADO - ADOQuery. В общем там нет такого свойства как DisplayFormat. А вывод осуществляется в DBGrid вкладки DataControls.
Повторяю вопрос.
Допустим, имеется элементарный запрос
select A from T;
Тип А - вещественный. Пусть вывод будет таким:
3,13
3,245
5,3
Теперь вопросик. Каким образом сделать вывод так, чтобы выводилось СТРОГО две цифры после запятой, типо вот так
3,13
3,25
5,30
Заранее, спасибо!
Отправлен: 09.06.2006, 12:42
Вопрос задал: Repose (статус: 1-ый класс)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 3)
Отвечает: Маренич Владимир
Здравствуйте, Repose!
Дополню тогда свой ответ :)
У Вас на форме лежит ADOQuery1. Щелкаете по нему дважды и у Вас должен появиться список полей. Если там пусто, то нажмите на списке полей правую кнопку мышки и в меню выбирите "Add all fields...". Выбирите нужное поле (в Вашем примере "A") и в Object Inspector'е установите DisplayFormat='0.00'. Также можете настроить остальные свойства поля, например, DisplayLabel (заголовок), DisplayWidth (ширина колонки в симолах). Это поможет Вам не настраивать отдельно колонки в гриде. Желаю удачи.
Ответ отправил: Маренич Владимир (статус: Студент)
Ответ отправлен: 09.06.2006, 13:04 Оценка за ответ: 2 Комментарий оценки: Хоть убейте, нету такого. Я так понял, что надо два раза нажать на DBGrid, а не на ADOQuery, потому что появляется совсем не то. Ну так вот выбрал я нужное поле, но свойства DispayFormat не нашел :(
Отвечает: RSV
Здравствуйте, Repose!
select num from table1
3.13
3.245
5.3
select convert(decimal(3,2), num) from table1
3.13
3.25
5.30
Ответ отправил: RSV (статус: 1-ый класс)
Ответ отправлен: 09.06.2006, 14:03
Отвечает: akaDemik
Здравствуйте, Repose!
Можно обработать OnGetText. И принудительно вывести строку с двумя знаками после запятой. Пример в приложении.
Приложение:
Ответ отправил: akaDemik (статус: 2-ой класс)
Ответ отправлен: 09.06.2006, 16:43