В т. "Наши сотрудники" есть поле "Группа" со значениями Группа1, Группа2 и Группа3.
Соответственно в каждой из групп - по 4 человека (3 менеджера по продажам и 1 старший менеджер).
Как сделать, чтобы под фильтром "Моя группа" (отображаемый для группы доступа "старшие менеджеры) отображался текущий состав группы (к которой принадлежит старший менеджер) и не отображались участники других групп?
1
Настройки фильтра
Автор TelecomMedia, 22 июля 2015 15:39
Сообщений в теме: 7
#1
Отправлено 22 Июль 2015 - 15:39
#2
Отправлено 23 Июль 2015 - 09:49
Не совсем понял, в чем проблема. Создаете фильтр и ставите условие "Группа равно {текущая группа}".
#3
Отправлено 23 Июль 2015 - 14:47
Такого условия выбрать нельзя.
Из предлагаемых: Пусто, Группа1, Группа2, Группа3.
Если я выберу, например, Группу1, то только она и будет отображаться
Из предлагаемых: Пусто, Группа1, Группа2, Группа3.
Если я выберу, например, Группу1, то только она и будет отображаться
#4
Отправлено 23 Июль 2015 - 16:51
А какой тип поля то? "Список"? Должен быть тип "группа", только он позволяет использовать текущую группу пользователя (и собственно для этого и создан).
#5
Отправлено 24 Июль 2015 - 10:10
Я понимаю, что есть такой тип поля, но это не совсем то, что нужно.
Моя Группа1 - это не группа доступа, а можно назвать Команда, которая находится под руководством старшего.
Как раз ему и нужно видеть только тех сотрудников, у которых в поле типа список "Группа" было тоже значение Группы, что и у старшего менеджера.
Старший менеджер1 ("Группа" = Группа1) видит всех сотрудников у кого "Группа" = Группа1
Старший менеджер2 ("Группа" = Группа2) видит всех сотрудников у кого "Группа" = Группа2
.....
Моя Группа1 - это не группа доступа, а можно назвать Команда, которая находится под руководством старшего.
Как раз ему и нужно видеть только тех сотрудников, у которых в поле типа список "Группа" было тоже значение Группы, что и у старшего менеджера.
Старший менеджер1 ("Группа" = Группа1) видит всех сотрудников у кого "Группа" = Группа1
Старший менеджер2 ("Группа" = Группа2) видит всех сотрудников у кого "Группа" = Группа2
.....
#6
Отправлено 24 Июль 2015 - 10:21
Для вашего фильтра в любом случае нужно каким-то образом определять текущую "группу" пользователя, который открыл этот фильтр. Напрямую же можно определить только самого пользователя и его группу доступа, для соответствующих типов полей. Вашу же "группу" можно вытащить только косвенно, через вложенный запрос к таблице Наши сотрудники, с обращением по полю "пользователь" в этой таблице. Разумеется все это нужно делать в режиме эксперта настроек условия фильтра.
#7
Отправлено 24 Июль 2015 - 13:12
Можете привести пример вложенного запроса? Впервые с этим сталкиваюсь.
#8
Отправлено 24 Июль 2015 - 14:52
`Группа` = (SELECT f111 FROM f_data46 WHERE f1400='{current}')
Вместо 111 подставьте реальный id вашего поля Группа. Если у вас не SaaS, а веб- или локальная версии, поменяйте f_data на cb_data. Все остальные данные соответствуют стандартной таблице Наши сотрудники.
Подзапрос здесь возвращает значение поля Группа из записи таблицы Наши сотрудники, у которой поле Пользователь равно текущему пользователю.
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных