Andreas Unkelbach
Logo Andreas Unkelbach Blog

Andreas Unkelbach Blog

ISSN 2701-6242

Artikel über Controlling und Berichtswesen mit SAP, insbesondere im Bereich des Hochschulcontrolling, aber auch zu anderen oft it-nahen Themen.


Werbung
Aktuelles von Andreas Unkelbach

unkelbach.link/et.books/

unkelbach.link/et.migrationscockpit/



Donnerstag, 6. November 2014
06:25 Uhr

Query über IBAN und Stammdaten Kreditor oder Debitor (Zusatztabellen in SAP Query)

Ausgangslage
Zur Vermeidung von mehrfach angelegten Kreditoren / Debitoren soll ein Abgleich über die IBAN erfolgen, ob ein entsprechender Stammdatensatz hier schon angelegt worden ist. Da zwischenzeitlich IBAN eingeführt ist (siehe Artikel "IBAN in der Stammdatenpflege generieren (SEPA)") sollte in jeden Kreditor / Debitor das Feld IBAN gepflegt sein.

Da im Standard keine Auswertung über die Stammdaten der Debitoren- / Kreditoren-Rechnung möglich ist, bietet sich hier eine entsprechende Query an.

Tabellen identifizieren

Leider ist das Feld IBAN nicht in den Stammdatentabellen der Kreditoren und Debitoren vorhanden. Hierfür wird in SAP die Tabelle TIBAN angelegt, die zu den "vorhandenen" Bankverbindungsdaten auch die entsprechende IBAN hinterlegt hat.

Die Zahlungsverkehrsdaten sind in den Tabellen LFBK "Lieferantenstamm (Bankverbindungen)" für Kreditoren und KNBK "Kundenstamm (Bankverbindungen)" für Debitoren hinterlegt.

Bei der Definition eines Infosets funktioniert jedoch keine direkte Definition eines Tabellenjoins über die Tabellen LFBK und TIBAN. Es werden hier nur drei Verknüpfungen vorgeschlagen, es sind jedoch vier erforderlich um eine eindeutige Auswertung zu treffen.

Eine Verknüpfung der Felder BANKS, BANKL und BKONT funktioniert zwischen LFBK und TIBAN. Jedoch ist das Feld BANKN (Bankkontonummer) in der Tabelle LFBK als Char mit 18 Zeichen und in der Tabelle TIBAN mit Char 35 Zeichen definiert. daher wird eine Verknüpfung mit der Fehlermeldung "Illegale Join-Bedingung" abgelehnt.


Daher ist hier der Umweg über die Zusatztabelle erforderlich.

Infoset anlegen

Innerhalb der Transaktion SQ02 wird folgendes Infoset definiert. Hierfür wird als Datenquelle ein Tabellen-Join über Tabelle LFBK   (bzw. KNBK) angelgt.

1. Stammdaten

Innerhalb des Infosets IBAN-KREDITOR nehmen wir als Datenquelle einen Tabellen-Join über die Tabelle LFBK und ergänzen in der Join Definition über BEARBEITEN->TABELLE EINFÜGEN die Tabelle LFA1  "Lieferantenstamm (allgemeiner Teil)". Die vorgeschlagene Verknüpfung über das Feld LIFNR lassen wir bestehen. Danach wechseln wir über die Schaltfläche Infoset und lassen alle Felder der beiden Tabellen in Feldgruppen anlegen.

Für das Infoset IBAN-DEBITOR verknüpfen wir die beiden Tabellen KNBK und die Tabelle KNA1 wie vorgeschlagen über das Feld
KUNNR. Auch hier werden alle Felder in eine Feldgruppe übernommen.

Danach haben wir zwei Feldgruppen mit der Bankverbindung und den allgemeinen Stammdaten (Anschrift) der Kreditoren bzw. Debitoren.

Erweiterung des Infoset über Zusatztabelle TIBAN

Über die Schaltfläche Zusätze (F5) bzw.  über  SPRINGEN-> ZUSÄTZE ZUM KNOTEN  innerhalb der Transaktion SQ02 (Pflege des Infosets) kann nun eine Zusatztabelle eingefügt werden. Hierzu kann im Register Zusätze die Schaltfläche Anlegen ausgewählt werden.
Hierzu tragen wir die den Namen TIBAN  und als Art der Zusatzinformation Zusatztabelle ein. Nun erfolgt eine Abfrage über SELECT SINGLE * FROM TIBAN WHERE ...
in der mehrere Bedingungen erfüllt sein sollen.

Diese habe ich für beide Infosets in folgender Tabelle erläutert.

 
Bedingung INFOSET IBAN-KREDITOR INFOSET IBAN-DEBITOR
Verknüpfungsbedingungen Zusatztabelle TIBAN
WHERE BANKS = LFBK-BANKS KNBK-BANKS
AND BANKL= LFBK-BANKL KNBK-BANKL
AND BANKN= LFBK-BANKN KNBK-BANKN
AND BKONT= LFBK-BKONT KNBK-BKONT

