Spool-Auftragsnummer bei SUBMIT ... TO SAP-SPOOL ermitteln??

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

Spool-Auftragsnummer bei SUBMIT ... TO SAP-SPOOL ermitteln??

Beitrag von Stentor (Specialist / 121 / 0 / 0 ) »
Hallo Experten,

hätte da mal eine Frage:

Ich starte das Programm RPTEDT00 (Zeitnachweisformular) mittels SUBMIT ... TO SAP-SPOOL und lasse mir einen Spool-Auftrag erzeugen. Diesen möchte ich dann im laufenden Programm weiterverarbeiten. Die Rückgabestruktur wa_params liefert mir dummerweise die Spool-Auftragsnummer nicht zurück?!

Mein Problem: Wie ermittle ich die jeweilige Spool-Auftragsnummer, die gemäß Nummernkreisintervall SPO_NUM vergeben wurde? Kann mir jemand helfen? Vielen Dank im Voraus.

Hier das entsprechende Coding aus meinem Programm:

Code: Alles auswählen.

DATA: wa_params LIKE pri_params,
*      lv_DAYS(1)  TYPE N VALUE 2,
        lv_count(3) TYPE n VALUE 1,
        lv_valid    TYPE c.


*--- Druckparameter setzen & Bild zur Drucksteuerung überspringen ---*
  CALL FUNCTION 'GET_PRINT_PARAMETERS'
    EXPORTING destination           = 'LOCL'
              copies                = lv_count
              list_name             = 'RPTEDT00'
              list_text             = 'Versand Zeitnachweisformular'
              immediately           = ' '
*            RELEASE               = 'X'
*            NEW_LIST_ID           = 'X'
*            EXPIRATION            = DAYS
              line_size             = 90
              line_count            = 65
              layout                = 'X_65_90_A4_HOCH'
              sap_cover_page        = ' '
              cover_page            = ' '
*            RECEIVER              = 'SAP*'    "???? Versorgen????
*            DEPARTMENT            = 'System'  "???? Versorgen????
              no_dialog             = 'X'
    IMPORTING out_parameters        = wa_params
              valid                 = lv_valid.
  IF lv_valid EQ space.
*Errorhandling
  ELSE.


*--- Zeitnachweisformular (RPTEDT00) als Spool-Auftrag erzeugen ---*
    SUBMIT rptedt00
*** Hintergrundverarbeitung von RPTEDT00
                    USING SELECTION-SET gp_def_v
                    WITH pnppernr-low EQ pernr-pernr
*** Spool-Angaben
                    TO SAP-SPOOL
                    SPOOL PARAMETERS wa_params
                    WITHOUT SPOOL DYNPRO
                    AND RETURN.

  ENDIF.
--------------------------------
Human Capital Management mit mySAP HR®

http://www.human-capital-management.biz
--------------------------------

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


Re: Spool-Auftragsnummer bei SUBMIT ... TO SAP-SPOOL ermitte

Beitrag von ewx (Top Expert / 4918 / 332 / 655 ) »
Stentor hat geschrieben:Hallo Experten,

hätte da mal eine Frage:

Ich starte das Programm RPTEDT00 (Zeitnachweisformular) mittels SUBMIT ... TO SAP-SPOOL und lasse mir einen Spool-Auftrag erzeugen. Diesen möchte ich dann im laufenden Programm weiterverarbeiten.
Warum verwendest du dann nicht den SUBMIT-Zusatz "EXPORTING LIST TO MEMORY"?

Das wird für's weiterverarbeiten dann wahrscheinlich einfacher.

Gruß, Enno.

Beitrag von Stentor (Specialist / 121 / 0 / 0 ) »
Hallo Enno,

danke für Deine Antwort.

Ich möchte den Zeitnachweis (SUBMIT RPTEDT00...) in den Spool stellen, diesen anschließen nach PDF konvertieren und auf die lokale WS downloaden. Danach folgt ein Upload des so konvertiertens (temporären) PDF-Files und ein Versand via SAPOffice bzw. SMTP. Umständlich aber ich kenne keinen besseren weg.... :cry:

