TCbBatchMail
TCbBatchMail
Diese Klasse dient zum Versenden von E-Mails über das SMTP-Protokoll.
Eigenschaften
Eigenschaft | Beschreibung |
---|---|
Action:N | Versand ausführen |
AttachedFiles:U | Datei/en welche der E-Mail angehängt werden sollen |
BCc:U | BCC Empfänger |
Cc:U | CC Empfänger |
From:C | Absender |
MailServer:C | Adresse des E-Mail Servers |
MessageText:C | E-Mail Nachricht |
SendTo:U | Empfänger |
Subject:C | Betreff |
UserName:C | Login-Name für den E-Mail Server |
Password:C | Login-Password für den E-Mail Server |
CbPrimaryAccountID:C | ID des Kontos, anderes von Defaultkonto, dessen Einstellungen sollten für den E-Mail Versand verwendet werden. Dieses Konto wird im Versand-Dialog vorausgewählt, kann aber im Dialog geändert werden. |
Funktionen
Funktionen | Beschreibung |
---|---|
CbLoadSettingsFromUserNo | Einstellungen für den Versand von einem Benutzer verwenden |
CbLoadSettingsFromEmailAccount | Einstellungen für den Versand von einem E-Mail Konto verwenden |
Beispiel
//##############################################################################
//##############################################################################
// Beschreibung: E-Mail über SMTP versenden
//##############################################################################
//##############################################################################
| m_oMailObj |
m_oMailObj := MailObject(),
m_oMailObj.SendTo := 'test@test.de',
m_oMailObj.MessageText := 'Hallo, ich bin ein Test',
m_oMailObj.Subject := 'Hallo',
m_oMailObj.CbLoadSettingsFromUserNo(90),
m_oMailObj.Action := smtpSend,
Beispiel von EMailFunc in Global\EMail mit CbPrimaryAccountID
function GetAccountIdForEMailTest()
| oDabSet, cUsrNo, cMailAccountData |
Result := '',
cUsrNo := Str(Val(c_Usr)),
oDabSet := SQL(SELECT KEY2 FROM &.DbSQLTableName(waDabSet)
WHERE TYP = 5310 AND KEY1 = &cUsrNo), // 5310 = bcEMailSendType_UseAccount
oDabSet.Active := true,
oDabSet.CbFirst(),
while not oDabSet.CbEOF do
cMailAccountData := Lookup(waDabSet, 'TYP_KEY1', { 5300 /*DSET_Type_MailAccount*/, Trim(oDABSet:KEY2) }, 'DATA'),
if 'test@dontenwill.de' $ cMailAccountData then
Result := Trim(oDABSet:KEY2),
break,
endif,
oDabSet.CbNext(),
end,
end,
function EMailFunc(oBatchMail)
| cAccountId |
case oBatchMail.BelegTyp of
20 :: // Auftragsbestätigung
if M_EmailMod = 'K' then // EMail-Konkten verwenden
cAccountId:= GetAccountIdForEMailTest(),
//Meld('EMailFunc: AccountSettings: ' + oBatchMail.CbPrimaryAccountID + ' -> ' + cAccountID),
if cAccountId <> '' then
oBatchMail.CbPrimaryAccountID := cAccountId,
endif,
endif,
endcase,
end,