|
Отправка эл.писем из ут 10.3 | ☑ | ||
---|---|---|---|---|
0
kIR
24.06.14
✎
13:31
|
Доброго дня!
Понимаю,что вопрос бородатый,но все же: Отправляю письма из 1с,код такой: Профиль = Новый ИнтернетПочтовыйПрофиль; Профиль.АдресСервераSMTP = "smtp.gmail.com"; Профиль.ПортSMTP = 465; Профиль.АутентификацияSMTP = СпособSMTPАутентификации.Login; Профиль.ПользовательSMTP = "[email protected]"; Профиль.ПарольSMTP = "123"; Профиль.Пользователь = "[email protected]"; Профиль.Пароль = "123"; Профиль.АдресСервераPOP3 = "pop3.gmail.com"; Профиль.ПортPOP3 = 110; Профиль.АутентификацияPOP3 = СпособPOP3Аутентификации.Обычная; Почта = Новый ИнтернетПочта; Почта.Подключиться(Профиль); пс = Новый ИнтернетПочтовоеСообщение; пс.Получатели.Добавить(Адресат); Пс.Отправитель = "[email protected]"; пс.Тема = "Отчет по ЗаказНаряду за " + Формат(дата,"ДЛФ=Д"); Текст = " |<h3> Привет !</h3> |Это письмо с вложенной картинкой.<br /> |Картинка:<br /> |Конец письма. |"; пс.Тексты.Добавить(Текст,ТипТекстаПочтовогоСообщения.HTML); Пс.ОбработатьТексты(); Почта.Послать(пс); Почта.Отключиться(); В справочнике "Учетные записи эл.почты" с такими данными подключается без проблем Сейчас же при попытке отправить долго думает,затем выпадает ошибка "Время ожидание операции чтения истекло" {Форма.ФормаОтчета.Форма(248)}: Ошибка при вызове метода контекста (Подключиться) Почта.Подключиться(Профиль); по причине: Время ожидания операции чтения истекло. |
|||
1
Segate
24.06.14
✎
13:33
|
(0) сотри доступность... подключиться не может, палдает по таймауту
|
|||
2
kIR
24.06.14
✎
13:34
|
(1) я понимаю,что по таймауту(стандартный - 30 сек). А что за доступность то?
|
|||
3
PuhUfa
24.06.14
✎
13:40
|
||||
4
kIR
24.06.14
✎
13:46
|
(3) ни о чем как тоэ.Если я пользуюсь документом "ЭлектронноеПисьмо",то с этими же данными все уходит спокойно
|
|||
5
kIR
24.06.14
✎
14:05
|
Потер,что мог - все равно не хочет,гадина)
|
|||
6
kIR
24.06.14
✎
14:55
|
(1)Segate, так что лишнее то?)
|
|||
7
Segate
24.06.14
✎
15:07
|
(6) не сотри, а смотри... опечатался. Ты можешь подключиться к серверу? Прокси там... или еще что нть такое есть? Может ошибка в параметрах?
|
|||
8
kIR
24.06.14
✎
15:47
|
(7) Я параметры то брал из справочника "Учетные записи эл.почты".Оттуда тест проходит на отлично,без проблем
|
|||
9
Segate
24.06.14
✎
15:52
|
(8) а что тебе мешает и в этот раз брать параметры из справочника?
Если это УТ, то должен быть общий модуль для работы с почтой, если его нет, то четкое описание процедуры должно быть в документе "электронное письмо исходящее" там все можно подробно посмотреть и скопипастить. |
|||
10
kIR
24.06.14
✎
16:23
|
(9) так я и в этот раз беру) до этого все было реализовано с помощью документа "Электронное письмо",но не получилось в текст письма программно передать хтмл
Гугл посоветовал использовать "ИнтернетПочтовоеСообщение",но тут вот возникли проблемы с подключением |
|||
11
Segate
24.06.14
✎
17:12
|
А в документе электронное письмо, как отправляется письмо? Это наводящий вопрос, он должен натолкнуть тебя на мысль.
|
|||
12
kIR
24.06.14
✎
17:23
|
(11)Там оно отправляется через Общий модуль УправлениеЭлектроннойПочтой.ПолучениеОтправкаПисем
Что неприменимо тут. Тем более здесь он даже не подключается |
|||
13
kIR
26.06.14
✎
16:15
|
ап?
|
|||
14
Segate
26.06.14
✎
16:19
|
оу щит. Что значит модуль не подключается? Почему не применимо?Почему нельзя нажать на f12 и посмотреть, что за процедура ПолучениеОтправкаПисем? И не воспользоваться тупо ей? Я уверен, там в параметразх надо просто передать текст отправителя и тд, и все сработает кагбэ само
|
|||
15
kIR
27.06.14
✎
09:24
|
(13) в плане,что не то,что отправка,а даже просто подключение к почте не подходит
Сейчас все реализовано следующим образом: Письмо = Документы.ЭлектронноеПисьмо.СоздатьДокумент(); Письмо.Тема = "Отчет" ; СтрокаКомуТч = Письмо.КомуТЧ.Добавить(); СтрокаКомуТч.АдресЭлектроннойПочты = Адресат; СтрокаКомуТч.Представление = Адресат; Письмо.ОтправительИмя = "ks"; Письмо.Дата = ТекущаяДата(); Письмо.ОтправительАдресЭлектроннойПочты = "[email protected]"; Письмо.УчетнаяЗапись = Справочники.УчетныеЗаписиЭлектроннойПочты.НайтиПоНаименованию("[email protected]"); Письмо.СтатусПисьма = Перечисления.СтатусыПисем.Исходящее; Письмо.ВидТекстаПисьма = Перечисления.ВидыТекстовЭлектронныхПисем.HTML; письмо.ЕстьВложения = Истина; Текст = " |<h3>Заголовок</h3> |<b>Жирный текст</b> |Обычный текст. |<table style='border: 1px solid black'> |<tr> |<td> |123 |</td> |</tr> |</table>"; Письмо.Текст = Текст; Вложение = Справочники.ВложенияЭлектронныхПисем.СоздатьЭлемент(); Вложение.ИмяФайла = ИмяФайла; Вложение.Объект = Письмо.ссылка; Вложение.Наименование ="Отчет по ЗаказНаряду за " + Формат(дата,"ДЛФ=Д"); Вложение.Хранилище = Новый ХранилищеЗначения(Новый ДвоичныеДанные(КаталогВременныхФайлов()+ИмяФайла), Новый СжатиеДанных()); Вложение.Записать(); Если УправлениеЭлектроннойПочтой.ПолучитьДоступныеУчетныеЗаписи(глЗначениеПеременной("глТекущийПользователь")).Запись.НайтиПоЗначению(Профи.УчетнаяЗапись) <> Неопределено Тогда УчетныеЗаписи = Новый Массив; УчетныеЗаписи.Добавить(Письмо.УчетнаяЗапись); Письма = Новый Соответствие; Письма.Вставить(Письмо.Ссылка, Письмо); УправлениеЭлектроннойПочтой.ПолучениеОтправкаПисем(глЗначениеПеременной("глСоответствиеТекстовЭлектронныхПисем"), глЗначениеПеременной("глТекущийПользователь"), УчетныеЗаписи, Письма, Истина); КонецЕсли; НУ а как моим нынешним способом это реализовать - хз(( |
|||
16
Strogg
27.06.14
✎
10:17
|
Stunnel спасет автора.
|
|||
17
Segate
27.06.14
✎
11:07
|
Ой, ну ни тупи! поставь курсор на "УправлениеЭлектроннойПочтой.ПолучениеОтправкаПисем" нажми ф12 и посмотри как происходит отправка, потом сделай свой пакет и вызови процедуру отправки п аналогии
|
|||
18
kIR
27.06.14
✎
13:04
|
(17)посмотрел давно))Ну не тупее паровоза же))Эта процедура отпраляет документ "Электронная почта"
Вообще задача была в письме формировать текст в хтмл-е,но при формировании документом "Электронное письмо",в 1с-ке в письме ХТМЛ есть,а в пришедшем на почту - нет Поэтому хотел использовать способ,представленный в сабже |
|||
19
Segate
27.06.14
✎
13:12
|
(18) какой, *простите* нахрен, документ? Документ - элемент метаданных конфигурации. Он никуда не отправляется из конфигурации, и вообще к письму на твоем емейле имеет очень опосредованное отношение. Перед отправкой формитруется точно такое же письмо, как и у тебя(внезапно в процедуре) и точно так же присваиваются параметры. просто надо найти где.
|
|||
20
Hans
27.06.14
✎
13:24
|
(18) Перед отправкой смотрел точно все теги формируются как надо? где тег <НТМЛ>? в 1С если создать макет определенного вида то можно на одной страничке редактировать текст а на другой будет ХТМЛ код этого текста.
|
|||
21
Segate
27.06.14
✎
13:24
|
(18)ут 10.3 нет под рукой, в УТ11 нашел процедуру отвечающую за отправку, которая !ВНЕЗАПНО! формирует ИнтернетПочтовоеСообщение. За 40 секунд.ЧЯДНТ?
|
|||
22
kIR
30.06.14
✎
12:40
|
(19)(21) сенсей,каюсь,не достиг еще уровня вашего дзен,нашел свой косяк,а вернее косяк работающего тут до меня программиста)
Сейчас все отправилось,но письмо приходит с таким текстом: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head content="text/html" http-equiv="Content-Type" charset=""></head><body><h3>Заголовок</h3> <b>Жирный текст</b> Обычный текст. <table style="border: 1px solid black"><tr><td> 123 </td> </tr></table></body></html> |
|||
23
1cVandal
30.06.14
✎
12:47
|
(22) типписьма текст, а надо хтмл
|
|||
24
kIR
30.06.14
✎
12:51
|
(23) указываю
пс.Тексты.Добавить(Текст,ТипТекстаПочтовогоСообщения.HTML); |
|||
25
kIR
30.06.14
✎
13:48
|
Вообще я понимаю,что все так,потому что charset="" ,но исправить не получается
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |