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

Вниз

double формат в DBGrid   Найти похожие ветки 

 
Tany   (2009-03-08 13:14) [0]

Подскажите как сделать чтобы значения отображалиси с двумя нулями после запятой в столбце DBGrid - да

Данное поле имеет формат на сервере(firebird) - numeric(15,2)

должно же быть что-то вроде:
DBGrid1.Columns[0].dataformat := "###,## - рублей" ?

что-то не могу найти подобного свойсва, подскажите как правильно.
заранее большое спасибо


 
sniknik ©   (2009-03-08 13:21) [1]

> что-то не могу найти подобного свойсва
ищи не в гриде у колонок, а у полей в датасете.

и кстати если "- рублей"" то должен бы быть не numeric(15,2) а тип типа money (не в курсе что там у firebird-а но что-то денежное должно быть), тогда он в дельфи не будет к double  приводиться а тоже будет "деньгами".


 
Tany   (2009-03-08 14:01) [2]


> sniknik ©   (08.03.09 13:21) [1]

нет там типа money, есть из флоатов: numeric, decimal и double precision , которые в базе хранятся как к примеру 10,00, а в DBGrid отображается как "10"

нет ну должно быть что-то вроде?
DBGrid1.Columns[0].dataformat := "###,## - рублей"


 
sniknik ©   (2009-03-08 15:52) [3]

> нет ну должно быть что-то вроде?
оно и есть, что-то вроде, но только не там "где светлей", а там где его реализовали.


 
MsGuns ©   (2009-03-08 17:28) [4]

TField.DisplayFormat := "0.00" для денюх, "0.##" - для кол-в


 
Tany   (2009-03-08 19:13) [5]


> MsGuns ©   (08.03.09 17:28) [4]
> TField.DisplayFormat := "0.00" для денюх, "0.##" - для кол-
> в


нет такого свойсва!

есть:DisplayName,DisplayText,DisplayLabel,DisplayWidth


 
фыва   (2009-03-08 19:15) [6]


> нет такого свойсва!

А начать F1 на DisplayFormat руки отсохнут?


 
MsGuns ©   (2009-03-08 20:22) [7]

Изучаем TField со всеми нисходящими до полного просветления в голове.


 
Tany   (2009-03-08 21:41) [8]


> MsGuns ©   (08.03.09 20:22) [7]


Ок только сначало нужно сдать работу ;)

вот подскажите как теперь прикрутить сюда заголовки вместо названия полей в DBGrid


---------------------------------------------------------------
 public
   a_ident: Integer;
 end;

var
 OplaF: TOplaF;
 pl_sum: TFloatField;
 pl_data: TDateTimeField;
 ident_title: TStringField;
implementation

uses Main;

{$R *.dfm}

procedure TOplaF.FormShow(Sender: TObject);
begin

 if(MainF.IBQuery.Active = true) then MainF.IBQuery.Close;
 MainF.IBQuery.SQL.Clear;
 MainF.IBQuery.SQL.Add("select p2.ident_title, p1.pl_data, p1.pl_sum from oplata p1, ident_opl p2 where ");
 MainF.IBQuery.SQL.Add("p1.pl_ident=:pl_ident and(p2.ident_id = p1.pl_nazn) order by p1.pl_data");
 MainF.IBQuery.Params[0].AsInteger := a_ident;

 ident_title:= TStringField.Create(MainF.IBQuery);

 ident_title.FieldName := "ident_title";
 ident_title.Index := MainF.IBQuery.FieldCount;
 ident_title.DataSet := MainF.IBQuery;
 MainF.IBQuery.FieldDefs.UpDate;

 pl_data:= TDateTimeField.Create(MainF.IBQuery);
 pl_data.FieldName := "pl_data";
 pl_data.Index := MainF.IBQuery.FieldCount;
 pl_data.DataSet := MainF.IBQuery;
 MainF.IBQuery.FieldDefs.UpDate;

 pl_sum:= TFloatField.Create(MainF.IBQuery);
 pl_sum.FieldName := "pl_sum";
 pl_sum.Index := MainF.IBQuery.FieldCount;
 pl_sum.DataSet := MainF.IBQuery;
 pl_sum.DisplayFormat := "##0.00 ãðí";
 MainF.IBQuery.FieldDefs.UpDate;

 MainF.IBQuery.Open;
end;

procedure TOplaF.FormHide(Sender: TObject);
begin
pl_sum.Free; pl_data.Free; ident_title.Free;
end;


 
Anatoly Podgoretsky ©   (2009-03-08 22:04) [9]

> Tany  (08.03.2009 21:41:08)  [8]

Не надо сначала сдавать работу, такая гадость получается.
Снааоа надо учиться, учиться, учиться


 
sniknik ©   (2009-03-08 22:10) [10]

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

и нафига все в рантайм? мазохист? в дизайне все делается в несколько кликов мыши + нужные свойства прописать.


 
Tany   (2009-03-08 22:13) [11]


> sniknik ©   (08.03.09 22:10) [10]

как в дизайне, если не секрет?

а то вот еще чуть мазохизма:

 cl := TColumn.Create(DBGrid1.Columns);
 cl.FieldName := "pl_sum";
 cl.Title.Caption := "Сумма";

 cl := TColumn.Create(DBGrid1.Columns);
 cl.FieldName := "ident_title";
 cl.Title.Caption := "Назначение платежа";

 cl := TColumn.Create(DBGrid1.Columns);
 cl.FieldName := "pl_data";
 cl.Title.Caption := "Дата платежа";


 
Tany   (2009-03-08 22:16) [12]


> sniknik ©   (08.03.09 22:10) [10]

в дизайне где можно это задать?
pl_sum.DisplayFormat := "##0.00 руб";


 
MsGuns ©   (2009-03-08 22:37) [13]

А ведь достал (а) уже !
"Кидаешь" какой-нить потомок датасета (например TIBQuery), затем в его св-ве SQL рисуешь запрос, затем жмякаешь на TIBQuery.Active. После этого дважды клякаешь на камом TIBQuery, открывается окно редактора филдов, наводишься на нужный (который типа дробное), в окне инспектора свойств радостно наблюдаешь DisplayFormat, к который суешь курсор и настукиваешь на клаве 0.##

Так доступно, бестолочь ?


 
Плохиш ©   (2009-03-09 11:26) [14]


> Tany   (08.03.09 22:13) [11]

> как в дизайне, если не секрет?

Стоит нанять программиста.



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

Форум: "Начинающим";
Текущий архив: 2009.04.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.006 c
2-1236857943
Руслан
2009-03-12 14:39
2009.04.26
что за ошибка в Turbo Delphi 2006 Explorer


2-1237276895
igorntk
2009-03-17 11:01
2009.04.26
Как сделать, чтобы при наборе в TEdit текст записывался


15-1232561713
vuk
2009-01-21 21:15
2009.04.26
Ндааааа....


2-1236973563
TStas
2009-03-13 22:46
2009.04.26
TabOrder в RunTime е


15-1235601511
Petr V. Abramov
2009-02-26 01:38
2009.04.26
о политике модерирования





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский