Sapforum.Biz
Инструменты => ABAP - Инструментальные средства => Тема начата: Tomatos от Июнь 26, 2014, 09:54:45 am
-
День добрый!
Проблема в следующем: создал объект полномочий, добавил его в роль ( PFCG)
Добавил роль Пользователю, права на изменение поля у него появились. Но и после удаления у Пользователя данной роли, права у него так и остаются. До добавления роли - прав нет.
Где что нужно перегенерировать?
-
Решение: Удалил созданный объект полномочий -> перегенерировал SAP_ALL
-
Решение: Удалил созданный объект полномочий -> перегенерировал SAP_ALL
Вообще-то странно как-то вы этому пользователю SAP_ALL что ли давали?
-
это я в песочнице упражняюсь :-)
Может подскажите как диапазон значений задать для группы сбыта (VKGRP)?
Задаю диапазон но, не работает, AUTHORITY-CHECK возвращает sy-subrc = 4 в не зависимости попадает ли введенное значение в диапазон или нет.
Если диапазон не задавать ( Все полномочия '*') то все отрабатывает
PARAMETERS: sp_vkgrp type TVBVK-vkgrp.
AUTHORITY-CHECK OBJECT 'YVKGRP'
ID 'VKGRP' FIELD 'sp_vkgrp'.
CASE sy-subrc.
WHEN 0.
MESSAGE 'Можно!' type 'I'.
WHEN OTHERS.
MESSAGE 'Нельзя!' type 'I'.
ENDCASE.
-
Может подскажите как диапазон значений задать для группы сбыта (VKGRP)?
Задаю диапазон но, не работает, AUTHORITY-CHECK возвращает sy-subrc = 4 в не зависимости попадает ли введенное значение в диапазон или нет.
Диапазон задавать нельзя. Поэтому читаешь все свои VKGRP которые попадают в введенный интервал, а потом в цикле все найденные значения прогоняешь через AUTHORITY-CHECK, и таким образом получаешь перечень только тех объектов на которые есть полномочия.
-
Спасибо за ответ! разобрался
Может кому пригодится
data: lt_tvbvk TYPE STANDARD TABLE OF tvbvk WITH HEADER LINE.
data: count type i.
CONSTANTS actvt_display TYPE activ_auth VALUE '02'.
SELECT * INto CORRESPONDING FIELDS OF TABLE lt_tvbvk from tvbvk.
sort lt_tvbvk by vkgrp.
LOOP AT lt_tvbvk.
AUTHORITY-CHECK OBJECT 'YVKGRP' "" Объект полномочий
ID 'VKGRP' FIELD lt_tvbvk-vkgrp "" Поле для проверки
ID 'ACTVT' FIELD actvt_display "" допустимые операции
.
CASE sy-subrc.
WHEN 0.
WRITE / 'можно'.
WHEN OTHERS.
WRITE / 'нельзя'.
ENDCASE.
ENDLOOP.
-
лыжи что-то не едут. вроде ничего сложного :(
ограничиваю выбор вида премии, создал свой объект с полем, заполнил и всё равно на все записи sy-subrc = 4...в su53 краснюки
LOOP AT it_t512z WHERE begda <= sy-datum AND endda >= sy-datum.
* CLEAR wa_lgart.
AUTHORITY-CHECK OBJECT 'Z_T512Z'
ID 'LGART' FIELD it_t512z-lgart.
if sy-subrc eq 0.
PERFORM FORM_TEXT_BY_AWDTP
USING it_t512z-LGART
CHANGING wa_itab-lgtxt .
wa_itab-lgart = it_t512z-lgart.
APPEND wa_itab to itab.
endif.
endloop.
=======
слепондя! - :)ZLGART
-
лыжи что-то не едут. вроде ничего сложного :(
Ну т.е. лыжи... таки не ехали... 8)
-
Ну т.е. лыжи... таки не ехали... 8)
это не всё оказывается. перенёс обект в прод. В SU20 SU21 вижу его, а в PFCG когда +вручную, то пишет добавлен 1 объект, а в дереве он не появляется :(. И он не виден когда через класс пытаюсь его найти +выбор. Причём где-то он есть, потому как при попытке удалить в SU21, высвечивает, что он в профилях задействован. А вести его невозможно :(
и чё делать?
-
это не всё оказывается. перенёс обект в прод. В SU20 SU21 вижу его, а в PFCG когда +вручную, то пишет добавлен 1 объект, а в дереве он не появляется :(. И он не виден когда через класс пытаюсь его найти +выбор. Причём где-то он есть, потому как при попытке удалить в SU21, высвечивает, что он в профилях задействован. А вести его невозможно :(
и чё делать?
====
выкрутился - роль перенёс :). Это ж и прально. Но "осадочек остался".