Convert SAP Memory to PDF

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

Convert SAP Memory to PDF

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

ich schreibe gerade ein Programm, das Report RPTEDT00 (Zeitnachweisformular) ausführen, den Zeitnachweis im SAP Memory speichern und dann als PDF je E-Mail-Adresse (P0105 Subtyp 0010) versenden soll.
Hat mir jemand eine Idee, wie die Konvertierung von SAP Memory nach PDF umsetzbar ist?

Über eure Hilfe wäre ich sehr dankbar!

Viele Grüße

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


Re: Convert SAP Memory to PDF

Beitrag von Thomas R. (Expert / 755 / 78 / 34 ) »
Hallo Knirpsi,
es ist zwar nicht die direkte Antwort auf Deine Frage, aber mit
CONVERT_ABAPSPOOLJOB_2_PDF
kannst Du tun, was der Funktionsbausteinname sagt.
Ein einfacher Vorschlag wäre also:
Feststellen welche Personalnummern betroffen sind.
Für jede Personalnummer:
Zeitnachweisformular erzeugen und in Spool stellen
Umwandeln in ein PDF
Verschicken per email

Alle diese Teilprobleme sind lösbar -> somit ist das Gesamtproblem gelöst...

MfG
Thomas R.

Re: Convert SAP Memory to PDF

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

danke für die schnelle Antwort.
Der Funktionsbaustein ist mir bereits bekannt. Jedoch besteht die Anforderung, diese Lösung zu umgehen und anstatt dessen über das SAP Memory zu gehen.

Ist das umsetzbar?

Viele Grüße

Re: Convert SAP Memory to PDF

Beitrag von ratsnus (Specialist / 357 / 2 / 56 ) »
ja klar geht das :-) hier mal ein schnipsel aus meinem FUBA :

Code: Alles auswählen.

data: ot_listobject_sheet like abaplist occurs 0 with header line.

  refresh ot_listobject_sheet.

  CALL FUNCTION 'LIST_FREE_MEMORY'


  submit RPTEDT00
         with pnptimra     = 'X'                "laufender Monat
         with PNPXABKR     = 'C1'
         with pnppabrp     = pabrp
         with pnppabrj     = pabrj
         with PNPPERNR-LOW = pernr              "Personalnummer
         with FORM-NR      = 'ZT02'             "Formular
         with RUECKRE      = 'X'
         with MIT-FEHL     = 'X'
         with ZL-AUSG      = 'X'
         with SW_HIDE      = ' '
         with STATIST      = ' '
         with SW_COLOR     = 'X'
         exporting list to memory
         and return.


  CALL FUNCTION 'LIST_FROM_MEMORY'
    TABLES
      LISTOBJECT       = ot_listobject_sheet
    EXCEPTIONS
      NOT_FOUND        = 1
      OTHERS           = 2.

 call function 'WWW_HTML_FROM_LISTOBJECT'
      tables
           html          =  html
           listobject    =  ot_listobject_sheet.
*           listicons     =  icontab.
ich generiere mir das dann zu HTML, das könntest du dann ja auch per mail verschicken, oder noch in pdf umwandeln etc. ect.

gruss
ratsnus
<:: XING-Gruppe Tricktresor::>

Re: Convert SAP Memory to PDF

Beitrag von Knirpsi (ForumUser / 17 / 0 / 0 ) »
Vielen Dank.

Das hat mir sehr weitergeholfen :up:

Re: Convert SAP Memory to PDF

Beitrag von black_adept (Top Expert / 4084 / 125 / 939 ) »
Knirpsi hat geschrieben:...
Der Funktionsbaustein ist mir bereits bekannt. Jedoch besteht die Anforderung, diese Lösung zu umgehen und anstatt dessen über das SAP Memory zu gehen.

Ist das umsetzbar?

Der FuBa CLOSE_FORM übergibt dir eine Tabelle OTF_DATA der das aufbereitet Formular enthält.
Der FuBa CONVERT_OTF_2_PDF kann diese Daten direkt übernehmen und in eine PDF-Datei umwandeln.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Convert SAP Memory to PDF

Beitrag von Knirpsi (ForumUser / 17 / 0 / 0 ) »
Zunächst Danke auch an dich black_adept.

Entschuldigt bitte, aber ich habe nochmals Fragen, die von einem ABAP Programmierer mit mehr Erfahrung als ich bestimmt einfach beantwortet werden können. Bisher hat alles recht gut geklappt. Beim letzten FuBa habe ich selbst sämtliches versucht, um es selber zu verstehen, leider erfolglos.

Bereits am Anfang prüfe ich, ob Infotyp 0105 Subtyp 0010 (E-Mail) initial ist, denn wenn er dies nicht ist, soll die entsprechende Personalnummer natürlich gleich gar nicht verarbeitet und ins Protokoll weggeschrieben werden:

Code: Alles auswählen.

RP-PROVIDE-FROM-LAST P0105 '0010' PN-BEGDA PN-ENDDA.

IF PNP-SW-FOUND = '1'.
...

Bei der Prüfung erhalte ich die Warnung: In unicode-fähigen Programmen ist in Namen das Zeichen "-", wie hier im Namen "PNP-SW-FOUND", nicht mehr erlaubt.

Das verstehe ich schonmal nicht. In der Tabelle TRMAC ist das nämlich genauso. Hattet ihr dieses Problem schon einmal?

Dann kommen wir zum FuBa 'SO_DOCUMENT_SEND_API1', mit dem ich meine E-Mail mit PDF-Anhang versenden möchte:

Code: Alles auswählen.

    CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
      EXPORTING
        document_data                    = 
*       PUT_IN_OUTBOX                    = ' '
*       SENDER_ADDRESS                   = SY-UNAME
*       SENDER_ADDRESS_TYPE              = 'B'
*        COMMIT_WORK                      = ' '
*       IP_ENCRYPT                       =
*       IP_SIGN                          =
*     IMPORTING
*       SENT_TO_ALL                      =
*       NEW_OBJECT_ID                    =
*       SENDER_ID                        =
      tables
        packing_list                     =
*       OBJECT_HEADER                    =
*       CONTENTS_BIN                     =
*       CONTENTS_TXT                     =
*       CONTENTS_HEX                     =
*       OBJECT_PARA                      =
*       OBJECT_PARB                      =
        receivers                        =
*     EXCEPTIONS
*       TOO_MANY_RECEIVERS               = 1
*       DOCUMENT_NOT_SENT                = 2
*       DOCUMENT_TYPE_NOT_EXIST          = 3
*       OPERATION_NO_AUTHORIZATION       = 4
*       PARAMETER_ERROR                  = 5
*       X_ERROR                          = 6
*       ENQUEUE_ERROR                    = 7
*       OTHERS                           = 8
              .
    IF sy-subrc <> 0.
      "### Erfolgreiche Personalnummern in Protokoll wegschreiben

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
Ich verstehe hier nicht was ich ex- und was importieren soll. Bei "receiver" muss natürlich meine E-Mail-Adresse aus Subtyp 0010 hinein. Aber wie kann ich diese zuweisen?

Und nun meine letzte Frage: Gibt es denn ein FuBa oder eine einfache Möglichkeit um ein Protokoll zu erzeugen? Ich hab mir überlegt alle Personalnummern je nach dem, ob eine PDF erzeugt und als Mail versendet werden konnte mit passender Nachricht in eine Tabelle wegzuschreiben. Haltet ihr das für eine gute Lösung?

Ihr seht, ich bin auf Hilfe und Feedback angewiesen um dazuzulernen. Vielen Dank!

Re: Convert SAP Memory to PDF

Beitrag von ratsnus (Specialist / 357 / 2 / 56 ) »
Hallo Knirpsi,

such mal hier im Forum nach SO_DOCUMENT_SEND_API1 dann findest du Threads wie diesen hier:

http://www.abapforum.com/forum/viewtopi ... PI1#p58672

der dir weiterhelfen sollte.
<:: XING-Gruppe Tricktresor::>

Re: Convert SAP Memory to PDF

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

um das Thema abzuschließen:

ich verwende mittlerweile die Methoden der Klasse lr_send_request. Das funktioniert bisher auch alles wie gewollt.

Viele Grüße

Seite 1 von 1

Vergleichbare Themen

23
Antw.
8377
Views
Convert
von Marc K. » 22.08.2012 16:17 • Verfasst in ABAP® für Anfänger
10
Antw.
5660
Views
Convert String to PDF
von Johannes9090 » 13.10.2014 17:15 • Verfasst in ABAP® für Anfänger
5
Antw.
2289
Views
Convert Datum in DB
von nkuhn » 15.03.2007 10:13 • Verfasst in ABAP® für Anfänger
11
Antw.
7193
Views
Convert String to Byte etc...
von stony007_de » 19.11.2013 18:23 • Verfasst in ABAP Objects®
5
Antw.
7464
Views
Convert von Smartforms nach PDF
von Bitfummler » 14.10.2009 11:22 • Verfasst in ABAP® Core

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

Unbeantwortete Forenbeiträge

Daten an Tabelle binden
vor einer Stunde von Bright4.5 1 / 54
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1709