PDF drucken

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

PDF drucken

Beitrag von dkast (Specialist / 117 / 7 / 1 ) »
Hallo,
ich möchte ein bestehndes Programm ändern. Aktuell wird ein PDF über mehrere Seiten "gebündelt".

Code: Alles auswählen.

  CALL FUNCTION 'FP_FUNCTION_MODULE_NAME'
    EXPORTING
      i_name     = 'FORMNAME'
    IMPORTING
      e_funcname = w_form.

  check sy-subrc = 0.
if w_bundle = 'X'.
fp_outputparams-bumode   = 'M'.
fp_outputparams-assemble = 'X'.
fp_outputparams-getpdf = 'M'.
endif.

CALL FUNCTION 'FP_JOB_OPEN'
    CHANGING
      ie_outputparams = fp_outputparams
    EXCEPTIONS
      cancel          = 1
      usage_error     = 2
      system_error    = 3
      internal_error  = 4
      OTHERS          = 5.

  check sy-subrc = 0.

  fp_docparams-langu = 'X'.
  fp_docparams-country = 'DE'.
*  fp_docparams-fillable = ''.

  h_Sernr = yserie.
  CLEAR: v_bgrup.

  fp_outputparams-nodialog = w_dialog.
  fp_outputparams-device = 'PRINTER'.

  fp_outputparams-dest = i_dev.
  fp_outputparams-REQIMM  = 'X'. "sofort ausgeben
*  fp_outputparams-REQDEL = 'X'. "Löschen nach Ausgabe


loop at iapl where masch in w_platz.

    CALL FUNCTION w_form
      EXPORTING
        /1bcdwb/docparams = fp_docparams
        /1bcdwb/docxml     = fp_docxml
         MASCH             = iapl-masch
        Bereich           = iapl-berei
        ktext             = crhd_v1-ktext
        sernr             = h_sernr
        mnummer           = v_bgrup
      importing
        /1bcdwb/formoutput = ls_output.

 endloop.
  CALL FUNCTION 'FP_JOB_CLOSE'
    EXCEPTIONS
      usage_error    = 1
      system_error   = 2
      internal_error = 3
      OTHERS         = 4.
DATA: lt_pdf TYPE tfpcontent.
data: ls_pdf type FPCONTENT.
  CALL FUNCTION 'FPCOMP_GET_PDF_TABLE'
  IMPORTING
    e_pdf_table = lt_pdf.
Am schluss wird das PDF mit dem Fuba EFG_DISPLAY_PDF angezeigt. In dieser Ansicht erfolgt dann auch der Druck. Ich habe aber keine Möglichkeit in den Debuger abzuspringen oder änliches.

Ich möchte aber nun, dass das PDF sofort IM HINTERGUND (hierfür wäre ich für ein paar Tipps auch dankbar) gedruckt wird ohne die extra Anzeige des PDFs.

Kann mir hier bitte jemand weiterhelfen?

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


Re: PDF drucken

Beitrag von ralf.wenzel (Top Expert / 3776 / 176 / 262 ) »
Ich sitze gerade nicht am System, aber guck dir mal die Flags in outputparams an, da kann man das steuern.


Ralf
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: PDF drucken

Beitrag von dkast (Specialist / 117 / 7 / 1 ) »
ralf.wenzel hat geschrieben:Ich sitze gerade nicht am System, aber guck dir mal die Flags in outputparams an, da kann man das steuern.


Ralf
Guten Morgen Ralf,
daran habe ich auch schon gedacht und bei anderen Beispielen im System funktioniert das auch eigentlich. Ich vermute mein Problem liegt darin, dass das PDF im Loop schritt für schritt zusammengebaut wird.

Also um die Frage etwas zu vereinfachen: Wie kann ich ein gebündeltes PDF sofort ausdrucken? (Ohne es irgendwo ab speichern zu müssen)

Re: PDF drucken

Beitrag von a-dead-trousers (Top Expert / 4271 / 213 / 1140 ) »
dkast hat geschrieben:Ich vermute mein Problem liegt darin, dass das PDF im Loop schritt für schritt zusammengebaut wird.
Der Loop kann nicht schuld sein. Wir mach das (zwar ohne Loop) genau gleich, sprich das PDF wird erst zur Laufzeit erstellt und das funktioniert auch in Hintergrundjobs. Ich vermute eher, das etwas anderes schuld ist.
Welchen Drucker bzw. Druckertyp verwendest du in der Ausgabe? Doch wohl hoffentlich nicht LOCL?
Welche XDC ist für den Druckertyp hinterlegt? Zu finden im Report RSPO0022

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: PDF drucken

