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