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


Установить отбор программно в разных вариантах отчета

Установить отбор программно в разных вариантах отчета
Я
   Nyarlathotep
 
19.02.18 - 10:10
Всем привет!

Нужно установить отбор программно в разных вариантах одного отчета (во всех вариантах поле, по которому делаем отбор называется по разному, каждый вариант берет банные из своего набора данных).

Делаю в модуле объекта вот так:

НастройкиОтчета = КомпоновщикНастроек.ПолучитьНастройки();
    
    НовыйЭлементОтбора = НастройкиОтчета.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ПолеОтбора = Новый ПолеКомпоновкиДанных("МенеджерДокумента");
    НовыйЭлементОтбора.ЛевоеЗначение = ПолеОтбора;
    НовыйЭлементОтбора.Использование = Истина;
    НовыйЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
    НовыйЭлементОтбора.ПравоеЗначение = Справочники.Пользователи.НайтиПоНаименованию("Мой пользователь");

Для одного варианта, в котором есть поле "Менеджер документа" все работает, но все остальные варианты не показывают ничего вообще.

А как правильно сделать, чтоб отбор установился для всех вариантов?
 
 
   nordbox
 
1 - 19.02.18 - 10:12
И не будет, внимательно читай свой код
   Nyarlathotep
 
2 - 19.02.18 - 10:14
Как мне в модуле объекта понять, какой именно вариант используется, чтобы указать нужное поле отбора?
   Nyarlathotep
 
3 - 19.02.18 - 10:14
(1) А что с кодом то не так?
   nordbox
 
4 - 19.02.18 - 10:14
НУ дык получи вариант отчета
   Nyarlathotep
 
5 - 19.02.18 - 10:15
(4) А как его получить? Я с СКД программно не работал еще...
   nordbox
 
6 - 19.02.18 - 10:17
Надеюсь модераторы не будут ругаться
http://programmist1s.ru/vyibor-varianta-otcheta-skd-obyichnyie-formyi/
Дальше разберешься
   Nyarlathotep
 
7 - 19.02.18 - 10:31
(0) Вот так получилось:

если НастройкиОтчета.ДополнительныеСвойства.ВариантНаименование = "Основной" тогда
        НовыйЭлементОтбора = НастройкиОтчета.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
        ПолеОтбора = Новый ПолеКомпоновкиДанных("МенеджерДокумента");
        НовыйЭлементОтбора.ЛевоеЗначение = ПолеОтбора;
        НовыйЭлементОтбора.Использование = Истина;
        НовыйЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
        НовыйЭлементОтбора.ПравоеЗначение = Справочники.Пользователи.НайтиПоНаименованию("Мой пользователь");
    конецесли;

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