Formular Fenster nur bei Bedarf ausgeben

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Getting started ... Alles für einen gelungenen Start.
3 Beiträge • Seite 1 von 1
3 Beiträge Seite 1 von 1

Formular Fenster nur bei Bedarf ausgeben

Beitrag von rafaelvives (ForumUser / 25 / 2 / 0 ) »
Hallo Zusammen,
meine Frage hat 2 Punkte:
Das Sapscriptformular zur Nachricht RD00 enthält die Adresse des Rechnungsempfänger als Adressat.
1. Es soll ein zusätzliches Fenster nur bei Erfüllung einer Bedingung angedruckt werden:
Regulierer ungleich Rechnungsempfänger, vermutlich aus VBDKR: VBDKR-KUNRG NE VBDKR-KUNRE
Ich gehe davon aus, dies kann nur im Druckprogramm codiert werden, aber wie finde ich die geeignete Stelle?
Kann dies evtl auch im Formular gemacht werden?

2. Das zus. Fenster soll dann die Adresse des Regulierers enthalten.
Diese Adresse steht in keiner der Tabellen.
Wie kann ich diese adresse holen? (Coding-Beispiel?)
Danke im Voraus für die Tipps
Raf

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


Re: Formular Fenster nur bei Bedarf ausgeben

Beitrag von a-dead-trousers (Top Expert / 4484 / 231 / 1205 ) »
ad 1) Das geht auch im Druckformular:
Einfach den ganzen Inhalt im Fenster in eine IF-Abfrage packen.

lg
ADT
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: Formular Fenster nur bei Bedarf ausgeben

Beitrag von rafaelvives (ForumUser / 25 / 2 / 0 ) »
Hallo, vielen Dank an die User, die Ideen beisteuerten.
Manchmal sind die Sachen doch einfacher als vermutet:
ES gibt bestimmt andere Lösungen. Hier nun meine für den Fall, dass jemand sie irgenwann brauchen könnte:
1. Formular: ein neues Fenster Payer mit einem Textelement /E namens Payer.
Dort habe ich die Adresse mit Programmsymbolen etwa: (IT = interne Tabelle im Druckprogramm)

ADDRESS DELIVERY PARAGRAPH AS
NAME &IT-NAME1&
STREET &IT-STRS&
CITY &IT-ORT01&
POSTCODE &IT-PLZ&
COUNTRY &IT-LAND1&
/:ENDADDRESS
Positionsdaten des Fenster und Rahmen darunter (bei Bedarf)

2. Das Druckprogramm für die Nachrichtenart (hier: RD00), siehe Transaktion NACE
und die passende Subroutine (Entry) identifiziert.
Zunächst eine Interne Tabelle mit den im Fenster benötigten Feldern definiert:
Data: begin of IT occurs 0,
name1 type REGUH-NAME1,
strs type REGUH-<passendes Feld>,
ort01 type REGUH-<passendes Feld>,
plz type REGUH-<passendes Feld>,
Land1 type REGUH-<passendes Feld>.
End of IT.

Im Programm/ Routine Entry eine neue Form aufgerufen:
Perform PayRoutine

Mit doppelklick / Vorwärtsnavigation die Routine angelegt:

Form PayRoutine.
clear IT. "Interne Tabelle leer gemacht
IF VBDRK-KUNRE NE VBDRK-KUNRG. " hier ist die Bedingung ohne die das Fenster nicht erst gedruckt wird
Select <Feld1> <Feld2> <Feld3> ... . " Felder NAME1, etc...
from REGUH
into IT
WHERE KUNNR = VBDRK-KUNRG. " somit werden die Felder von IT gefüllt und stehen mit Werten für das Fenster im
" SAPSCRIPT Formular zur Verfügung.
Endselect.
ENDIF.
Endform.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = PAYER.
*FUNCTION =
*TYPE =
WINDOW = PAYER.

Dann klapt es und das Fenster mitsamt Linien, etc... werden nur dann auf dem Formular angedruckt, wenn
die IF-Bedingung erfüllt ist.

Gruss
Raf

Seite 1 von 1

Vergleichbare Themen

1
Antw.
4392
Views
Sonderzeichen in SAP-Script Formular ausgeben?
von dimes » 11.08.2008 15:24 • Verfasst in ABAP® Core
3
Antw.
6735
Views
Smartforms Formular nach SAPscript Formular aufrufen
von walda33 » 26.01.2014 10:14 • Verfasst in ABAP® für Anfänger
5
Antw.
7163
Views
SAPScript Box um ein Fenster
von codierknecht » 18.06.2007 09:44 • Verfasst in ABAP® für Anfänger
0
Antw.
1871
Views
SmartForms: Fenster-Spezialfall
von tomcat13 » 20.10.2006 11:42 • Verfasst in ABAP® Core
0
Antw.
2499
Views
Main-Fenster in SmartForms
von baldeagle » 03.04.2007 15:02 • Verfasst in ABAP® Core

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

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.