Каждый логин должен был отображать данные, основанные на различных ГДЕ - как мне нужно изменить код? - PullRequest
0 голосов
/ 01 апреля 2019

Мне нужна помощь.Что я должен использовать в SQL на основе имени входа [выберите SUBSTRING (SUSER_NAME (), 13.10], чтобы отобразить различное содержимое таблицы на основе WHERE?

В каждом из имен входа должны отображаться данные, основанные на другихГДЕ.

Я пытаюсь использовать этот код, но у меня все еще есть проблема

select *,
case when t1.login = (select SUBSTRING (SUSER_NAME (), 13,10) then (select pok from t1 where pok = @pok) else 'N' end as result
from t1

РЕДАКТИРОВАТЬ:

Я создал отчет вSSRS - данные отображаются в зависимости от вошедшего в систему пользователя. Здесь все воспроизводится. Однако для региональных директоров в их отчете мне нужно создать новую таблицу со сводкой их продавцов в регионе.

Существующая таблица table1

| DATA   | SALES  | PROFIT | EXPRENSE | PROFIABILITY | REGION |
|--------|--------|--------|----------|--------------|--------|
| 201901 | Sales1 | 50     | 50       | 0            | A      |
| 201901 | Sales2 | 100    | 50       | 50           | A      |
| 201901 | Sales3 | 105    | 55       | 50           | B      |
| 201901 | Sales4 | 90     | 80       | 10           | C      |
| 201901 | Sales5 | 190    | 80       | 110          | A      |

Отчет создается для каждого человека на основе входа в систему, но для Sales5 необходимо создать отчет Sales1, поскольку он работает в одном регионе, а Sales5 - егодиректор.

Код индивидуального отчета следующий:

select * from t1
WHERE
data in (@data_raportu)

 AND
t1.sales in (
SELECT distinct [sales]
       FROM [test]. [Dbo]. [T2]
where [login_sales] in (@sales_filtr))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...