Ach ja... wie gewünscht ein Beispiel:
Stichwort Konsolidierung: Es sollen folgende Sachverhalte validiert werden:
1. Wenn ein Konto bebucht wird, welches im SET ZFI_KONTEN_BWA_RS(Rückstellungen) enthalten ist, soll geprüft werden, ob a) überhaupt eine Bewegungsart kontiert wurde und b) ob es sich dabei um eine für den Rückstellungsspiegel zulässige Bewegungsart handelt. Diese sind wiederum im Set ZFI_BWA_RS aufgeführt.
Vaidierung zum Zeitpunkt 2 (Belegposition)
Voraussetzung:
BSEG-HKONT IN ZFI_KONTEN_BWA_RS
Prüfung:
BSEG-BEWAR <> '' AND BSEG-BEWAR IN ZFI_BWA_RS
2. Wenn ein Konto bebucht wird, welches im SET ZFI_KONTEN_PARTNER enthalten ist, soll geprüft werden, ob es dem System möglich war, eine gültige Partnerkontierung (z.B. aus den Gegenpositionen abzuleiten.
Valdierung zum Zeitpunkt 3 (kompletter Beleg)
...muss hier gemacht werden, da die 'Vererbung' der Partnerges. in die Gegenpositionen erst zu diesem Zeitpunkt erfolgt
Voraussetzung:
BKPF-GLVOR <> 'RFBV'
nicht bei Vorerfassung, da die Ableitung der Partnerges. erst im Modus 'Buchen' erfolgt.
Prüfung:
Exit U901
Coding-Auszug U901:
Code: Alles auswählen.
* RA_HKONT aufbauen (Nachlesen aus Set...)
...
*----------------------------------------------------------------------*
* Abfrage Partnerkontierung für alle Belegzeilen, deren
* Konto im SET enthalten ist
* Die Selektionsrange darf aber nicht leer sein, sonst meckert er
* bei jedem Konto
*----------------------------------------------------------------------*
check not ra_hkont[] is initial.
loop at bool_data-bseg into bseg where hkont in ra_hkont.
if bseg-vbund is initial.
b_result = b_false.
endif.
endloop.
Weitere Infos liefert der Hinweis 842318