ПослеЗакрытияФормыИстории (БСП)

Автор: 1С
ОбщийМодуль.УправлениеКонтактнойИнформациейКлиент
БСП

После закрытия формы истории. Завершение немодальных диалогов.

// Завершение немодальных диалогов.

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

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

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

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

ОткрытьФормуПослеЗакрытияТекущей (БСП)

ОбработчикОткрытияФормыПослеЗакрытияТекущей (БСП)

ПослеЗакрытияФормыПредупрежденийПриЗавершенииРаботы (БСП)

ПослеЗакрытияФормыИндикацияХодаОбновленияИБ (БСП)

ПослеЗакрытияФормыНерекомендуемойВерсииПлатформы (БСП)

ОткрытьФормуИсторииИзменений (БСП)

ПодтвердитьЗакрытиеФормы (БСП)

ПослеЗакрытияФормыПовторнаяСинхронизацияДанныхПередЗапуском (БСП)

ПослеЗакрытияФормыПроверкиСтатусаОтложенногоОбновления (БСП)

TurboConf ИР адаптер 2.63