Имя: Пароль:
1C
1С v8
Установить параметр
0 Serega103
 
30.05.13
15:46
Здравствуйте, подскажите плз.
Есть отчет писаный мной для УТ 11 на СКД, добавляю в него команду которая должна открывать этот отчет с установленным отбором по списку исполнителей(Исполнитель - это поле из набора данных отчета).

Ниже приведенный код работает, но это только по одному пользователю, а как сделать по нескольким сразу?
ПараметрыФормы = Новый Структура("Отбор,КлючВарианта");
   ПараметрыФормы.КлючВарианта="Основной";
   Отбор=Новый Структура;
   Отбор.Вставить("Исполнитель",СергейСервер.ТекущийПользователь());
   ПараметрыФормы.Отбор=Отбор;
   Ф=ПолучитьФорму("Отчет.ОтчетПоСрокамВыполненияЗаданий.Форма",
       ПараметрыФормы,
       ПараметрыВыполненияКоманды.Источник,
       ПараметрыВыполненияКоманды.Уникальность,
       ПараметрыВыполненияКоманды.Окно);
   Ф.Открыть();
1 Mitriy
 
30.05.13
15:47
Массив передавал?
2 Serega103
 
30.05.13
15:48
(1) щас попробую
3 DexterMorgan
 
30.05.13
15:48
Расширение управляемой формы для отчета.Отбор (Managed form extension for reports.Filter)
Расширение управляемой формы для отчета (Managed form extension for reports)
Отбор (Filter)
Описание:

Тип: Структура.
Используется для установки отбора и параметров данных в форме отчета.
Ключ элемента структуры содержит имя поля или параметра, на которое нужно наложить отбор.
Значение элемента структуры содержит значение отбора.
Если имеется параметр системы компоновки данных с именем, соответствующим имени ключа структуры, то значение будет установлено ему. Если параметра нет, но есть поле, то будет добавлен отбор на это поле.
Если значение является массивом или списком значений с не одним элементом, то отбор будет применяться с видом сравнения ВСписке.
4 Serega103
 
30.05.13
15:48
(1) а если надо использовать конструкцию "Все кроме"?
5 zladenuw
 
30.05.13
15:48
(2)общий модуль прикольный :) СергейСервер :)
6 DexterMorgan
 
30.05.13
15:48
Как бы:


Если значение является массивом или списком значений с не одним элементом, то отбор будет применяться с видом сравнения ВСписке.
7 Serega103
 
30.05.13
15:50
(5) чтоб не вспоминать как называется стандартный модуль))
8 Serega103
 
30.05.13
15:51
Массив попробовал, работает, спасибо за наводку, и всё же интересно как реализовать отбор "Не в списке"???
9 Serega103
 
30.05.13
15:52
Чем интересен именно такой метод установки отбора, так это тем что пользователь не может этот отбор никак отключить.по крайней мере я не нашел как его снять
10 Mitriy
 
30.05.13
15:52
(8) в данном случае передать массив всех кроме... ))
11 Serega103
 
30.05.13
15:54
(10) ну вообще то правильно, можно сначала запросом сформировать массив, а уж потом его передавать
12 Serega103
 
30.05.13
15:55
Всем спасибо за помощь.
13 DexterMorgan
 
30.05.13
15:56
(7) Слушай а чем отличается СергейСервер.ТекущийПользователь() от ОбщегоНазначения.ТекущийПользователь() ?
14 Serega103
 
30.05.13
15:57
(12)Ничем, просто всё время забываю в каком модуле лежит эта процедура, поэтому решил облегчить себе жизнь))
15 DexterMorgan
 
30.05.13
15:58
(14) БыдлоКодер! =)
16 DexterMorgan
 
30.05.13
16:00
(9) Что пользователю мешает изменить вариант отчета?
17 Mitriy
 
30.05.13
16:03
(11) есть еще вариант, передавать параметр с ненужными ссылками, а уже в форме отчета в при создании на сервере, обрабатывать его и устанавливать настройки...
18 Serega103
 
30.05.13
16:10
(15)Причем здесь быдло? Просто писать  в программе приходится много, поэтому добавил свой модуль и поместил туда часто используемые функции, для своего же удобства.
19 Serega103
 
30.05.13
16:11
(16) я пробовал и через изменить вариант, там этого отбора я вообще не нашел.
20 Serega103
 
30.05.13
16:11
(17) как вариант
21 Mitriy
 
30.05.13
16:11
(18) не обращай внимания, подход очень даже верный... особенно, если захочешь в них что-то поменять...
22 Serega103
 
30.05.13
16:13
(21) то то и оно
23 Mitriy
 
30.05.13
16:15
(22) плюс к этому, разработчики типовых иногда страдают манией переименовывания модулей, переносом типовых процедур и т.п...
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн