Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];




Вниз

Вопрос по 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;






Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.022 c
1-32738           P.                    2002-03-29 18:15  2002.04.11  
Form


7-32998           gurin                 2002-01-18 05:18  2002.04.11  
Virtual drive


1-32808           Yuraz                 2002-03-27 19:39  2002.04.11  
Оптимизация кода (цикл в цикле), код ниже:


14-32942          SV                    2002-03-02 19:15  2002.04.11  
WinXP. Что дальше?


14-32969          oblom                 2002-03-05 14:36  2002.04.11  
задание в универе