Имя: Пароль:
1C
1С v8
Неисправимая ошибка и т.д.... из-за почты
0 Svirepy
 
03.11.11
13:19
Вот кусок:
       Ответ = Документы.ЭлектронноеПисьмоИсходящее.СоздатьДокумент();
       Ответ.УчетнаяЗапись = Справочники.УчетныеЗаписиЭлектроннойПочты.СистемнаяУчетнаяЗаписьЭлектроннойПочты.Ссылка;
       Ответ.Важность = Письмо.Важность;
       Ответ.Дата = Письмо.Дата;
       Ответ.ДатаОтправления = ТекущаяДата();
       Ответ.ЕстьВложения = Ложь;
       Ответ.СписокПолучателейПисьма = Письмо.ОтправительАдрес;
       Ответ.ИдентификаторОснования = Письмо.ИдентификаторСообщения;
       Ответ.Кодировка = Письмо.Кодировка;
       Ответ.Тема = "Re:"+Письмо.Тема;
       Ответ.Текст = "Привет, мир! Робот 1С приветствует тебя!";
       Ответ.Записать();
       //
       ПараметрыПисьма = Новый Структура;
       ПараметрыПисьма.Вставить("Тема",      Ответ.Тема);
       ПараметрыПисьма.Вставить("Тело",      Ответ.Текст);
       ПараметрыПисьма.Вставить("Кодировка", Ответ.Кодировка);
       ПараметрыПисьма.Вставить("Важность",  Ответ.Важность);
       ПараметрыПисьма.Вставить("Кому",  Письмо.ОтправительАдрес);
       //
       ЭлектроннаяПочта.ОтправитьПочтовоеСообщение(Ответ.УчетнаяЗапись, ПараметрыПисьма);

В письмо записывается всё, кроме учетной записи. Соответственно, на последней строке 1С завершает свою работу. Подскажите, пожалуйста, чего этой гадюке надо?
1 Wobland
 
03.11.11
13:21
(0) сходи внутрь и посмотри, на какой строке вываливается
2 MatrosoV AleXXXand_R
 
03.11.11
13:21
Попробуй пройтись отладчикой и выявить именно ту строку, после которой вылетает
3 FIXXXL
 
03.11.11
13:25
а что за конфа? в типовых письмо от Пользователя идет и его учетки
4 Svirepy
 
03.11.11
13:29
Опс!!! А вылетает-то совсем не там, где я думал....
Конфа 11 торговля
5 Svirepy
 
07.11.11
11:48
Тонкий клиент. Не могу записать в письмо учетную запись для отправки. :(( И нифига не понимаю - все определяется, но не записывается. Хэлп!!
6 Svirepy
 
07.11.11
12:54
Ответ = Документы.ЭлектронноеПисьмоИсходящее.СоздатьДокумент();
       Ответ.УчетнаяЗапись = ПолучитьУчетнуюЗаписьДляОтправкиПоУмолчанию();
       Ответ.ОтправительПредставление = Ответ.УчетнаяЗапись.Наименование;
       Ответ.Важность = Письмо.Важность;
       Ответ.Дата = Письмо.Дата;
       Ответ.ДатаОтправления = ТекущаяДата();
       Ответ.ЕстьВложения = Ложь;
       Ответ.СписокПолучателейПисьма = ""+ Письмо.ОтправительАдрес;
       Стр = Ответ.ПолучателиПисьма.Добавить();
       Стр.Адрес = ""+Письмо.ОтправительАдрес;
       Стр.Представление = Письмо.ОтправительПредставление;
       Ответ.ИдентификаторОснования = Письмо.ИдентификаторСообщения;
       Ответ.Кодировка = Письмо.Кодировка;
       Ответ.Тема = "Re:"+Письмо.Тема;
       Ответ.Текст = "Привет, мир! Робот 1С приветствует тебя!";
       Ответ.СтатусПисьма = Перечисления.СтатусыИсходящегоЭлектронногоПисьма.Черновик;
       Ответ.Записать();
       //
       Кому = Новый ТаблицаЗначений;
       Кому.Колонки.Добавить("Адрес");
       Кому.Колонки.Добавить("Представление");
       Стр = Кому.Добавить();
       Стр.Адрес = Письмо.ОтправительАдрес;
       Стр.Представление = Письмо.ОтправительПредставление;
       ПараметрыПисьма = Новый Структура;
       ПараметрыПисьма.Вставить("Тема",      Ответ.Тема);
       ПараметрыПисьма.Вставить("Тело",      Ответ.Текст);
       ПараметрыПисьма.Вставить("Кодировка", Ответ.Кодировка);
       ПараметрыПисьма.Вставить("Важность",  Ответ.Важность);
       ПараметрыПисьма.Вставить("Кому",  Кому);
       //
       ИдентификаторОтправки = ЭлектроннаяПочта.ОтправитьСообщение(Ответ.УчетнаяЗапись, ПараметрыПисьма);

Вот так вот ваще обидно - программа записывает исходящее письмо, при нажатии на "отправить" оно уходит прекрасно. А программно - не уходит нифига!!!
7 ИС-2
 
naïve
07.11.11
12:57
(7) Точно не уходит? У 1C есть какой-то косяк, когда статус письма не меняется, хотя оно уходит. Это в рег. задании. А так отладка в помощь.

Еще проверь права на учетную запись. Возможно нет прав на отправку.
8 Svirepy
 
07.11.11
13:13
Ответ = Документы.ЭлектронноеПисьмоИсходящее.СоздатьДокумент();
       Ответ.УчетнаяЗапись = ПолучитьУчетнуюЗаписьДляОтправкиПоУмолчанию();
       Ответ.ОтправительПредставление = Ответ.УчетнаяЗапись.Наименование;
       Ответ.Важность = Письмо.Важность;
       Ответ.Дата = Письмо.Дата;
       Ответ.ДатаОтправления = ТекущаяДата();
       Ответ.ЕстьВложения = Ложь;
       Ответ.СписокПолучателейПисьма = ""+ Письмо.ОтправительАдрес;
       Стр = Ответ.ПолучателиПисьма.Добавить();
       Стр.Адрес = ""+Письмо.ОтправительАдрес;
       Стр.Представление = Письмо.ОтправительПредставление;
       Ответ.ИдентификаторОснования = Письмо.ИдентификаторСообщения;
       Ответ.Кодировка = Письмо.Кодировка;
       Ответ.Тема = "Re:"+Письмо.Тема;
       Ответ.Текст = "Привет, мир! Робот 1С приветствует тебя!";
       Ответ.СтатусПисьма = Перечисления.СтатусыИсходящегоЭлектронногоПисьма.Черновик;
       Ответ.Записать();
       //
       ОтветПисьмо = Новый ИнтернетПочтовоеСообщение;
       ОтветПисьмо.Тема = Ответ.Тема;
       ОтветПисьмо.Тексты.Добавить(Ответ.Текст);
       ОтветПисьмо.Получатели.Добавить(Письмо.ОтправительАдрес);
       Профиль = ЭлектроннаяПочта.СформироватьИнтернетПрофиль(УчетнаяЗапись);
       Почта = Новый ИнтернетПочта;
       Почта.Подключиться(Профиль);
       Почта.Послать(ОтветПисьмо);
       Почта.Отключиться();

Надоело всё!!! Плюнул и написал вот так. Теперь работает. Спасибо!
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший