Funktionsbaustein zum versenden lokaler Express-Mail

Mit dem folgenden Funktionsbaustein soll das senden von Expressmails aus Eigenentwicklungen
vereinfacht werden.

Der Funktionsbaustein hat folgende Schnittstellendefinition :
 
 
 
Import-Parameter Bezugsfeld/-struktur
  BETREFF SOOD1-OBJNAM
     
  Tabellen Bezugsstruktur
  EMPFAENGER ZEMPFAENGER
  TEXT SOLI

Die Bezugsstruktur für die interne Tabelle EMPFAENGER muß noch im Dictionary (SE11)
Als Struktur definiert werden.
Der Funktionsbaustein kann dann folgendermaßen aufgebaut werden.
 
 
FUNCTION Z_MAIL. 
*"----------------------------------------------------------------
*"       IMPORTING
*"             VALUE(BETREFF) LIKE  SOOD1-OBJNAM
*"       TABLES
*"              EMPFAENGER STRUCTURE  ZEMPFAENGER
*"              TEXT STRUCTURE  SOLI
*"----------------------------------------------------------------

DATA: PARAMETER      LIKE SOOD1,
      RECEIVERS      LIKE SOOS1 OCCURS 0 WITH HEADER LINE,
      HEADER         LIKE SOLI OCCURS 1 WITH HEADER LINE.

PARAMETER-OBJLA  = SY-LANGU.
PARAMETER-OBJNAM = BETREFF. "Mailname
PARAMETER-OBJDES = BETREFF. "Mailbeschreibung
PARAMETER-OBJSNS = 'P'.     "Privates Objekt
PARAMETER-OBJPRI = '1'.     "Priorität

RECEIVERS-RECESC = 'B'.     "SAP Benutzer
RECEIVERS-SNDEX  = 'X'.     "Express Mail

LOOP AT EMPFAENGER.
     RECEIVERS-RECNAM = EMPFAENGER.
     APPEND RECEIVERS.
ENDLOOP.

HEADER = BETREFF.
APPEND HEADER.

* Aufruf des Funktionsbausteins der aus den Eingaben eine Mail macht.
CALL FUNCTION 'SO_OBJECT_SEND'
     EXPORTING
          OBJECT_HD_CHANGE = PARAMETER
          OBJECT_TYPE = 'RAW'        "SAP-Editor-Dokument
     TABLES
          OBJCONT   = TEXT
          OBJHEAD   = HEADER
          RECEIVERS = RECEIVERS.

ENDFUNCTION.
 


 
 

Mit folgender Testroutine können wir den Funktionsbaustein prüfen.
 
REPORT  ZMAIL                         .

DATA: BETREFF    LIKE SOOD1-OBJNAM,
      EMPFAENGER LIKE ZEMPFAENGER OCCURS 0 WITH HEADER LINE,
      TEXT       LIKE SOLI        OCCURS 0 WITH HEADER LINE.

BETREFF = 'express Mail'.
EMPFAENGER = SY-UNAME. APPEND EMPFAENGER.
TEXT = 'Dies ist die 1. Zeile'. APPEND TEXT.
TEXT = 'Dies ist die 2. Zeile'. APPEND TEXT.
TEXT = 'Dies ist die 3. Zeile'. APPEND TEXT.
TEXT = 'Dies ist die 4. Zeile'. APPEND TEXT.
 

CALL FUNCTION 'Z_MAIL'
     EXPORTING
          BETREFF    = BETREFF
     TABLES
          EMPFAENGER = EMPFAENGER
          TEXT       = TEXT
     EXCEPTIONS
          OTHERS     = 1.