Использование User! UserID в SSRS для доступа к данным в SSAS Cube - PullRequest
0 голосов
/ 11 октября 2018

Я использую SQL 2012, и у меня есть многомерный куб SSAS, который измеряет наш розничный бизнес.Я создал отчет SSRS, который извлекает данные из куба SSAS.Я хочу, чтобы пользователь мог запускать отчет и передавать только определенный доход пользователей магазина, количество клиентов и т. Д. В отчет SSRS, который они просматривают.Я создал параметр из куба.Под параметром отчета, который был создан из куба, я вставил в значения по умолчанию, определенные значения, это выражение для значения = "[DimUserTable]. [Имя пользователя]. [UserID]. & [" + User! UserID + "]", отчет не запустится.Выдает ошибку;

Для получения дополнительной информации об этой ошибке перейдите на сервер отчетов на локальном сервере или включите удаленные ошибки

Не удалось выполнить запрос для набора данных «Доход».(rsErrorExecutingCommand)

Кто-нибудь знает, как мне добиться, чтобы только пользователи хранили информацию для отображения в отчете, который они просматривают?

1 Ответ

0 голосов
/ 11 октября 2018

Вам нужно только передать идентификатор пользователя в параметр .. Ваш запрос должен позаботиться о фильтрации с использованием параметра.Что-то вроде

where [DimUserTable].[Username] = @userid

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

=User!UserID.Substring(User!UserID.LastIndexOf("\")+1)

Конечно, это зависит от того, что ваш куб содержит для значения идентификатора пользователя.Если он НЕ включает имя домена или компьютера ... используйте вышеупомянутое ... иначе просто используйте = user! Userid

...