Druck-Nachricht per Code erzeugen (NAST)

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

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

Druck-Nachricht per Code erzeugen (NAST)

Beitrag von Sebastian82 (ForumUser / 79 / 10 / 12 ) »
Hallo Zusammen,

ich möchte programmgesteuert eine Drucknachricht erzeugen. Also z.B. für die Sales Order / Auftragsbestätigung (VA02). Hierfür suche ich möglichst einen Funktionsbaustein dem ich die Dokumentennummer und die Nachrichtenart übergeben kann und der mir dann die Nachricht anlegt. Also z.B. für Dokument 1234 die Nachricht BA00. Alternativ kann man bestimmt auch direkt einen Eintrag in der Tabelle NAST anlegen. Aber eine Kapselung wäre mir lieber.

Anwendungsfall ist folgender: Im System gibt es diverse Aufträge ohne Nachricht. Jetzt soll von einem externen Programm auf das System zugegriffen, das Druck-PDF erzeugt und vom Programm zurückgegeben werden.
Mein Plan ist es, hierfür zunächst eine Nachricht programmgesteuert anzulegen und anschließend das Druckprogramm aufzurufen.

Viele Grüße,

Sebastian

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


Re: Druck-Nachricht per Code erzeugen (NAST)

Beitrag von black_adept (Top Expert / 4086 / 126 / 940 ) »
Hallo Sebastian,

wenn du die Nachricht manuell finden musst könntest du eine Batchaufzeichung machen und via Call Transaction deine Nachricht finden und wahrscheinlich auch gleich ausgeben lassen. Kapsele das Ganze in einen Funktionsbaustein oder eine Methode - dann ist es auch wiederverwertbar.
Alternativ könntest du die Nachrichtenfindung auch so customizen, dass ein ( bisher unbenutztes Feld ) zur automatischen Nachrichtenfindung herangezogen wird, und dieses Feld mittels eines BAPIs für das Ändern von Verkaufsbelegen setzen und somit die gewünschte Nachrichtenfindung triggern.

Folgende Benutzer bedankten sich beim Autor black_adept für den Beitrag:
Sebastian82

live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Druck-Nachricht per Code erzeugen (NAST)

Beitrag von Tron (Top Expert / 1327 / 35 / 332 ) »
Hallo Sebastian,
möchte hinzufügen:
In der Funktionsgruppe V70A sind einige Funktionsbausteine WMFC*, die kann man zum Drucken und Nachdrucken verwenden.
z.B.
Man kann allerdings auch RSNAST00 einplanen oder zum Direkten drucken verwenden.

Code: Alles auswählen.

FUNCTION WFMC_MESSAGE_SINGLE.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*"  IMPORTING
*"     VALUE(PI_NAST) TYPE  NAST
*"  EXPORTING
*"     VALUE(PE_RCODE) LIKE  SY-SUBRC
*"----------------------------------------------------------------------

  Move PI_NAST to NAST.

  PERFORM EINZELNACHRICHT(RSNAST00) USING PE_RCODE.

ENDFUNCTION.
gruß Jens

Folgende Benutzer bedankten sich beim Autor Tron für den Beitrag:
Sebastian82

<:: XING-Gruppe Tricktresor::>
Die deutsche Rechtschreibung ist Freeware, du darfst sie kostenlos nutzen –
Aber sie ist nicht Open Source, d. h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

Re: Druck-Nachricht per Code erzeugen (NAST)

Beitrag von Sebastian82 (ForumUser / 79 / 10 / 12 ) »
Hallo Jens, danke für den Hinweis.
WFMC_MESSAGE_SINGLE geht bestimmt auch.
Ich habe mich jetzt für den von Stefan vorgeschlagenen Weg mit dem Batch Input entschieden. Das klappt wunderbar. Das Programm sieht dann ungefähr so aus:

Code: Alles auswählen.

REPORT Z_NAST.


data: i_vbeln type vbeln value '2235'.
data: opt         TYPE ctu_params.
DATA: it_batchdata TYPE STANDARD TABLE OF bdcdata.
DATA: it_msg TYPE STANDARD TABLE OF bdcmsgcoll.

it_batchdata = VALUE #( ( program = 'SAPMV45A' dynpro = '0102' dynbegin = 'X' fnam = ''           fval = '' )
                        ( program = ''         dynpro = ''     dynbegin = ''  fnam = 'VBAK-VBELN' fval = i_vbeln )
                        ( program = ''         dynpro = ''     dynbegin = ''  fnam = 'BDC_OKCODE' fval = '=ENT2' )
                        ( program = 'SAPMV45A' dynpro = '4001' dynbegin = 'X' fnam = ''           fval = '' )
                        ( program = ''         dynpro = ''     dynbegin = ''  fnam = 'BDC_OKCODE' fval = '=KDOK' )
                        ( program = 'SAPDV70A' dynpro = '0100' dynbegin = 'X' fnam = ''           fval = '' )
                        ( program = ''         dynpro = ''     dynbegin = ''  fnam = 'BDC_OKCODE' fval = '=V70S' )
                        ).
*BREAK-POINT.
*
  opt-dismode = 'N'.
  opt-updmode = 'S'.
  CALL TRANSACTION 'VA02' USING it_batchdata "OPTIONS FROM opt
                          MESSAGES INTO it_msg
                                        UPDATE opt-updmode
                                        MODE opt-dismode.
Viele Grüße,

Sebastian

Seite 1 von 1

Vergleichbare Themen

1
Antw.
844
Views
Druck Bestellung in NAST aber nicht in SOST
von Manfred K. » 08.03.2021 09:50 • Verfasst in ABAP® für Anfänger
2
Antw.
4532
Views
NAST-Sätze per programm erzeugen
von Michael Müller » 01.09.2005 14:11 • Verfasst in ABAP® Core
3
Antw.
3716
Views
Einmaliger Druck einer Nachricht
von Gast » 31.01.2005 17:28 • Verfasst in Sales and Distribution
3
Antw.
5609
Views
SAPScript, Nachricht per Druck und E-Mail ausgeben
von clinke » 06.06.2007 10:19 • Verfasst in ABAP® Core
2
Antw.
1603
Views
Druck-Nachricht beim Erstellen prüfen
von Sebastian82 » 17.03.2021 14:30 • Verfasst in ABAP® für Anfänger

Ü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.

Unbeantwortete Forenbeiträge

Daten an Tabelle binden
Gestern von Bright4.5 1 / 497
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2139
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8735