Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
29 ноя 2024, 05:38

Динамический список на УФ

Автор Новенькая, 10 дек 2012, 18:21

0 Пользователей и 1 гость просматривают эту тему.

Новенькая

Здравствуйте! очень нужна ваша помощь.
Есть Динамический список на форме с произвольным запросом. Задача состоит в следующим: в зависимости от выполнения ряда условий менять блок в запросе "ГДЕ..."...У меня это выглядит следующим образом:
в процедуре ПриСозданииНаСервере() пишу:

Условие="ВходящиеОбязательства.Дата МЕЖДУ &ДатаНачала И &ДатаКонца";
Если НЕ ПоВсемПользователям Тогда
         Объекты = ДокументыПосчетуСервер.ПолучитьДоступныеОбъектыЗатрат(Объект.Пользователь);
         Если ПоОбъектам Тогда
             Если Объекты.Количество() > 0 Тогда
                 Условие = Условие + " И ВходящиеОбязательства.Обязательство.ОбъектЗатрат В (&ОбъектЗатрат)";
             КонецЕсли;
         Иначе
             Условие = Условие + " И (УчастникиСогласования.Пользователь В (&Пользователь) ИЛИ УчастникиСогласования.ДолженСогласовать В (&Пользователь))";         КонецЕсли;
     КонецЕсли;

     ТекстЗапроса=ВходящиеОбязательства.ТекстЗапроса;
     ТекстЗапроса= СтрЗаменить(ТекстЗапроса, "ВходящиеОбязательства.Дата МЕЖДУ &ДатаНачала И &ДатаКонца", Условие);

Но тут появляются параметры ОбъектЗатрат и Пользователь. как их программно добавить и заполнить к параметрам Динамического списка?
Заранее спасибо...

Dethmontt

Список.Параметры.УстановитьЗначениеПараметра(Ключ,значение);
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Новенькая

Так не получается( выдает ошибку:           ВходящиеОбязательства.Параметры.УстановитьЗначениеПараметра("Пользователь", Объект.Пользователь);
по причине:
Параметр с указанным именем не найден


Dethmontt

ВходящиеОбязательства.ТекстЗапроса = СтрЗаменить(ВходящиеОбязательства.ТекстЗапроса, "ВходящиеОбязательства.Дата МЕЖДУ &ДатаНачала И &ДатаКонца", Условие);
ВходящиеОбязательства.Параметры.УстановитьЗначениеПараметра("Пользователь", Объект.Пользователь);

Добавлено: 10 дек 2012, 20:29


В этом случае в исходном тексте запроса должна присутствовать строка "ВходящиеОбязательства.Дата МЕЖДУ &ДатаНачала И &ДатаКонца"
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Новенькая

Прошу прощения, все работает) параметр раньше устанавливала, чем к тексту запроса условие прибавила. СПАСИБО БОЛЬШОЕ за помощь

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск