![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DBGridEh ;DBSumList ;как с ними работать? [D6, Access]
PTE © (2002-06-13 14:26:00)Нужно отображать DBEditEh сумму в столбце DBGridEh. Как мне это сделать?
AuduA6 (2002-06-14 12:53:00) [1]Кидаеш на форму DBSumList .
Указываеш ему DataSet.
Добавляеш SumCollection->Add new(Назовем ее, например Summa);
Summa->FieldName=поле из DataSet;
Summa->GroupOperation->goSum;
DBSumList->Events->DBSumList1SumListChanged;
Выводиш результат в Edit(Edit1.Text := FloatToStr(DBSumList1.SumCollection.Items[0](или Summa).SumValue)
Sergey13 (2002-06-14 11:27:00) [2]2koks © (14.06.02 09:49)
DBGridEh.SumList.Active := true; Как раз лучше делать в рантайме. У меня была фишка, когда при установке этого в дизайне отваливались процедуры от событий. Да-да не смейся. Типа была процедура на AfterScroll а потом ее, привязки, нет. Хотя проца, ессно, не стиралась. Это было на 1.56 кажется. Я списывался с автором, и он подтвердил что лучше это делать в рантайме. Хотя сейчас это может быть уже побороли, но я по привычке делаю по старому.
koks (2002-06-14 09:49:00) [3]1. Сделай колонки
2. Все свойства, которые я тебе перечислил устанавливаются в РЕДАКТОРЕ СВОЙСТВ, а не в рантайме.
VAleksey (2002-06-14 09:01:00) [4]а статично нельзя ?
PTE (2002-06-13 18:21:00) [5]Колонки я не использую, но только этого
1. DBGridEh.FooterRowCount = 1;
2. DBGridEh.SumList.Active := true;
оказалось не достаточно. Правильно ли я написал?
procedure TForm1.TabSheet3Show(Sender: TObject);Почему сумма отображается только тогда, когда я забиваю новые значения, а по тем что уже были забиты в базу сумма не подсчитывается, что можно сделать?
begin
DBGridEh1.Columns[3].Footer.FieldName := "summa";
DBGridEh1.Columns[3].Footer.ValueType := fvtSum ;
end;
koks (2002-06-13 17:32:00) [6]Устанавливаешь свойства:
1. DBGridEh.FooterRowCount = 1;
2. DBGridEh.SumList.Active := true;
Если не использушь колонки TColumnsEh, то по-моему, этого достаточно...
А если используешь колонки, то дополнительно для той колонки, для которой нужно считать сумму устанавливаешь:
DBGridEh.Columns[i].Footer.FieldName := "<имя поля по которому считается сумма>"
DBGridEh/Columns[i].Footer.ValueType := fvtSum
и все...
PTE (2002-06-13 16:20:00) [7]А как это сделать? подскажите пожалуйста. Я новичок, пытался найти по этому поводу инфу в инете ничего не нашел, что помогло бы мне разобраться
VAleksey (2002-06-13 15:11:00) [8]сделай колонку и для нее укажи по какому полю считать сумму и формат футера.