ElizabethP
@ElizabethP

Не добавляется внешняя обработка 1с?

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

Функция СведенияОВнешнейОбработке() Экспорт
	ПараметрыРегистрации = Новый Структура;
	МассивНазначений = Новый Массив;
	МассивНазначений.Добавить("Документ.РеализацияТоваровУслуг"); //Указываем документ к которому делаем внешнюю печ. форму
	ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма"); //может быть - ПечатнаяФорма, ЗаполнениеОбъекта, ДополнительныйОтчет, СозданиеСвязанныхОбъектов... 
	ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
	ПараметрыРегистрации.Вставить("Наименование", "ПечатнаяФормаНомер1"); //имя под которым обработка будет зарегестрирована в справочнике внешних обработок
	ПараметрыРегистрации.Вставить("БезопасныйРежим", ЛОЖЬ);
	ПараметрыРегистрации.Вставить("Версия", "1.0"); 
	ПараметрыРегистрации.Вставить("Информация", "Лизочка тестирует ВПФ"); 
	ТаблицаКоманд = ПолучитьТаблицуКоманд();
	ДобавитьКоманду(ТаблицаКоманд, "Печатная форма номер 1", "ПечатнаяФормаНомер1", "ВызовСерверногоМетода", Истина, "ПечатьMXL");
	ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);

	Возврат ПараметрыРегистрации;
КонецФункции


Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")

НоваяКоманда = ТаблицаКоманд.Добавить();
НоваяКоманда.Представление = Представление; 
НоваяКоманда.Идентификатор = Идентификатор;
НоваяКоманда.Использование = Использование;
НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
НоваяКоманда.Модификатор = Модификатор;

КонецПроцедуры

Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ПечатнаяФормаНомер1", "Печатная форма номер 1", СформироватьПечатнуюФорму(МассивОбъектов[0], ОбъектыПечати));

КонецПроцедуры // Печать()

Функция СформироватьПечатнуюФорму(СсылкаНаОбъект, ОбъектПечати)
	
	    ТабличныйДокумент = Новый ТабличныйДокумент;
		МакетОбработки = ПолучитьМакет ("МакетНомер1");
		
		ОбластьШапки = МакетОбработки.ПолучитьОбласть("Шапка");
		ТабличныйДокумент.Вывести(ОбластьШапки);
		
		ОбластьСтроки = МакетОбработки.ПолучитьОбласть("СтрокаТЧ");
		Для каждого ТекущаяСтрока из СсылкаНаОбъект.Товары Цикл
			ОбластьСтроки.Параметры.Товар = ТекущаяСтрока.Номенклатура;
			ОбластьСтроки.Цена = ТекущаяСтрока.Цена;
			ОбластьСтроки.Параметры.Количество = ТекущаяСтрока.Количество;
			ОбластьСтроки.Параметры.Сумма = ТекущаяСтрока.Цена;
			
			ТабличныйДокумент.Вывести(ОбластьСтроки);
			
						
		КонецЦикла;
		
		
	 ОбластьПодвала = МакетОбработки.ПолучитьОбласть("Подвал");
	 ОбластьПодвала.Параметры.Ответсвенный = СсылкаНаОбъект.Ответственный ;
	 ОбластьПодвала.Параметры.СуммаИтого = СсылкаНаОбъект.Товары.Итог("Сумма") ;
	 ТабличныйДокумент.Вывести(ОбластьПодвала);
	 
	 Возврат ТабличныйДокумент;
КонецФункции
  • Вопрос задан
  • 4855 просмотров
Пригласить эксперта
Ответы на вопрос 3
Fragster
@Fragster
помогло? отметь решением!
Для формирования структуры описания лучше пользоваться программным интерфейсом подсистемы "Дополнительные отчеты и обработки",
ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("нужная версия БСП");
ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработки.ВидОбработкиПечатнаяФорма();

и т.п.
с названиями модулей может быть наврал, поиск поможет.
список фукций: https://its.1c.ru/db/bsp312doc#content:772:hdoc
также в поставке БСП https://releases.1c.ru/version_files?nick=SSL31&ve... есть примеры обработок, будут в каталоге с шаблонами баз после установки.
Ответ написан
Комментировать
@Dementor
программист, архитектор, аналитик
Для начала просто откройте свою обработку в режиме предприятия через Файл - Открыть.
Возможно нужно сначала пересохранить обработку в режиме Конфигуратора этой базы.
Ответ написан
Комментировать
Была аналогичная ситуация, но в сообщении было сказано также о том, что включен режим безопасности. Удалил из модуля обработки функцию, которая выполнялась при инициализации (то есть не в теле какой-либо процедуры, а ниже всех объявленных), заработало.
Можно попробовать все удалить, кроме описания обработки
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы