|
Как повторить отчет несколько раз на странице |
☑ |
0
Death_eye
26.07.11
✎
12:14
|
Сформировал отчет. Вывел как положено все области. Получается короткая таблица.
Как повторить ее несколько раз на странице?
Или придется снова все данные считать и выводить как в первый раз?
|
|
1
aleks-id
26.07.11
✎
12:15
|
запрос в цикле наше(зачеркнуто) ваше всё!
если по теме - я ничего не понял...
|
|
2
rutony
26.07.11
✎
12:15
|
У табличного документа есть свойство КоличествоЭкземпляров
|
|
3
Death_eye
26.07.11
✎
12:17
|
Количество экземпляров на странице?
|
|
4
rutony
26.07.11
✎
12:19
|
(3) Сори немного ступил, будут новые листы
Нужно просто циклом продублировать область с результатом
|
|
5
Death_eye
26.07.11
✎
12:19
|
(1) Несколько раз одно и то же считать?
|
|
6
Ненавижу 1С
гуру
26.07.11
✎
12:21
|
(5) а зачем вообще его выводить несколько раз?
ну можно готовую выборку снова пройти
|
|
7
catena
26.07.11
✎
12:21
|
А зачем?
|
|
8
Death_eye
26.07.11
✎
12:23
|
(7) Нужно 3 экземпляра отчета. Экономим бумагу, печатаем на одном листе.
|
|
9
popcorn
26.07.11
✎
12:26
|
Сохрани все выводимые области в переменные или в массив. Потом выведи заново.
|
|
10
Death_eye
26.07.11
✎
12:28
|
Понятно. Спасибо
|
|
11
acsent
26.07.11
✎
12:31
|
(8) Полдня работы программиста и 1 лист бумаги. Ппц экономия
|
|
12
popcorn
26.07.11
✎
12:35
|
(0)
Выборка = Результат.Выбрать();
ТабДок.Очистить();
ВставлятьРазделительСтраниц = Ложь;
Пока Выборка.Следующий() Цикл
Шапка = Макет.ПолучитьОбласть("Шапка");
Шапка.Параметры.Заполнить(Выборка);
ТабДок.Вывести(Шапка, Выборка.Уровень());
ВыборкаТЧасть = Выборка.ТЧасть.Выбрать();
Пока ВыборкаТЧасть.Следующий() Цикл
Строка[i] = Макет.ПолучитьОбласть("ТЧасть"); // Тут типа массив, сам сделай как-нибудь
Строка[i].Параметры.Заполнить(ВыборкаТЧасть);
ТабДок.Вывести(Строка[i], ВыборкаТЧасть.Уровень());
КонецЦикла;
Попа = Макет.ПолучитьОбласть("Попа");
Попа.Параметры.Заполнить(Выборка);
ТабДок.Вывести(Попа, Выборка.Уровень());
КонецЦикла;
ТабДок.Вывести(Шапка, Выборка.Уровень());
Для i=1 to N Цикл
ТабДок.Вывести(Строка[i], ВыборкаТЧасть.Уровень());
КонецЦикла;
ТабДок.Вывести(Попа, Выборка.Уровень());
|
|
13
popcorn
26.07.11
✎
12:36
|
+(12)
И еще третий раз вывод так же как второй:
ТабДок.Вывести(Шапка, Выборка.Уровень());
Для i=1 to N Цикл
ТабДок.Вывести(Строка[i], ВыборкаТЧасть.Уровень());
КонецЦикла;
ТабДок.Вывести(Попа, Выборка.Уровень());
|
|
14
popcorn
26.07.11
✎
12:40
|
(11) если отчет часто печатают, то не 1 лист бумаги экономия. Можно посчитать за сколько окупится работа.
Ну и не пол дня работы программиста, а 30 минут, час максимум.
|
|
15
Death_eye
26.07.11
✎
12:40
|
Еще раз, спасибо всем
|
|
16
popcorn
26.07.11
✎
13:02
|
(15) спасибо не булькает
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший