СообщенияПользователю (БСП)

Автор: 1С
ОбщийМодуль.ДлительныеОперации
БСП

Сообщения пользователю. Получает сообщения пользователю, отфильтровывает служебные сообщения о состоянии длительной операции.

// Получает сообщения пользователю, отфильтровывает служебные сообщения о состоянии длительной операции.
// 
// Параметры:
//  УдалятьПолученные    - Булево                  - признак необходимости удаления полученных сообщений.
//  ИдентификаторЗадания - УникальныйИдентификатор - идентификатор фонового задания, соответствующего длительной 
//                                                   операции, у которой требуется получить сообщения пользователю. 
//                                                   Если не задан, то сообщения пользователю возвращаются
//                                                   из сеанса текущего пользователя.
// 
// Возвращаемое значение:
//  ФиксированныйМассив - объекты СообщениеПользователю, которые были сформированы в фоновом задании.
//
// Пример:
//   Операция = ДлительныеОперации.ВыполнитьВФоне(...);
//   ...
//   Сообщения = ДлительныеОперации.СообщенияПользователю(Истина, Операция.ИдентификаторЗадания);
//
Функция СообщенияПользователю(УдалятьПолученные = Ложь, ИдентификаторЗадания = Неопределено) Экспорт
	
	Если ЗначениеЗаполнено(ИдентификаторЗадания) Тогда
		ФоновоеЗадание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(ИдентификаторЗадания);
		Если ФоновоеЗадание <> Неопределено Тогда
			ВсеСообщения = ФоновоеЗадание.ПолучитьСообщенияПользователю(УдалятьПолученные);
		КонецЕсли;
	Иначе
		ВсеСообщения = ПолучитьСообщенияПользователю(УдалятьПолученные);
	КонецЕсли;
	
	Результат = Новый Массив;
	
	Для Каждого Сообщение Из ВсеСообщения Цикл
		Если СтрНачинаетсяС(Сообщение.Текст, "{" + СообщениеПрогресса() + "}") Тогда
			Если УдалятьПолученные Тогда
				Сообщение.Сообщить();
			КонецЕсли;
		Иначе
			Результат.Добавить(Сообщение);
		КонецЕсли;
	КонецЦикла;
	
	Возврат Новый ФиксированныйМассив(Результат);
	
КонецФункции

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

Рекомендации

Похожие публикации

ПриОтправкеСообщенияПользователяВТехподдержку (БСП)

ФормированиеСообщенияПользователю (БСП)

Предупреждение на сервере

Сообщение пользователю из модуля объекта с параметрами

Сообщение пользователю из модуля менеджера

СтрокаСообщенийПользователю (БСП)

ПриОпределенииНастроек (БСП)

ЗаписьЖурнала (БСП)

ПолучитьСообщениеОбменаВоВременныйКаталог (БСП)

Обновлятор-1С: групповое (пакетное) обновление и обслуживание всех баз за один раз