мои пользовательские KPI не фильтруются по текущему пользователю в SAP B1 - PullRequest
0 голосов
/ 25 июня 2018

Я создаю некоторые панели инструментов Kpi и Advanced в SAP B1 9.2 с Fiori Cockpit.Для этой цели я создал несколько пользовательских запросов, таких как

SELECT T0."DocNum", T0."CANCELED", T0."DocStatus", T0."DocDate", T0."DocDueDate", T0."CardCode", T0."CardName", T0."DiscPrcnt", T0."DiscSum", T0."TotalExpns", (T0."DocTotal" - T0."VatSum" - T0."DiscSum") "Total con portes", T0."DocCur", T0."DocTotal", T0."SlpCode", T0."Confirmed" 
FROM ODLN T0
UNION ALL
SELECT T0."DocNum", T0."CANCELED", T0."DocStatus", T0."DocDate", T0."DocDueDate", T0."CardCode", T0."CardName", T0."DiscPrcnt", T0."DiscSum", T0."TotalExpns", (-T0."DocTotal" + T0."VatSum" + T0."DiscSum") "Total con portes", T0."DocCur", T0."DocTotal", T0."SlpCode", T0."Confirmed" 
FROM ORIN T0

. Я хочу создать фильтр, который отображает только данные от текущего пользователя (общий объем продаж в этом примере)., но это не работает.Попытался использовать ODLN. "SlpCode", OHEM. "Salesprson" и OHEM. "EMPID" в качестве базового поля для фильтра.При поиске решений в Интернете я нашел запросы, которые фильтруются по необходимости с использованием представлений вместо таблиц, но я не уверен, откуда поступают эти данные, и в некоторых случаях ни одно из этих представлений не имеет всех полей, которые мне нужны.Кажется, что работающие представления хранятся в схеме с именем "_SYS_BIC".

Итак, возможно ли фильтровать по текущему пользователю, используя таблицы?Если нет, то как мне найти в SYS_BIC представление с нужными мне данными?

ОБНОВЛЕНИЕ: Я пытался реплицировать предыдущий kpi, который работает, а копия не работает,При том же источнике данных и настройках kpi, который работает отлично ... Если я удаляю фильтр current user , скопированный kpi показывает общее значение, как и ожидалось, но с current user фильтруйте результат 0 независимо от того, какой пользователь использует kpi.

Спасибо за вашу помощь / советы

Aitor

PS: я знаю, что использовал в запросе ODLN (поставки) вместо OINV (счета-фактуры), это связано снекоторые странные практики бухгалтерии, которые я должен делать таким образом.

1 Ответ

0 голосов
/ 25 июня 2018

Когда вы говорите текущему пользователю, я предполагаю, что вы хотите войти в систему как менеджер и иметь на панели инструментов fiori KPI для менеджера, а когда пользователь1 входит в систему, вы хотите KPI для пользователя 1.

Исходя из вышеописанного сценария, вы можете попробовать смешать следующий запрос в существующем запросе и молиться, чтобы он работал. Это работает с форматированным поиском. Я бы использовал internal_k, чтобы связать его с таблицами, относящимися к другим пользователям / сотрудникам.

    SELECT T0.U_NAME FROM OUSR T0 WHERE INTERNAL_K = $[USER]

Дайте нам знать, как это работает для вас.

...