Gibt es eine Vergleichbare Möglichkeit dies aus dem SAP MEMORY zu bewerkstelligen?! Ich habe mich an dem Demoprogramm RSTXPDFT4 orientiert.

Falls nein: Kennst Du eine Möglichkeit, die Spoolauftragsnummer die mit SUBMIT RPTEDT00... erzeugt wurde einfach zu ermitteln?

Vielen Dank
Gruß
Stentor
Zuletzt geändert von Stentor am 26.05.2004 18:24, insgesamt 1-mal geändert.

Beitrag von ewx (Top Expert / 4918 / 332 / 655 ) »
Hi Michael,

mit dem EXPORT LIST TO MEMORY umgehst du das Schreiben des Spoolauftrags und das erneute Lesen.

Mit dem FB LIST_FROM_MEMORY kannst du die erzeugte Liste wieder lesen.

Wenn man dann die Stelle im Program RSTXPDFT4 findet, in der der Spoolauftrag in PDF umgewandelt wird, ist das natürlich etwas eleganter.

Mit ein bischen Mühe könnte man mit dem Include LSTXWFPL evtl. was werden.

Das Programm ist ja aber leider nicht so ganz durchsichtig...

Deswegen ist es natürlich einfacher, den Spoolauftrag zu nehmen.

Probier mal, ob im Feld SY-SPONO der erzeugte Spoolauftrag nach dem Submit enthalten ist.

Falls nicht, besteht immer noch die Möglichkeit die Spoolnummer aus der TSP01 nachzulesen.

Gruß, Enno.

Beitrag von Stentor (Specialist / 121 / 0 / 0 ) »
Hall Enno,

und genau da liegt mein Problem: Ich scheitere beim Versuchdie Tabelle TSP01 auszulesen (die Systemvariable SY-SPONO wird nicht gefüllt, dass hatte ich bereits getestet)! Die Spoolnummer im Feld TSP01-RQIDENT (Spool-Auftragsnummer) wird nach einer Logik generiert, die ich nicht ganz verstehe...

Und zwar gibt es anscheinden unterschiedliche Nummernkreisintervalle innerhalb denen eine laufende Nummer zum Feld TSP01-RQIDENT erzeugt wird. Nur wie lese ich das ganze (am besten per FuBa) aus? Wie kann ich meinen Nummernkreisintervall einsehen (in Transaktion SNRO: Objekt SPO_NUM ist wohl nicht richtig, da der hier nur ein einziges Intervall gibt dessen Nummernstand sich auch nicht ändert?!?!).

Weißt Du hier etwas darüber? Vielen Dank im Voraus.

Ich befürchte, die Spoolnummer zu ermitteln, ist schwerer als ich dachte!!!

Einen schönen Abend noch!
Gruß
Stentor
Zuletzt geändert von Stentor am 26.05.2004 18:24, insgesamt 1-mal geändert.

Beitrag von Gast ( / / 0 / 3 ) »
Moin Michael,

du könntest eine eigene Nummer (timestamp) über die Felder "LIST NAME", "LIST DATASET", "COVER TEXT" oder "DEPARTMENT" mitgeben und dann gezielt nach dieser Nummer in der TSP01 suchen.

Code: Alles auswählen.

data l_covtext(21).
data l_tstamp(11) type p decimals 7.

get time stamp field l_tstamp.
unpack l_tstamp to l_covtext.

SUBMIT .... TO SAP-SPOOL 
               COVER TEXT l_covtext
               ...
               ...
Gruß, Enno

Beitrag von Patrick76 (ForumUser / 34 / 0 / 1 ) »
Hi !!!

Folgendes Beispiel druckt eine Zeile in den Spool und liest dann die zugehörige Spool-Nr aus.

Code: Alles auswählen.

TABLES tsp01.
DATA: spoolid LIKE tsp01-rqident.

NEW-PAGE PRINT ON
IMMEDIATELY ' '		
COVER TEXT 'Übersicht'	
KEEP IN SPOOL 'X'		
SAP COVER PAGE ' '		
LIST NAME 'PDFTEMP'	
DESTINATION 'LOCL'		
NO DIALOG.					

