Strona 1 z 1

User exit dla tworzenia listy faktur

: pt cze 07, 2019 8:56 am
autor: inspir
Hej,

szukam jakiegoś exita, który będzie odpalał się przy tworzeniu listy faktur(VF21). Potrzebuję dodać do niego nowy partner function.
Przeglądam internety, ale nie mogę coś znaleźć. Może ktoś robił coś podobnego i wie w którym exicie można wrzucić trochę kodu? ;)

Pozdr.
Marcin

Re: User exit dla tworzenia listy faktur

: pt cze 07, 2019 10:39 am
autor: greg_hhl
inspir pisze: pt cze 07, 2019 8:56 am Hej,

szukam jakiegoś exita, który będzie odpalał się przy tworzeniu listy faktur(VF21). Potrzebuję dodać do niego nowy partner function.
Przeglądam internety, ale nie mogę coś znaleźć. Może ktoś robił coś podobnego i wie w którym exicie można wrzucić trochę kodu? ;)

Pozdr.
Marcin
Kiedyś ściągnąłem taki program, który pozwala znaleźć user-exit po podaniu transakcji. Może Tobie pomoże


REPORT ZZ_EXIT_FIND no standard page heading.
tables : tstc, tadir, modsapt, modact, trdir, tfdir, enlfdir.
tables : tstct.
data : jtab like tadir occurs 0 with header line.
data : field1(30).
data : v_devclass like tadir-devclass.
parameters : p_tcode like tstc-tcode obligatory.

select single * from tstc where tcode eq p_tcode.
if sy-subrc eq 0.
select single * from tadir where pgmid = 'R3TR'
and object = 'PROG'
and obj_name = tstc-pgmna.
move : tadir-devclass to v_devclass.
if sy-subrc ne 0.
select single * from trdir where name = tstc-pgmna.
if trdir-subc eq 'F'.
select single * from tfdir where pname = tstc-pgmna.
select single * from enlfdir where funcname =
tfdir-funcname.
select single * from tadir where pgmid = 'R3TR'
and object = 'FUGR'
and obj_name eq enlfdir-area.

move : tadir-devclass to v_devclass.
endif.
endif.
select * from tadir into table jtab
where pgmid = 'R3TR'
and object = 'SMOD'
and devclass = v_devclass.
select single * from tstct where sprsl eq sy-langu and
tcode eq p_tcode.
format color col_positive intensified off.
write:/(19) 'Transaction Code - ',
20(20) p_tcode,
45(50) tstct-ttext.
skip.
if not jtab[] is initial.
write:/(95) sy-uline.
format color col_heading intensified on.
write:/1 sy-vline,
2 'Exit Name',
21 sy-vline ,
22 'Description',
95 sy-vline.
write:/(95) sy-uline.
loop at jtab.
select single * from modsapt
where sprsl = sy-langu and
name = jtab-obj_name.
format color col_normal intensified off.
write:/1 sy-vline,
2 jtab-obj_name hotspot on,
21 sy-vline ,
22 modsapt-modtext,
95 sy-vline.
endloop.
write:/(95) sy-uline.
describe table jtab.
skip.
format color col_total intensified on.
write:/ 'No of Exits:' , sy-tfill.
else.
format color col_negative intensified on.
write:/(95) 'No User Exit exists'.
endif.
else.
format color col_negative intensified on.
write:/(95) 'Transaction Code Does Not Exist'.
endif.

at line-selection.
get cursor field field1.
check field1(4) eq 'JTAB'.
set parameter id 'MON' field sy-lisel+1(10).
call transaction 'SMOD' and skip first screen.

Re: User exit dla tworzenia listy faktur

: pt cze 07, 2019 11:26 am
autor: inspir
Dzięki wielkie :D

Re: User exit dla tworzenia listy faktur

: śr cze 26, 2019 2:20 pm
autor: inspir
Udało mi się dodać nowego partner function za pomocą programu RV60AFZD i forma USEREXIT_RELI_XVBPAK_AVBPAK
Zrobiłem loopa po xvbpak i w nim selecta z tabli VBPA dla mojego partner function, na końcu wrzuciłem append.
Może niezbyt pięknie, ale działa :)

To tak jakby ktoś potrzebował zrobić coś podobnego

Re: User exit dla tworzenia listy faktur

: śr cze 26, 2019 2:39 pm
autor: greg_hhl
inspir pisze: śr cze 26, 2019 2:20 pm
To tak jakby ktoś potrzebował zrobić coś podobnego
Jak podałeś ten EXIT i zajrzałem do niego, to zobaczyłem, że też tam mam kawałki ....ale dość dawno temu zrobione (10 lat) i już wyszło z głowy .... ja użyłem USEREXIT_NEWROLE_XVBPAK_AVBPAK. Wywalałem te role, które wpływały na split faktury robionej z kilku zleceń - dla tego samego zleceniodawcy zlecenia mogą robić różni handlowcy (a więc różny prac. działu sprzedaży), więc i różna osoba kontaktowa a faktura ma być jedna .... (raportowanie SD robione jest po zleceniach sprzedaży {jest opracowane pole zetowe na status transakcji: wstępna, zatwierdzona, zaakceptowane, sprzedana, etc.} z podziałem na kanały dystrybucji, biura sprzedaży a nie po fakturach, zlecenia nie są fizycznie usuwane a jedynie ustawiany status odrzucenia}

Re: User exit dla tworzenia listy faktur

: śr cze 26, 2019 2:52 pm
autor: inspir
W przypadku listy faktur(vf21) ten user exit, który podałeś nie jest używany, na początku właśnie próbowałem tam robić zmiany i niestety obszedłem się smakiem, dlatego wykorzystałem ten, który podałem

Re: User exit dla tworzenia listy faktur

: śr cze 26, 2019 2:59 pm
autor: greg_hhl
Być może - nie używam listy faktur. Robimy z VF04. Lub czasem ręcznie z VF01.