Получить сообщение обмена во временный каталог. Получает сообщение обмена во временный каталог пользователя ОС.
// Получает сообщение обмена во временный каталог пользователя ОС.
//
// Параметры:
// Отказ - Булево - флаг отказа; поднимается в случае возникновения ошибки.
// УзелИнформационнойБазы - ПланОбменаСсылка - узел плана обмена, для которого выполняется получение сообщения
// обмена.
// ВидТранспортаСообщенийОбмена - ПеречислениеСсылка.ВидыТранспортаСообщенийОбмена - вид транспорта для получения
// сообщения обмена.
// ВыводитьСообщения - Булево - если Истина, то выводятся сообщения пользователю.
//
// Возвращаемое значение:
// Структура со следующими ключи:
// * ИмяВременногоКаталогаСообщенийОбмена - полное имя каталога обмена, в которое было загружено сообщение обмена.
// * ИмяФайлаСообщенияОбмена - полное имя файла сообщения обмена.
// * ИдентификаторФайлаПакетаДанных - дата изменения файла сообщения обмена.
//
Функция ПолучитьСообщениеОбменаВоВременныйКаталог(Отказ, УзелИнформационнойБазы, ВидТранспортаСообщенийОбмена, ВыводитьСообщения = Истина) Экспорт
// Возвращаемое значение функции.
Результат = Новый Структура;
Результат.Вставить("ИмяВременногоКаталогаСообщенийОбмена", "");
Результат.Вставить("ИмяФайлаСообщенияОбмена", "");
Результат.Вставить("ИдентификаторФайлаПакетаДанных", Неопределено);
СтруктураНастроекОбмена = НастройкиТранспортаОбмена(УзелИнформационнойБазы, ВидТранспортаСообщенийОбмена);
СтруктураНастроекОбмена.РезультатВыполненияОбмена = Неопределено;
// Если настройка содержит ошибки, то получение сообщения обмена не производим; статус "Отменено".
Если СтруктураНастроекОбмена.Отказ Тогда
Если ВыводитьСообщения Тогда
НСтрока = НСтр("ru = 'При инициализации обработки транспорта сообщений обмена возникли ошибки.'");
ОбщегоНазначения.СообщитьПользователю(НСтрока,,,, Отказ);
КонецЕсли;
ЗафиксироватьЗавершениеОбмена(СтруктураНастроекОбмена);
Возврат Результат;
КонецЕсли;
// создаем временный каталог
ВыполнитьТранспортСообщенияОбменаПередОбработкой(СтруктураНастроекОбмена);
Если СтруктураНастроекОбмена.РезультатВыполненияОбмена = Неопределено Тогда
// Получаем сообщение во временный каталог.
ВыполнитьТранспортСообщенияОбменаПолучение(СтруктураНастроекОбмена);
КонецЕсли;
Если СтруктураНастроекОбмена.РезультатВыполненияОбмена <> Неопределено Тогда
Если ВыводитьСообщения Тогда
НСтрока = НСтр("ru = 'При получении сообщений обмена возникли ошибки.'");
ОбщегоНазначения.СообщитьПользователю(НСтрока,,,, Отказ);
КонецЕсли;
// Удаляем временный каталог и все его содержимое.
ВыполнитьТранспортСообщенияОбменаПослеОбработки(СтруктураНастроекОбмена);
ЗафиксироватьЗавершениеОбмена(СтруктураНастроекОбмена);
Возврат Результат;
КонецЕсли;
Результат.ИмяВременногоКаталогаСообщенийОбмена = СтруктураНастроекОбмена.ОбработкаТранспортаСообщенийОбмена.ИмяКаталогаСообщенияОбмена();
Результат.ИмяФайлаСообщенияОбмена = СтруктураНастроекОбмена.ОбработкаТранспортаСообщенийОбмена.ИмяФайлаСообщенияОбмена();
Результат.ИдентификаторФайлаПакетаДанных = СтруктураНастроекОбмена.ОбработкаТранспортаСообщенийОбмена.ДатаФайлаСообщенияОбмена();
Возврат Результат;
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
ПолучитьСообщениеОбменаВоВременныйКаталогИзИнформационнойБазыКорреспондента (БСП)
ПолучитьСообщениеОбменаВоВременныйКаталогИзИнформационнойБазыКорреспондентаЧерезВебСервис (БСП)
СоздатьВременныйКаталогСообщенийОбмена (БСП)
ЗапросВнешнихРесурсовДляКаталогаСообщенийОбменаДанными (БСП)
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)