Имя: Пароль:
1C
1С v8
УФ - обновление динамического списка
0 VladSt
 
11.09.15
15:27
Добрый день
Есть управляемая форма документа. В ней в страницы с закладками. На одной странице таблица с динамическим списком, который формируется из запроса к списку другого документа. Отбор по номеру 1-го документа.
При установке нового номера документа этот динамический список не заполняется. Только после сохранить документ, закрыть и открыть его формы заново.
Как заставить динамический список обновляться после изменения Номера документа?
1 VladSt
 
11.09.15
15:46
вот так не работает:

&НаКлиенте
Процедура НомерПриИзменении(Элемент)
    Элементы.ТТД.Обновить();
КонецПроцедуры
2 Mort
 
11.09.15
15:58
"Только после сохранить документ, закрыть и открыть его формы заново"
"динамическим списком, который формируется из запроса к списку другого документа"
"Отбор по номеру 1-го документа."


сам такое читай.
3 Nuobu
 
11.09.15
16:02
(0) ОповеститьОбИзменении(Тип("ТвойТип"))
4 Fedor-1971
 
11.09.15
16:05
(1)  а номер уже изменился?
как-то стрёмно делать связь по номеру документа, на мой взгляд лучше использовать ссылку.
5 Fedor-1971
 
11.09.15
16:07
4+ я имел в виду данные для твоего запроса изменились?
Может надо установить новый параметр запроса, а потом обновлять?
6 VladSt
 
11.09.15
16:20
(2) Я старался написать понятнее, ну извини, попробую еще раз.
Открываю форму нового документа. Устанавливаю номер. Как только установил номер, должен выполнится запрос в динамическом списке. В нем отбор по номеру текущего документа. Результат запроса заполнит таблицу с динамическим списком. Но эта таблица в этот момент не заполняется, а только после того, как документ записать, закрыть, открыть.
(4) Конечно, это стрёмно, и это не последний вариант. Просто иду по шагам. Ссылки будут.
7 Nuobu
 
11.09.15
16:22
(6) Может, ты передаешь ССылка.Номер.
Попробуй просто Номер передать.
8 VladSt
 
11.09.15
16:26
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    
    //отбор списка ТТД
    ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка(ТТД, "ПутЛист", Объект.Ссылка);
    ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка(ТТД, "ПутЛистСтрока", Формат(Объект.Ссылка.Номер, "ЧГ = 0") );
    Если Объект.Ссылка.Пустая() Тогда
        ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(ТТД.Отбор, "Ссылка", Документы.уатТТД.ПустаяСсылка());
    КонецЕсли;


И этот код работает при открытии уже записанного документа, когда номер дока уже есть в базе, а когда я его изменяю в форме, то ничего не происходит, динамический список не изменяется ((
9 katc
 
11.09.15
16:36
(8) ты просто фееричен.
10 katc
 
11.09.15
16:38
при изменении номера делай
ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка(ТТД, "ПутЛистСтрока", Формат(Номер, "ЧГ = 0") );
и будет счастье
11 VladSt
 
11.09.15
16:48
(10) Спасибо большое
Просто с УФ начал недавно работать, бывает непросто ))
12 Nuobu
 
11.09.15
16:51
(11) Так та же "проблема" всегда существовала.
Ссылка ведь пустая. Чего ж в неё обращаться за данными?
13 VladSt
 
11.09.15
17:07
Ребята, я все понял, спасибо
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.