#0
by akhamov
Все привет. Вопрос такой: В 1С 7.7 был ужасный метод формы ИспользоватьСписокЭлементов(Список). В конфигурации под 1С 8.0 требуется сделать сложный фильтр формы списка справочника (пока без возможности фильтрации пользователем). Как это лучше и правильнее сделать? Вот тут говорят: В большинстве случаев, если необходимо обеспечить отображение в списке специально отобранного перечня объектов, можно рекомендовать использовать другие возможности (например, выборку данных запросом и отображение в форме с помощью таблицы значений или табличного документа). При этом система обеспечивает возможность полноценного взаимодействия с такими формами других системных механизмов. т.е. я так понимаю что сформированный таким способом список, будет возможно фильтровать стандартными механизмами 1С (отбором, сортировка и т.п.). Возникает вопрос: на сколько дольше будет формироваться такая форма списка справочника? Как сделать чтобы форма списка выводила и иерархию тоже ("выбирать иерархичеки" в запросе?)?. Может быть есть возможность создания какой-то функции в форме списка, которая будет срабатывать для каждого элемента и возвращать true/false для отображения? P.S.: Я прошу прощения, если вопрос довольно-таки дурацкий, я только начинаю вникать в 1С 8 и те вопросы, которые я в своих книгах не нашел, хочу задавать здесь. Спасибо за ответы.
#3
by akhamov
По ссылке что дал ТелепатБот есть пример с процедурой СправочникСписокПриПолученииДанных в каком это контексте? Где она вызывается? В каком обработчике ее указать?
#8
by akhamov
Покажи пожалуйста, как решить эту задачу. У меня есть некоторый алгоритм, по которому я определяю можно или нет отображать элементы справочника. Это НЕ ТОЛЬКО прямой отбор по реквизиту справочника Номенклатура, но и некоторые вычисления (например остаток). Мне нужно установить фильтрацию, с возможностью ДАЛЬНЕЙШЕЙ фильтрации интерактивно пользователем. Спасибо!
#9
by PR
Получаешь как-то свой список ссылок, потом ставишь фильтр по ссылке с видом сравнения "в". Все.
#10
by akhamov
У меня есть код - получение (примитивное) списка ЭЛЕМЕНТОВ номенклатуры, и просмотр отбора Как мне по моему списку получить иерархический отбор по всей номенклатуре?
#12
by akhamov
Вот что сделал, в принципе почти то что нужно Функция ПолучитьСписок Но есть одно "НО"! Он всю остальную иерархию групп выводит, а мне это очень не нужно. Как отключить вывод остальных (пустых групп)?
#16
by akhamov
Я к тому что я не понимаю что такое RLS. Но мне оч нужно убрать пустые группы иерархии из списка.
#17
by PR
Есть три варианта: 1. Открой доку и пойми. Кроме того, на сайте уже были ветки на эту тему. 2. Делай ТЗ и сам ее заполняй и обрабатывай. 3. Вызови программиста, который сделает. ЗЫ: Если не понимаешь, то так и пиши, а не "???" :o)
#21
by akhamov
Ok, спасибо. Буду разбираться. А ты, кстати, когда что-то начинаешь изучать тоже зовешь программиста, который прийдет и сделает? :)
#22
by akhamov
Подскажите пожалуйста по RLS: у меня в номенклатуре есть свойство - Пользователь. Есть переменная модуля приложения экспортируемая глПользователь. Где и как построить условие, чтобы справочник номенклатура показывал элементы только указанного пользователя. Когда в роли добавляю условие на прочие поля или любое другое 1С8 генерирует мне примерно такой код: если-то для системных вызовов (запросов) этот параметр не устанавливается и вываливается исключение. Как быть?
#24
by akhamov
Да. Теперь ошибки нет, но! Захожу с свою роль, захожу в справочник пользователи. Встаю на чтение (флаг выставлен) - внизу - ограничение доступа к данным. Поле - ссылка Ограничение доступа: ГДЕ Ссылка = &ТекущийПользователь Параметры сеансы выставляю в модуле приложения 100% (проверяю до открытия формы списка справочника пользователи). Но все равно вижу всех пользователей. Почему? Что я сделал не так? Подскажите пож-та!
#25
by akhamov
Все отлично. RLS работает ... но теперь возникла проблема с отображением иерархии. Т.е. товары разделены между пользователями - как правильно построить ограничение данных для групп верхнего уровня? Т.е. внутри групп есть товары разных пользователей и хочется видеть всю иерархию до первого уровня, в то же время не хочется видеть пустых групп (если наложить условие НЕ ЭтоГруппа). Может быть кто-то уже решал такую проблему (справочник с неограниченной иерархией).
#26
by hhhh
Все-таки номенклатуру надо привязывать не к пользователю, а к должности. Ведь если вдруг этот пользователь уйдет в запой или в отпуск, то вся твоя созданная такими титаническими усилиями система сразу рушится.
#27
by akhamov
Ну это правильно, я просто привожу такой пример для простоты обсуждения. На самом деле у меня в товаре указана товарная категория, а у нее есть ответственный менеджер, в котором уже указан пользователь. Т.е. при увольнении/болезни/отпуске мне только в одном месте нужно сменить пользователя. Вопрос как бы остался только в группах :(
#29
by akhamov
Так в этом и вся "беда". Имеем: Что писать в Весовые отделы? Менеджер 1 или Менеджер 2 или в разрезе товарных групп, которые я указал выше - группу колбаса или заморозку? Или плодить табличные части групп справочника, куда записать и Менеджер 1 и менеджер 2 или по категориям.
#30
by Wladimir_spb
"Весовые отделы" должны видеть оба, а как сделать это зависит от того, что у тебя уже нарисовано.
#31
by akhamov
Как вариант делать JOIN в запросе ограничения данных. Но с учетом иерархии это будет либо подзапрос для каждой строки и будет притормаживать, либо LEFT JOIN и рождение новых колонок в результирующей выборке.
#32
by akhamov
Ну так вот вопрос в том как именно прописать, чтобы НЕПУСТЫЕ в результате фильтрации группы отображались для каждого пользователя, а ПУСТЫЕ - не отображались.
#33
by Wladimir_spb
Не надо это делать запросами - повесишь систему. Ручками пропиши права доступа. Точно также как к отдельным позициям.
#34
by akhamov
Ну то есть для группы у которой внутри товары разных менеджеров - прописать обоих менеджеров. Например в табличной части? Как в ?
#35
by akhamov
Просто при заведении новой позиции нужно не забыть проставить всем родителям это свойство, конечно это все и на контроль 1С можно отдать.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- MsSql 2000 + 1c 7.7 25
- Как вырубить в 1С ТиС полностью всю систему резервирования?
- Как дословно называется ЖКК 1С по языку 8.0?
- Увеличение производительности 1с7.7+SQL
- 1C:Печать штрих-кода 8.0.14.2
- Глюки 1С 8.1 с PostgreSQL
- v7: Почему ВР в УПП при "расчете себестоимости выпуска" уменьшают амортизациюОС
- Про Microsoft Works расскажите - плюсы/минусы
- Как настроить шаблоны проводок в ЗУП?
- Как перебрать ячейки области?
- Помогите новичку 1с77 ЗИК выгрузка xml
- как грамотно написать подсистему или дописать конфигу
- очень нужна бесплатная компонента для подключения весов CAS 15, поделитесь
- Остановилась нумерация документов
- Полностью очистить справочник
- v7: Есть ли возможность в УПП сделать перемещение через 79 счет?
- Выгрузка документа из 1с в ворд
- Какими командами Win XP или Windows SHELL изменить настройки TCP/IP
- Почему табличная часть не полностью заполнена
- Как узнать открыт ли документ, из внешнего отчета?