Как программно установить отбор в форме списка в открытой форме (обычное приложение)

1. cargobird 308 07.07.17 15:43 Сейчас в теме
Доброго времени!
Есть форма списка документов, в которой установлен отбор списком ссылок.
То есть на форме есть реквизит "Менеджер", которого нет у документа, при его изменении список ссылок заполняется определенными документами.
Вопрос вот в чем.
Вводим новый документ, записываем его.
Он соответствует условиям выбранного менеджера.
Добавляем новый документ в уже существующий список ссылок этой формы следующим образом:
Процедура ПриЗаписи(Отказ)	
	ФормаСписка = Документы.АктСверкиВзаиморасчетов.ПолучитьФормуСписка();
	Если ФормаСписка.Открыта() Тогда
		Если ФормаСписка.Отбор.Ссылка.Использование Тогда
			 Если ТипЗнч(ФормаСписка.Отбор.Ссылка.Значение) = Тип("СписокЗначений") Тогда
			 	ФормаСписка.Отбор.Ссылка.Значение.Добавить(Ссылка);			 				
			 КонецЕсли; 	
		КонецЕсли;
		 ФормаСписка.Обновить();
	КонецЕсли;
КонецПроцедуры
Показать

Это при записи самого документа, когда ссылка уже есть.
Что имеем в итоге.
Сразу после записи выводится сообщение о том, что введенные данные не соответствуют отбору.
Причем в открытой по-прежнему форме список ссылок обновился и там присутствует новый документ.
При нажатии на кнопку "Обновить" также ничего не происходит, документ не появляется.
При повторном выборе менеджера список ссылок перезаполняется, и теперь форму устраивает находящийся в списке ссылок новый документ и она его показывает.
Куда еще программно надо записывать новую ссылку, чтобы он появился сразу после записи?
Напрямую в ДокументСписок тоже писал, ссылка дублируется, но все равно ничего не происходит.
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
2. Dream_kz 129 07.07.17 15:48 Сейчас в теме +2 $m
А если выключить, а затем включить отбор?
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
7. SagittariusA 13.04.21 17:39 Сейчас в теме
(1)
Столкнулся с такой же проблемой.
Помог вызов метода "Обновить()" у самого списка (тип СправочникСписок).
2. Dream_kz 129 07.07.17 15:48 Сейчас в теме +2 $m
А если выключить, а затем включить отбор?
3. cargobird 308 07.07.17 15:59 Сейчас в теме
(2) Спасибо, добрый человек! Всё получилось добавлением двух строк:
		ФормаСписка.Отбор.Ссылка.Использование = Ложь;
		ФормаСписка.Отбор.Ссылка.Использование = Истина;
4. Dream_kz 129 07.07.17 16:01 Сейчас в теме
(3) Думаю механизм оптимизации, что отбор срабатывает только когда взводишь Использование в истину
5. cargobird 308 07.07.17 19:47 Сейчас в теме
(4) Так Использование и было в Истину. Видимо надо еще раз взвести в Истину чтобы изменения были приняты. Чтобы при уже заполненном как надо списке для меня было не совсем очевидно.
6. Dream_kz 129 07.07.17 19:55 Сейчас в теме
(5) Ну событие платформа генерирует при изменении только это флага, вот и ничего не менялось
Оставьте свое сообщение

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