Mehrer Änhänge per Mail verschicken

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

Mehrer Änhänge per Mail verschicken

Beitrag von godevilgo (ForumUser / 5 / 0 / 0 ) »
Hallo Experten,

ich versuche mehrere Reports als Anhang per Mail verschicken mit folgendem Code:

Code: Alles auswählen.

* Auselesen der Anzahl der Reports
  DESCRIBE TABLE reports LINES anzahl.

  if anzahl <> 0.

* Packing List(Anhang)

    loop at reports into wa_reports.

    kunnr = wa_reports-kunnr.
    report = wa_reports-report.

* Erzeugen des PDFs um es anschließend zu verschicken
      CALL FUNCTION 'ZNAK_S2_CREATEPDF'
        EXPORTING
          KUNNR            = wa_reports-kunnr
          report           = wa_reports-report
        TABLES
          UNCOMPRESSED_PDF = pdf.

* Umwandeln des PDFs in das richtige Format
      CALL FUNCTION 'ZNAK_S2_CONVERTPDF'
        TABLES
          PDF        = pdf
          OBJECT_BIN = object_bin.

      describe table object_bin lines tab_lines.
      read table object_bin index tab_lines.


      object_pack-transf_bin = 'X'.
      object_pack-head_start = 1.
      object_pack-head_num   = 0.
      object_pack-body_start = z_start.
      object_pack-body_num   = tab_lines.
      object_pack-doc_type   = 'PDF'.
      object_pack-obj_name   = 'SPOOL'.
      object_pack-obj_descr  = 'Report'.
*      object_pack-doc_size = tab_lines * 255.
    data: laenge type int4.
    laenge = ( tab_lines - 1 ) * 255 + strlen( object_bin ).

      object_pack-doc_size = laenge.
      append object_pack.

      z_start = z_start + tab_lines.
    endloop.
* Erstellen der Empfänger-Liste

* Externer Benutzer
    receiver_list-receiver = email.
    receiver_list-rec_type = 'U'.
    append receiver_list.

* Interner Benutzer
    receiver_list-receiver = USERNAME.
    receiver_list-rec_type = 'B'.
    append receiver_list.

fehler = 1.

* Sender der Email
    CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
      EXPORTING
        DOCUMENT_DATA              = document_data
        PUT_IN_OUTBOX              = 'X'
*      COMMIT_WORK                = 'X'
      TABLES
        PACKING_LIST               = object_pack
        CONTENTS_BIN               = object_bin
        CONTENTS_TXT               = object_txt
        RECEIVERS                  = receiver_list
      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.

     fehler = sy-subrc.
  endif.
Das klappt bis zu zwei Reports auch prima, aber dann bekomme ich in sy-subrc eine 6, also einen X_Error.

Jemand eine Ahnung, was ich falsch mache?

Vielen Dank im Voraus, Gunnar

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


Beitrag von zzcpak (Expert / 673 / 5 / 68 ) »
kanns nicht beschwören, aber bei object_pack-doc_size solltest du bei tab_lines * 255 bleiben und nicht bei der letzten Zeile die genaue Länge.

Weiterhin gibst du keine Header an für deine Anhänge (tables object_header). Habe immer MIT gearbeitet bei mehreren Anhängen. Dann müsste aber auch pro Anhang object_pack-head_start angepaßt werden und object_pack-head_num wäre 1.

könntest die beiden Sachen mal probieren, vielleicht hilfts.

Mails per Business Communication Services versenden

Beitrag von quercus (ForumUser / 13 / 0 / 0 ) »
Hallo,
recht einfach lassen sich mehrere Anhänge mit Hilfe der Business Communication Services versenden.
Siehe Beispielprogramme BCS_EXAMPLE_1 - BCS_EXAMPLE_5.
Gruß
quercus
Aimer savoir est humain, savoir aimer est divin

Seite 1 von 1

Vergleichbare Themen

0
Antw.
1303
Views
Anhänge bei Verwendung von Mail Templates
von BMWi801 » 03.09.2020 10:45 • Verfasst in ABAP® Core
0
Antw.
1320
Views
Prüfen, wieviele Anhänge ein ausgehendes Mail hat
von monika.endl3 » 28.03.2023 08:27 • Verfasst in ABAP Objects®
0
Antw.
1521
Views
2
Antw.
1718
Views
Werte Per Mail verschicken
von quindata » 02.08.2010 09:08 • Verfasst in ABAP® für Anfänger
1
Antw.
1640
Views
Formular als Mail verschicken
von ZF_SAPler » 16.08.2023 18:26 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Feldwerte vergleichen
vor 8 Stunden von wreichelt 2 / 29
Workflow-Datenfluss mit Multi-Line-Container
vor 10 Stunden von ewx gelöst 2 / 87
Mahnung erstellen
vor 14 Stunden von Sebastian82 4 / 116
Absprung VA02 Position
vor 2 Tagen von gs3rr4 gelöst 3 / 114

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

Feldwerte vergleichen
vor 8 Stunden von wreichelt 2 / 29
Workflow-Datenfluss mit Multi-Line-Container
vor 10 Stunden von ewx gelöst 2 / 87
Mahnung erstellen
vor 14 Stunden von Sebastian82 4 / 116
Absprung VA02 Position
vor 2 Tagen von gs3rr4 gelöst 3 / 114

Unbeantwortete Forenbeiträge

OPD Druck im SPOOL
vor 2 Tagen von Manfred K. 1 / 76
Export von Spools in XLSX
vor einer Woche von abapamateur 1 / 812
Feldberechnung ME32K
vor einer Woche von ZF_SAPler 1 / 1414