Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Как задать запрос для динамического списка ?

Как задать запрос для динамического списка ?
Я
   iva77ru
 
28.12.12 - 16:41
Нужна помощь! Сам уже не могу разобраться:

        МассивДобавляемыеРеквизиты = Новый Массив;
        НовРек = Новый РеквизитФормы("КонтактнаяИнформация1", Новый ОписаниеТипов("ДинамическийСписок"));
        МассивДобавляемыеРеквизиты.Добавить(НовРек);
        ИзменитьРеквизиты(МассивДобавляемыеРеквизиты);
        Рекв = ЭтаФорма.КонтактнаяИнформация1;
        Рекв.ПроизвольныйЗапрос = Истина;
        
        Рекв.ТекстЗапроса = " ВЫБРАТЬ
                             |    РегистрСведенийКонтактнаяИнформация.Контрагент,
                             |    РегистрСведенийКонтактнаяИнформация.ВидКонтактнойИнформации,
                             |    РегистрСведенийКонтактнаяИнформация.Информация
                             |ИЗ
                             |    РегистрСведений.КонтактнаяИнформация КАК РегистрСведенийКонтактнаяИнформация
                             |ГДЕ
                             |    РегистрСведенийКонтактнаяИнформация.Контрагент = &Контрагент";
        
        Рекв.ОсновнаяТаблица = "РегистрСведений.КонтактнаяИнформация";

    КонтактнаяИнформацияСтраница = ЭтаФорма.Элементы.Найти("СтраницаКонтактнаяИнформация");

    ТаблицаФормы = Элементы.Добавить("ТаблицаФормыКонтактнаяИнформация", Тип("ТаблицаФормы"),КонтактнаяИнформацияСтраница);//Добавление элемента в созданную группу
 
    ЗаполнитьЗначенияСвойств(ТаблицаФормы, ШаблонТаблицы);
    ТаблицаФормы.ПутьКДанным = "КонтактнаяИнформация1";//Назначим путь к данным, только после этого таблица появится на форме
 
 
Затем колонки добавляю. По событию на форме нужно поменять текст запроса для реквизита формы КонтактнаяИнформация1. Предварительно я сношу элемент формы ТаблицаФормыКонтактнаяИнформация. Но далее:
1. Не могу дотянуться димамического списка КонтактнаяИнформация1!
Пробывал:
    Рекв = Неопределено;
    МассивРеквизитов = ПолучитьРеквизиты(); 
    Для Каждого Реквизит Из МассивРеквизитов Цикл
        Если Реквизит.Имя = ИмяРеквизита Тогда
            Рекв = Реквизит;
            Прервать;
        КонецЕсли; 
    КонецЦикла; 
Возвращает Элемент с типом Ревизит формы. Как добраться до динамического списка?
 
 
   olegves
 
1 - 28.12.12 - 16:54
(0) создай элемент формы с типом ДС и сделай для него произвольный запрос (в свойствах реквизита)
Для форм списка элемент Список уже есть на форме
   iva77ru
 
2 - 29.12.12 - 09:44
Единственый способ поменять запрос для реквизита формы с ТЗ Динамический список это удалить(ранее добавленный программно), а затем добавить новый с новым текстом запроса?
   Professor83
 
3 - 29.12.12 - 10:52
(2) Мне из приведенного примера не совсем понятно, зачем динамический список создавать динамически.
   iva77ru
 
4 - 29.12.12 - 11:27
Есть типовая форма. Добавляем страницу программно. Создаем реквизит с типом динамический список. Выводим на форму элемент формы ПутьКДанным = "Добавленный ранее ревизит". Теперь по событиям на форме нужно менять запрос для добавленного ревизита с тз "Динамический список". Элемент формы сносим. А, вот обязательно сносить ранее введенный реквизит, чтобы поменять запрос или можно только менять запрос?

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует