Отложенная печать (обычные формы)

26.04.21

Задачи пользователя - Пакетная печать

В первую очередь эта публикация для тех, кто работает на "удаленке". Также может пригодиться тем, у кого принтер в офисе находится очень далеко от рабочего места и в лом бегать к нему за каждым документом. В меню "Печать" любого документа появляется кнопка "Отложенная печать", при нажатии на которую появляется окно со списком выбора печатной формы. Список включает в себя стандартные и внешние печатные формы. После выбора печатной формы данные записываются в регистр сведений. Через обработку Отложенная печать можно увидеть список отложенных на печать документов и распечатать их одним разом.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Отложенная печать.epf
.epf 14,20Kb ver:1.0
0
0 Скачать (1 SM) Купить за 1 850 руб.
ВПФ_ОтложеннаяПечать.epf
.epf 8,65Kb ver:1.0
0
0 Скачать (1 SM) Купить за 1 850 руб.

Чтобы в меню печать появилась кнопка "Отложенная печать", нам понадобится:

  1. Внешняя печатная форма ВПФ_ОтложеннаяПечать.epf. В ней в макет "Параметы регистрации" добавлены все типы документов для которых необходима возможность отложенной печати:

 

 

Ее необходимо добавить в Сервис->Дополнительные обработки и отчеты->Дополнительные внешние печатные формы.

  1. Необходимо добавить регистр сведений _ОтложеннаяПечать.

Измерения:

  • ДокументСсылка: тип ДокументСсылка

  • ПечатнаяФорма: тип Строка(100)

  • Ответственный: тип СправочникСсылка.Пользователи

Ресурсы:

  • Напечатан: тип Булево

  • Расшифровка: тип ХранилищеЗначения

Реквизиты:

  • ДатаДобавления: тип Дата (Дата и время)

  • ДатаПечати: тип Дата (Дата и время)

  • Текст: тип Строка(100)

 

 

  1. В общем модуле УниверсальныеМеханизмы необходимо заменить следущую процедуру:
Процедура ПечатьПоДополнительнойКнопке(УдалитьДеревоМакетов, Объект, Форма = Неопределено, ТекстКнопки) Экспорт
    
    Если Не Форма = Неопределено Тогда
        Если Не РаботаСДиалогами.ПроверитьМодифицированностьВФорме(Объект,Форма) Тогда
            Возврат;
        КонецЕсли;
    КонецЕсли;
    
    ЭтоДокумент = Метаданные.Документы.Содержит(Объект.Метаданные());
    
    
    Попытка
        СтруктураВнутреннихПечатныхФорм = Объект.ПолучитьСтруктуруПечатныхФорм()
    Исключение
        СтруктураВнутреннихПечатныхФорм = Новый Структура;
    КонецПопытки;
    
    ДеревоМакетовПечати = ПолучитьДеревоМакетовПечати(Объект.Ссылка, СтруктураВнутреннихПечатныхФорм);
    
    //-------------------ОТЛОЖЕННАЯ ПЕЧАТЬ----------------------------
    
    Если ТекстКнопки = "Отложенная печать" Тогда
        
        Если Не Метаданные.РегистрыСведений._ОтложеннаяПечать.Измерения.ДокументСсылка.Тип.СодержитТип(ТипЗнч(Объект.Ссылка)) Тогда
            Возврат;
        КонецЕсли;    
        
        МассивВычитания = Новый Массив();
        МассивВычитания.Добавить("Отложенная печать");
        МассивВычитания.Добавить("");
        МассивВычитания.Добавить("По умолчанию...");
        
        Результат = ДеревоМакетовПечати.Скопировать();
        Результат.Строки.Очистить();
        Для Каждого Элемент Из ДеревоМакетовПечати.Строки Цикл
            Если МассивВычитания.Найти(Элемент.Текст) = Неопределено Тогда
                НоваяСтрока = Результат.Строки.Добавить();
                ЗаполнитьЗначенияСвойств(НоваяСтрока, Элемент);
            КонецЕсли;
        КонецЦикла;
        
        ДеревоМакетовПечати = Результат;
        
        Если ДеревоМакетовПечати.Строки.Количество() = 0 Тогда
            Возврат;
        КонецЕсли;            
        
        ПечатнаяФорма = ДеревоМакетовПечати.ВыбратьСтроку("Выберите печатную форму");
        
        Если ПечатнаяФорма <> Неопределено Тогда
            ЗаписьРС = РегистрыСведений._ОтложеннаяПечать.СоздатьМенеджерЗаписи();
            ЗаписьРС.Ответственный  = Пользователи.ТекущийПользователь();
            ЗаписьРС.ДокументСсылка = Объект.Ссылка;
            ЗаписьРС.ПечатнаяФорма  = ПечатнаяФорма.Имя;
            ЗаписьРС.Текст          = ПечатнаяФорма.Текст;
            ЗаписьРС.Напечатан      = Ложь;
            ЗаписьРС.ДатаДобавления = ТекущаяДата();
            
            Расшифровка = ПечатнаяФорма.Расшифровка;
            Если ТипЗнч(Расшифровка) = Тип("Структура") Тогда
                ЗаписьРС.Расшифровка = Новый ХранилищеЗначения(Расшифровка);
            КонецЕсли;
            
            ЗаписьРС.Записать(Истина);
        КонецЕсли;
        
        Возврат;
        
    КонецЕсли;
    
    //-----------------------------------------------------------
        
    СтрокаКнопки = ДеревоМакетовПечати.Строки.Найти(ТекстКнопки,"Текст");
    
    Если СтрокаКнопки = Неопределено Тогда
        
        Предупреждение("Печать не доступна. Изменился набор реквизитов!");
        Возврат;
        
    КонецЕсли;
    
    Расшифровка = СтрокаКнопки.Расшифровка;
    Если ТипЗнч(Расшифровка) = Тип("Структура") Тогда
        
        ТабДокумент = НапечататьВнешнююФорму(Объект.Ссылка, Расшифровка);
        НапечататьДокумент(ТабДокумент, , , ?(ЭтоДокумент, ОбщегоНазначенияЗК.СформироватьЗаголовокДокумента(Объект), Строка(Объект)), ,ТабДокумент);
        
    Иначе
        
        Объект.Печать(СтрокаКнопки.Имя, 0);
        
    КонецЕсли;
    
