Требуется задать параметры отбора программно, чтобы при открытии журнала документов отбор уже был включен с заданными параметрами. В моем случае это текущий пользователь.
Да прошу прощения.Сделал корректировку увидев предыдущий ответ. Если это нужно разово и чтобы пользователь потом мог менять то при открытии. Если делать жёсткое ограничение чтобы пользователь не мог менять фильтр то в ОбновлениеОтображения
Ну а в процедурке написать что-то типа того
ЖурналДокументовСписок.Отбор.<нужный параметр>.Использование = Истина;
ЖурналДокументовСписок.Отбор.<нужный параметр>.Значение = <значение>
Узнать пользователя текущего можно так глЗначениеПеременной("глТекущийПользователь");
Мой случай - жеское ограничение. Все предидущие советы касаются случая какого - то одного журнала, конечно инфа полезная, но если надо ограничить во всех, чтобы пользователь открывая видел только свои документы или скажем документы какой-то группы. Подобного рода ограничения прописываются где то в общих модулях - модуль работы с диалогами. Если кто -то решал что-то подобное - поделитесь опытом.
Посмотри, есть ли глобальная процедура, запускаемая при открытии, или перед открытием интересных тебе форм. Если есть - добавь в нее настройку значений отбора и доступности к настройкам отбора. Если нет - стоит такую процедуру создать.
(10) skyvixen,
Процедура есть в общем модуле работы с диалогами, хотел посоветоваться с теми, кто с этим сталкивался.
(11) rustamsmax,
Спасибо этот вариант я знаю, но задача - через отбор.
Для ограничение по пользователет то подойдет системные ограничений по правам
Если посморите в конфигураторе есть закладка "Права" у документах.
там надо вставить галочку на чтение и снизу немножка писать код запроса
"ДокументЗаказ ГДЕ ДокументЗаказ.Автор = &ТекущийПользователь"
(14)Мне ужно сделать отбор Виду операции. Вид операции это - Справочники.СтатьяДДС.ОплатаПоставщику. как мне передать параметр для значение
ЭтаФорма.ДокументСписок.Отбор.ВидОперации.Значение = Справочники.СтатьяДДС.ОплатаПоставщику
так у меня выдает ошибка не соответсвие контекста (Значение)
(15) Shurik1C, как мне (в похожей ситуации подсказали) говорю - нужно в запросе отобрать список нужных документов.
и этот список поместить в отбор в виде - Ссылка в "Список" (полученный из запроса).
(17) Shurik1C, ну если отбор по регистратору, то Ссыка = задаётся да, а иначе - предложеный (ну и переключаете их программно) вариант работает.
у меня - точно.
ну да - дофига ссылка в "........" это не есть гуд (мягко говоря), но - мне показали и пользую.
Доброго времени суток, подскажите, а если значение отбора содержит несколько типов, как в отборе, программно указать нужный тип, значение которого я передаю? Пример, в журнале документов контрагентов, поле отбора Контрагент, имеет 3 типа, Контрагент, Физ.лицо, строка. Как при отборе указать что передаваемый тип, это контрагент?
(20) fzt, может не правильно объяснил, но поле отбора Контрагент имеет составной тип, Поле отбора контрагент, может принимать 3 типа, 1. Справочники.Контрагент, 2. Справочники.ФизЛицо, 3. Строка.
Если просто передать:
Отбор["Контрагент"].Использование = Истина;
Отбор["Контрагент"].Значение = ТекСтрока.Сотрудник;
Отбор["Контрагент"].ВидСравнения = ВидСравнения.Равно;
выдает ошибку, Неверный тип значения
(21) Dupektop, сдледует ознакомиться, про составные типы http://infostart.ru/public/184361/ Сегодня тяпница. Может в выходные споткнусь об комп. А вообще должно просто присвоиться приведение типов оно само сделает.
Посмотри внимательно, возможно ты присваиваеш объект, а не ссылку?
(23) fzt, (24) Xershi, большое спасибо! Разобрался сам, наверно действительно пятница действует (((( списку передавал Таблицу значений, вот и ругался на не соответствие типов...
Подскажите пожста, в какой форме должны быть записаны значения сравнения списка..
Если ВидСравнения.Равно... то тут все понятно, а вот если ВидСравнения.ВСписке ..., тут я запутался((((
(27) Xershi, В том то и дело, что мне надо указать конкретные кассы, а не находить их....
.ДобавитьОтбор("БанковскийСчетКасса", Истина, ВидСравнения.ВСписке, ???? ) как мне тут вместо вопросов указать конкретные кассы??? по коду справочника или по наименованию.
Решил не создавать новую ветку, а продолжить. Когда задавал этот вопрос разобрался. а сейчас не могу вспомнить. Нужно создать отбор в управляемой форме списка документов делал так
(31) alljoke, Спасибо, нашел ошибку - НЕ ВидСравнения.Содержит, а ВидСравненияКомпоновкиДанных.Содержит - список работает по павилам СКД. Вот работающее рещение для моего случая может кому пригодится:
Доброго времени всем!
А как можно сбросить уже установленный пользователем отбор? Пользователь его завел с критической ошибкой и теперь под ним не открывается программа. При открытии Журнала документов сразу ввыдает ошибку: Ошибка в пути к данным: CRM_ОсновноеКонтактноеЛицоВладелец[Состояние клиента (Справочник "Клиенты" (Общие))]Наименование
Уже была подобная ситуация у них у другого пользователя, но тогда я как то смог быстро закрыть форму с ошибкой и как то сбросил отбор пользователя. Сейчас не дает так поступить.