Версия для печати темы (https://pro1c.org.ua/index.php?s=af7f72d31d7e84fcf1c69f940bcec653&showtopic=53105)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 8.3 _ Печатная форма. Порядок строк.

Автор: 1cProger 18.07.19, 14:31

Здравствуйте.
Недавно начал изучать 1С, тренируюсь в печатной форме. Подскажите, как сделать вывод отдельных элементов не после каждого клиента, а в самом конце?


Клиент1 = "";
    Для Каждого Выборка ИЗ ТЗ Цикл
    Если Клиент1 <> Выборка.Клиент ТОГДА
    СчМин = 0;
    КонецЕсли;
    ОбластьЗаголовок.Параметры.Дата = Формат(ТЗ[0].Дата, "ДЛФ=DD");
    СчМин = СчМин+Выборка.ЗатраченноеВремя;
    ИтоговаяСтрока.Параметры.Всего = СчМин/60;
    Если Клиент1 <> Выборка.Клиент ТОГДА
    ТабДок.Вывести(ОбластьЗаголовок);
    ТабДок.Вывести(ОбластьСписокКонцультацийШапка);
    КонецЕсли;
    ОбластьСписокКонцультаций.Параметры.Заполнить(Выборка);
    ТабДок.Вывести(ОбластьСписокКонцультаций);
    ТабДок.Вывести(ИтоговаяСтрока);
    ТабДок.ВывестиГоризонтальныйРазделительСтраниц();    
    Клиент1 = Выборка.Клиент;
    КонецЦикла;

Автор: takefive 19.07.19, 8:57

1cProger @ Вчера, 14:31 * ,
2 цикла?

Автор: 1cProger 19.07.19, 9:48

takefive @ Сегодня, 9:57 * ,
Цикл один..если счетчик закрыть в "ЕслиТогда", то оно правильно считается
с заголовком и список концультацийшапка такое же, в "ЕслиТогда" они правильно выходят в печатной форме
дальше хз как..что бы разделитель страниц и вывод итога времени выходили после последнего одинакового клиента...takefive @ Сегодня, 9:57 * ,

Автор: 1cProger 22.07.19, 12:20

Подскажите кто нибудь, что можно сделать в данном случае?

Автор: Vofka 22.07.19, 13:00

1cProger, выше предложили же вариант. 2 цикла: 1 выводит клиентов, 2 выводит "отдельные элементы".

Автор: Vladal 23.07.19, 14:24

Цитата(1cProger @ 18.07.19, 15:31) *
 Для Каждого Выборка ИЗ ТЗ Цикл

А эта ТЗ как формируется? Из запроса?
Тогда в запросе добавить итоги по группировке и обходить уже готовые группировки и не придется рисовать
Цитата(1cProger @ 18.07.19, 15:31) *
Если Клиент1 <> Выборка.Клиент ТОГДА

Просто неизвестны исходные данные и наверно можно было бы одним запросом обойтись и сделать на СКД одним проходом.

Автор: 1cProger 23.07.19, 16:43

Vladal @ Сегодня, 15:24 * ,
Как обход сделать, не подскажите?

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua