Вниз
Скачать: CL | DM;

Вопрос по EhLib   Найти похожие ветки 

← →
Dimonka   (2002-03-19 12:40) [0]

Можно в компоненте DBgridEh для footers присвоить свое выражение?
Если можно,то как? В моем случае нужно взять сумму столбца и умножить ее на коэффициент взятый из другой таблицы.


← →
J   (2002-03-19 13:47) [1]

Конечно можно. Но в описанном тобой случае есть ньюансы. Если тебе сумму по столбцу выводить не надо, то немного сложней, придется эту сумму считать отдельно (скажем, через Query). Если же сумма не помешает, то твое значение можно вывести во второй строчке (Footers[1]). В любом случае это делается следующим образом. Для соответствующего столбца делаешь настройки

DBGridEh1.Columns[i].Footers[j].ValueType := fvtStaticText.
DBGridEh1.Columns[i].Footers[j].FieldName := "". (пусто)

Затем в соответствующий обработчик (например, DataCourceDataChange) формируем

DBGridEh1.Columns[i].Footers[j].value := FloatToStrF(Suma * Kf,ffNumeric,2)

Коэффициент - знаешь где брать. А вот сумма - как я писал выше:
1. Вычисляешь через Query.
2. Если ты все-таки выводишь ёё в Footers[0], то

Suma := DBGridEh1.Columns[i].Footers[0].value;

3. А можно пойти на хитрость. Добавь в Grid еще раз поле, по которому проводишь суммирование. Но для него сделай Visible := False. Для него настройки Footers сделай следующие:

DBGridEh1.Columns[ii].Footers[0].ValueType := fvtSum.
DBGridEh1.Columns[ii].Footers[0].FieldName := "поле_суммирования".

И тогда

Suma := DBGridEh1.Columns[ii].Footers[0].value;






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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
1-32733
Viktor Erko
2002-03-30 10:35
2002.04.11
ПО для автоматизации документирования текста программы


1-32781
Rooman
2002-03-23 17:54
2002.04.11
Отсылка сообщения через зад:)


3-32706
Борис
2002-03-22 08:31
2002.04.11
Копирование строки из DBGrid в буфер


1-32779
Pinochet
2002-03-31 14:51
2002.04.11
Алгоритм!!!!


3-32618
фл
2002-03-22 13:38
2002.04.11
глюки с кодировкой




   Наверх