AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi VBA SendMail nach Delphi konvertieren - brauche Hilfe
Thema durchsuchen
Ansicht
Themen-Optionen

VBA SendMail nach Delphi konvertieren - brauche Hilfe

Ein Thema von Piro · begonnen am 17. Aug 2010 · letzter Beitrag vom 17. Aug 2010
Antwort Antwort
Benutzerbild von Piro
Piro

Registriert seit: 14. Jul 2003
Ort: Flintbek
810 Beiträge
 
Delphi XE2 Professional
 
#1

VBA SendMail nach Delphi konvertieren - brauche Hilfe

  Alt 17. Aug 2010, 06:40
Moin zusammen,

ich habe einen VBA Code, den ich gerne nach Delphi konvertieren möchte. Mich würde mal interessieren, ob das geht und wenn ja, wie der Delphi Code auszusehen hat.

Code:
Function Mail_senden(sSubject As String, sMail As String, sFile() As String, bShow As Boolean) As Boolean
'*******************************************************************
'* sFile() starts at 1
'*******************************************************************
  Dim oSession As Object   'Notes Session
  Dim oDB As Object        'Notes Datenbank
  Dim oDoc As Object       'Notes Document
  Dim oRTitem As Object    'Notes RichText Item
  Dim oWS As Object        'Notes Workspace
  Dim sMailserver As String
  Dim sMailFile As String
  Dim i As Integer
  Dim fso As New FileSystemObject
 
  Mail_senden = True
  On Error Resume Next
  Set oSession = CreateObject("Notes.Notessession")
 
  If Err = 0 Then
    sMailserver = oSession.GETENVIRONMENTSTRING("Mailserver", True)
    sMailFile = oSession.GETENVIRONMENTSTRING("Mailfile", True)
    Set oDB = oSession.GETDATABASE(sMailserver, sMailFile)
     
    Set oDoc = oDB.CREATEDOCUMENT
     
    oDoc.SendTo = sMail
    oDoc.subject = sSubject
   
    oDoc.Form = "Memo"
    Set oRTitem = oDoc.CREATERICHTEXTITEM("Body")
    For i = 1 To UBound(sFile())
      If sFile(i) <> "" Then
        Call oRTitem.EMBEDOBJECT(1454, "", sFile(i))
      End If
    Next i
       
    If bShow Then
      Set oWS = CreateObject("Notes.NotesUIWorkspace")
      Call oWS.OpenDatabase(sMailserver, sMailFile)
      Call oWS.EDITDOCUMENT(True, oDoc)
    Else
      Call oDoc.SEND(False)
    End If
  Else
    MsgBox "Kein Lotus Notes auf diesem PC gefunden.", vbCritical
    Mail_senden = False
  End If
End Function
Ist das machbar?

Gruß, Sven
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: VBA SendMail nach Delphi konvertieren - brauche Hilfe

  Alt 17. Aug 2010, 06:49
Scheint ja normale COM/OLE-Automation zu sein. Sollte alo problemlos möglich sein:
Delphi-Quellcode:
uses ... ComObj;

var
    oSession: OleVariant; //Notes Session
    ...
    oSession = CreateOleObject('Notes.Notessession');
    ...
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Piro
Piro

Registriert seit: 14. Jul 2003
Ort: Flintbek
810 Beiträge
 
Delphi XE2 Professional
 
#3

AW: VBA SendMail nach Delphi konvertieren - brauche Hilfe

  Alt 17. Aug 2010, 08:15
Hier mein Lösung:
Delphi-Quellcode:
procedure SendMailLotusNotes(const Subject, FileName, SenderEMail: String);
var
 oSession : OleVariant; // Notes Session
 oDB : OleVariant; // Notes Datenbank
 oDoc : OleVariant; // Notes Document
 oRTitem : OleVariant; // Notes RichText Item
 oWS : OleVariant; // Notes Workspace
 sMailserver : String;
 sMailFile : String;
begin
 oSession := CreateOleObject('Notes.Notessession');

 sMailserver := oSession.GETENVIRONMENTSTRING('Mailserver', True);
 sMailFile := oSession.GETENVIRONMENTSTRING('Mailfile', True);
 oDB := oSession.GETDATABASE(sMailserver, sMailFile);

 oDoc := oDB.CREATEDOCUMENT;
 oDoc.SendTo := SenderEMail;
 oDoc.subject := Subject;

 oDoc.Form := 'Memo';
 oRTitem := oDoc.CREATERICHTEXTITEM('Body');
 oRTitem.EMBEDOBJECT(1454, '', FileName);

 oWS := CreateOleObject('Notes.NotesUIWorkspace');
 oWS.OpenDatabase(sMailserver, sMailFile);
 oWS.EDITDOCUMENT(True, oDoc);

 // Direkter Versand
 // oDoc.SEND(False)
end;
Code:
oRTitem.EMBEDOBJECT(1454, '', FileName);
Weiß einer was die Zahl bedeutet und welche Werte möglich sind?

Gruß, Sven
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: VBA SendMail nach Delphi konvertieren - brauche Hilfe

  Alt 17. Aug 2010, 09:07
http://www-12.lotus.com/ldd/doc/lotu...2?OpenDocument
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Piro
Piro

Registriert seit: 14. Jul 2003
Ort: Flintbek
810 Beiträge
 
Delphi XE2 Professional
 
#5

AW: VBA SendMail nach Delphi konvertieren - brauche Hilfe

  Alt 17. Aug 2010, 10:09
Interessante Seite aber wie bekomme ich jetzt die Zahl ausgewertet. Auf dem IBM seite ist ja nur von
Zitat:
EMBED_ATTACHMENT
EMBED_OBJECT
EMBED_OBJECTLINK
die Rede.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: VBA SendMail nach Delphi konvertieren - brauche Hilfe

  Alt 17. Aug 2010, 10:18
Diese Konstanten werden auch irgendwo deklariert sein

1454 ist wohl EMBED_ATTACHMENT

http://www.experts-exchange.com/Prog..._11174671.html
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz