mehrere Tabellen 'verbinden'

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
10 Beiträge • Seite 1 von 1
10 Beiträge Seite 1 von 1

mehrere Tabellen 'verbinden'

Beitrag von MarkusW (Specialist / 406 / 5 / 0 ) »
Hallo Abap-Gemeinde.

Die Suche hier hat mir leider kein brauchbares Ergebnis geliefert, darum hier der Thread ;)


Bin im SD Bereich.

Ich muss eine Liste ausgeben mit Feldern aus den Tabellen:
-VBAK
-VBAP
-VBRK
-VBKD
-LIKP
-LIPS

Allerdings habe ich noch nie ein Join über derart viele Tabellen gemacht. Kann mir da einer helfen?
Kennt vllt auch einer die Schlüsselfelder über die ich die Tabellen 'verknüpf'?

Meine aktuellen Recherchen:
vbak <-> vbap = vbeln
vbap <-> vbkd = vbeln (allerdings sind die bezeichnungen unterschiedlich: Verkaufsbeleg <-> Vertriebsbeleg)
lips-vgbel <-> vbak-vbeln
likp-vbeln <-> lips-vbeln


Ziemlich durcheinandern, hab auch noch net ganz raus in welcher reihenfolge ich die Tabellen lesen muss.


Thx 4 jede Hilfe.

Gruß
Markus

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von Asaph (Expert / 580 / 6 / 1 ) »
versuch's mal mit ner LDB aus dem Berecih SD:
-AAV oder -VAV
a s
s oon
a s
p ossible
h elp
http://www.clv.de/

Beitrag von MarkusW (Specialist / 406 / 5 / 0 ) »
Asaph hat geschrieben:versuch's mal mit ner LDB aus dem Berecih SD:
-AAV oder -VAV
Danke.

Die VAV sah vielversprechend aus, aber da fehlt auch die Hälfte.

Kann man das irgendwie verknüpfen?
Das man im Programm die log. DB benutzt und dann weiter nen join macht auf die noch fehlenden tabellen?

Gruß
Markus

Beitrag von ewx (Top Expert / 4849 / 313 / 642 ) »
Hi Markus,

von einem Join würde ich abraten, da die Abhängikeiten zu vielfältig sind (Stornierte Warenausgänge, stornierte Rechnungen etc.)

Die Tabellen hängen in etwa so zusammen:
Verkaufsbeleg:
VBAK Auftragskopf
VBKD kaufm. Daten Kopf unf Pos
VBAP Posdaten
VBEP Einteilungen

Lieferung:
LIKP
LIPS
LIPS-VGBEL = VBAP-VBELN
LIPS-VGPOS = VBAP-POSNR

Rechnung:
VBRK Kopf
VBRP Position

VBRP-VGBEL = LIPS-VBELN
VBRP-VGPOS = LIPS-POSNR

VBRP-AUBEL = VBAP-VBELN
VBRP-AUPOS = VBAP-POSNR

Am besten, du nimmst den Baustein RV_ORDER_FLOW_INFORMATION

In irgendeiner ABAP-Ichpackmalallescodingwasichhabeeinfachineinezipdatei-Sammlung habe ich auch einen Report gesehen, der den Belegfluß mit einem TreeControl aufbaut. Finde ich aber nicht mehr... :cry:

Beitrag von MarkusW (Specialist / 406 / 5 / 0 ) »
Hallo Enno,

danke erstmal für die klarstellung wie die tabellen zusammen gehören, allerdings sehe ich dass die VBRK keinen Bezug zu einer anderen Tab. hat. Wie kann ich die denn dann zuordnen???

Den FuBa schau ich mir mal an.


Meine Aufgabe ist es eigentlich eine Tabelle zu zeigen, mit allen Daten, grob gesagt.

Geladen und angezeigt werden nur insgesamt 19 Felder aus diesen 6 Tabellen.
Jedes dieser 19 Felder ist mit ner select-options eingrenzbar. Was es wohl schon unmöglich macht nen fertigen FuBa zu nehmen.

Die einzige Verknüpfung untereinander von den Tabellen ist eben die VBRK die ich nirgends reinbekomm...also keinen Wert einer anderen Tab. zum gegenstellen hab.
Sprich ich kann die Faktura Daten nicht zuordnen.
Da muss es doch irgendein Feld geben?
Es gibt ja das VBELN Feld, aber da können doch unmöglich die gleichen werte drin stehen wie in der VBAK-VBELN, oder?


Wenn ich alles mit einem Select und den ganzen JOINs mache, dann bekomm ich doch nur abhängige Sätze. Grenze ich damit nicht gleich aus, dass ich schon gelöschte nicht bekomm?

Oder wäre es angebracht für jede Tab. nen eigenen SEL zu machen und dann nach und nach die int. Tabellen zu filtern?

Gruß
Markus

ewx hat geschrieben:Hi Markus,

von einem Join würde ich abraten, da die Abhängikeiten zu vielfältig sind (Stornierte Warenausgänge, stornierte Rechnungen etc.)

Die Tabellen hängen in etwa so zusammen:
Verkaufsbeleg:
VBAK Auftragskopf
VBKD kaufm. Daten Kopf unf Pos
VBAP Posdaten
VBEP Einteilungen

Lieferung:
LIKP
LIPS
LIPS-VGBEL = VBAP-VBELN
LIPS-VGPOS = VBAP-POSNR

Rechnung:
VBRK Kopf
VBRP Position

VBRP-VGBEL = LIPS-VBELN
VBRP-VGPOS = LIPS-POSNR

VBRP-AUBEL = VBAP-VBELN
VBRP-AUPOS = VBAP-POSNR

Am besten, du nimmst den Baustein RV_ORDER_FLOW_INFORMATION

In irgendeiner ABAP-Ichpackmalallescodingwasichhabeeinfachineinezipdatei-Sammlung habe ich auch einen Report gesehen, der den Belegfluß mit einem TreeControl aufbaut. Finde ich aber nicht mehr... :cry:

Beitrag von ewx (Top Expert / 4849 / 313 / 642 ) »
Hi Markus,

VBRK ist die Kopftabelle für Rechnungen.

Den Belegfluss in einer Tabelle anzuzeigen ist nicht unproblematisch:
Du kannst z.B. zu einer Kundenauftragsposition mehrere Lieferungen und mehrere Rechnungen haben.

nimm ruhig den Belegfluss-Baustein. Da ist alles drin, was du brauchst.
Die tabellarische Auflistung übernimmt der natürlich nicht.

Beitrag von MarkusW (Specialist / 406 / 5 / 0 ) »
ewx hat geschrieben:Hi Markus,

VBRK ist die Kopftabelle für Rechnungen.

Den Belegfluss in einer Tabelle anzuzeigen ist nicht unproblematisch:
Du kannst z.B. zu einer Kundenauftragsposition mehrere Lieferungen und mehrere Rechnungen haben.

nimm ruhig den Belegfluss-Baustein. Da ist alles drin, was du brauchst.
Die tabellarische Auflistung übernimmt der natürlich nicht.
Hi.

Es geht um diese Felder:
- ?Verkaufsbelegart (Feldname: VBAK-AUART)?
- ?Verkaufsbeleg (Feldname: VBAK-VBELN)?
- ?Erfassungsdatum (Feldname: VBAK-ERDAT)?
- ?Lieferscheinnummer (Feldname: LIKP-VBELN)?
- ?Lieferscheinerzeugungsdatum (Feldname: LIKP-ERDAT)?
- ?Warenausgangsdatum (Feldname: LIKP-WADAT_IST)?
- ?Fakturanummer (Feldname: VBRK-VBELN)?
- ?Fakturabelegdatum (Feldname: VBRK-ERDAT)?
- ?Auftraggeber (Feldname: VBAK-KUNNR)?
- ?Verkaufsbüro (Feldname: VBAK-VKBUR)?
- ?Verkaufsorganisation (Feldname: VBAK-VKORG)?
- ?Vertriebsweg (Feldname: VBAK-VTWEG)?
- ?Materialnummer (Feldname: VBAP-MATNR)?
- ?Materialbezeichnung (Feldname: VBAP-ARKTX)?
- ?Auftragsmenge Position (Feldname: VBAP-KWMENG)?
- ?bestätigte Liefermenge Position (Feldname: LIPS-LFIMG)?
- ?Nettowert Position (Feldname: VBAP-NETWR)?
- ?Übergeordnete Position bei Stücklisten (Feldname: VBAP-UEPOS)?
- ?Kundenbezirk (Feldname: VBKD-BZIRK)?.

Der FuBa: RV_ORDER_FLOW_INFORMATION
mag ja sehr hilfreich sein, allerdings ist da keinerlei Doku dabei und der will einen Wert 'COMWA' mit der Struktur von 'VBCO6'. (der aus 3 Felder besteht (ohne mandt)) Kurz gesagt, ich komm mit dem nicht klar :oops:

Problematisch dabei ist auch die Selektierung der Daten. Das kann man wohl dann auch im anschluss nach dem FuBa machen, aber die Frage bleibt ob der fuBa die Daten liefert die ich brauch...ohne Doku ist das nicht nachvollziehbar.

Gruß
Markus


Ich versteh den nicht wirklich.

Beitrag von ewx (Top Expert / 4849 / 313 / 642 ) »
Teste den FB doch mal in der SE37 und gib in COMWA-VBELN mal eine Auftragsnummer ein...
Alles andere an Daten musst du aus den entsprechenden Tabellen nachlesen.
Wenn du siehst, was der FB an Daten liefert, wird das bestimmt klarer.
lg,

Beitrag von MarkusW (Specialist / 406 / 5 / 0 ) »
ewx hat geschrieben:Teste den FB doch mal in der SE37 und gib in COMWA-VBELN mal eine Auftragsnummer ein...
Alles andere an Daten musst du aus den entsprechenden Tabellen nachlesen.
Wenn du siehst, was der FB an Daten liefert, wird das bestimmt klarer.
lg,
werd ich mal machen ;)

thx

Beitrag von MarkusW (Specialist / 406 / 5 / 0 ) »
Hab ihn getestet, bringt leider nix.
Gleichzeitig hab ich gleich nach anderen FuBa´s gesucht...keiner da der nützlich ist :cry:

Mein Select mit 6 inner joins kann ich auch in die Tonne treten, da man über die vbfa nicht joinen kann :evil:

Jetzt lauter einzel selects machen...na das wird bestimmt perfomant... :roll:


Hab heute keine Lust mehr, vllt bringt ja doch ein FuBa was, wenn ich ihn mir morgen nochmal anschau 8)

Gruß
Markus

Seite 1 von 1

Vergleichbare Themen

7
Antw.
873
Views
Tabellen verbinden
von NLengner » 09.05.2019 10:01 • Verfasst in ABAP® für Anfänger
6
Antw.
2721
Views
Tabellen verbinden
von ferox » 15.02.2006 09:31 • Verfasst in SAP - Allgemeines
13
Antw.
4867
Views
wie kan man zwei interen tabellen verbinden?
von autohandel7 » 14.07.2014 10:59 • Verfasst in ABAP® für Anfänger
2
Antw.
5001
Views
OPEN SQL JOIN / Eine Tabelle mit >1 Tabellen verbinden
von Michael71 » 30.01.2012 13:02 • Verfasst in ABAP® Core
1
Antw.
1043
Views
Querys verbinden, bzw. Zeilen aus und einbelnden.
von Grey_M » 04.10.2007 12:50 • Verfasst in ABAP® Core

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

Regex in where
vor 3 Stunden von edwin 7 / 162
Daten an Tabelle binden
vor 16 Stunden von Bright4.5 3 / 1486

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

Regex in where
vor 3 Stunden von edwin 7 / 162
Daten an Tabelle binden
vor 16 Stunden von Bright4.5 3 / 1486

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 5 Wochen von ralf.wenzel 1 / 3261
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9821