SAP Jobsuche bei DV-Treff
Watson00
  • Watson00
  • SAP Forum - Neuling Thema Starter
vor 7 Jahre
Hallo 😁

Ich bin hier wirklich am verzweifeln 🤬

Kann mir jemand helfen wie ich neben der Statistischen Warennummer auch das Ursprungsland auf der Faktura ausgeben kann?

Ich finde in der ganzen Google Welt keine Hilfe!

Wo stelle ich die Parameter ein, welche Felder auf der Faktura aufgedruckt werden?😕 😕 😕

ICH DANKE EUCH SCHON JETZT VIELMALS!

Viele Grüße

Watson00

Förderer

wreichelt
vor 7 Jahre
Hallo,

da würde ich euren Formular-Entwickler mal fragen. Der sollte das beantworten können.

Gruß Wolfgang

Watson00
  • Watson00
  • SAP Forum - Neuling Thema Starter
vor 7 Jahre
Leider gibt es den hier nicht, unsere IT lässt sehr zu wünschen übrig....

Ich habe Customizing Zugriff, weiß aber nicht wo ich ansetzen soll...

Gruß

Watson00

wreichelt
vor 7 Jahre
Hallo Watson,

das Ursprungsland kommt aus der Tb: T604, das Formular (Adobe, SAPscript oder Smartforms) muss dann ebenfalls

geändert werden .

Gruß Wolfgang

Watson00
  • Watson00
  • SAP Forum - Neuling Thema Starter
vor 7 Jahre
Hallo Wolfgang,

die T604 ist die Tabelle der Statistischen Warennummern.

Aber wo genau definiere ich was auf der Faktura angedruckt wird?

LG

wreichelt
vor 7 Jahre
Hallo,

das kann ich so nicht sagen, es muss in dem Formular und in dem Treibet Programm zugeordnet werden.

Aus der Ferne ist das unmöglich.

Gruß Wolfgang

157
  • 157
  • SAP Forum - Guru
vor 7 Jahre
Hallo!

hier ein paar Tabellen:

in der vbrk ist die exnum. Diese Nummer ist die Verbindung zur eipo inkl. der Position-Nr.

In der Eipo ist die stawn abgelegt, welche in der Lieferung berücksicht wurde.

Du muss also ein paar Daten über das Druckprogramm beschaffen.


Gruss 157
mo001
  • mo001
  • SAP Forum - Experte
vor 7 Jahre
Hallo,

grundsätzlich gebe ich meinen Vorrednern recht, das ist eine Frage für die Entwickler der Formulare bei euch.

Vielleicht hilft folgendes weiter:

Zitat aus dem Customizing-Leitfaden im SD zum Thema Systemanpassung:

Zitat:

Neue Felder für den Belegdruck

Allgemeiner Ablauf bei der Druckausgabe

Beim Dokumentendruck ist die Datenbeschaffung und die Datenaufbereitung getrennt. Dadurch kann die Formulargestaltung in verschiedene Verantwortungsbereiche gegeben werden: Während ein Mitarbeiter z.B. die möglichen Felder eines Formulars definiert, paßt ein anderer Mitarbeiter das Layout aus Marketing-Gesichtspunkten an.

Die druckerspezifischen Steuerungen sind unabhängig vom Druckprogramm mit dem SAPscript-Formular realisierbar. Feststehende Seitenvordrucke (z.B. Firmenanschriften, Fußtexte) können durch im Formular definierte Texte ausgegeben werden.

Modifikationen beim Belegdruck

Bei Anpassungen im Bereich des Belegdrucks lassen sich je nach Art und Umfang der Anpassungen zwei grundsätzliche Arten unterscheiden:

1. Modifikationen 1. Stufe

Einfachere Modifikationen ohne Aufbereitungslogik und ohne Aufnahme neuer Felder in eine Kommunikationsstruktur können direkt in der Formular-Bearbeitung mit SAPscript erfolgen. Sie erfolgen als "reine" Formularanpassungen. Sie werden vorgenommen, wenn folgende Voraussetzungen vorliegen:

