Zum Hauptinhalt springen

Einzelpostenanzeige: Daten pro Zeile ergänzen (FI)

Review

Dieser Artikel wird noch kontrolliert. Dies ist eine Vorab-Version!

Sollen die selektierten Einzelposten vor der Anzeige geändert bzw. ergänzt werden, wird der BTE 1650 benutzt und es sind folgende Schritte durchzuführen.

Betroffene Transaktionen

  • FBL1N: Einzelposten Kreditoren
  • FBL2N: Einzelposten Kreditoren
  • FBL3N: Einzelposten Sachkonten

Customizing

In diesem Fall brauchen wir ein BTE, welches mit der Transaktion FIBF eingestellt werden kann. Hierzu wird der BTE 1650 benötigt der unter P/S-Bausteine gefunden werden kann. Prüft ggf. auch die Produkte ob es hierzu bereits eine Einstellung gibt.

In diesem Beispiel finden sich zum BTE 1650 bereits zwei Ausprägungen:

Hier wird der Funktionsbaustein hinterlegt der eure Aktionen durchführen soll

Vorlage

Das gute an den BTEs ist, dass ihr Vorlagen mitbekommt für jede BTE-Nummer. Hier findet ihr den Vorlage-Funktionsbaustein unter:

FUNCTION SAMPLE_INTERFACE_00001650.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*" IMPORTING
*" VALUE(I_POSTAB) LIKE RFPOS STRUCTURE RFPOS
*" EXPORTING
*" VALUE(E_POSTAB) LIKE RFPOS STRUCTURE RFPOS
*"----------------------------------------------------------------------

*-------------- Initialize Output by using the following line ----------
* E_POSTAB = I_POSTAB.

ENDFUNCTION.

Beispiel

Folgendes Beispiel: Bei der Anzeige von Belegen des Typs "ZP" soll der Belegtext (der leer ist) um den Namen des Gegenkontos ergänzt werden.

 DATA
: ls_lfa1 TYPE lfa1
.

"Nur bei BLART = ZP SGTXT anpassen
CHECK I_POSTAB-BLART eQ 'ZP'.

"Nur leere SGTXT ändern
IF e_postab-sgtxt IS INITIAL.
SELECT SINGLE name1 name2 FROM lfa1
INTO CORRESPONDING FIELDS OF ls_lfa1
WHERE lifnr = e_POSTAB-GKONT
.
IF sy-subrc eQ 0.
"Wenn in NAME2 nichts steht, dann nur NAME1
IF ls_lfa1-name2 IS INITIAL.
E_POSTAB-sgtxt = ls_lfa1-name1.
ELSE.
"Sonst NAME1 - NAME2 anzeigen
CONCATENATE ls_lfa1-name1 '-' ls_lfa1-name2
INTO E_POSTAB-sgtxt SEPARATED BY space.
ENDIF.

ENDIF.
ENDIF.