|
v7: Зависает 1с при отправке ROM-mail-ом | ☑ | ||
---|---|---|---|---|
0
serg-lom89
01.04.14
✎
13:40
|
Добрый день
при отправке зависает 1с Почта=СоздатьОбъект("AddIn.AddInMail"); Почта.СерверОтправки="smpt.mail.ru"; Почта.ПортОтправки="25"; Если Почта.Подключиться("SMTP")=1 Тогда Сообщить("Все ОК"); Иначе Сообщить("Не подключился!"); КонецЕсли; Почта.АдресОтправителя =АдресОтп; Почта.ИмяОтправителя="Сергей"; Почта.Логин=СокрЛП(мойЛогин); Почта.Пароль=СокрЛП(мойПароль); Почта.АутентификацияПриОтправке=0; Почта.АдресПолучателя=СокрЛП(АдресПол); Почта.Тема="Сергей"; Почта.Тело=""; Почта.Вложения ="e:\post.txt"; Почта.Кодировка="windows-1251"; Почта.ТипПисьма=2; Почта.Тело="Письмо"; Если Почта.Отправить()=1 Тогда Сообщить("Письмо отправлено"); Иначе Сообщить(" Письмо не отправлено","!"); КонецЕсли; Первый раз делаю отправку через 1с.Подскажите пожалуйста что не так? |
|||
1
povar
01.04.14
✎
13:59
|
Используй CDO
|
|||
2
FlashC
01.04.14
✎
14:00
|
//-----------------------------------------------------------------------------
var cdoAutoPromoteBodyParts, cdoFlushBuffersOnWrite, cdoHTTPCookies, cdoLanguageCode, cdoNNTPAccountName, cdoNNTPAuthenticate, cdoNNTPConnectionTimeout, cdoNNTPServer, cdoNNTPServerPickupDirectory, cdoNNTPServerPort, cdoNNTPUseSSL, cdoPostEmailAddress, cdoPostPassword, cdoPostUserName, cdoPostUserReplyEmailAddress, cdoPostUsingMethod, cdoSaveSentItems, cdoSendEmailAddress, cdoSendPassword, cdoSendUserName, cdoSendUserReplyEmailAddress, cdoSendUsingMethod, cdoSMTPAccountName, cdoSMTPAuthenticate, cdoSMTPConnectionTimeout, cdoSMTPServer, cdoSMTPServerPickupDirectory, cdoSMTPServerPort, cdoSMTPUseSSL, cdoURLGetLatestVersion, cdoURLProxyBypass, cdoURLProxyServer, cdoUseMessageResponseText, Контрагент, вклУдаление; //----------------------------------------------------------------------------- procedure sendMsg() sFrom ="<[email protected]>"; iConf = createObject("CDO.Configuration"); iConf.fields(cdoSendUsingMethod).value = 2; iConf.fields(cdoSMTPServer).value = "s.m.ru"; iConf.fields(cdoSMTPServerPort).value = 587; //465 TLS iConf.fields(cdoSMTPAuthenticate).value = 1; iConf.fields(cdoSendUserName).value = "[email protected]"; //логин iConf.fields(CdoSendPassword).value = "mmm"; //пароль iConf.fields(cdoSendEmailAddress).value = """M"" <[email protected]>"; iConf.fields(cdoSMTPUseSSL).value = 0; //Secure Sockets Layer iConf.fields.update(); iMsg=createObject("CDO.Message"); iMsg.configuration = iConf; iMsg.to=sTo; iMsg.from=sFrom; iMsg.subject=sSubject; iMsg.textBody=sBody; iMsg.textBodypart.charset="iso-8859-5"; iMsg.send(); message("Сообщение отправлено."); endProcedure //----------------------------------------------------------------------------- Процедура ПриОткрытии() Если ТипЗначения(Форма.Параметр)=100 Тогда sTo = Форма.Параметр.ПолучитьЗначение(1); //email sSubject = Форма.Параметр.ПолучитьЗначение(2); //Заголовок sBody = Форма.Параметр.ПолучитьЗначение(3); //Текст письма sAttach = Форма.Параметр.ПолучитьЗначение(4); //Вложение вклУдаление = Форма.Параметр.ПолучитьЗначение(5); //Анкета Контрагент = Форма.Параметр.ПолучитьЗначение(6); //Контрагент Если ПустоеЗначение(Контрагент.Кому) = 0 Тогда sBody = СокрЛП(Контрагент.Кому) + РазделительСтрок + РазделительСтрок + sBody; КонецЕсли; //sendMsg(); Иначе Предупреждение("Эта обработка используется в системных целях!",6); СтатусВозврата(0); Возврат; КонецЕсли; КонецПроцедуры; //----------------------------------------------------------------------------- cdoSendPassword = "http://schemas.microsoft.com/cdo/configuration/sendpassword"; cdoSendEmailAddress = "http://schemas.microsoft.com/cdo/configuration/sendemailaddress"; cdoAutoPromoteBodyParts = "http://schemas.microsoft.com/cdo/configuration/autopromotebodyparts" ; cdoFlushBuffersOnWrite = "http://schemas.microsoft.com/cdo/configuration/flushbufferson;write" ; cdoHTTPCookies = "http://schemas.microsoft.com/cdo/configuration/httpcookies" ; cdoLanguageCode = "http://schemas.microsoft.com/cdo/configuration/languagecode" ; cdoNNTPAccountName = "http://schemas.microsoft.com/cdo/configuration/nntpaccountname" ; cdoNNTPAuthenticate = "http://schemas.microsoft.com/cdo/configuration/nntpauthenticate" ; cdoNNTPConnectionTimeout = "http://schemas.microsoft.com/cdo/configuration/nntpconnectiontimeout" ; cdoNNTPServer = "http://schemas.microsoft.com/cdo/configuration/nntpserver" ; cdoNNTPServerPickupDirectory = "http://schemas.microsoft.com/cdo/configuration/nntpserverpickupdirectory" ; cdoNNTPServerPort = "http://schemas.microsoft.com/cdo/configuration/nntpserverport" ; cdoNNTPUseSSL = "http://schemas.microsoft.com/cdo/configuration/nntpusessl" ; cdoPostEmailAddress = "http://schemas.microsoft.com/cdo/configuration/postemailaddress" ; cdoPostPassword = "http://schemas.microsoft.com/cdo/configuration/postpassword" ; cdoPostUserName = "http://schemas.microsoft.com/cdo/configuration/postusername" ; cdoPostUserReplyEmailAddress = "http://schemas.microsoft.com/cdo/configuration/postuserreplyemailaddress" ; cdoPostUsingMethod = "http://schemas.microsoft.com/cdo/configuration/postusing" ; cdoSaveSentItems = "http://schemas.microsoft.com/cdo/configuration/savesentitems" ; cdoSendEmailAddress = "http://schemas.microsoft.com/cdo/configuration/sendemailaddress" ; cdoSendPassword = "http://schemas.microsoft.com/cdo/configuration/sendpassword" ; cdoSendUserName = "http://schemas.microsoft.com/cdo/configuration/sendusername" ; cdoSendUserReplyEmailAddress = "http://schemas.microsoft.com/cdo/configuration/senduserreplyemailaddress" ; cdoSendUsingMethod = "http://schemas.microsoft.com/cdo/configuration/sendusing" ; cdoSMTPAccountName = "http://schemas.microsoft.com/cdo/configuration/smtpaccountname" ; cdoSMTPAuthenticate = "http://schemas.microsoft.com/cdo/configuration/smtpauthenticate" ; cdoSMTPConnectionTimeout = "http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout" ; cdoSMTPServer = "http://schemas.microsoft.com/cdo/configuration/smtpserver"; cdoSMTPServerPickupDirectory = "http://schemas.microsoft.com/cdo/configuration/smtpserverpickupdirectory"; cdoSMTPServerPort = "http://schemas.microsoft.com/cdo/configuration/smtpserverport"; cdoSMTPUseSSL = "http://schemas.microsoft.com/cdo/configuration/smtpusessl"; cdoURLGetLatestVersion = "http://schemas.microsoft.com/cdo/configuration/urlgetlatestversion"; cdoURLProxyBypass = "http://schemas.microsoft.com/cdo/configuration/urlproxybypass"; cdoURLProxyServer = "http://schemas.microsoft.com/cdo/configuration/urlproxyserver"; cdoUseMessageResponseText = "http://schemas.microsoft.com/cdo/configuration/usemessageresponsetext"; |
|||
3
varelchik
01.04.14
✎
14:15
|
(0) так она и будет зависать, а еще и к падению 1С способствует если связь с SMTP хреновая.
Используй dialmail. И будет тебе счастье. Если шо стучись в аську дам примеры. |
|||
4
Mikeware
01.04.14
✎
14:16
|
(3) Ничего она не висла.
Но тоже перешел на диалмайл, в основном из-за потребности в ftp/ |
|||
5
varelchik
01.04.14
✎
15:54
|
(4) вот и не прав.
Когда у нас были проблемы с DNS 1С тупо вылетала при попытке отправить письмо пока не перевел на dialmail. |
|||
6
Mikeware
01.04.14
✎
16:29
|
(5) Может, потому, что Олег исправил ккие-то ошибки (это был год 2004 или начало 2005 примерно), и я от него получил компоненту. он вроде должен был выложить ее в публичный доступ. А потом он куда-то надолго пропал.
Но до 2008-2009 мы пользовались ром-мэйлом без проблем, пока не понадобился фтп. |
|||
7
varelchik
01.04.14
✎
16:45
|
(6) ну на счет обновлений что-то не припомню.
Хотя он мне говорил что да баг есть но исправлять он его не собирается потому как на проэкт забил. Хотя могу и ошибаться. А dialmail у меня с ФТП нормально пашет, у тебя скорее всего версия старая. |
|||
8
Mikeware
01.04.14
✎
17:05
|
(7) у меня тоде нормально работает. я ж говорю, причина перехода с ром=мэйда на диалмэйл была только лишь в наличии у диалмейла фтп и почты "в одном флаконе"
|
|||
9
varelchik
01.04.14
✎
17:21
|
да кстати у тебе эта 2.7.6pb16.?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |