Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.11;
Скачать: 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 вся ветка

Текущий архив: 2002.04.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
4-33013
dip56245
2002-01-31 16:28
2002.04.11
hooks


14-32943
VID
2002-02-25 18:43
2002.04.11
Подсветка HTML и др.


1-32869
SeF
2002-03-23 00:49
2002.04.11
Путь к DLL


1-32752
michael_B
2002-03-30 17:48
2002.04.11
Как отображать текст в TPanel или TLabel в несколько строк


7-32996
Сергей Чурсин
2002-01-16 16:02
2002.04.11
Как убрать записи о неверных P&P устройствах ?