Code: Alles auswählen.
PARAMETERS:
pa_abgrs TYPE vbap-abgrs DEFAULT 'YV0001',
pa_kokrs TYPE kokrs OBLIGATORY DEFAULT '0002',
pa_monat TYPE bis_abgr_m OBLIGATORY,
pa_gjahr TYPE bis_abgr_j OBLIGATORY.
DATA: hlp_datum TYPE sy-datum.
CONSTANTS: comp_nine(20) TYPE c VALUE '09182736455463728190'.
TYPES: BEGIN OF t_tkkaz_tkkar,
kateg TYPE kategorie,
zlnid TYPE dzeilen_id,
koamk TYPE kstar_mask, " Kostenart
zidap TYPE dzeilen_id, " Zeilen-ID akt.pflichtig
zidnf TYPE dzlnid_naf, " Zeilen-ID nicht akt.pfl.
nafpz TYPE naf_prz, " nicht akt.f.%-Satz
END OF t_tkkaz_tkkar.
DATA: lt_tkkaz_tkkar TYPE TABLE OF t_tkkaz_tkkar.
CONCATENATE pa_gjahr pa_gjahr INTO hlp_datum.
TRANSLATE hlp_datum USING comp_nine.
SELECT tkkar~kateg tkkar~zlnid tkkaz~koamk tkkaz~zidap tkkaz~zidnf
tkkaz~nafpz
FROM tkkar
INNER JOIN tkkaz
ON tkkaz~zidnf = tkkar~zlnid
[b] OR tkkaz~zidap = tkkar~zlnid[/b]
INTO TABLE lt_tkkaz_tkkar
WHERE tkkar~kokrs = pa_kokrs
AND tkkar~versa = '000'
AND tkkar~abgsl = pa_abgrs
AND ( tkkar~kateg = 'E'
OR tkkar~kateg = 'K' )
AND tkkaz~kokrs = pa_kokrs
AND tkkaz~versa = '000'
AND tkkaz~abgsl = pa_abgrs.
AND tkkaz~zglab GE hlp_datum.
IF sy-subrc = 0.
cl_demo_output=>display( lt_tkkaz_tkkar )
ENDIf.
Hallo Haubi,Haubi hat geschrieben: ↑13.04.2022 13:35Moin.
Was heißt denn "funktioniert nicht"?
Ich vermute, dass Dein Ergebnis-Set zu groß ist. Da ist aber die Frage, was Du eigentlich erreichen möchtest. (Und da ich die beteiligten Tabellen und somit das Umfeld nicht kenne kann ich da auch nicht raten...)
Grüße,
Haubi
Bei mir kommt ein Syntaxfehler. Welches SAP Release habt Ihr?
Wahrscheinlich suchst du das hier? Getestet habe ich auf einem 7.50 ( hier auch mit Daten getestet ) und einem 7.40 SP10 System (hier nur ob der Syntaxcheck durchläuft ).
Code: Alles auswählen.
REPORT.
PARAMETERS:
pa_abgrs TYPE vbap-abgrs DEFAULT 'Z00000',
pa_kokrs TYPE kokrs OBLIGATORY DEFAULT '1000'.
* pa_monat TYPE bis_abgr_m OBLIGATORY,
* pa_gjahr TYPE bis_abgr_j OBLIGATORY.
DATA: hlp_datum TYPE sy-datum.
CONSTANTS: comp_nine(20) TYPE c VALUE '09182736455463728190'.
TYPES: BEGIN OF t_tkkaz_tkkar,
kateg TYPE kategorie,
zlnid TYPE dzeilen_id,
koamk TYPE kstar_mask, " Kostenart
zidap TYPE dzeilen_id, " Zeilen-ID akt.pflichtig
zidnf TYPE dzlnid_naf, " Zeilen-ID nicht akt.pfl.
nafpz TYPE naf_prz, " nicht akt.f.%-Satz
END OF t_tkkaz_tkkar.
DATA: lt_tkkaz_tkkar TYPE TABLE OF t_tkkaz_tkkar.
*CONCATENATE pa_gjahr pa_gjahr INTO hlp_datum.
*TRANSLATE hlp_datum USING comp_nine.
SELECT tkkar~kateg, tkkar~zlnid, tkkaz~koamk, tkkaz~zidap, tkkaz~zidnf,
tkkaz~nafpz
FROM tkkar
INNER JOIN tkkaz
ON tkkaz~zidnf = tkkar~zlnid
OR tkkaz~zidap = tkkar~zlnid
INTO TABLE @lt_tkkaz_tkkar
WHERE tkkar~kokrs = @pa_kokrs
AND tkkar~versa = '000'
AND tkkar~abgsl = @pa_abgrs
* AND ( tkkar~kateg = 'E'
* OR tkkar~kateg = 'K' )
AND tkkaz~kokrs = @pa_kokrs
AND tkkaz~versa = '000'
AND tkkaz~abgsl = @pa_abgrs.
* AND tkkaz~zglab GE @hlp_datum.
IF sy-subrc = 0.
cl_demo_output=>display( lt_tkkaz_tkkar ).
ENDIF.