Aus Performancegründen kann hier noch das Feld "intern puffern" angekreuzt werden, wodurch diese Tabelle gepuffert wird und somit bei häufiger Abfrage einer IBAN die Daten schneller gefunden werden können.Der Nachteil ist dann jedoch der gesteigerte Speicherbedarf, da für die Zusatztabelle eine neue interne Tabelle angelegt wird.

Wichtig ist, dass das Feld IBAN aus der Tabelle TIBAN ebenfalls ein einer Feldgruppe innerhalb des Infosets mit aufgenommen werden muss. In der Query ist dieses in der entsprechenden Feldgruppe des Infosets vorhanden.

Vergessen Sie nicht das Infoset dann einer entsprechenden Benutzergruppe über die Schaltfläche "Zuordnung zu Rollen/Benutzergruppe" zuzuordnen, da dieses Infoset andernfalls nicht für eine Query verwendet werden kann.

Hintergrund: Aufbau IBAN

Eine Verknüpfung der Felder BANKN  (Bankkontonummer) war in der Definition des Infosets nicht möglich (Fehlermeldung illegale Verknüpfung). Hintergrund ist, dass das Feld LFBK-BANKN mit 18 Zeichen (Typ Char) und in der TIBAN-BANKN mit 35 Zeichen definiert ist. Alledings werden bei einer Verknüpfung über die Zusatztabelle dann einfach die fehlenden Zeichen aufgefüllt, so dass eine Verknüpfung zwischen LFBK, KNBK und TIBAN hergestellt werden kann. Da sich die IBAN aus einer Kombination von Ländercode, Prüfziffer, Bankleitzahl und Kontonummer zusammensetzt, kann auch nur durch die Verknüpfung aller vier Felder eine eindeutige Zuordnung der Bankverbindung zur IBAN gefunden werden. Dies wird an folgenden Beispiel deutlich:
 
Deutsche IBAN (immer 22 Stellen)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
DE Prüfsumme Bankleitzahl Kontonummer
 Zur weiteren Beschreibung des IBAN AUfbaus siehe Wikipedia: Zusammensetzung IBAN
 

Query Suche IBAN über Kreditor oder Debitor

Innerhalb der Query werden nun auf folgende Felder der einzelnen Tabellen  des Infosets Zugriff genommen beziehungsweise in der Grundliste zugewiesen. Hierbei ist L als Listenfeld und S als Selektionsfeld zu verstehen.

Die Felder werden hier in der Reihenfolge angegeben, wie diese dann auch in der Query ausgegeben werden sollen:


Auch hier sind wiederum zwei Query anzulegen:
 
Feld Query Kreditor Query Debitor
Query Suche über IBAN nach Kreditor/Debitor
IBAN TIBAN-IBAN (L,S) TIBAN-IBAN (L,S)
Kontonummer des Lieferanten bzw. Kreditors
Debitorennummer
LFBK-LIFNR (L,S)
 
KNBK-KUNNR (L,S)
 
Name 1 LFA1-NAME1 (L) KNA1-NAME1 (L)
Postleitzahl LFA1-PSTLZ (L) KNA1-PSTLZ (L)
Ort LFA1-ORT01 (L) KNA1-ORT01 (L)
Bankschlüssel (BLZ) LFBK-BANKL (L) KNBK-BANKL (L)
Bankkontonummer LFBK-BANKN (L) KNBK-BANKN (L)

Damit ist eine entsprechende Suche möglich.Natürlich können im Bedarfsfall auch noch weitere Datenfelder mit in die Query eingepflegt werden.

Je nach Bedarf können natürlich auch weitere Felder als Listen- oder Selektionsfelder verwendet werden. Hierdurch ist auch ein vollständiges Kreditorenverzeichnis oder Debitorenverzeichnis als ALV Liste (Tabelle) möglich. Gerade beim Export nach Excel ist dieses ein erheblicher Unterschied zu den Standardtransaktionen S_ALR_87012086 (Kreditorenverzeichnis) und S_ALR_87012179 (Debitorenverzeichnis). Insbesondere da in einer Query auch Suchen über Felder möglich sind, die in der freien Abgrenzung nicht aufgeführt sind (als Beispiel ist dieses hier ja anhand der IBAN erläutert).

Ein Vorteil der Suche über die IBAN besteht auch durch die Möglichkeit der Platzhalter. So kann über eine Suche nach AT* (Ländercode Österreich) oder CH* (Ländercode Schweiz) nach allen Kreditoren/Debitoren mit einer österreichischen oder schweizerischen Bankverbindung gesucht werden.

Berichtszuordnung FK03, FBL1N bzw. FD03, FBL5N

Innerhalb der Querypflege (SQ01) kann nun noch über SPRINGEN->BERICHTSZUORDNUNG  über den Punkt Zeile hinzufügen (+) mittels anderer Berichtstyp eine Transaktion als Absprungtransaktion von der Query hinzugefügt werden. Hier bieten sich die Transaktionen FK03 - Kreditor anzeigen bzw. FD03 - Debitor anzeigen an. Eine weitere ebenfalls sinnvolle Zuordnung wären auch die Transaktionen FBL1N - Kreditoren Konto Posten anzeigen und FBL5N - Debitoren Konto Posten anzeigen. Hierdurch können nicht nur weitere Stammdaten angezeigt werden sondern auch die Einzelposten zum Kreditor / Debitor angezeigt werden.

Basis: SE93 kundeneigene Transaktion anlegen und Query transportieren


Wie im Artikel "Transaktion anlegen (Report, Parameter) bspw. für SAP Query" beschrieben kann dann noch eine kundeneigene Transaktion zum Beispiel ZIBANK und ZIBAND für diese Query angelegt werden. Ansonsten kann die Query, wie im Artikel "Transport von SAP Queries (DL/UL)" beschrieben als Datei zwischen SAP Systemen ausgetauscht werden.

Hinweis 2016 Tabellenänderungen im Rahmen S/4 HANA Finance

Mit der Einführung von S/4 HANA haben sich verschiedene Tabellen im Bereich Finance ebenfalls verändert. So befindet sich die Angabe der IBAN nicht mehr in der Tabelle TIBAN, sondern im Feld IBAN der Tabelle FCLM_BAM_AMD.

Weitere Tabellenänderungen sind im OSS Hinweis  1976487  festgehalten und sollten beim Wechsel nach HANA ebenfalls berücksichtigt werden. Vielen Dank für den Hinweis im Beitrag "Re: Stammdaten Kreditor anzeigen inklusive IBAN als Report" auf fico-forum.de an Alferd (advor180).

 

Hinweis

Eine kurze Einführung in das Thema SAP Query habe ich im Artikel
"Grundlagen Kurzeinführung und Handbuch SAP Query" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
SAP Weiterbildung
ein Angebot von Espresso Tutorials
SAP Weiterbildung - so wirksam wie eine gute Tasse Espresso

unkelbach.link/et.books/

unkelbach.link/et.migrationscockpit/



Tags: IBAN FI Query

2 Kommentare - - SAP

Artikel datenschutzfreundlich teilen

🌎 Facebook 🌎 Twitter 🌎 LinkedIn


Diesen Artikel zitieren:
Unkelbach, Andreas: »Query über IBAN und Stammdaten Kreditor oder Debitor (Zusatztabellen in SAP Query)« in Andreas Unkelbach Blog (ISSN: 2701-6242) vom 6.11.2014, Online-Publikation: https://www.andreas-unkelbach.de/blog/?go=show&id=572 (Abgerufen am 19.3.2024)

Diesen und weitere Texte von finden Sie auf http://www.andreas-unkelbach.de


Kommentare

Anonym am 28.5.2015 um 16:44 Uhr
Danke!


Natalya am 23.6.2015 um 13:45 Uhr
Sehr hilfreich!


Kommentare und Anmerkungen

Für diesen Beitrag ist die Kommentarfunktion gesperrt. Sollten Sie eine Anmerkung oder Frage zu diesen Artikel haben freue ich mich über eine Rückmeldung per Mail. Meine Kontaktdaten finden Sie unter Kontakt aber auch am Ende dieser Seite. Neben Mail stehen hier auch verschiedene "soziale Netzwerke" zur Verfügung.



* Amazon Partnerlink/Affiliatelinks/Werbelinks
Als Amazon-Partner verdiene ich an qualifizierten Käufen über Amazon.
Weitere Partnerschaften sind unter Onlineshop und unter Finanzierung und Transparenz aufgeführt. Hinauf






Logo Andreas-Unkelbach.de
Andreas Unkelbach Blog
ISSN 2701-6242

© 2004 - 2024 Andreas Unkelbach
Gießener Straße 75,35396 Gießen,Germany
andreas.unkelbach@posteo.de

UStID-Nr: DE348450326 - Kleinunternehmer im Sinne von § 19 Abs. 1 UStG

Andreas Unkelbach

Stichwortverzeichnis
(Tagcloud)


Aktuelle Infos (Abo)

Facebook Twitter XING

Linkedin Mastodon Bluesky

Amazon Autorenwelt Librarything

Buchempfehlung
Schnelleinstieg ins SAP®-Controlling (CO) – 2., erweiterte Auflage

29,95 € Amazon* Autorenwelt

Espresso Tutorials

unkelbach.link/et.reportpainter/

unkelbach.link/et.migrationscockpit/

Privates

Kaffeekasse 📖 Wunschliste