|
Скд, сворачивание группировок | ☑ | ||
---|---|---|---|---|
0
grigo
21.02.18
✎
15:08
|
Управляемые формы, СКД. 8.3.10.
Есть задача - написать много отчетов. Одно из требований - все отчеты должны формироваться со свернутыми группировками. Можно ли такое сделать без создания формы отчета? Отчеты строятся на СКД. |
|||
1
Fragster
гуру
21.02.18
✎
15:09
|
да
|
|||
2
grigo
21.02.18
✎
15:11
|
(1) Как?
|
|||
3
Fragster
гуру
21.02.18
✎
15:11
|
программно сформировать в ПриКомпоновкеРезультата и свернуть
|
|||
4
grigo
21.02.18
✎
15:17
|
Я бы с вами в разведку пошел)). А как свернуть?
|
|||
5
Fragster
гуру
21.02.18
✎
16:01
|
примерно так: ДокументРезультат.ПоказатьУровеньГруппировокСтрок(0);
|
|||
6
grigo
26.02.18
✎
10:51
|
К сожалению, в процедуре ПриКомпоновкеРезультата модуля отчета это не работает. По крайней мере на моей платформе с моими настройками совместимости. Придется, видимо, все-таки формы рисовать.
|
|||
7
DrShad
26.02.18
✎
11:03
|
(6) ну и что ты в форме нарисуешь?
|
|||
8
Fragster
гуру
26.02.18
✎
11:08
|
(6) работает
|
|||
9
drcrasher
26.02.18
✎
11:09
|
(0) своя форма, свои кнопки и обработчик ожидания.
вот для примера https://yadi.sk/d/veFjV3Mz3SmkbK |
|||
10
Fragster
гуру
26.02.18
✎
11:10
|
(9) фу так делать
|
|||
11
drcrasher
26.02.18
✎
11:14
|
(10) как?
|
|||
12
Fragster
гуру
26.02.18
✎
11:32
|
(11) ради этой задачи лепить свою форму, да еще и сворачивать через обработчик ожидания.
|
|||
13
Fragster
гуру
26.02.18
✎
11:32
|
я подозреваю, что кто-то в (6) забыл указать "стандартная обработка = ложь"
|
|||
14
drcrasher
26.02.18
✎
11:34
|
(12) ну там не только "сворачивать через обработчик ожидания". там несколько иное через обработчик
|
|||
15
grigo
26.02.18
✎
12:42
|
(13) Не "забыл", а "не знал". Сейчас я написал следующее:
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; ДокументРезультат.ПоказатьУровеньГруппировокСтрок(0); КонецПроцедуры Теперь отчет совершенно пустой. Чистый табличный документ. |
|||
16
grigo
26.02.18
✎
12:58
|
(15, 13, 3) Понял, надо полностью писать простыню кода по компоновке результата. Правильно?
|
|||
17
тарам пам пам
26.02.18
✎
13:32
|
(16) можно простыню; можно попробовать вызвать сначала стандартный обработчик каким-то таким образом:
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) Если ДополнительныеСвойства.Свойство("ВложенныйВызов") Тогда Возврат; КонецЕсли; СтандартнаяОбработка = Ложь; ДополнительныеСвойства.Свойство("ВложенныйВызов"); СкомпоноватьРезультат(ДокументРезультат, ДанныеРасшифровки); ДополнительныеСвойства.Удалить("ВложенныйВызов"); ДокументРезультат.ПоказатьУровеньГруппировокСтрок(0); КонецПроцедуры |
|||
18
Fragster
гуру
26.02.18
✎
13:33
|
(16) ну как простыню... у меня в 10 строк получилось. и в 13, если сворачивать уровни в цикле, начиная с последнего (чтобы раскрывались по одному).
|
|||
19
Fragster
гуру
26.02.18
✎
13:34
|
(17) классный лайвхак
|
|||
20
Fragster
гуру
26.02.18
✎
13:35
|
аж три строки экономится. но не надо запоминать, как эта долбаная СКД формируется.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |