Lesen Konditionsdaten aus Tabellen KONV und PRCD ELEMENTS

Aus SAP-Wiki
Zur Navigation springenZur Suche springen

Konditionen werden nur dem Druckprogramm übergeben, wenn im Customizing der Preisfindung in der Spalte "Druckart" (DRUKZ) ein Kennzeichen gesetzt ist. Die Kennzeichen unterscheiden ob eine Position generell übergeben wird, wenn der Wert ungleich Null ist und/oder ob der Wert ungleich der Vorposition ist.

Manchmal ist dieses Kennzeichen nicht gesetzt, aber man benötigt dennoch die Kondition. Dann kann man die Konditionen aus der Tabelle KONV nachlesen. Den Namen KONV kann man sich merken als „KonditionenVerknüpfung“. Zwischenschritte, also Positionen im Kalkulationsschma ohne Schlüssel (KSCHL), werden "on the fly" berechnet und nicht in der Tabelle gespeichert.

HANA, KONV und PRCD_ELEMENTS

  • !!! Unter HANA wurde die Tabelle KONV durch die Tabelle PRCD_ELEMENTS ersetzt !!! Siehe hierzu https://launchpad.support.sap.com/#/notes/2220005/E.
  • Die beiden Tabellen sind sehr ähnlich vom Aufbau, aber haben Unterschiede im Detail. Warum SAP hier eine neue Tabelle eingeführt hat und die Daten unter HANA in der Tabelle PRCD_ELEMENTS nutzt, ist mir nicht bekannt. SAP wird Gründe dafür haben.

Access Tabellenbeziehung

  • Access Tabellenbeziehung Konditionen
  • In der Belegkopftabelle wird über das Feld KNUMV die Verknüpfung hergestellt mit dem Feld KONV-KNUMV und so können alle Kondition dieses Belegs gelesen werden. Wenn es Positionskonditionen sind, dann steht im Feld KONV-KPOSN die Belegposition. Bei Kopfkonditionen ist dieses Feld initial (0).
    • Kundenaufträge (VBAK)
    • Lieferungen (LIKP)
    • Ausgangsrechnung (VBRK)
    • Bestellungen (EKKO)
  • Die Tabelle KONV ist nicht zu verwechseln mit der Tabelle KONP, die über das Feld KNUMH mit den zeitbezogenen Customizingtabellen (z. B. A004) verbunden sind. Die KONP zählen zu den Stammdaten.

Coding

  SELECT SINGLE 
     kbetr 
     waers
    INTO ( ls_sammlart-kbetr, ls_sammlart-waers )
    FROM KONV  “Konditionen
    WHERE kschl = 'VKP0'  "Verkaufskondition
      AND knumv = gs_interface-head_detail-vbdka-knumv
      AND kposn = <ls_itm_detail>-vbdpa-posnr.

bzw.

  SELECT SINGLE 
     kbetr 
     waers
    INTO ( ls_sammlart-kbetr, ls_sammlart-waers )
    FROM PRCD_ELEMENTS  “Konditionen
    WHERE kschl = 'VKP0'  "Verkaufskondition
      AND knumv = gs_interface-head_detail-vbdka-knumv
      AND kposn = <ls_itm_detail>-vbdpa-posnr.

Web-Links