Beitrag von dkast (Specialist / 117 / 7 / 1 ) »
a-dead-trousers hat geschrieben:
dkast hat geschrieben:Ich vermute mein Problem liegt darin, dass das PDF im Loop schritt für schritt zusammengebaut wird.
Der Loop kann nicht schuld sein. Wir mach das (zwar ohne Loop) genau gleich, sprich das PDF wird erst zur Laufzeit erstellt und das funktioniert auch in Hintergrundjobs. Ich vermute eher, das etwas anderes schuld ist.
Welchen Drucker bzw. Druckertyp verwendest du in der Ausgabe? Doch wohl hoffentlich nicht LOCL?
Welche XDC ist für den Druckertyp hinterlegt? Zu finden im Report RSPO0022

lg ADT
Doch local aber eben momentan zu Testzwecken ist extra ein pdf drucker hinterlegt(funktioniert auch wenn das pdf nicht gebündelt ist). Und in welchem Paket liegt der Report?

Nebenbei gibt es nicht einfahc einen Fuba der mir mein PDF and den Spool schickt und es dort dann druckt?

Re: PDF drucken

Beitrag von a-dead-trousers (Top Expert / 4271 / 213 / 1140 ) »
Verwende besser einen echten, in SAP per Name bekannten Drucker für den Hintergrundjob. Der LOCL hat bei uns auch immer nur Probleme gemacht.
Wenn du den ADS verwendest, wird (normalerweise) kein PDF für den Ausdruck am Drucker generiert, sondern eine PCL Datei. Die PDF-Anzeige in der SP01 ist nur ein zusätzliches File, das nicht gedruckt wird.
Wo die Dateien für die ADS Spooljobs abgelegt werden, kannst du über den FuBa ADS_GET_PATH abfragen.

Theoretisch wäre es möglich auch ein fertiges PDF an den Drucker zu schicken, nur muss dieser dann auch tatsächlich eine PDF-Datei nativ drucken können.
Hier ist eine Anleitung wie du das unter Windows testen kannst:
https://superuser.com/questions/420149/ ... ed-printer
Wenn das geht müsstest du es nur noch irgendwie schaffen die PDF-Datei als RAW von SAP aus direkt an den Drucker zu schicken. Das hab ich schon ein paarmal versucht aber nie so wirklich hinbekommen. :x
dkast hat geschrieben:Und in welchem Paket liegt der Report?
Paket SASP. Ruf ihn einfach über die Transaktion SA38 auf.
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: PDF drucken

Beitrag von dkast (Specialist / 117 / 7 / 1 ) »
a-dead-trousers hat geschrieben:Verwende besser einen echten, in SAP per Name bekannten Drucker für den Hintergrundjob. Der LOCL hat bei uns auch immer nur Probleme gemacht.
Wenn du den ADS verwendest, wird (normalerweise) kein PDF für den Ausdruck am Drucker generiert, sondern eine PCL Datei. Die PDF-Anzeige in der SP01 ist nur ein zusätzliches File, das nicht gedruckt wird.
Wo die Dateien für die ADS Spooljobs abgelegt werden, kannst du über den FuBa ADS_GET_PATH abfragen.

Theoretisch wäre es möglich auch ein fertiges PDF an den Drucker zu schicken, nur muss dieser dann auch tatsächlich eine PDF-Datei nativ drucken können.
Hier ist eine Anleitung wie du das unter Windows testen kannst:
https://superuser.com/questions/420149/ ... ed-printer
Wenn das geht müsstest du es nur noch irgendwie schaffen die PDF-Datei als RAW von SAP aus direkt an den Drucker zu schicken. Das hab ich schon ein paarmal versucht aber nie so wirklich hinbekommen. :x
dkast hat geschrieben:Und in welchem Paket liegt der Report?
Paket SASP. Ruf ihn einfach über die Transaktion SA38 auf.
Hallo,
ich habe mein Problem gerade gelöst. Der Fuba ADS_CREATE_PDF_SPOOLJOB ist genau das was ich gesucht habe.

Seite 1 von 1

Vergleichbare Themen

0
Antw.
1072
Views
ALV auf A3 drucken?
von oh » 08.02.2007 15:14 • Verfasst in ABAP Objects®
4
Antw.
2368
Views
Drucken aus ALV
von Svenson » 24.01.2007 12:45 • Verfasst in ABAP® Core
0
Antw.
1383
Views
ALV und Drucken
von Matthias.Selle » 28.09.2008 11:45 • Verfasst in ABAP Objects®
5
Antw.
3976
Views
PDF Anhang drucken
von Thomas17 » 21.07.2015 15:31 • Verfasst in ABAP® Core
45
Antw.
12706
Views
sap script und drucken
von spot » 07.04.2005 08:06 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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.