КонецПроцедуры // ПечатьПоДополнительнойКнопке()
  1. Выбираем

 

 

  1. Выбираем необходимую печатную форму из списка

 

 

  1. Дальше нужно воспользоваться обработкой ОтложеннаяПечать.epf.

 

 

Метод, описанный в публикации, за исключением параметров авторегистрации, должен работать на всех типовых на обычных формах. Делал для ЗУП 2.5. Проверял на релизе Зарплата и управление персоналом КОРП, редакция 2.5 (2.5.159.4).

Отложенная печать обработка обычные формы удаленка документы

См. также

Пакетная печать Печатные формы Инструментарий разработчика Программист Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

22200 руб.

06.10.2023    22200    58    19    

88

Пакетная печать Банковские операции Кассовые операции Бухгалтер Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Платные (руб)

Обработка для групповой печати чеков ККМ с настройкой, загруженных из банковской выписки. На основании документа Поступление на расчетный счет!

4800 руб.

21.08.2019    20872    78    11    

25

Пакетная печать ККМ Кассовые операции Загрузка и выгрузка в Excel Бухгалтер Пользователь Россия Бухгалтерский учет Платные (руб)

Предназначена для групповой печати чеков. Что печатать в теле чека описано в текстовом файле с разделителем запятая (CSV) Подходит для любого языка программирования который умеет записывать в текстовый файл

3600 руб.

26.07.2019    26163    40    17    

24

Пакетная печать Печатные формы Программист Пользователь Руководитель проекта 1С:Управление торговлей 10 Абонемент ($m)

Внешние печатные формы УПД, УКД (Универсальный передаточный/корректировочный документ) в редакции по постановлению №1096 начиная с 2024.10.01, поддерживающая вывод данных прослеживаемости для УТ 10.3

1 стартмани

30.09.2024    10441    698    zhuravlev_as    63    

7

Пакетная печать Печатные формы Системный администратор Программист Бухгалтер Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Бухгалтерский учет Налоговый учет Абонемент ($m)

Внешние печатные формы УПД (Универсальный передаточный документ), Счет-фактура (+ корректировочный) (+ "в валюте") в редакции постановления Правительства РФ №1096 от 01.10.2024 для 1С 8 Управление торговлей 11.5, Комплексная автоматизация, Управление предприятием ERP 2.5 для документов вида "Реализация товаров и услуг", "Счет-фактура (выданный)". С данными прослеживаемости.

1 стартмани

27.09.2024    6116    430    zhuravlev_as    33    

8

Пакетная печать Печатные формы Адаптация типовых решений Универсальные функции Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Абонемент ($m)

Расширение для программ 1С:Управление торговлей, 1С:Комплексная автоматизация, 1С:ERP, которое позволяет распечатывать печатные формы для непроведенных документов. Можно настроить, каким пользователям, какие конкретные формы документов разрешено печатать без проведения документа.

2 стартмани

22.08.2023    5202    84    progmaster    13    

4

Инструментарий разработчика Пакетная печать Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Пример выполнения печати на принтер на сервере 1С используя библиотеку Ghostscript

1 стартмани

17.10.2022    6460    39    prog-1s    1    

12
Оставьте свое сообщение