Бизнес-сеть / История отправки документов без электронной подписи / Модуль формы

файл
#Область ОбработчикиСобытийФормы

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

#КонецОбласти

#Область ОбработчикиСобытийЭлементовТаблицыФормыСписок

&НаКлиенте
Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
	
	ОткрытьФормуПросмотра(Список[ВыбраннаяСтрока]);
	
КонецПроцедуры

#КонецОбласти

#Область СлужебныеПроцедурыИФункции

&НаКлиенте
Процедура ОткрытьФормуПросмотра(СтрокаДанных)
	
	ПараметрыОткрытия = Новый Структура;
	ПараметрыОткрытия.Вставить("ПолноеИмяФайла");
	ПараметрыОткрытия.Вставить("НаименованиеФайла");
	ПараметрыОткрытия.Вставить("НаправлениеЭД");
	ПараметрыОткрытия.Вставить("Контрагент");
	ПараметрыОткрытия.Вставить("Идентификатор");
	ПараметрыОткрытия.Вставить("УникальныйИдентификатор", УникальныйИдентификатор);
	ПараметрыОткрытия.Вставить("ВладелецЭД");
	ПараметрыОткрытия.Вставить("ЭлектронныйДокумент");
	ПараметрыОткрытия.Вставить("АдресХранилища");
	ПараметрыОткрытия.Вставить("ФайлАрхива");
	ПараметрыОткрытия.Вставить("Информация");
	ПараметрыОткрытия.Вставить("Статус");
	ПараметрыОткрытия.Вставить("Отправитель");
	ПараметрыОткрытия.Вставить("Получатель");
	ПараметрыОткрытия.Вставить("КонтрагентИНН");
	ПараметрыОткрытия.Вставить("КонтрагентКПП");
	ПараметрыОткрытия.Вставить("Дата");
	ПараметрыОткрытия.Вставить("Источник");
	ПараметрыОткрытия.Вставить("Организация");
	ПараметрыОткрытия.Вставить("ПубличнаяСсылкаQRКода");
	ПараметрыОткрытия.Вставить("ИдентификаторВременнойСсылки");
	ПараметрыОткрытия.Вставить("АдресХранилищаКартинкиQRКода");
	ПараметрыОткрытия.Вставить("ИзображениеQRКода");
	ПараметрыОткрытия.Вставить("АдресХранилищаПредставления");

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

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

#КонецОбласти

Связанные материалы