Zablokowanie mozliwości usuwania załączników z 1 transakcji

Jeśli programujesz, administrujesz, integrujesz i masz wątpliwość lub obawę, to właśnie najlepsze miejsce dla Ciebie. Pisz śmiało...
sylwia123
Posty: 252
Rejestracja: czw mar 22, 2018 8:39 am
Has thanked: 68 times
Been thanked: 25 times

Zablokowanie mozliwości usuwania załączników z 1 transakcji

Post autor: sylwia123 » wt lip 23, 2019 12:25 pm

Witam,
czy jest możliwość zablokowania użytkownikowi usuwania załączników z danej transakcji np. FB02 lub VC02N?
Wiem że jest obiekt S_BDS_DS ale tam trzeba podać ogólną klasę czyli chyba np SD i wtedy w module sprzedaż nie usunę załączników.
Natknełam się również na blog https://blogs.sap.com/2012/12/07/how-to ... ment-list/
ale tutaj możliwość usuwania załączników jest na cały system.
A dla 1 transakcji? Mozna?

dominik.tylczynski
Posty: 7012
Rejestracja: wt kwie 03, 2007 4:05 pm
Has thanked: 999 times
Been thanked: 1023 times

Re: Zablokowanie mozliwości usuwania załączników z 1 transakcji

Post autor: dominik.tylczynski » wt lip 23, 2019 4:18 pm

Można - to nie powinno być specjalnie trudne.
Blog, który wskazałaś elegancko pokazuje jak zaimplementować własną klasę, kopię klasy CL_GOS_SRV_ATTACHMENT_LIST.

Do metody CHECK_STATUS, w parametrze IS_LPORB jest przekazywane parametry:
  • INSTID - nr obiektu gospodarczego, np. numer materiału
  • TYPEID - rodzaj obiektu gospodarczego np. w przypadku materiału BUS1001006
Ponadto w zmiennej SY-TCODE zawsze masz nazwę aktualnie wykonywanej transakcji.
Zatem wszystkie potrzebne dane są, a reszta zależy od inwencji programisty implementującego kontrolę uprawnień.

sylwia123
Posty: 252
Rejestracja: czw mar 22, 2018 8:39 am
Has thanked: 68 times
Been thanked: 25 times

Re: Zablokowanie mozliwości usuwania załączników z 1 transakcji

Post autor: sylwia123 » śr lip 24, 2019 9:11 am

Dzięki, zatem najlepiej w tej metodzie uzależnić jej wykonanie od sy-tcode. Ok popróbuję i może coś z tego wyjdzie :) dzięki

dominik.tylczynski
Posty: 7012
Rejestracja: wt kwie 03, 2007 4:05 pm
Has thanked: 999 times
Been thanked: 1023 times

Re: Zablokowanie mozliwości usuwania załączników z 1 transakcji

Post autor: dominik.tylczynski » śr lip 24, 2019 9:16 am

Raczej dodałbym nazwę transakcji jako pole do własnego obiektu uprawnień i kontrolował przy pomocy tego obiektu uprawnienia na poziomie transakcji. Dzięki temu rozwiązanie będzie uniwersalne - nie będzie potrzeby zmieniania kodu metody CHECK_STATUS, kiedy zajdzie potrzeba kontroli w innych transakcjach, wystarczy wtedy je dodać do roli uprawnień.

sylwia123
Posty: 252
Rejestracja: czw mar 22, 2018 8:39 am
Has thanked: 68 times
Been thanked: 25 times

Re: Zablokowanie mozliwości usuwania załączników z 1 transakcji

Post autor: sylwia123 » śr lip 24, 2019 11:34 am

Masz rację, dzięki. Działa!
Jedno mnie tylko zastanawia, obecnie metoda ON_MODE_CHANGED przekazując tą wartość "D" display blokuje i edycję i usuwanie i dodawanie załączników - mozna tylko wyswietlać. W sumie to chciałabym blokować tylko usuwanie. Ale gdy w kodzie użyję np.:

AUTHORITY-CHECK OBJECT 'ZATTACH' ID 'ACTVT' FIELD '03'.
IF sy-subrc = 0 AND sy-cprog = 'SD_CONTACT_MAINTAIN'.
on_mode_changed('D').
ENDIF.

AUTHORITY-CHECK OBJECT 'ZATTACH' ID 'ACTVT' FIELD '02'.
IF sy-subrc = 0 AND sy-cprog = 'SD_CONTACT_MAINTAIN'.
on_mode_changed('E').
ENDIF.

to wykonuje sie ostatnia metoda i ustawia się na E, w efekcie wszystko mozna dodawać, usuwać edytować. Może on_mode_change powinien mieć jakiś inny paramter przekazany żeby blokował tylko ikonkę śmietnika?

sylwia123
Posty: 252
Rejestracja: czw mar 22, 2018 8:39 am
Has thanked: 68 times
Been thanked: 25 times

Re: Zablokowanie mozliwości usuwania załączników z 1 transakcji

Post autor: sylwia123 » śr lip 24, 2019 12:33 pm

Ok już wiem, ta metoda działa 0 jedynkowo allbo jest edycja albo nie, bo przyciski przyjmuja wartośc paramteru 'D' lub 'E'.
Drugie pytanie, nawet bardziej istotne.
Jeżeli w SU21 utworzyłam nowy obiekt to dlaczego ja mając SAP_ALL również mam ograniczone przyciski? Jak mam ten obiekt odpiąc od profilu SAP_ALL czy przenieść? Nie jestem specem od uprawnień...

dominik.tylczynski
Posty: 7012
Rejestracja: wt kwie 03, 2007 4:05 pm
Has thanked: 999 times
Been thanked: 1023 times

Re: Zablokowanie mozliwości usuwania załączników z 1 transakcji

Post autor: dominik.tylczynski » śr lip 24, 2019 1:12 pm

Transakcja SU21:
2019-07-24_13h10_27.png
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.