Универсальная форма отладки для внешней обработки печатных форм
Разработка - Инструментарий разработчика
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Все внешние печатные формы БСП имеют в модуле код экспортных функций, хранящий основные настройки этой внешней обработки, наподобие:
Функция СведенияОВнешнейОбработке() Экспорт
ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке();
ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиПечатнаяФорма();
ПараметрыРегистрации.Наименование = "УКД (01.10.2024)";
ПараметрыРегистрации.Информация = "УКД (01.10.2024)";
ПараметрыРегистрации.Версия = "2.0";
ПараметрыРегистрации.БезопасныйРежим = Ложь;
ПараметрыРегистрации.Назначение.Добавить("Документ.КорректировкаРеализации");
НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
НоваяКоманда.Представление = "УКД (01.10.2024)";
НоваяКоманда.Идентификатор = "УКД (01.10.2024)";
НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
НоваяКоманда.ПоказыватьОповещение = Ложь;
НоваяКоманда.Скрыть = Ложь;
НоваяКоманда.Модификатор = "ПечатьMXL";
Возврат ПараметрыРегистрации;
КонецФункции
Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "УКД (01.10.2024)") Тогда
СтруктураТипов = ОбщегоНазначенияУТ.СоответствиеМассивовПоТипамОбъектов(МассивОбъектов);
ТабДок = СформироватьПечатнуюФормуУКД(СтруктураТипов, ОбъектыПечати);
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм,"УКД (01.10.2024)","УКД (01.10.2024)",ТабДок);
КонецЕсли;
КонецПроцедуры
При открытии формы отладки она вызывает функцию СведенияОВнешнейОбработке() из модуля и получает сведения о настройках. Из параметров регистрации берутся типы документов и справочников назначений, в нашем случае "Документ.КорректировкаРеализации". При выборе ссылки на форме производится выбор только из указанных типов. Затем перевыбираются все команды из них формируется список выбора печатных форм, по умолчанию заполняется самой первой.
При нажатии кнопки "печать" происходит вызов экспортной функции печать из модуля для выбранной печатной формы. Сформированный табличный документ открывается в стандартной форме печати документов БСП
Идентификатор="";
ПараметрыВывода = Новый Структура;
ОбъектыПечати = Новый СписокЗначений;
ОбъектыПечати.Добавить(СсылкаОбъект, Строка(СсылкаОбъект));
МассивОбъектов = Новый Массив;
ТабДок=ПолучитьНаСервереТабличныйДокумент(Идентификатор);
//Создаём новую коллекцию печатных форм
КоллекцияПечатныхФорм = УправлениеПечатьюКлиент.НоваяКоллекцияПечатныхФорм(Идентификатор);
//Добавляем в коллекцию сформированный табличный документ
КоллекцияПечатныхФорм[0].ТабличныйДокумент = ТабДок;
//Устанавливаем параметры печати (при необходимости)
КоллекцияПечатныхФорм[0].Экземпляров = 1;
КоллекцияПечатныхФорм[0].СинонимМакета = Идентификатор; //Так будет выглядеть имя файла при сохранении в файл из формы "Печать документов"
//Вывод через стандартную процедуру БСП
УправлениеПечатьюКлиент.ПечатьДокументов(КоллекцияПечатныхФорм, Неопределено, ЭтаФорма);
Другие разработки автора:
Проверено на следующих конфигурациях и релизах:
- 1С:ERP Управление предприятием 2, релизы 2.5.27.88
Вступайте в нашу телеграмм-группу Инфостарт