Das Feld ist in der Kommunikationsstruktur vorhanden.

Das Feld ist NICHT im Formular enthalten.

Das Feld kann im Formular direkt an etwas "Bestehendes" angehängt werden (z.B. ....).

Anhand von Beispiel 3 (s.u.) wird das Vorgehen bei dieser Art der Anpassung beschrieben.

Hinweis

SAP empfiehlt die Standardformulare unverändert zu lassen und für die Anpassung von Formularen stets Testformulare zu verwenden.

Weiterführende Informationen zur Definition und Bearbeitung von Formularen erhalten Sie im Abschnitt "Verarbeitung von Nachrichten und Formularbearbeitung". Informationen zu SAPscript erhalten Sie in der Online-Dokumentation Basis -> Basis-Services / Kommunikation zur Textverarbeitung im SAPscript-Editor bzw. zur Stil- und Formularpflege.

2. Modifikationen 2. Stufe

Aufwendigere Modifikationen müssen vorgenommen werden, wenn ein Feld weder in der Kommunikationsstruktur noch im Formular vorhanden ist. In diesen Fällen muß das jeweilige Feld in die Kommunikationsstruktur mittels der dafür vorgesehenen INCLUDES aufgenommen werden. Diese Art der Druckanpassung wird nachfolgend ausführlich beschrieben.

Unter bestimmten Voraussetzungen ist dabei zusätzlich ein Eingriff in den Datenbeschaffungsreport bzw. in die Programme notwendig. Dies ist der Fall, wenn

der Druck von bislang nicht berücksichtigten Bedingungen abhängen soll

die Reihenfolge des Drucks im MAIN-Fenster anders sein soll

zusätzliche Daten gelesen werden müssen

Grundlagen der Systemanpassungen für den Belegdruck

Für den Belegdruck stehen eigene Kommunikationsstrukturen zur Verfügung:

VBDKA (Dokumentenkopfview Anfrage, Angebot, Auftrag)

VBDPA (Dokumentenpositionsview Anfrage, Angebot, Auftrag)

VBDKL (Dokumentenkopfview Lieferschein)

VBDPL (Dokumentenpositionsview Lieferschein)

VBDKR (Dokumentenkopfview Faktura)

VBDPR (Dokumentenpositionsview Faktura)

Neue Felder für den Belegdruck werden in folgenden INCLUDES aufgenommen:

Auftragsdokumente Kopfdaten in VBDKAZ (in VBDKA)

Auftragsdokumente Positionsdaten in VBDPAZ (in VBDPA)

Lieferungsdokumente Kopfdaten in VBDKLZ (in VBDKL)

Lieferungsdokumente Positionsdaten in VBDPLZ (in VBDPL)

Fakturadokumente Kopfdaten in VBDKRZ (in VBDKR)

Fakturadokumente Positionsdaten in VBDPRZ (in VBDPR)

Die Versorgung der Felder in den Kommunikationsstrukturen erfolgt über Funktionsbausteine. In den Funktionsbausteinen sind für die Versorgung der aufgenommener Felder pro Belegart drei User-Exits vorhanden:

Die ersten beiden User-Exits laufen zu dem Zeitpunkt ab, zu dem der Belegkopf bzw. die Position gelesen wird. Sie enthalten einen MOVE-CORRESPONDING, mit dem gleichnamige Felder automatisch versorgt werden.

Der dritte User-Exit (V05...EN) wird am Ende des Programms vor Verlassen des Funktionsbausteins zur Nachbearbeitung prozessiert. Mit ihm können Felder versorgt werden, die nicht mit den User-Exits für Kopf oder Position versorgt werden.

Folgende User-Exits sind relevant:

Auftragsdokumente Kopfdaten:

V05DZZAK

Auftragsdokumente (Nachbearbeitung):

V05DZZEN

Auftragsdokumente Positionsdaten:

V05DZZAP

Lieferungsdokumente Kopfdaten:

V05OZZLK

Lieferungsdokumente (Nachbearbeitung)

V05OZZEN

Lieferungsdokumente Positionsdaten:

V05OZZLP

Fakturadokumente Kopfdaten:

V05NZZRK

Fakturadokumente (Nachbearbeitung):

V05NZZEN

Fakturadokumente Positionsdaten:

V05NZZRP

Beispiel 1

Die Buchungsperiode (POPER) soll auf dem Fakturakopf gedruckt werden. Je nachdem ob beim Feldnamen Namensgleichheit mit einem SAP-Feld besteht oder nicht, gehen Sie folgendermaßen vor:

bei Namensgleichheit:

Nehmen Sie das Feld POPER in den INCLUDE VBDKRZ (in der Kommunikationstabelle VBDKR) auf und ordnen ihm das Datenelement POPER zu.

Aufgrund der Namensgleichheit wird das Feld automatisch mittels MOVE-CORRESPONDING versorgt.

bei eigenen Feldnamen (beginnend mit "ZZ"):

Nehmen Sie das Feld ZZPOPER im INCLUDE VBDKRZ (in der Kommunikationsstruktur VBDKR) auf und ordnen ihm das Datenelement POPER zu.

Da keine Namensgleichheit besteht, müssen Sie das Feld im User-Exit V05NZZRK mit folgender Anweisung versorgen:

MOVE VBRK-POPER TO VBDKR-ZZPOPER.

Beispiel 2

Wenn Felder sowohl in der Position als auch im Kopf vorkommen, kann im dritten User-Exit (V05...EN) des jeweiligen Funktionsbausteins festgelegt werden, nach welcher Logik das Kopffeld aus der Position versorgt wird.

In diesem Fall muß im Druckprogramm oder im Formular die Logik der Ausgabe definiert werden. Im Formular sieht die Anweisung dazu z.B. folgendermaßen aus:

/: IF NE

/ &'Abweichende Verkäufergruppe' VBDPR-ZZVKGRP&

/: ENDIF.

Im zweiten Beispiel soll die Verkäufergruppe (ZZVKGRP) im Fakturakopf gedruckt werden. Außerdem sollen Verkäufergruppen, die vom Kopf abweichen, auf Positionsebene ausgegeben werden.

1. Nehmen Sie das Feld VKGRP in den INCLUDE VBDPRZ (in der Kommunikationsstruktur VBDPR) auf und ordnen ihm das Datenelement VKGRP zu.

2. Versorgen Sie das Feld im User-Exit V05NZZRP mit folgender Anweisung:

MOVE VBRP-VKGRP TO VBDRP-ZZVKGRP.

3. Nehmen Sie das Feld ZZVKGRP in den INCLUDE VBDKRZ (in der Kommunikationsstruktur VBDKR) auf und ordnen ihm das Datenelement VKGRP zu.

4. Um die Verkäufergruppe auf Kopfebene auszugeben, müssen Sie das aufgenommene Feld auf Kopfebene versorgen. Dies nehmen Sie im User-Exit V05NZZEN mit folgender Anweisung vor:

READ TABLE LVBDPR INDEX 1.

MOVE LVBDPR-ZZVKGRP TO VBDKR-ZZVKGRP.

Damit wird die Verkäufergruppe aus der ersten Position in den Kopf übernommen.

Beispiel 3

Im dritten Beispiel sollen abhängig von der Firmenorganisation neue Texte definiert und verwendet werden:

Diese Texte müssen mit S010 erfaßt und einer Text-ID zugeordnet werden.

Diese Texte müssen einer Verkaufsorganisation und einem Verkaufsbüro zugeordnet werden (s. Customizing Nachrichtenfindung: Nachrichten -> Formulartexte -> Je Verkaufsorganisation und Verkaufsbüro)

Im Auftrag, in der Lieferung und in der Faktura werden automatisch die Texte der Verkaufsorganisation gelesen.

1. Datenbeschaffung

