Mehrere Spoolaufträge In ein PDF zusammenfassen

Posten Sie hier Tutorials & Cookbooks.
1 Beitrag • Seite 1 von 1
1 Beitrag Seite 1 von 1

Mehrere Spoolaufträge In ein PDF zusammenfassen

Beitrag von ratsnus (Specialist / 357 / 2 / 56 ) »
Servus zusammen,

also erstmal gesagt, super Forum einige Threads haben mir weitergeholfen und auch einfach nur den Weg in die richtige Richtung gezeigt. Also Super Sache.

Sinn und Zweck des Programms: einfach verschiedenste Spoolaufträge in ein einzelnes PDF Dokument umzuwandeln und anschliessend downzuloaden.

Code: Alles auswählen.

*&---------------------------------------------------------------------*
*& Report  ZVS_MERGE_PDFS
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZVS_MERGE_PDFS.

tables: tsp01.

select-options spool for tsp01-rqident.

parameters: p_file type localfile default 'C:\all_prints.pdf'.

data:
eof type soli,
tab1 type table of soli,
tab type table of soli with header line,
otf type table of itcoo with header line,
i_tsp01 like table of tsp01 with header line,
doc like table of docs,
pdf like table of tline,
file type string,
size type i,
lines type i,
rows type i.

file = p_file.

select * from tsp01 into i_tsp01
  where rqident in spool.
  append i_tsp01.
endselect.

rows = lines( i_tsp01 ).

if rows > '50'.
exit.
endif.


loop at i_tsp01.
clear: tab1[], eof.

  call function 'RSPO_RETURN_SPOOLJOB'
    EXPORTING
      rqident              = i_tsp01-rqident
    TABLES
      buffer               = tab1
    EXCEPTIONS
      no_such_job          = 1
      job_contains_no_data = 2
      selection_empty      = 3
      no_permission        = 4
      can_not_access       = 5
      read_error           = 6
      type_no_match        = 7
      others               = 8.
  if sy-subrc = 0.
  endif.

describe table tab1 lines lines.
read table tab1 index lines into eof.
delete tab1 index lines.

  append lines of tab1 to tab.

endloop.

append eof to tab.

loop at tab.
  clear otf.
  otf = tab.
  append otf.
endloop.

call function 'CONVERT_OTF_2_PDF'
  EXPORTING
    use_otf_mc_cmd         = 'X'
  IMPORTING
    bin_filesize           = size
  TABLES
    otf                    = otf
    doctab_archive         = doc
    lines                  = pdf
  EXCEPTIONS
    err_conv_not_possible  = 1
    err_otf_mc_noendmarker = 2
    others                 = 3.
if sy-subrc ne 0.
  write sy-subrc.
endif.

call method cl_gui_frontend_services=>gui_download
  EXPORTING
    filename                = file
    filetype                = 'BIN'
  CHANGING
    data_tab                = pdf
  EXCEPTIONS
    file_write_error        = 1
    no_batch                = 2
    gui_refuse_filetransfer = 3
    invalid_type            = 4
    no_authority            = 5
    unknown_error           = 6
    header_not_allowed      = 7
    separator_not_allowed   = 8
    filesize_not_allowed    = 9
    header_too_long         = 10
    dp_error_create         = 11
    dp_error_send           = 12
    dp_error_write          = 13
    unknown_dp_error        = 14
    access_denied           = 15
    dp_out_of_memory        = 16
    disk_full               = 17
    dp_timeout              = 18
    file_not_found          = 19
    dataprovider_exception  = 20
    control_flush_error     = 21
    not_supported_by_gui    = 22
    error_no_gui            = 23
    others                  = 24.
if sy-subrc ne 0.
  write sy-subrc.
endif.
bei if rows > '50'. ist eine kleine Beschränkung eingebaut was die Maximal zu verarbeitende Anzahl der Spoolaufträge angeht.
Könnte man auch als Parameter lösen, aber meine Pappenheimer würden sich nicht dran halten. :D

Vielleicht hat ja jemand Verwendung dafür, also viel Spass.

Gruss
Tony

Folgende Benutzer bedankten sich beim Autor ratsnus für den Beitrag (Insgesamt 3):
Janmiru77wandix

<:: XING-Gruppe Tricktresor::>

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


Seite 1 von 1

Vergleichbare Themen

4
Antw.
5656
Views
Spoolaufträge zusammenfassen
von hezi » 23.01.2006 17:15 • Verfasst in ABAP® Core
2
Antw.
7171
Views
Spoolaufträge per Mail versenden
von Jacky » 21.06.2005 13:19 • Verfasst in ABAP® Core
1
Antw.
2461
Views
Spoolaufträge per Batchjob ausgeben
von heiko-77 » 11.02.2008 15:02 • Verfasst in ABAP® Core
2
Antw.
1464
Views
OTF-Spoolaufträge zusammenziehen zu 1 OTF-Spool
von M » 31.01.2006 16:46 • Verfasst in ABAP® Core
2
Antw.
1730
Views
2 Spoolaufträge mischen und Barcode dazu
von hegsi » 20.10.2007 18:29 • Verfasst in ABAP® Core

Über diesen Beitrag

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

Aktuelle Forenbeiträge

Programm anlegen mit Vorlage
vor 44 Minuten von DeathAndPain 2 / 10
IT0024 Qualifikationen CP-ID
vor einer Stunde von DeathAndPain 2 / 274
BUSOBJEKT zu CMIS PHIO ermitteln
vor 2 Stunden von snooga87 1 / 16
Bedarfszusammenfassung "Einzelbedarfe"
vor 4 Stunden von harri 2 / 1206

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.

Aktuelle Forenbeiträge

Programm anlegen mit Vorlage
vor 44 Minuten von DeathAndPain 2 / 10
IT0024 Qualifikationen CP-ID
vor einer Stunde von DeathAndPain 2 / 274
BUSOBJEKT zu CMIS PHIO ermitteln
vor 2 Stunden von snooga87 1 / 16
Bedarfszusammenfassung "Einzelbedarfe"
vor 4 Stunden von harri 2 / 1206

Unbeantwortete Forenbeiträge

BUSOBJEKT zu CMIS PHIO ermitteln
vor 2 Stunden von snooga87 1 / 16
aRFC im OO-Kontext
vor 5 Wochen von ralf.wenzel 1 / 3199
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9790