[52796] in SAPr3-news
Re: interne Tabelle als excel per email versenden
daemon@ATHENA.MIT.EDU (Gerd Rother)
Thu Dec 23 03:46:23 2004
To: sapr3-news@mit.edu
Date: Thu, 23 Dec 2004 22:57:54 +0100
From: Gerd Rother <grother@nurfuerspam.de>
Message-ID: <32veuqF3qfkahU1@individual.net>
jspranz wrote:
[..]
> ich hätte gerne einen Funktionsbaustein, der mir eine excel-Tabelle als
> e-mail verschickt.
>
[..]
>
> Ich würde gerne einfach die interne Tabelle übergeben.
[..]
Hallo,
Die Struktur der internen Tabelle kannst Du als Parameter
(DDIC-Strukturname) oder als Tabelle (z. B. RSTI_T_DFI) übergeben - am
besten FB DDIF_FIELDINFO_GET benutzen.
zunächst muß man den Download auf den PC machen - über Excel. Das geht am
besten mit einem Excel-OLE-Object (CREATE OBJECT 'Excel.Application').
Mittels der Methoden des OLE-Objektes wird die interne Tabelle in ein
Excel-Workbook gespeichert. Am schnellsten geschieht dies spaltenweise via
Clipboard (Funktionsbaustein CLPB_EXPORT).
Als Methoden (bzw. Eigenschaften) des Excel-Objekte benutzt Du die
Excel-VB-Methoden und Objekte. Kleiner Tip: erst einmal in Excel mit
angeschalteten Macro-Recorder das machen was Du von dem
Download-Funktionsbaustein erwartest (inkl. Speichern der Datei). Dann das
erzeugte Makro in die Methoden-Aufrufe im ABAP übertragen.
Damit ist Teil 1 fertig - die Excel-Datei liegt irgendwo auf dem PC.
Zum Verschicken per e-Mail benutzt Du die Funktionsbausteine
SO_OBJECT_UPLOAD (um die Excel-Datei binär wieder nach SAP zu bekommen),
SO_ATTACHMENT_INSERT und SO_OBJECT_SEND. Falls Du hier Probleme hast,
einfach mal beim Senden einer solchen e-Mail den Performance-Trace (ohne
Aggregation) mitlaufen lassen, oder Break-Points in den Funktionsbausteinen
setzen und dann die Parameter anschauen.
Ach, das ganze geht latürnich nur im Online - im Batch oder RFC fällt das
logischerweise auf die Nase.
Viele Grüße
Gerd Rother
--
gerd.....rother.....at....gmx.....net