Mail versenden aus SAP (ohne Anhang)

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

Mail versenden aus SAP (ohne Anhang)

Beitrag von Schäfer_anfänger (ForumUser / 38 / 1 / 0 ) »
Guten Morgen, Ich habe bereits vergeblich versucht meinen Report eine Mail versenden zu lassen (in einem IF-Case) nun habe ich wie im Code unten zu sehen versucht ein bereits vorhandenes Programm zu verstehen und für mein Programm zu verändern, was aber bisher fehlgeschlagen ist. (Ich geb später noch genauere Infos sorry hab gerade keine Zeit :D und ja ich weiß ihr helft mir :) )

Code: Alles auswählen.

REPORT ZBC_EXPIRY_CHECK.

TYPES:  BEGIN OF solisti1_long,
          line1 TYPE String,
          line2 TYPE String,
          line3 TYPE String,
        END OF solisti1_long.

DATA: go_tabelle TYPE REF TO cl_salv_table,
      go_funktionen TYPE REF TO cl_salv_functions,
      heute           TYPE sy-datum,
      diff            TYPE i,
      lt_expiry_check TYPE TABLE OF ZBC_EXPIRY_CHECK.


DATA:   lv_betreff         TYPE sodocchgi1,
        lt_receivers       TYPE STANDARD TABLE OF somlreci1,
        ls_receivers       TYPE somlreci1,
        lt_inhalt          TYPE STANDARD TABLE OF solisti1,
        ls_inhalt          TYPE solisti1,
        lt_kopf            TYPE STANDARD TABLE OF solisti1,
        ls_kopf            TYPE solisti1,
        ls_structure_mail  TYPE sopcklsti1,
        lt_structure_mail  TYPE STANDARD TABLE OF sopcklsti1,
        ls_objtxt             TYPE solisti1,     " Message body
        w_tab_lines           TYPE i,            " Table lines
        ls_objpack            TYPE sopcklsti1,   " Packing list
        t_objpack             TYPE STANDARD TABLE OF sopcklsti1. " Packing list
*        con_tab               TYPE c VALUE cl_abap_char_utilities=>horizontal_tab.

FIELD-SYMBOLS: <G_EXPIRY_CHECK> LIKE LINE OF lt_expiry_check .

heute = sy-datum.

SELECT *
FROM ZBC_EXPIRY_CHECK
INTO TABLE lt_expiry_check.

LOOP AT lt_expiry_check ASSIGNING <G_EXPIRY_CHECK>.

  diff = heute - <G_EXPIRY_CHECK>-expiry_date.
  IF diff <= <G_EXPIRY_CHECK>-warn_thres_d.
*    WRITE /: Diff.
    LOOP AT lt_receivers INTO ls_receivers.
      ls_receivers = <G_EXPIRY_CHECK>-email_to.
      MODIFY lt_receivers FROM ls_receivers.
    ENDLOOP.
*    ls_objtxt-line = ' '.
*append ls_objtxt to lt_inhalt.

ls_objtxt-line = |The following objects are about to expire:|.
*ls_objtxt-line2 = |WARNING - | && sy-sysid && |: | && <G_EXPIRY_CHECK>-type && || && <G_EXPIRY_CHECK>-name && | expires in | && diff && | days | && <G_EXPIRY_CHECK>-expiry_date && | | .
*ls_objtxt-line3 = |This message was generated in system | && sy-sysid && | report name: ZBC_EXPIRY_CHECK (jobname may differ...) |.


*WRITE /:  ls_objtxt-line1,
*          ls_objtxt-line2,
*          ls_objtxt-line3.


append ls_objtxt to lt_inhalt.
*
  "lv_betreff-obj_descr = lv_message.
  lv_betreff-obj_langu = 'E'.
  lv_betreff-sensitivty = 'F'.
*
*  ls_receivers-receiver = 'tesstdf@fscher.de'.
*  ls_receivers-rec_type = 'U'.
*  "ls_receivers-copy = 'X'.
*  APPEND ls_receivers TO lt_receivers.
*
*
  CLEAR ls_objpack.
  ls_objpack-head_start = 1.
  ls_objpack-head_num = 0.
  ls_objpack-body_start = 1.
  ls_objpack-body_num = 99.
  ls_objpack-doc_type = 'RAW'.
  APPEND ls_objpack TO t_objpack.


