Имя: Пароль:
1C
 
Бух 3.0.165.21 Помогите добавить команды печати для своего документа
↓Ø (Волшебник 26.12.2024 16:49)
0 Mobilis77
 
26.12.24
14:37
Понятно что тут используется БСП Печать. У меня есть Свой Документ  АТЛ_Заявка.

В модуле менеджера:
Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт 
	
	КомандаПечати = КомандыПечати.Добавить();
	КомандаПечати.Идентификатор = "ЗаявкаЗаказчику";
	КомандаПечати.Представление = "Заявка Заказчику";
	КомандаПечати.СписокФорм	= "ФормаСпискаУправляемая,ФормаДокументаУправляемая";
	КомандаПечати.ПроверкаПроведенияПередПечатью = Ложь;
	КомандаПечати.СразуНаПринтер = Ложь;
	
КонецПроцедуры 

Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт 	
	
	ПараметрыВывода.ДоступнаПечатьПоКомплектно = Истина;
	
	Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ЗаявкаЗаказчику") Тогда
		Структ=Новый Структура("ВидЗаявки,ПодвалСПечатьюПоПрефиксу","СЗаказчиком",Истина);
		УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "Заявка", "Заявка", 
		ПечатьЗаявки() ,"Документ.АТЛ_Заявка.Заявка");
	КонецЕсли;
	
КонецПроцедуры 


В модуле формы документа:

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект);
	
КонецПроцедуры

   // СтандартныеПодсистемы.ПодключаемыеКоманды
   &НаКлиенте 
   Процедура Подключаемый_ВыполнитьКоманду(Команда)
			 ПодключаемыеКомандыКлиент.ВыполнитьКоманду(ЭтотОбъект, Команда, Объект);
   КонецПроцедуры 

   &НаСервере
   Процедура Подключаемый_ВыполнитьКомандуНаСервере(Контекст, Результат)
		  ПодключаемыеКоманды.ВыполнитьКоманду(ЭтотОбъект, Контекст, Объект, Результат);
   КонецПроцедуры 

   &НаКлиенте
   Процедура Подключаемый_ОбновитьКоманды()
		  ПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Объект);
   КонецПроцедуры  
   // Конец СтандартныеПодсистемы.ПодключаемыеКоманды


И ничего, Кнопки с командой печати не появляется. Подскажите, что делаю не так? Вернее, что не доделал ? Только начал изучать БП.
1 Волшебник
 
26.12.24
14:38
Свой Документ — это звучит гордо!
2 CepeLLlka
 
26.12.24
14:41
В процедуре "ПриОпределенииОбъектовСКомандамиПечати" нужно добавить свой документ ещё
3 Mobilis77
 
26.12.24
14:44
(1) Ну понятно :-) Я имел в виду, что он добавлен в конфигурацию.
4 Mobilis77
 
26.12.24
15:27
(2) ПриОпределенииОбъектовСКомандамиПечати устарела, нужно в

УправлениеПечатьюПереопределяемый в процедуре:
Процедура ПриОпределенииНастроекПечати(Настройки) Экспорт
Настройки.ОбъектыПечати.Добавить(Документы.АТЛ_Заявка);
КонецПроцедуры


И в Модуле менеджера документа добавить Процедуру:
Процедура ПриОпределенииНастроекПечати(Настройки) Экспорт
	
	Настройки.ПриДобавленииКомандПечати = Истина;
	Настройки.ПриОпределенииПолучателей = Истина;
	
КонецПроцедуры


После этого кнопка появилась.
5 Волшебник
 
26.12.24
15:28
(4) Процедура в Модуле — это звучит гордо!
6 Mobilis77
 
26.12.24
16:10
(5) Я не пойму к чему этот стеб? Он имеет отношение к вопросу?
7 Волшебник
 
26.12.24
16:11
(6) Я тоже не пойму, чё ты вешаешь нам лапшу на уши?
8 Mobilis77
 
26.12.24
16:36
Какую лапшу?