Site icon SAP HR от Поцелуева

Полномочия при переводе сотрудника

Предлагаю поделиться опытом по вопросу полномочий при переводе сотрудника.

Мой выход. Есть один табельный номер, который был переведен между двумя БЕ/РП. Назовем условно БЕ1, БЕ2, и, соответственно, кадровик 1, кадровик 2. Есть данные по деньгам — ИТ0008, который мы хотим показывать только тому кадровику и в том объеме, на которую БЕ у него есть полномочия.

Стандартная система работает так. Кадровик 1 увидит только свою информацию. Кадровик 2 увидит свою и Кадровика 1. Все дело в одной проверке в стандартном классе проверки полномочий CL_HRPAD00AUTH_CHECK_STD->CONSIDER_SY_DATUM. Здесь в коде прописана такая логика, что полномочия предоставляются на дату СЕГОДНЯ МИНУС КОЛВО ДНЕЙ ИЗ T77S0 (AUTSW ADAYS) по дату оргприсвоения. Соответственно, первый кадровик увидит только свое, второй все.

Вопрос в этом кусочке кода:

IF READ_LEVELS CS LEVEL.
* Read access.
DESCRIBE TABLE AUTHORIZATION_PERIODS_TAB.
* The table is assumed to be normalized hence the last entry
* will have the highest ENDDA.
READ TABLE AUTHORIZATION_PERIODS_TAB INTO PERIOD INDEX SY-TFILL.
CLEAR AUTHORIZATION_PERIODS_TAB.

PERIOD-BEGDA = LOW_DATE.

* If SY_DATUM is not after the highest ENDDA + ADAYS, then grant
* authorization until HIGH_DATE.
IF SY_DATUM_MINUS_ADAYS <= PERIOD-ENDDA. PERIOD-ENDDA = HIGH_DATE. ENDIF. " SY_DATUM_MINUS_ADAYS <= PERIOD-ENDDA. APPEND PERIOD TO AUTHORIZATION_PERIODS_TAB. ELSE. " READ_LEVELS CS LEVEL. Единственный способ полностью отключить возможность просмотра конфиденциальной информации, это переопределить весь класс и исключить вызов этого метода для определения периодов доступа к данным. Вторая заметка. В ракурсе настройки инфотипов V_T582A-VALDT есть поле "Полномоч/Доступ" (VALDT), которое определяет как будет работать вышеуказанный метод. Если для инфотипа галочка снята, то система не анализирует текущую дату и предоставляет полномочия на все периоды! Если галочка стоит, то в работу включается параметр КОЛВО ДНЕЙ ИЗ T77S0 (AUTSW ADAYS) для определения, сколько дней кадровик 2 может видеть данные кадровика 1. Но это не касается самого последнего перевода.

Exit mobile version