ПредставлениеЗаписиРезультатовВыполненияОпераций (БСП)

Автор: 1С
ОбщийМодуль.ИнтернетПоддержкаПользователейКлиентСервер
БСП

Представление записи результатов выполнения операций. Функция возвращает текстовое описание шагов выполнения.

// Функция возвращает текстовое описание шагов выполнения.
//
// Параметры:
//  КонтекстВыполнения - Структура - Структура с ключами, описанными в Интернет.НоваяЗаписьРезультатовВыполненияОпераций();
//  ВключаяВложенные   - Булево - Истина, если надо включать вложенные контексты выполнения;
//  ВариантФормата     - Строка - в каком формате выводить текст. Возможные варианты:
//    * ТолькоТекстОписанияРезультата;
//    * ПодробноПоШагам.
//  УровеньВложенности - Число - Текущий уровень вложенности.
//
// Возвращаемое значение:
//   Строка - текстовое описание результата шага выполнения.
//
Функция ПредставлениеЗаписиРезультатовВыполненияОпераций(
			КонтекстВыполнения,
			ВключаяВложенные = Ложь,
			ВариантФормата = "",
			УровеньВложенности = 0) Экспорт

	ТипСтруктура = Тип("Структура");

	Результат = "";

	Для Каждого ТекущийШаг Из КонтекстВыполнения.ЛогШаговВыполнения Цикл

		Если ВариантФормата = "ТолькоТекстОписанияРезультата" Тогда
			Результат = Результат
				+ "#"
				+ СтроковыеФункцииКлиентСервер.СформироватьСтрокуСимволов("  ", УровеньВложенности)
				+ ТекущийШаг.ОписаниеРезультата
				+ "#";
		ИначеЕсли ВариантФормата = "ПодробноПоШагам" Тогда
			Отступ = СтроковыеФункцииКлиентСервер.СформироватьСтрокуСимволов("  ", УровеньВложенности);
			ШаблонШага = НСтр("ru='%1Шаг: %2
				|%1Длительность (мс): %3
				|%1Результат выполнения: %4'")
				+ Символы.ПС;
			Результат = Результат
				+ "#"
				+ СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
					ШаблонШага,
						Отступ,
						ТекущийШаг.Шаг,
						ТекущийШаг.ВремяОкончания - ТекущийШаг.ВремяНачала, // Длительность.
						ВставитьОтступВМногострочнуюСтроку("(" + ТекущийШаг.КодРезультата + "), " + ТекущийШаг.ОписаниеРезультата, Отступ, Ложь))
				+ "#";
		КонецЕсли;

		Если ВключаяВложенные = Истина Тогда
			Если ТипЗнч(ТекущийШаг.ВложенныйКонтекстВыполнения) = ТипСтруктура Тогда
				Результат = Результат
					+ ПредставлениеЗаписиРезультатовВыполненияОпераций(
						ТекущийШаг.ВложенныйКонтекстВыполнения,
						ВключаяВложенные,
						ВариантФормата,
						УровеньВложенности + 1);
			КонецЕсли;
		КонецЕсли;

	КонецЦикла;

	Результат = СтрЗаменить(Результат, "##", Символы.ПС + Символы.ПС);
	Результат = СтрЗаменить(Результат, "#", "");

	Возврат Результат;

КонецФункции

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

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

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

НоваяЗаписьРезультатовВыполненияОпераций (БСП)

НачатьРегистрациюРезультатаВыполненияОперации (БСП)

ИмяФормыДлительнойОперации (БСП)

ЗавершитьРегистрациюРезультатаВыполненияОперации (БСП)

ЗарегистрироватьРезультатВыполненияОперации (БСП)

ЗаписатьРезультатыАвтоНеГлобальный (БСП)

ПолучитьРезультатВыполненияВФоне (БСП)

РезультатПредопределенныхПроверокОперацийСЛицензиями (БСП)

НовыйРезультатыВыполненияКоманды (БСП)

1С Менеджер конфигураций