УправлениеПечатью.ПодготовитьКоллекциюПечатныхФорм(

1. uriah 17 26.06.19 08:41 Сейчас в теме
В ЗУП 3.1.10 Убрали метод "ПодготовитьКоллекциюПечатныхФорм", что теперь использовать, чтобы вывести на печать печатную форму?

КоллекцияФорм = УправлениеПечатью.ПодготовитьКоллекциюПечатныхФорм("РасчетнаяВедомость");
	ОбъектыПечати = ОбъектыПечати();
	ПараметрыВывода = УправлениеПечатью.ПодготовитьСтруктуруПараметровВывода();
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
5. lefthander 02.09.19 10:46 Сейчас в теме
(1)посмотреть в типовой как теперь готовится комплект печатных форм и переписать свой код на методы типовой..

Но и предложенный по переносу старой функции тоже можно, но поверьте - позже придется следовать типовой... проверено на себе, мин немеряно. ;)
6. lefthander 02.09.19 12:07 Сейчас в теме
(1)Вот кстати в последних конфигурациях нашел такой вариант
В том же модуле УправлениеПечатью
есть Функция СформироватьПечатныеФормы(Знач ИмяМенеджераПечати, Знач ИменаМакетов, Знач МассивОбъектов, Знач ПараметрыПечати,
ДопустимыеТипыОбъектовПечати = Неопределено) Экспорт
Внутри нее есть вызов формирования печатных форм....
Как вариант посмотреть на параметры и переопределить в своих отчетах....

Есть еще вариант через расширение добавить старую и ее вызывать, но сос старой я уже говорил... в будущем могут появится подводные камни, хотя могут и не появиться... 1С она такая 1С ;)
2. 1c-prog@ngs.ru 26.06.19 10:44 Сейчас в теме
Тоже столкнулся с этой проблемкой. Функцию не убрали, а она перестала быть экспортной. Быстро выйти из ситуации - добавить в модуль эту функцию.

// Конструктор для параметра КоллекцияПечатныхФорм процедуры Печать.
//
// ВозвращаемоеЗначение:
//  ТаблицаЗначений - пустая коллекция печатных форм:
//   * ИмяМакета - Строка - идентификатор печатной формы;
//   * ИмяВРЕГ - Строка - идентификатор в верхнем регистре символов для быстрого поиска;
//   * СинонимМакета - Строка - представление печатной формы;
//   * ТабличныйДокумент - ТабличныйДокумент - печатная форма;
//   * Экземпляров - Число - количество копий, которое необходимо вывести на печать;
//   * Картинка - Картинка - (не используется);
//   * ПолныйПутьКМакету - Строка - используется для быстрого перехода к редактированию макета печатной формы;
//   * ИмяФайлаПечатнойФормы - Строка - имя файла;
//                           - Соответствие - имена файлов для каждого объекта:
//                              ** Ключ - ЛюбаяСсылка - ссылка на объект печати;
//                              ** Значение - Строка - имя файла;
//   * ОфисныеДокументы - Соответствие - коллекция печатных форм в формате офисных документов:
//                         ** Ключ - Строка - адрес во временном хранилище двоичных данных печатной формы;
//                         ** Значение - Строка - имя файла печатной формы.
Функция ПодготовитьКоллекциюПечатныхФорм(Знач Идентификаторы)
	
	Результат = Новый ТаблицаЗначений;
	Для Каждого ИмяКолонки Из УправлениеПечатьюКлиентСервер.ИменаПолейКоллекцииПечатныхФорм() Цикл
		Результат.Колонки.Добавить(ИмяКолонки);
	КонецЦикла;
	
	Если ТипЗнч(Идентификаторы) = Тип("Строка") Тогда
		Идентификаторы = СтрРазделить(Идентификаторы, ",");
	КонецЕсли;
	
	Для Каждого Идентификатор Из Идентификаторы Цикл
		ПечатнаяФорма = Результат.Найти(Идентификатор, "ИмяМакета");
		Если ПечатнаяФорма = Неопределено Тогда
			ПечатнаяФорма = Результат.Добавить();
			ПечатнаяФорма.ИмяМакета = Идентификатор;
			ПечатнаяФорма.ИмяВРЕГ = ВРег(Идентификатор);
			ПечатнаяФорма.Экземпляров = 1;
		Иначе
			ПечатнаяФорма.Экземпляров = ПечатнаяФорма.Экземпляров + 1;
		КонецЕсли;
	КонецЦикла;
	
	Результат.Индексы.Добавить("ИмяВРЕГ");
	Возврат Результат;
	
КонецФункции
Показать
user785234; ValeriyZ; forbuk; ivangrant; as-lubava; klaus38; yereomin@gmail.com; Programmissis; uriah; user705522_constantin_h; +10 Ответить
3. Zhest 21 13.08.19 14:54 Сейчас в теме
(2) Значение не является значением объектного типа (Экземпляров) - После всех выполненных действий выходит такая ошибка.
4. tricolor 23 02.09.19 10:42 Сейчас в теме
(3) я добавил в модуль старую процедуру, которая была раньше
Функция ПодготовитьКоллекциюПечатныхФорм(Знач ИменаМакетов)

Макеты = Новый ТаблицаЗначений;
Макеты.Колонки.Добавить("ИмяМакета");
Макеты.Колонки.Добавить("ИмяВРЕГ");
Макеты.Колонки.Добавить("СинонимМакета");
Макеты.Колонки.Добавить("ТабличныйДокумент");
Макеты.Колонки.Добавить("Экземпляров");
Макеты.Колонки.Добавить("Картинка");
Макеты.Колонки.Добавить("ПолныйПутьКМакету");
Макеты.Колонки.Добавить("ИмяФайлаПечатнойФормы");
Макеты.Колонки.Добавить("ОфисныеДокументы");

Если ТипЗнч(ИменаМакетов) = Тип("Строка") Тогда
ИменаМакетов = СтрРазделить(ИменаМакетов, ",");
КонецЕсли;

Для Каждого ИмяМакета Из ИменаМакетов Цикл
Макет = Макеты.Найти(ИмяМакета, "ИмяМакета");
Если Макет = Неопределено Тогда
Макет = Макеты.Добавить();
Макет.ИмяМакета = ИмяМакета;
Макет.ИмяВРЕГ = ВРег(ИмяМакета);
Макет.Экземпляров = 1;
Иначе
Макет.Экземпляров = Макет.Экземпляров + 1;
КонецЕсли;
КонецЦикла;

Возврат Макеты;

КонецФункции
Показать
forbuk; SmArtist; Romakon92; tolyan_ekb; ivangrant; as-lubava; klaus38; mlv84; Abbra; rmIvanT; Zhest; +11 Ответить
7. klaus38 01.10.19 08:14 Сейчас в теме
(4)Это решение! Спасибо.
9. MikeI 73 21.04.20 02:08 Сейчас в теме
А лучше этим клоунам из 1С руки на место поставить. Что у людей в головах? Чем мешала эта функция как экспортная. Просто какие смузи питейщики.
8. timurhv 04.03.20 14:59 Сейчас в теме
ПараметрыПечати = Новый Структура("ДополнитьКомплектВнешнимиПечатнымиФормами", Ложь);
МассивПечати = Новый Массив();
МассивПечати.Добавить(ДокументСсылка);
УправлениеПечатьюКлиент.ВыполнитьКомандуПечати("Документ.ИмяДокумента", "НужнаяПечатнаяФорма", МассивПечати, Объект, ПараметрыПечати);
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот