
Процедура ОсновныеДействияФормыОК(Кнопка)
	
	Попытка
		НовоеЗначение = Новый УникальныйИдентификатор(УникальныйИдентификатор);
	Исключение
		Сообщить("Неверная строка идентификатора!", СтатусСообщения.Внимание);
		Возврат;
	КонецПопытки; 
	ирОбщий.ПрименитьИзмененияИЗакрытьФормуЛкс(ЭтаФорма, НовоеЗначение);
	
КонецПроцедуры

Процедура ПриОткрытии()
	
	Если ТипЗнч(НачальноеЗначениеВыбора) <> Тип("УникальныйИдентификатор") Тогда
		НачальноеЗначениеВыбора = Новый УникальныйИдентификатор();
	КонецЕсли; 
	УстановитьПрямойИД("" + НачальноеЗначениеВыбора);

КонецПроцедуры

Процедура УстановитьПрямойИД(НовыйИД)
	
	УникальныйИдентификатор = НовыйИД;
	УникальныйИдентификаторПриИзменении();
	
КонецПроцедуры

Процедура ИзПредставленияНенайденногоОбъектаОкончаниеВводаТекста(Элемент, Текст, Значение, СтандартнаяОбработка)
	
	лУникальныйИдентификатор = ирКэш.Получить().ПолучитьУникальныйИдентификаторИзСтроки(Текст);
	Если лУникальныйИдентификатор <> Неопределено Тогда
		УстановитьПрямойИД(лУникальныйИдентификатор);
		ЭтаФорма.Модифицированность = Истина;
		Элемент.ЦветФонаПоля = WebЦвета.СветлоЗеленый;
	Иначе
		Элемент.ЦветФонаПоля = WebЦвета.СветлоРозовый;
	КонецЕсли;

КонецПроцедуры

Процедура ОсновныеДействияФормыСгенерировать(Кнопка)
	
	УстановитьПрямойИД("" + Новый УникальныйИдентификатор);
	ЭтаФорма.Модифицированность = Истина;
	
КонецПроцедуры

Процедура УникальныйИдентификаторПриИзменении(Элемент = Неопределено)
	
	Обратный = ирОбщий.ПолучитьГУИДИнверсныйИзПрямогоЛкс(УникальныйИдентификатор);

КонецПроцедуры

Процедура ОбратныйПриИзменении(Элемент = Неопределено)

	УникальныйИдентификатор = ирОбщий.ПолучитьГУИДПрямойИзИнверсногоЛкс(Обратный);
	
КонецПроцедуры

ирОбщий.ИнициализироватьФормуЛкс(ЭтаФорма, "Обработка.ирПлатформа.Форма.УникальныйИдентификатор");
