Динамическое изменение реквизитов/элементов формы при активизации строки коллекции. Как?

1. nomad_irk 80 29.10.24 15:05 Сейчас в теме
Дано: 2 таблицы на форме. При активизации строки таблица1, необходимо добавить/удалить реквизиты Таблица2 с последующим выводом всех колонок обновленной Таблица2 на форму.

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

Процедура ОбъектыПриАктивизацииСтроки(Элемент)
	
	ИдентификаторСтроки = Элементы.Объекты.ТекущаяСтрока; 
	
	Если ИдентификаторСтроки = Неопределено Тогда
		ИмяОбъекта = "";
		Возврат;
	КонецЕсли;
		
	ИдентификаторТекущейСтроки = ИдентификаторСтроки;
	//Либо
	//ПодключитьОбработчикОжидания("ИзменитьРеквизитыФормы", 0.1, Истина);
	//Либо	
	//ПараметрОповещения = Новый Структура("ИдентификаторСтроки", ИдентификаторСтроки);
	//Оповестить("ИзменениеФормы", ПараметрОповещения, ЭтаФорма); // Вышли "в эфир"
	
КонецПроцедуры

&НаКлиенте
Процедура ИзменитьРеквизитыФормы()
	
	ИзменитьРеквизитыФормыНаСервере();
	
КонецПроцедуры

&НаСервере
Процедура ИзменитьРеквизитыФормыНаСервере()
	
	// тут меняем реквизиты и элементы формы
	
КонецПроцедуры

&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
	
	Если НЕ Источник = ЭтаФорма Тогда // сюда падают все оповещения - кто бы их ни сказал (в пределах видимости), а нам нужно только своё
        Возврат;
	КонецЕсли;
	
	Если ИмяСобытия = "ИзменениеФормы" Тогда
		ИзменитьРеквизитыФормыНаСервере();
	КонецЕсли;
	
КонецПроцедуры

Показать

Каким образом выполнять изменение формы в этих условиях?
По теме из базы знаний
Найденные решения
2. Sashares 35 29.10.24 15:10 Сейчас в теме
(1)
Каким образом выполнять изменение формы в этих условиях?

Запоминать идентификатор текущей строки по завершению всех действий.
И если в При активизации он такой же как запомненный, в возврат уходить.
Либо не идентификатор строки запоминать, а значение из строки, однозначно ее идентифицирующее.
nomad_irk; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Sashares 35 29.10.24 15:10 Сейчас в теме
(1)
Каким образом выполнять изменение формы в этих условиях?

Запоминать идентификатор текущей строки по завершению всех действий.
И если в При активизации он такой же как запомненный, в возврат уходить.
Либо не идентификатор строки запоминать, а значение из строки, однозначно ее идентифицирующее.
nomad_irk; +1 Ответить
3. nomad_irk 80 29.10.24 15:46 Сейчас в теме
(2) Спасибо, разобрался.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот