Outlook 2013 und Xbase++

Einbindung von Office-Komponenten wie Word, Excel usw.

Moderator: Moderatoren

Outlook 2013 und xbase++

Beitragvon MichaMB » Mi, 19. Nov 2014 23:34

Hallo liebe Programmierfüchse,

ich suche einen Quellcode *.PRG, um aus einer xbase++ Anwendung 1.9 eine neue Email in Outlook 2013 zu öffnen und aus einer geöffneten Datenbank die Daten für
Email-Adresse
Anrede und Text in der Email

und 2 verschiedene Anhänge mit Pfadangaben zu übernehmen

alles was ich gefunden habe ist leider unvollständig oder führt zu Fehlern schon beim compilieren, so dass ich nicht mal zum testen und ausprobieren komme.
z.B. aus dem untenstehenden Code
EMAILOUT.obj: error ALK2102: unresolved external symbol OUTLOOKFEHLER
ALINK: fatal error ALK4102: 1 external symbols unresolved

Danke im voraus
Micha
lG
Micha
Benutzeravatar
MichaMB
UDF-Programmierer
UDF-Programmierer
 
Beiträge: 56
Registriert: Fr, 26. Jul 2013 11:03

Re: Outlook 2007 display()-Fehler

Beitragvon MichaMB » Mi, 19. Nov 2014 23:48

habe es auch mit einer modifizierten Anwendung versucht, leider kann ich mich auch hier nicht herantasten, weil es auch hier die Fehlermeldung gibt
EMAILOUT.obj: error ALK2102: unresolved external symbol NOTIFYERROR
ALINK: fatal error ALK4102: 1 external symbols unresolved

Procedure Main
....
....

set default to (verzword)
SET PATH to (verzword)
sele a
use
use verinfo

return

PROCEDURE MAPISEND


LOCAL cAdresses := "XXXXXX@T-Online.de"
LOCAL cSubject := "Test-Maklervertrag_"+ str(a->Endetag,2)+"."+str(a->Endemon,2)+"."+str(a->Endejahr,4)
LOCAL cMessage := ""
LOCAL cAttachments := ""
LOCAL nFlag := NOFLAG

cMessage := "hi,"+CRLF+;
"anbei die DATEV Daten 20"+str(a->Endejahr,4)+"/"+str(a->Endemon,2)+CRLF+CRLF+;
"Umsatz "+"Test_1"+"% :"+STR(a->Beitrag,9,2)+CRLF+;
"Mwst "+"Test_2"+"% :"+STR(a->Provsumme,9,2)+CRLF+;
"Umsatz "+"Test_3"+"% :"+Substr(a->versnr,1,29)+CRLF+;
"Mwst "+"Test_4"+"% :"+STR(a->Bewertung,9,1)+CRLF+CRLF+;
+CRLF+CRLF+;
"mfg."+CRLF+;
"Michael Basche"

* IF TESTZIP(cJahr,cMonat)
* cAttachments := ZPATH+"YIU"+cJahr+cMonat+".ZIP"
IF file("KUEPLOGO.PDF")
cATTachments := (verzword)+"\KUEPLOGO_" + str(a->Endetag,2)+"."+str(a->Endemon,2)+"."+str(a->Endejahr,4)+ ".PDF"

IF FILE(cAttachments)

ELSE
MSGBOX("bitte erstellen sie "+cAttachments+" manuell")
cAttachments := ""
ENDIF
ENDIF
//
// so und nun einen Thread starten, dann funktioniert es
//
oMAPI := Thread():new()
oMAPI:start("SENDNOW", cAdresses , cSubject ,cMessage , cAttachments , nFlag)

RETURN

PROCEDURE SENDNOW(cAdresses , cSubject ,cMessage , cAttachments , nFlag)

LOCAL nErr


//if not already logged on, Logon to new MAPI session
IF DllExecuteCall( scDLLSocMapiIsLoggedOn ) == 0
IF (nErr := DllExecuteCall(scDLLSocMapiLogon)) != SUCCESS_SUCCESS
NOTIFYERROR( nErr )
RETURN
ENDIF
ENDIF

BEGIN SEQUENCE

//-- Pop up maileditor
MsgBox("mail will be send with Maileditor popping up")
nErr := DllExecuteCall( scDLLSocMapiSendMail , cAdresses , cSubject ,cMessage , cAttachments , nFlag )
if nErr != SUCCESS_SUCCESS .and. nErr != MAPI_USER_ABORT
break nErr
endif

//-- Store mail directly to outbox
MsgBox("mail will be stored directly to outbox")
nErr := DllExecuteCall( scDLLSocMapiPostMail , cAdresses , cSubject ,;
cMessage , cAttachments , nFlag)
if nErr != SUCCESS_SUCCESS
break nErr
endif
MsgBox("mail successfully stored to outbox")

RECOVER USING nErr
NotifyError (nErr)
END SEQUENCE

DllExecuteCall(scDLLSocMapiLogoff)

RETURN
Zuletzt geändert von MichaMB am Fr, 21. Nov 2014 16:38, insgesamt 1-mal geändert.
lG
Micha
Benutzeravatar
MichaMB
UDF-Programmierer
UDF-Programmierer
 
Beiträge: 56
Registriert: Fr, 26. Jul 2013 11:03

Re: Outlook 2007 display()-Fehler

Beitragvon AUGE_OHR » Mi, 19. Nov 2014 23:59

hast du die SOCMAPI.DLL im EXE Verzeichnis liegen ?
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
 
Beiträge: 10065
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: Outlook 2007 display()-Fehler

Beitragvon Lewi » Do, 20. Nov 2014 10:09

Warum über ActiveX?
Outlook kann mit Befehlsparametern aufgrufen werden:

Code: Alles auswählen
Func SentMailWithOutlook( cFile, cMailAdress )
   Local cExe := "C:\Program Files (x86)\Microsoft Office\Office12\outlook.exe"    // sollte z.B. im Parameterteil der Anwendung hinterlegt werden/ist Versionsabhängig

   Local nRet
   Local cStr := "/c ipm.note /m " + cMailAdress + " /a " + cFile  //Aufrufparameter

   DEFAULT cMailAdress to ""
   DEFAULT cFile to ""

    If ! File( cExe )
      Msgbox("Outllook wurde nicht gefunden!")
      Return ( NIL )
   endif

   nRet := ShellExecuteA(GetApp():getHWnd(), SHELL_OPEN, cExe, cStr , "", SW_SHOW)  // API-Funktion
Return ( nRet )
Benutzeravatar
Lewi
1000 working lines a day
1000 working lines a day
 
Beiträge: 776
Registriert: Di, 07. Feb 2006 14:10
Wohnort: Hamburg

Re: Outlook 2007 display()-Fehler

Beitragvon MichaMB » Do, 20. Nov 2014 18:35

Hallo Jimmy, danke für die Anfrage:

die SOCMAPI.DLL scheint auf meinen PC nicht vorhanden zu sein, habe ich wahrscheinlich mal ein Update verpasst
könntest du mir diese bitte senden?

lg
Micha
lG
Micha
Benutzeravatar
MichaMB
UDF-Programmierer
UDF-Programmierer
 
Beiträge: 56
Registriert: Fr, 26. Jul 2013 11:03

Re: Outlook 2007 display()-Fehler

Beitragvon AUGE_OHR » Do, 20. Nov 2014 18:44

MichaMB hat geschrieben:die SOCMAPI.DLL scheint auf meinen PC nicht vorhanden zu sein, habe ich wahrscheinlich mal ein Update verpasst
Nope ... das war kein Update sondern ist aus dem ASCN Download Bereich von Alaska
http://www.alaska-software.com/download/showSection.cxp?section=12
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
 
Beiträge: 10065
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: Outlook 2007 display()-Fehler

Beitragvon MichaMB » Sa, 22. Nov 2014 11:29

Hallo Jimmy,

super, habe den Download ausgeführt und in der Demoversion die Variablen mit meinen Vorgaben aus der Datenbank ersetzt, funktioniert einwandfrei!
Vielen Dank
lG
Micha
Benutzeravatar
MichaMB
UDF-Programmierer
UDF-Programmierer
 
Beiträge: 56
Registriert: Fr, 26. Jul 2013 11:03

Outlook 2013 und Xbase++

Beitragvon brandelh » Di, 11. Aug 2015 12:04

ich habe die Beiträge aus diesem Thread hier her verschoben, da sie mit dem eigentlichen Thema nicht wirklich etwas zu tun hatten.
viewtopic.php?f=50&t=6041#p68320

Merke, eigene Anliegen bitte in neuen Threads ansprechen.
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
 
Beiträge: 13201
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim


Zurück zu MS Office

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste