Имя: Пароль:
1C
1С v8
СКД. УФ. Свертка группировок...
0 fisher
 
30.11.12
14:38
Я в УФ пока не настоящий сварщик...
Есть отчет СКД с дефолтной формой.
Результирующий табличный документ выводится с группировками строк, по дефолту - развернутыми.
Вопрос - как их свернуть при отображении результата?
Делал это в ПриКомпоновкеРезультата, но там это можно сделать только если отключить стандартный вывод и тогда хана фоновому формированию и отображению анимации формирования отчета.
Переопределил кнопку "Сформировать", пытаюсь сделать это после СкомпоноватьРезультат() - ошибок не выдает, но нифига не сворачивает...
Просто вызываю метод ПоказатьУровеньГруппировкиСтрок() у табличного документа, который реквизитом формы. Может, это как-то через серверный вызов надо делать?
Короче, как это сделать правильно? Чтобы свернуло :)
1 MSII
 
30.11.12
14:41
В событии ПриАктивизацииОбласти у табличного документа пробовал?
2 MSII
 
30.11.12
14:42
Естественно, надо отловить однократную активизацию области, первую после компоновки.
3 fisher
 
30.11.12
14:45
Не вижу смысла пробовать.
Я же ловлю сразу после компоновки (т.е. после отображения).
Судя по всему, что то не так именно в моей методе свертки.
У меня щаз так:
&НаКлиенте
Процедура Сформировать(Команда)
   СкомпоноватьРезультат(РежимКомпоновкиРезультата.Фоновый);
   Для ОтрицательныйНомер = -9 По 0 Цикл
       Результат.ПоказатьУровеньГруппировокСтрок(-ОтрицательныйНомер);
   КонецЦикла;
КонецПроцедуры
4 MSII
 
30.11.12
14:48
(3) А почему бы не просто ПоказатьУровеньГруппировокСтрок(0)? Задача же, как я понял, свернуть все группировки?
5 fisher
 
30.11.12
14:50
(4) Вообще, чтобы вложенные группировки строк тоже были свернуты. Но какая разница, если не работает?
6 MSII
 
30.11.12
15:06
(5) У меня работает (4), но по нажатию кнопки пользователем (есть отчет с фиксированным количеством группировок, для каждого уровня группировки я сделал свою кнопку на панели действий). Следовательно, весь вопрос в том, в каком событии этот код выполнить. Я бы все же ПриАктивизацииОбласти попробовал.
7 fisher
 
30.11.12
15:08
(6) Хм... Щаз попробую. Это для меня даже удобнее будет - не надо кнопку переопределять.
8 fisher
 
30.11.12
15:15
(6) Ыыыы! В ПриАктивизацииОбласти() работает! А чего в (3) не работает? Нифига не понимаю.
9 fisher
 
30.11.12
15:18
Блин. Дошло почему. При фоновом формировании табличный документ приползает асинхронно после отработки СкомпоноватьРезультат()...
10 fisher
 
30.11.12
15:20
<бьюсь головой ап стену>
Не вижу красивых способов решения сабжа...
Что стоило издевателям обработчика добавить событие ПослеКомпоновкиРезультата?
Аааааа!
11 fisher
 
30.11.12
15:21
"издевателям-разработчикам"
Уже мысли путаются, блин
12 fisher
 
30.11.12
15:24
Получается что фоновое формирование отчета и постобработка табличного документа - несовместимы. Глубокая пичаль...