*CALL FUNCTION 'EFG_GEN_SEND_EMAIL'
*EXPORTING
*  I_Title = 'Test'
*  I_Sender = <G_EXPIRY_CHECK>-email_to
*  I_Recipient =



  CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
    EXPORTING
      document_data              = lv_betreff
      sender_address_type        = 'U'
      commit_work                = ' '
    TABLES
      packing_list               = t_objpack
      object_header              = lt_kopf
      contents_txt               = lt_inhalt
      receivers                  = lt_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.
     EXIT.
  ENDIF.

ENDIF.
ENDLOOP.
Zuletzt geändert von Schäfer_anfänger am 25.01.2017 11:11, insgesamt 1-mal geändert.
ABAP Anfänger vom allerfeinsten!

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


Re: Mail versenden aus SAP (ohne Anhang)

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
Lass den "IF-Case" doch einfach mal weg.... oder den Anhang....


Dickes Zwinker....

Re: Mail versenden aus SAP (ohne Anhang)

Beitrag von JHM (Top Expert / 1197 / 1 / 197 ) »
Schäfer_anfänger hat geschrieben:was aber bisher fehlgeschlagen ist.
Ich hab heute morgen mein Auto in die Kfz-Werkstatt gebracht, dem Meister den Schlüssel auf den Tisch geknallt und mit geteilt das das Auto kaputt ist und er mal danach schauen soll. Er wird schon selber heraus finden, dass die Bremse hintern rechts ab und zu festhängt.

Sorry für die Analogie, aber von einem Entwickler/ITler erwartet man eine aussagekräftige Fehlerbeschreibung. Wieso sollen wir hier deinen Code analysieren um per Glaskugel zu bestimmen, wo der Fehler liegen könnte. Zumal der eMail-Versand nicht mit dem Programm endet, danach kommen noch einige Schritte im SAP die auch den Fehler bergen können.

Hast du den Debugger schon mal angeschmissen?
Wird das Coding "sauber" durch laufen (IF-Zweig ausgeführt)?
Schmeißt der FuBa eine Fehlermeldung/Exception (sy-subrc <> 0 => EXIT ist kein Fehlerhandling)?
Ist der eMail-Versand auf dem System generell eingerichtet?
Wird ein Sendeauftrag erstellt (TA: SOST)?
Ist der Sendeauftrag in der Warteschlange eingefügt (wahrscheinlich nicht, da explizites Commit fehlt)?

Als Anmerkung:
Der FuBa: SO_DOCUMENT_SEND_API1 ist schon lange überholt. Ich würde den nicht mehr verwenden. Die Nachfolgetechnik mittels BCS ist deutlich komfortabler zu verwenden. Schau dir mal die Klassen cl_bcs* und vor allem das Demoprogramm BCS_EXAMPLE1 an (die anderen Demoprogramme sind auch nicht verkehrt BCS_EXCAMPLE*).
Gruß Hendrik

Seite 1 von 1

Vergleichbare Themen

2
Antw.
843
Views
E-Mail-Anhang aus Verzeichnis per Mail versenden
von Patrick1982 » 22.11.2023 15:19 • Verfasst in ABAP® für Anfänger
3
Antw.
4999
Views
Mail mit Anhang versenden
von jokabi » 17.07.2014 15:29 • Verfasst in ABAP® für Anfänger
1
Antw.
5606
Views
1
Antw.
6281
Views
Versand einer E-Mail aus SAP mit PDF Anhang und E-Mail Text
von Haubentaucher » 31.08.2006 07:28 • Verfasst in ABAP® Core
5
Antw.
4667
Views
Email mit Anhang versenden
von funky_escobar » 27.08.2007 09:44 • Verfasst in ABAP® Core

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

Aktuelle Forenbeiträge

Dialog-Container mit Toolbar/Status
vor 5 Stunden von DeathAndPain gelöst 22 / 2799
Daten an Tabelle binden
vor 10 Stunden von Lukas Sanders 2 / 875
Zeilenumbrüche ersetzen
vor 2 Tagen von ralf.wenzel 6 / 430

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

Dialog-Container mit Toolbar/Status
vor 5 Stunden von DeathAndPain gelöst 22 / 2799
Daten an Tabelle binden
vor 10 Stunden von Lukas Sanders 2 / 875
Zeilenumbrüche ersetzen
vor 2 Tagen von ralf.wenzel 6 / 430

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2467
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9050