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 / 67 ) »
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.
680
Views
Anhänge bei Verwendung von Mail Templates
von BMWi801 » 03.09.2020 10:45 • Verfasst in ABAP® Core
0
Antw.
148
Views
Prüfen, wieviele Anhänge ein ausgehendes Mail hat
von monika.endl3 » 28.03.2023 08:27 • Verfasst in ABAP Objects®
1
Antw.
212
Views
Formular als Mail verschicken
von ZF_SAPler » 16.08.2023 18:26 • Verfasst in ABAP® für Anfänger
0
Antw.
1266
Views
2
Antw.
1430
Views
Werte Per Mail verschicken
von quindata » 02.08.2010 09:08 • 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.