Untitled
unknown
plain_text
2 years ago
15 kB
7
Indexable
Функция СведенияОВнешнейОбработке() Экспорт
Инфо = Новый Структура;
Инфо.Вставить("Вид", "ПечатнаяФорма");
Инфо.Вставить("Команды", Новый ТаблицаЗначений);
Инфо.Вставить("БезопасныйРежим", Истина);
Инфо.Вставить("Назначение", Новый Массив);
Инфо.Вставить("Наименование", НСтр("ru = 'Регистрация агента (печатные формы)'"));
Инфо.Вставить("Версия", "1.0");
Инфо.Вставить("ВерсияБСП", "1.2.1.4");
Инфо.Вставить("Информация", НСтр("ru = 'Регистрация агента (печатные формы)'"));
Колонки = Инфо.Команды.Колонки;
ТипСтрока = Новый ОписаниеТипов("Строка");
Колонки.Добавить("Представление", ТипСтрока);
Колонки.Добавить("Идентификатор", ТипСтрока);
Колонки.Добавить("Использование", ТипСтрока);
Колонки.Добавить("Модификатор", ТипСтрока);
Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
Команда = Инфо.Команды.Добавить();
Команда.Представление = НСтр("ru = 'Печать договора об возмездном оказании услуг'");
Команда.Идентификатор = "ПечатьДВОУ";
Команда.Использование = "ВызовСерверногоМетода";
Команда = Инфо.Команды.Добавить();
Команда.Представление = НСтр("ru = 'Печать договора об возмездном оказании услуг для самозанятых'");
Команда.Идентификатор = "ПечатьДВОУ_Самозанятые";
Команда.Использование = "ВызовСерверногоМетода";
Команда = Инфо.Команды.Добавить();
Команда.Представление = НСтр("ru = 'Печать политики конфиденциальности'");
Команда.Идентификатор = "ПечатьПолитикаКонфиденциальности";
Команда.Использование = "ВызовСерверногоМетода";
Команда = Инфо.Команды.Добавить();
Команда.Представление = НСтр("ru = 'Печать пользовательское соглашение'");
Команда.Идентификатор = "ПечатьПользовательскоеСоглашение";
Команда.Использование = "ВызовСерверногоМетода";
Возврат Инфо;
КонецФункции
Функция ПолучитьПечатнуюФормуДокумента(ОбъектНазначения, ИдентификаторКоманды, ВидДокумента, ПрисоединенныйФайл)
ТабличныйДокумент = Новый ТабличныйДокумент;
Макет = ПолучитьМакет(ИдентификаторКоманды);
ОбластьСтраница = Макет.ПолучитьОбласть("Страница");
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ПрисоединенныеФайлыПоВидамДокументов.ВладелецФайла КАК ВладелецФайла,
| ПрисоединенныеФайлыПоВидамДокументов.ВидДокумента КАК ВидДокумента,
| ПрисоединенныеФайлыПоВидамДокументов.ПрисоединенныйФайл КАК ПрисоединенныйФайл,
| ПрисоединенныеФайлыПоВидамДокументов.Ответственный КАК Ответственный
|ПОМЕСТИТЬ вт_ПрисоединенныйФайл
|ИЗ
| РегистрСведений.ПрисоединенныеФайлыПоВидамДокументов КАК ПрисоединенныеФайлыПоВидамДокументов
|ГДЕ
| ВЫРАЗИТЬ(ПрисоединенныеФайлыПоВидамДокументов.ВладелецФайла КАК Справочник.Агенты).Ссылка = &Агент
| И ПрисоединенныеФайлыПоВидамДокументов.ВидДокумента = &ВидДокумента
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ПростыеЭлектронныеПодписи.ОбъектПодписания КАК ОбъектПодписания,
| ПростыеЭлектронныеПодписи.Пользователь КАК Пользователь,
| ПростыеЭлектронныеПодписи.СообщениеSMS КАК СообщениеSMS,
| ПростыеЭлектронныеПодписи.ДатаПодписи КАК ДатаПодписи,
| ПростыеЭлектронныеПодписи.КодПодписи КАК КодПодписи
|ПОМЕСТИТЬ вт_ПростаяЭлектроннаяПодпись
|ИЗ
| РегистрСведений.ПростыеЭлектронныеПодписи КАК ПростыеЭлектронныеПодписи
|ГДЕ
| ПростыеЭлектронныеПодписи.Пользователь = &Пользователь
| И ВЫРАЗИТЬ(ПростыеЭлектронныеПодписи.ОбъектПодписания КАК Справочник.Файлы).Наименование = &ПрисоединенныйФайл
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| вт_ПростаяЭлектроннаяПодпись.Пользователь.Наименование КАК Пользователь,
| ВЫБОР
| КОГДА вт_ПростаяЭлектроннаяПодпись.ДатаПодписи = ДАТАВРЕМЯ(1, 1, 1)
| ТОГДА &ТекущаяДата
| ИНАЧЕ вт_ПростаяЭлектроннаяПодпись.ДатаПодписи
| КОНЕЦ КАК ДатаПодписи
|ИЗ
| вт_ПрисоединенныйФайл КАК вт_ПрисоединенныйФайл
| ЛЕВОЕ СОЕДИНЕНИЕ вт_ПростаяЭлектроннаяПодпись КАК вт_ПростаяЭлектроннаяПодпись
| ПО вт_ПрисоединенныйФайл.ВладелецФайла.УчетнаяЗаписьАгента = вт_ПростаяЭлектроннаяПодпись.Пользователь";
Запрос.УстановитьПараметр("Агент" , Справочники.Агенты.ПолучитьАгентаПоПользователю(ОбъектНазначения.УчетнаяЗаписьАгента));
Запрос.УстановитьПараметр("Пользователь" , Справочники.Агенты.ПолучитьПользователяПоАгенту(ОбъектНазначения));
Запрос.УстановитьПараметр("ТекущаяДата" , ТекущаяДата());
Запрос.УстановитьПараметр("ВидДокумента" , ВидДокумента);
Запрос.УстановитьПараметр("ПрисоединенныйФайл" , ПрисоединенныйФайл);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Если ВыборкаДетальныеЗаписи.Следующий() Тогда
Агент = ВРег(ВыборкаДетальныеЗаписи.Пользователь);
ДатаПодписи = Формат(ВыборкаДетальныеЗаписи.ДатаПодписи, "ДФ=dd.MM.yyyy");
КонецЕсли;
СтруктураПараметров = Новый Структура;
СтруктураПараметров.Вставить("ФИОИсполнителя" , Агент);
СтруктураПараметров.Вставить("ДатаПодписи" , ДатаПодписи);
ОбластьСтраница.Параметры.Заполнить(СтруктураПараметров);
ТабличныйДокумент.Вывести(ОбластьСтраница);
ТабличныйДокумент.АвтоМасштаб = Истина;
ТабличныйДокумент.ПолеСверху = 20;
ТабличныйДокумент.ПолеСлева = 20;
ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
Возврат ТабличныйДокумент;
КонецФункции
Процедура Печать(ИдентификаторКоманды, ОбъектыНазначения, ПараметрыКоманды) Экспорт
Если ОбъектыНазначения.Количество() = 1 Тогда
ОбъектНазначения = ОбъектыНазначения[0];
Иначе
ЗаписьЖурналаРегистрации(НСтр("ru = 'Получение внешней печатной формы'", ОбщегоНазначения.КодОсновногоЯзыка()),
УровеньЖурналаРегистрации.Ошибка,,, "Количество переданных объектов в функцию печати не равно 1");
Возврат;
КонецЕсли;
Если ИдентификаторКоманды = "ДВОУ" Тогда
ВидДокумента = ПолучитьВидПрисоединенногоДокумента(ИдентификаторКоманды);
ПрисоединенныйФайл = "Договор возмездного оказания услуг";
ТабДок = ПолучитьПечатнуюФормуДокумента(ОбъектНазначения, ИдентификаторКоманды, ВидДокумента, ПрисоединенныйФайл);
ИмяБезРасширения = "Договор возмездного оказания услуг";
ИначеЕсли ИдентификаторКоманды = "ДВОУСЗ" Тогда
ВидДокумента = ПолучитьВидПрисоединенногоДокумента(ИдентификаторКоманды);
ПрисоединенныйФайл = "Договор возмездного оказании услуг для самозанятых";
ТабДок = ПолучитьПечатнуюФормуДокумента(ОбъектНазначения, ИдентификаторКоманды, ВидДокумента, ПрисоединенныйФайл);
ИмяБезРасширения = "Договор возмездного оказания услуг для самозанятых";
ИначеЕсли ИдентификаторКоманды = "ПолитикаКонфиденциальности" Тогда
ВидДокумента = ПолучитьВидПрисоединенногоДокумента(ИдентификаторКоманды);
ПрисоединенныйФайл = "Политика конфиденциальности";
ТабДок = ПолучитьПечатнуюФормуДокумента(ОбъектНазначения, ИдентификаторКоманды, ВидДокумента, ПрисоединенныйФайл);
ИмяБезРасширения = "Политика конфиденциальности";
ИначеЕсли ИдентификаторКоманды = "ПользовательскоеСоглашение" Тогда
ВидДокумента = ПолучитьВидПрисоединенногоДокумента(ИдентификаторКоманды);
ПрисоединенныйФайл = "Пользовательское соглашение";
ТабДок = ПолучитьПечатнуюФормуДокумента(ОбъектНазначения, ИдентификаторКоманды, ВидДокумента, ПрисоединенныйФайл);
ИмяБезРасширения = "Пользовательское соглашение";
Иначе
Возврат;
КонецЕсли;
ПараметрыКоманды.РезультатВыполнения.Вставить("ПечатнаяФорма", ТабДок);
ПараметрыКоманды.РезультатВыполнения.Вставить("ИмяБезРасширения", ИмяБезРасширения);
КонецПроцедуры
Функция ПолучитьВидПрисоединенногоДокумента(ИдентификаторКоманды)
Если ИдентификаторКоманды = "ДВОУ" Тогда
Возврат Справочники.ВидыПрисоединенныхДокументов.ДВОУ;
ИначеЕсли ИдентификаторКоманды = "ДВОУСЗ" Тогда
Возврат Справочники.ВидыПрисоединенныхДокументов.ДВОУ_Самозанятые;
ИначеЕсли ИдентификаторКоманды = "ПолитикаКонфиденциальности" Тогда
Возврат Справочники.ВидыПрисоединенныхДокументов.ПолитикаКонфиденциальности;
ИначеЕсли ИдентификаторКоманды = "ПользовательскоеСоглашение" Тогда
Возврат Справочники.ВидыПрисоединенныхДокументов.ПользовательскоеСоглашение;
Иначе
Возврат Неопределено;
КонецЕсли;
КонецФункции Editor is loading...
Leave a Comment