class= " lineNumbers " de
1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
11 :
12 :
13 :
14 :
15 :
16 :
17 :
18 :
19 :
20 :
21 :
22 :
23 :
24 :
25 :
26 :
27 :
28 :
29 :
30 :
31 :
32 :
33 :
34 :
35 :
36 :
37 :
38 :
39 :
40 :
41 :
42 :
43 :
44 :
45 :
46 :
47 :
48 :
49 :
50 :
51 :
52 :
53 :
54 :
55 :
56 :
57 :
58 :
59 :
60 :
61 :
62 :
63 :
64 :
65 :
66 :
67 :
68 :
69 :
70 :
71 :
72 :
73 :
74 :
75 :
76 :
77 :
78 :
79 :
80 :
81 :
82 :
83 :
84 :
85 :
86 :
87 :
88 :
89 :
90 :
91 :
92 :
93 :
94 :
95 :
96 :
97 :
98 :
99 :
100 :
101 :
102 :
103 :
104 :
105 :
106 :
107 :
108 :
109 :
110 :
111 :
112 :
113 :
114 :
115 :
116 :
117 :
118 :
119 :
120 :
121 :
122 :
123 :
124 :
125 :
126 :
127 :
128 :
129 :
130 :
131 :
132 :
133 :
134 :
135 :
136 :
137 :
138 :
139 :
140 :
141 :
142 :
143 :
144 :
145 :
146 :
147 :
148 :
149 :
150 :
151 :
152 :
153 :
154 :
155 :
156 :
157 :
158 :
159 :
160 :
161 :
162 :
163 :
164 :
165 :
166 :
167 :
168 :
169 :
170 :
171 :
172 :
173 :
174 :
175 :
176 :
177 :
178 :
179 :
180 :
181 :
182 :
183 :
184 :
185 :
186 :
187 :
188 :
189 :
190 :
191 :
192 :
193 :
194 :
195 :
196 :
197 :
198 :
199 :
200 :
201 :
202 :
203 :
204 :
205 :
206 :
207 :
208 :
209 :
210 :
211 :
212 :
213 :
214 :
215 :
216 :
217 :
218 :
219 :
220 :
221 :
222 :
223 :
224 :
225 :
226 :
227 :
228 :
229 :
|
class= de
>procedure " de l'id= " codeSnippet652600 de de résultat '') et (résultat [longueur (résultat)] = « ; ") puis
System.Delete (résultat, longueur (résultat), 1) ;
extrémité ;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ de //
procédé DoSMTPCreate ;
commencer
si (pas ConnectOnceSendMult) ou (fIdSMTP=nil) puis
commencer
fIdSMTP : =TIdSMTP.Create (individu) ;
//fIdSMTP.OnConnected : =ExpMstCtrl.OnEMailConnected ;
//fIdSMTP.OnDisconnected : =ExpMstCtrl.OnEMailDisConnected ;
//fIdSMTP.OnStatus : =ExpMstCtrl.OnEMailStatus ;
fIdSMTP.Host : =EMailInfo.Host ;
fIdSMTP.UserName : =EMailInfo.UserID ;
fIdSMTP.Password : =EMailInfo.Password ;
fIdSMTP.AuthType : =satNone ;
extrémité ;
extrémité ;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ de //
procédé DoSMTPConnect ;
commencer
si (pas ConnectOnceSendMult) ou ((fIdSMTP<>nil) et (pas fIdSMTP.Connected)) puis
fIdSMTP.Connect ;
extrémité ;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ de //
procédé DoSMTPDisconnect ;
commencer
si (pas ConnectOnceSendMult) ou (IsLastInSendMult et (fIdSMTP<>nil) et fIdSMTP.Connected) puis
fIdSMTP.Disconnect ;
extrémité ;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ de //
procédé DoSMTPFree ;
commencer
si (pas ConnectOnceSendMult) ou (IsLastInSendMult et (fIdSMTP<>nil)) puis
FreeAndNil (fIdSMTP) ;
extrémité ;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ de //
procédé SendEmail ;
variété
IdMessage : TIdMessage ;
IdAttachment : TIdAttachmentFile ;
i : nombre entier ;
commencer
ExpMstCtrl : =PsRBExportMasterControl ;
IdMessage : =TIdMessage.Create (individu) ;
essai
DoSMTPCreate ;
avec IdMessage faire
commencer
pour I : =0 à EMailInfo.Attachments.Count-1 font
IdAttachment : =TIDAttachmentFile.Create (MessageParts, EmailInfo.Attachments [I]) ;
Body.Assign (EMailInfo.Body) ;
Date : =EMailInfo.Date ;
From.Name : =EMailInfo.FromName ;
From.Address : =EMailInfo.FromAddress ;
ReplyTo.EMailAddresses : =EMailInfo.ReplyTo ;
Objet : =EMailInfo.Subject ;
Recipients.EMailAddresses : =GetAddressString (EMailInfo.RecipientList.Text) ;
CCList.EMailAddresses : =GetAddressString (EMailInfo.CCList.Text) ;
BCCList.EMailAddresses : =GetAddressString (EMailInfo.BCCList.Text) ;
extrémité ;
essai
DoSMTPConnect ;
fIdSMTP.Send (IdMessage) ;
//if a assigné (ExpMstCtrl.OnEMailSuccess) alors
// ExpMstCtrl.OnEMailSuccess (ExpMstCtrl) ;
EmailSent : =True ;
DisplayMailProgress (le « email envoyé avec succès », rectifient) ;
excepté
sur E : L'exception font
commencer
//if a assigné (ExpMstCtrl.OnEMailError) alors
// ExpMstCtrl.OnEmailError (expéditeur, E.Message)
//else
DisplayMailProgress ('erreur : '+E.Message, rectifient) ;
MessageDlg (E.Message, mtError, [mbOK], 0) ;
Continuer : =False ;
extrémité ;
extrémité ;
finalement
DoSMTPDisconnect ;
DoSMTPFree ;
IdMessage.Free ;
extrémité ;
extrémité ;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ de //
commencer
si EmailDialogsEnabled alors
commencer
EmailParamFrm : =TEmailParamsForm.Create (individu, zéro) ;
avec EmailParamFrm, EMailInfo, TransPostHelper.EmailTemplatesTable font
essai
edFromName.Text : =FieldByName (« FromName ").AsString ;
edFromAddr.Text : =FieldByName (« FromAddress ").AsString ;
edTo.Text : =EmailRecipients ;
si (EmailCCRecipients<> '') puis
edCc.Text : =EmailCCRecipients
autrement
edCc.Text : =FieldByName (« cc ").AsString ;
si (EmailBCCRecipients<> '') puis
edBcc.Text : =EmailBCCRecipients
autrement
edBcc.Text : =FieldByName (« BCC ").AsString ;
si (EmailSubject<> '') puis
edSubject.Text : =EmailSubject
autrement
edSubject.Text : =GetEmailSubject (FieldByName (« sujet ").AsString) ;
si (EmailBody<> '') puis
memoBody.Lines.Text : =EmailBody
autrement
memoBody.Lines.Text : =FieldByName (« corps ").AsString ;
si EmailAccount<> '' puis
Légende : =Caption+ - '+EmailAccount ;
recherche : =ShowModal ;
si res=mrYes alors
commencer
Centre serveur : = FieldByName (« centre serveur ").AsString ; //DisplayMailProgress ('centre serveur de Host='+) ;
Identification de l'utilisateur : = FieldByName (« username ").AsString ; //DisplayMailProgress ('identification de l'utilisateur d'UserId='+) ;
Mot de passe : = FieldByName (« mot de passe ").AsString ; //DisplayMailProgress ('mot de passe de Password='+) ;
Body.Text : =memoBody.Lines.Text ; //DisplayMailProgress ('Body='+ Body.Text) ;
Date : = maintenant ; //DisplayMailProgress ('Date='+ DateToStr (date));
FromAddress : = edFromAddr.Text ; //DisplayMailProgress ('FromAddress='+ FromAddress) ;
FromName : = edFromName.Text ; //DisplayMailProgress ('FromName='+ FromName) ;
ReplyTo : = FieldByName (« ReplyTo ").AsString ; //DisplayMailProgress ('ReplyTo='+ ReplyTo) ;
Objet : = edSubject.Text ; //DisplayMailProgress ('sujet de Subject='+) ;
RecipientList.Commatext : =edTo.Text ; //DisplayMailProgress ('Recipient='+ RecipientList.Commatext) ;
EmailRecipients : =edTo.Text ;
EmailSubject : =edSubject.Text ;
EmailBody : =memoBody.Lines.Text ;
EmailCCRecipients : =edCc.Text ;
EmailBCCRecipients : =edBcc.Text ;
CCList.Add (edCc.Text) ;
BCCList.Add (edBcc.Text) ;
DeleteFilesAfterEMail : =True ;
sinon ReportSettings.IncludeAttachment alors
Attachments.Clear ;
extrémité
autrement si res=mrNo alors
commencer
EMailInfo.CancelEMail : =True ;
DisplayMailProgress (le « email n'est pas envoyé - l'intervention d'utilisateur », rectifient) ;
// si SMProgForm<>nil alors
// SMProgForm.UpdateProgress (le « email n'est pas envoyé - intervention d'utilisateur », vraies)
// autrement si SMProgDetForm<>nil alors
// SMProgDetForm.UpdateProgress (le « email n'est pas envoyé - intervention d'utilisateur », vrai, faux) ;
extrémité
autrement si res=mrAbort alors
commencer
EMailInfo.CancelEMail : =True ;
Continuer : =False ;
DisplayMailProgress (le « email n'est pas envoyé - l'intervention d'utilisateur », rectifient) ;
DisplayMailProgress (le « envoi par courrier électronique du processus est arrêté - intervention d'utilisateur », fausses) ;
// si SMProgForm<>nil alors
// commencent
// SMProgForm.UpdateProgress (le « email n'est pas envoyé - l'intervention d'utilisateur », rectifient) ;
// SMProgForm.UpdateProgress (le « envoi par courrier électronique du processus est arrêté - intervention d'utilisateur », fausses) ;
extrémité de //
// autrement si SMProgDetForm<>nil alors
// commencent
// SMProgDetForm.UpdateProgress (le « email n'est pas envoyé - intervention d'utilisateur », vrai, faux) ;
// SMProgDetForm.UpdateProgress (le « envoi par courrier électronique du processus est arrêté - intervention d'utilisateur », faux, faux) ;
extrémité de // ;
extrémité ;
finalement
EmailParamFrm.Free ;
extrémité ;
extrémité
autrement
commencer
avec EMailInfo, TransPostHelper.EmailTemplatesTable font
commencer
Centre serveur : = FieldByName (« centre serveur ").AsString ;
Identification de l'utilisateur : = FieldByName (« username ").AsString ;
Mot de passe : = FieldByName (« mot de passe ").AsString ;
si (EmailBody<> '') puis
Body.Text : =EmailBody
autrement
Body.Text : =FieldByName (« corps ").AsString ;
Date : = maintenant ;
FromAddress : = FieldByName (« FromAddress ").AsString ;
FromName : = FieldByName (« FromName ").AsString ;
ReplyTo : = FieldByName (« ReplyTo ").AsString ;
si (EmailSubject<> '') puis
Objet : =EmailSubject
autrement
Objet : =GetEmailSubject (FieldByName (« sujet ").AsString) ;
RecipientList.CommaText : =EmailRecipients ;
si (EmailCCRecipients<> '') puis
CCList.CommaText : =EmailCCRecipients
autrement
CCList.CommaText : =FieldByName (« cc ").AsString ;
si (EmailBCCRecipients<> '') puis
BCCList.CommaText : =EmailBCCRecipients
autrement
BCCList.CommaText : =FieldByName (« BCC ").AsString ;
DeleteFilesAfterEMail : =True ;
sinon ReportSettings.IncludeAttachment alors
Attachments.Clear ;
extrémité ;
extrémité ;
sinon EMailInfo.CancelEMail alors
commencer
SendEmail ;
EMailInfo.CancelEMail : =True ; // ceci est d'arrêter l'email de défaut envoyant l'événement
extrémité ;
extrémité ;
|