8.х обработка печатных форм

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем ILDARIAN, 20 июн 2013.

  1. TopicStarter Overlay
    ILDARIAN
    Offline

    ILDARIAN Опытный в 1С

    Регистрация:
    6 янв 2013
    Сообщения:
    131
    Симпатии:
    1
    Баллы:
    29
    Здравствуйте !

    Есть справочник контрагенты, в котором есть печатная форма. Данная печатная форма занимает пол листа а4 (если ландшафт) .

    Есть обработка с табличной частью, которая выводит на печать выбранных контрагентов. Задача обработки выводить на одну печатную форму ПФ всех выбранных контрагентов, но она выводит их в 1 колонку.
    --------
    Задача: Выводить на печать контрагентов в 2 колонки.

    Вот код обработки

    Код:
    Процедура КоманднаяПанель1Выгрузить(Кнопка)
    
    ТабДокРезультирующий = Новый ТабличныйДокумент;
    
    Для каждого текКонтрагент Из ТабличнаяЧасть1 Цикл
    
    Если текКонтрагент.Выгружать Тогда
    
    КонтрагентОбъект = текКонтрагент.Контрагент.ПолучитьОбъект();
    ТабдОКтЕМП = КонтрагентОбъект.ПечатьАбонимента();
    ТабДокРезультирующий.МасштабПечати = "80";
    ТабДокРезультирующий.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
    ТабДокРезультирующий.Вывести(ТабдОКтЕМП);  
    
    КонецЕсли;
    
    КонецЦикла;
    
    ТабДокРезультирующий.Показать();
    
  2. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.649
    Симпатии:
    948
    Баллы:
    204
    ТабДок.Вывести() - выводит ниже курсора
    ТабДок.Присоединить() -выводит влево

    Т.е Вам надо будет
    Вывести, затем присоеденить - получили две колонки
    Затем опять вывести, присоеденить - получили вторую строку с двумя колонками и т.д

    Либо в макете делайте две колонки и просто выводите
  3. TopicStarter Overlay
    ILDARIAN
    Offline

    ILDARIAN Опытный в 1С

    Регистрация:
    6 янв 2013
    Сообщения:
    131
    Симпатии:
    1
    Баллы:
    29
    Я не знаю какое количество макетов будет выводится изначально, нужно как-то в цикле сделать чтобы первый выводился, следующий присоединялся, и так по очереди до тек пор пока не кончатся макеты. Как это написать ?

    задача вывести на 1 лист 2 макета разных контрагентов
  4. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.649
    Симпатии:
    948
    Баллы:
    204
    В стандартных конфигурациях яесть такая функуия ПроверитьВыводТабличногоДокумента

    ФормированиеПечатныхФорм.ПроверитьВыводТабличногоДокумента(ТабДок, ВыводимыеОбласти);

    посмотрите как работает и используйте

    или перепишите ее аналог

Поделиться этой страницей