write: / 'Bla Bla'.

NEW-PAGE PRINT OFF.

SELECT * FROM tsp01 WHERE rqowner = sy-uname
AND rq2name = 'PDFTEMP'
ORDER BY rqcretime ASCENDING.
spoolid = tsp01-rqident.
ENDSELECT.
Es geht mit Sicherheit auch eleganter, aber es geht ....

viele Grüße, Patrick

Beitrag von Gast ( / / 0 / 3 ) »
Hallo zusammen,

vielen Dank für eure Tipps. Habe es endlich geschafft - hatte irgendwie eine Brett vorm Kopf!

Nochmals vielen Dank für eure Hilfe!

Ich wünsche ein schönes Wochenende!

Gruß
Michael

Re: Spool-Auftragsnummer bei SUBMIT ... TO SAP-SPOOL ermitte

Beitrag von Knirpsi (ForumUser / 17 / 0 / 0 ) »
Hallo,

ich würde gern nochmals die Idee mit dem Weg über das SAP Memory aufgreifen.
Gibt es denn eine Möglichkeit die Liste in ein PDF Format umzuwandeln? Möglicherweise über die Konvertierung zunächst in ein anderes Format?

Vielen Dank!

Re: Spool-Auftragsnummer bei SUBMIT ... TO SAP-SPOOL ermitte

Beitrag von a-dead-trousers (Top Expert / 4485 / 231 / 1205 ) »
hi!

Schau dir mal die Funktionsbausteine in der Funktionsgruppe SLST an.
Vielleicht findest ja da was oder mit Verwendungsnachweis.

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: Spool-Auftragsnummer bei SUBMIT ... TO SAP-SPOOL ermitte

Beitrag von Knirpsi (ForumUser / 17 / 0 / 0 ) »
Hallo,

nun bin ich auf das gleiche Problem mit der Spool-Auftragsnummer gestoßen.

Mittlerweile sind Zusätze wie "Cover Text" zu "to SAP-SPOOL" ja obsolet.
Wie komme ich denn nun zu meiner Spool-Auftragsnummer?

Hier ein Auszug meines Codings:

Code: Alles auswählen.

  CALL FUNCTION 'GET_PRINT_PARAMETERS'
   EXPORTING
     LIST_NAME                      = lv_liname
     LIST_TEXT                       = 'List to PDF'
     IMMEDIATELY                   = space
     NO_DIALOG                     = true
   IMPORTING
     OUT_PARAMETERS           = print_parameters
     VALID                              = valid_flag
   EXCEPTIONS
     INVALID_PRINT_PARAMS   = 2.

.....

    SUBMIT (p_repid)  USING SELECTION-SET p_slset
                      WITH pnpbegda       EQ pn-begda
                      WITH pnpendda       EQ pn-endda
                      WITH pnppernr-low   EQ pernr-pernr
                      TO SAP-SPOOL
                      SPOOL PARAMETERS    print_parameters
                      WITHOUT SPOOL DYNPRO
                      AND RETURN.
Vielen Dank!

Seite 1 von 1

Vergleichbare Themen

6
Antw.
30321
Views
submit via job to SAP-SPOOL
von hein_blöd » 19.03.2007 13:21 • Verfasst in ABAP® für Anfänger
12
Antw.
7792
Views
Submit xxx to SAP-Spool Problem
von Guenther » 21.01.2016 16:18 • Verfasst in ABAP® Core
0
Antw.
1819
Views
Zusätze bei SUBMIT to SAP-SPOOL
von laureus222001 » 13.07.2009 09:58 • Verfasst in ABAP® für Anfänger
4
Antw.
3447
Views
SUBMIT TO SPOOL - unterschiedliches Verhalten P01/E01
von miru77 » 21.02.2014 09:07 • Verfasst in ABAP® für Anfänger
4
Antw.
7134
Views
Spool-ID zum Hintergrundjob ermitteln
von shapoc » 21.06.2013 10:07 • Verfasst in ABAP® Core

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.