Как убрать GroupHeader программно в Run-Time
Как убрать GroupHeader программно в Run-Time? Помогите! Во вторник сдавать заказ. Делаю так
FastReport 3.17, Delphi 6
frxReport1.LoadFromFile('LGT.fr3') // загружаю из файла
ghbus := frxReport1.FindObject('GHBUS') as TfrxGroupHeader; // нахожу объект
if cbBus.Checked then ghbus.Visible := true
else ghbus.Visible := false; // отключаю если нужно
такая конструция не проходит. Кто сталкивался подскажитеFastReport 3.17, Delphi 6
Комментарии
Попробуйте прямо в скрипте отчёта написать И еще: поставьте Update 2 for D6
Если не нужна группировка, нужно сделать невидимым GroupHeader и GroupFooter.
222 //group2
333 //group3
1
2
3
2222 //group1
222 //group2
333 //group3
1
2
3
отключаю group1 и вижу
222 //group2
333 //group3
1
2
3
222 //group2
333 //group3
1
2
3
т.е. идет группировка по group1 иначе должен был объеденить
222 //group2
333 //group3
1
2
3
1
2
3
вот и не понимаю почему при отключении проходит группировка.
ORDER BY GROUPFIELD1, GROUPFIELD2, GROUPFIELD3
а для второго
ORDER BY GROUPFIELD2, GROUPFIELD3
При отключении первой группировки нужно либо переоткрыть датасет с сортировкой ORDER BY GROUPFIELD2, GROUPFIELD3 , либо выполнить локальную сортировку (например FIBPlus это позволяют)
Думаю стоит еще и свойство condition у GroupHeader отключать. Не очень весело как-то.
To AlexTZ
А можно добавить в GroupHeader свойство, которое включало/выключало группировку, а то одним иногда нужно отключать группировку, а другим просто скрывать GroupHeader, оставляя группировку?
Или сделать так, что группировка не работает, если Condition не заполнено.
стало отрабатывать правильно. только не понятно почему нельзя сделать отключаемую именно групировку а не просто видимость/невидемость?