Wenn Texte abhängig von der Firmenorganisation (z.B. Verkaufsorganisation, Verkaufsbüro) variieren, müssen sie mittels Textnummern aus dem Datenbeschaffungsreport per INCLUDE ausgegeben werden. Wenn z.B. anstatt der Texte der Verkaufsorganisation Texte des Verkaufsbüros gelesen und auf der Auftragsbestätigung ausgegeben werden sollen, muß die Datenbeschaffung angepaßt werden.

Für die Auftragsbestätigung erfolgt dies im Programm RVADOR01. Dort enthält die Form-Routine SENDER standardmäßig die Verkaufsorganisation. Soll die gewünschte Anpassung vorgenommen werden, so muß diese in das Verkaufsbüro oder in die Verkaufsorganisation und in das Verkaufsbüro geändert werden.

2. Datenaufbereitung

Die Reihenfolge der Ausgabe der Textelemente im MAIN-Fenster erfolgt programmgesteuert. Wenn eine andere Reihenfolge gewünscht wird als im Standard vorgegeben ist, müssen Sie diese im jeweiligen Druckprogramm anpassen. Die Datenaufbereitung erfolgt durch den Include

INCLUDE OBJECT TEXT ID SDVD PARAGRAPH XX

Nähere Informationen zur Datenaufbereitung erhalten Sie in der Dokumentation zu SAPscript.

Ablauf bei der Aufnahme neuer Felder für den Belegdruck

Der Belegdruck läuft programmtechnisch (z.B. beim Ausgeben von Verkaufsbelegen) folgendermaßen ab:

1. SAPMV45A

Der Ablauf wird mittels des Funktionscodes FCODE_DRCK angestoßen.

2. SAPLVMSG

Mit RV_MESSAGE_PRINT_SINGLE wird ein Funktionsbaustein aufgerufen, der einen NAST-Satz selektiert. Der NAST-Satz enthält die zu einem bestimmten Zeitpunkt für das Drucken eines Dokuments benötigten Steuerungsdaten.

3. RSNAST00 (Aufruf durch externen PERFORM aus RV_MESSAGE_PRINT_SINGLE)

In der Form-Routine EINZELNACHRICHT_DIALOG wird die Tabelle TNAPR gelesen, die pro Nachrichtenkonditionsart angibt, welches Programm, welche Form-Routine und welches Formular relevant sind.

4. RVADOR01 (Druckreport, Aufruf durch externen PERFORM)

Aus der Form-Routine EINZELNACHRICHT_DIALOG wird der Druckreport RVADOR01 aufgerufen. Der Druckreport steuert alle wesentlichen Vorgänge, die mit dem Belegdruck in Zusammenhang stehen.

In der Standardauslieferung wird für den Aufruf des Druckprogramms die Form-Routine ENTRY benutzt. Wenn andere Form-Routinen verwendet werden sollen, müssen diese in der Tabelle TNAPR hinterlegt sein.

Der Aufruf beinhaltet zwei USING-Parameter:

Der RETURN-CODE steuert, ob der Druck erfolgreich war und kann folgende Werte annehmen:

0 = erfolgreich verarbeitet

1 = fehlerhaft

3 = Beleg unvollständig (VSTAT in NAST wird nicht gesetzt)

Der Parameter US_SCREEN legt fest, wo die Ausgabe erscheint. Dabei bedeutet

nicht blank = Ausgabe erfolgt auf dem Bildschirm

blank = Ausgabe erfolgt auf dem Drucker

5. Mit PERFORM PROCESSING (Aufruf durch die Form-Routine ENTRY in RVADOR01) werden folgende Vorgänge beim Belegdruck gesteuert:

Datenbeschaffung

Öffnen und Schließen des Formulars

Reihenfolge, in der die Formulartextelemente aufgerufen werden

allgemeine Kopfausgaben (Titel, Gültigkeitszeitraum, Kopftext)

Positionsausgabe

Bearbeitung nach den Positionen (Summen, Anhangstexte)

MfG mo