|
УФ. Обновление связанных данных при установке отбора | ☑ | ||
---|---|---|---|---|
0
vhl
20.11.13
✎
15:32
|
Есть форма, на ней динамический список "Спис", пусть будет элементы справочника "Справочник1", у справочника есть реквизит "Реквизит1" - булево и "Реквизит2" - текст. На форме есть поле "Поле", путь к данным у него установлен: "Элементы.Спис.ТекущиеДанные.Реквизит2" - получается при перемещении по списку автоматически в этом поле обновляется значение из выделенного элемента справочника.
Теперь программно устанавливаем отбор для списка: Для каждого Параметр Из Спис.Отбор.Элементы Цикл Если Строка(Параметр.ЛевоеЗначение) = "Реквизит1" Тогда Параметр.Использование = Истина; Параметр.ПравоеЗначение = Истина; Возврат; КонецЕсли; КонецЦикла; В результате - список отбирается по реквизиту "Реквизит1", и, если до этого курсор стоял не на элементе, который попадает в отбор, то в поле "Поле" будет пустое значение. Так вот, чтобы такое вызвать чтобы после уставновки отбора в дин. списке автоматически обновлялись связанные реквизиты? Пробовал: ОбновитьИнтерфейс(); ОбновитьОтображениеДанных(); Элементы.Спис.Обновить(); ничего не рабтоает. При этом после установки отбора строка в дин. списке выделена, но поле не обновляется. Платформа 8.2.18.109 |
|||
1
Конфигуратор1с
20.11.13
✎
15:47
|
(0) а Элементы.поле.ОбновитьТекстРедактирования()?
|
|||
2
Конфигуратор1с
20.11.13
✎
15:47
|
странно но у меня все нормуль
|
|||
3
vhl
20.11.13
✎
15:51
|
(1) Пробовал - не работает.
(2) Перед установкой отбора встань курсором на элемент, который не попадет в отбор. |
|||
4
vhl
20.11.13
✎
15:55
|
Едем дальше: ОповеститьОбИзменении"СправочникСссылка.Справочник1") - не работает. ОповеститьОбАктивизации(Спис) - не работает. Активизировать() - не работает.
|
|||
5
Конфигуратор1с
20.11.13
✎
16:01
|
(3) а да. не работает(
|
|||
6
Конфигуратор1с
20.11.13
✎
16:05
|
вот так помогло
&НаКлиенте Процедура Команда1(Команда) Для каждого Параметр Из Список.Отбор.Элементы Цикл Если Строка(Параметр.ЛевоеЗначение) = "Актуальный" Тогда Параметр.Использование = Истина; Параметр.ПравоеЗначение = Истина; ЭтаФорма.ОбновитьОтображениеДанных(); Прервать;; КонецЕсли; КонецЦикла; КонецПроцедуры |
|||
7
Конфигуратор1с
20.11.13
✎
16:05
|
а вот так не работает
&НаКлиенте Процедура Команда1(Команда) Для каждого Параметр Из Список.Отбор.Элементы Цикл Если Строка(Параметр.ЛевоеЗначение) = "Актуальный" Тогда Параметр.Использование = Истина; Параметр.ПравоеЗначение = Истина; Элементы.Описание.ОбновитьТекстРедактирования(); Прервать;; КонецЕсли; КонецЦикла; КонецПроцедуры |
|||
8
Конфигуратор1с
20.11.13
✎
16:06
|
&НаКлиенте
Процедура Команда1(Команда) Для каждого Параметр Из Список.Отбор.Элементы Цикл Если Строка(Параметр.ЛевоеЗначение) = "Актуальный" Тогда Параметр.Использование = Истина; Параметр.ПравоеЗначение = Истина; ОбновитьОтображениеДанных(); Прервать;; КонецЕсли; КонецЦикла; КонецПроцедуры работает |
|||
9
Конфигуратор1с
20.11.13
✎
16:07
|
&НаКлиенте
Процедура Команда1(Команда) Для каждого Параметр Из Список.Отбор.Элементы Цикл Если Строка(Параметр.ЛевоеЗначение) = "Актуальный" Тогда Параметр.Использование = Истина; Параметр.ПравоеЗначение = Истина; Элементы.Список.Обновить(); Прервать;; КонецЕсли; КонецЦикла; КонецПроцедуры не работает |
|||
10
Конфигуратор1с
20.11.13
✎
16:07
|
короче бери отображение данных - проверено, работает
|
|||
11
vhl
20.11.13
✎
16:15
|
(6) Балин, я конечно тупанул с "Возврат" :)
|
|||
12
Конфигуратор1с
20.11.13
✎
16:20
|
(11) А ты возврат поставил после цикла? Семен Семеныч!
|
|||
13
Конфигуратор1с
20.11.13
✎
16:20
|
ну самое интересно что на 17 релизе у меня без обновления отображения автоматом подставлялась строка а на 18 реально перестало(
|
|||
14
vhl
20.11.13
✎
16:27
|
Короче на пустой демке работает, на рабочей базе нет. Пойду курить в чем отличие :(
|
|||
15
Конфигуратор1с
20.11.13
✎
16:59
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |