Главная страница
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.009 c
1-32878
Ghost.
2002-03-29 15:14
2002.04.11
На счет передачи фокуса


1-32879
Kazah_Progr
2002-03-29 15:20
2002.04.11
Какое событые возникает при минимизации формы (свернуть)


3-32656
OlegE
2002-03-20 09:26
2002.04.11
Создание EXCEPTIONS в хранимой процедуре


14-32964
angela
2002-03-04 16:59
2002.04.11
ini- файлы


1-32785
snoup
2002-03-29 23:21
2002.04.11
Помогите пожалуйста пишу так надо что бы оно ещё автозапукалось!