Имя: Пароль:
1C
1С v8
УФ. Обновление связанных данных при установке отбора
,
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