8.х БП встроенный почтовый клиент в 1С бухгалтерии

Тема в разделе ""1С:Бухгалтерия БП"", создана пользователем tretrem, 12 фев 2013.

  1. TopicStarter Overlay
    tretrem
    Offline

    tretrem

    Регистрация:
    2 фев 2013
    Сообщения:
    10
    Симпатии:
    0
    Баллы:
    1
    Доброго времени суток.
    У меня довольно типичный вопрос, каким образом настраивать учетные записи электронной почты, для пользователей бухгалтерии.

    При попытке создания письма выкидывает ошибку:

    "Отправлять документы по электронной почте можно только из встроенного почтового клиента.
    В настоящее время в настройках параметров учета установлено использование основного почтового клиента операционной системы."

    Механизм взят из торговли. Каким образом настраивается почтовый клиент найти справки не удалось. Вернее данные способы на решение проблемы не повлияли.

    В константах прописал использование встроенного почтового клиента. Создавал УчетнуюЗаписьЭлектроннойПочты для пользователя, при попытке записать выдается ошибка:

    "Поле объекта не обнаружено (ОсновнаяУчетнаяЗапись)"
    Код:
    {ОбщийМодуль.УправлениеПользователями.Модуль(46)}: Поле объекта не обнаружено (ОсновнаяУчетнаяЗапись)
    НастройкаСсылка = ПланыВидовХарактеристик.НастройкиПользователей[Настройка]; 

    В настройках пользователя тип данных "справочник.УчетныеЗаписиЭлектроннойПочты" не присутствует.

    Я только начинаю изучать 1с, возможно, что-то не так делаю.
  2. Annie
    Offline

    Annie Опытный в 1С Команда форума

    Регистрация:
    10 фев 2010
    Сообщения:
    949
    Симпатии:
    23
    Баллы:
    29
    Как пытаетесь создать письмо? Алгоритм действий опишите.
  3. TopicStarter Overlay
    tretrem
    Offline

    tretrem

    Регистрация:
    2 фев 2013
    Сообщения:
    10
    Симпатии:
    0
    Баллы:
    1
    в форме настройкаОтправкиОтчета

    Код:
    Процедура ОсновныеДействияФормыOK(Кнопка)
    
    СохранитьЗначения();
    
    СтруктураНовогоПисьма = Новый Структура;
    
    Если ВидТекстаПисьма = "текстовый отчет" Тогда
    
    СтруктураНовогоПисьма.Вставить("ВидТекста", Перечисления.ВидыТекстовЭлектронныхПисем.Текст);
    ФайлВФорматеТекст = ПолучитьИмяВременногоФайла();
    Отчет.Записать(ФайлВФорматеТекст, ТипФайлаТабличногоДокумента.TXT);
    ТекстПисьма = Новый ТекстовыйДокумент;
    ТекстПисьма.Прочитать(ФайлВФорматеТекст);
    ТекстПисьма.ВставитьСтроку(1, "------------------------------------------------------");
    ТекстПисьма.ВставитьСтроку(1, "");
    ТекстСообщенияДляОтправки = ТекстПисьма.ПолучитьТекст();
    СтруктураНовогоПисьма.Вставить("Тело", ТекстСообщенияДляОтправки);
    УдалитьФайлы(ФайлВФорматеТекст);
    
    ИначеЕсли ВидТекстаПисьма = "HTML" Тогда
    
    СтруктураНовогоПисьма.Вставить("ВидТекста", Перечисления.ВидыТекстовЭлектронныхПисем.HTML);
    ФайлВФорматеHTML = ПолучитьИмяВременногоФайла();
    Отчет.Записать(ФайлВФорматеHTML, ТипФайлаТабличногоДокумента.HTML);
    ТекстПисьма = Новый ТекстовыйДокумент;
    ТекстПисьма.Прочитать(ФайлВФорматеHTML);
    
    ХТМЛТекст = ТекстПисьма.ПолучитьТекст();
    
    НовыйHTMLДокумент = Новый COMОбъект("HtmlFile");
    НовыйHTMLДокумент.open("text/html");
    НовыйHTMLДокумент.write(ХТМЛТекст);
    НовыйHTMLДокумент.close();
    
    ТегТела = НовыйHTMLДокумент.all.tags("BODY");
    Для а = 0 По ТегТела.length - 1 Цикл
    ТегТела.item(а).innerHTML = "
    |<P><BR><BR><BR>
    |<HR>
    |</P>
    |<P></P>" + ТегТела.item(а).innerHTML;
    КонецЦикла;
    
    ТекстСообщенияДляОтправки = "";
    Для а = 0 По НовыйHTMLДокумент.all.length - 1 Цикл
    Если НовыйHTMLДокумент.all.item(а).tagName = "HTML" Тогда
    ТекстСообщенияДляОтправки = НовыйHTMLДокумент.all.item(а).innerHTML;
    КонецЕсли;
    КонецЦикла;
    
    СтруктураНовогоПисьма.Вставить("Тело", ТекстСообщенияДляОтправки);
    УдалитьФайлы(ФайлВФорматеHTML);
    
    Иначе
    
    СтруктураНовогоПисьма.Вставить("ВидТекста", Перечисления.ВидыТекстовЭлектронныхПисем.Текст);
    
    КонецЕсли;
    
    СтруктураНовогоПисьма.Вставить("Тема", ТемаСообщения);
    
    СписокФайловВложений = Новый СписокЗначений;
    
    Если ЗначениеЗаполнено(ИмяФайлаВложения) Тогда
    ИмяФайлаВложения = ИмяФайлаВложения;
    Иначе
    ИмяФайлаВложения = ТемаСообщения;
    КонецЕсли;
    
    Если ВложенияHTML Тогда
    Если ФайлВФорматеHTML = Неопределено Тогда
    ФайлВФорматеHTML = ПолучитьИмяВременногоФайла();
    Отчет.Записать(ФайлВФорматеHTML, ТипФайлаТабличногоДокумента.HTML);
    КонецЕсли;
    СписокФайловВложений.Добавить(Новый Структура("Хранилище, ИмяФайла, Наименование", ПолучитьДвоичныеДанные(ФайлВФорматеHTML), (ИмяФайлаВложения + ".HTM"), ИмяФайлаВложения));
    КонецЕсли;
    
    Если ВложенияTXT Тогда
    Если ФайлВФорматеТекст = Неопределено Тогда
    ФайлВФорматеТекст = ПолучитьИмяВременногоФайла();
    Отчет.Записать(ФайлВФорматеТекст, ТипФайлаТабличногоДокумента.TXT);
    КонецЕсли;
    СписокФайловВложений.Добавить(Новый Структура("Хранилище, ИмяФайла, Наименование", ПолучитьДвоичныеДанные(ФайлВФорматеТекст), (ИмяФайлаВложения + ".TXT"), ИмяФайлаВложения));
    КонецЕсли;
    
    Если ВложенияMXL Тогда
    ФайлВФорматеMXL = ПолучитьИмяВременногоФайла();
    Отчет.Записать(ФайлВФорматеMXL, ТипФайлаТабличногоДокумента.MXL);
    СписокФайловВложений.Добавить(Новый Структура("Хранилище, ИмяФайла, Наименование", ПолучитьДвоичныеДанные(ФайлВФорматеMXL), (ИмяФайлаВложения + ".MXL"), ИмяФайлаВложения));
    КонецЕсли;
    
    Если ВложенияXLS Тогда
    ФайлВФорматеXLS = ПолучитьИмяВременногоФайла();
    Отчет.Записать(ФайлВФорматеXLS, ТипФайлаТабличногоДокумента.XLS);
    СписокФайловВложений.Добавить(Новый Структура("Хранилище, ИмяФайла, Наименование", ПолучитьДвоичныеДанные(ФайлВФорматеXLS), (ИмяФайлаВложения + ".XLS"), ИмяФайлаВложения));
    КонецЕсли;
    ///!брд
    Если ВложенияPDF Тогда
    ФайлВФорматеPDF = ПолучитьИмяВременногоФайла();
    Отчет.Записать(ФайлВФорматеPDF, ТипФайлаТабличногоДокумента.PDF);
    СписокФайловВложений.Добавить(Новый Структура("Хранилище, ИмяФайла, Наименование", ПолучитьДвоичныеДанные(ФайлВФорматеPDF), (ИмяФайлаВложения + ".PDF"), ИмяФайлаВложения));
    КонецЕсли;
    ///!
    
    Если СписокФайловВложений.Количество() > 0 Тогда
    СтруктураНовогоПисьма.Вставить("СписокФайловВложений", СписокФайловВложений);
    КонецЕсли;
    ///!
    Адресат =ДокПечати.Контрагент;
    ЭлектронныйЯщикПол = ДокПечати.Контрагент.Емайл;
    НаименованиеАдресата = Адресат.Наименование;
    ОтправитьКому = Новый СписокЗначений;
    ОтправитьКому.Добавить(ЭлектронныйЯщикПол, НаименованиеАдресата);
    СтруктураНовогоПисьма.Вставить("Кому", ОтправитьКому);
    //!
    //////////////////////////////////////////////////////////////////////
    //  отправка стандартными механизмами
    //СтруктураСозданногоПисьма = УправлениеЭлектроннойПочтой.НаписатьПисьмо(глЗначениеПеременной("глТекущийПользователь"), СтруктураНовогоПисьма,,,,,, Истина, Ложь);
    //
    //ЭтаФорма.Закрыть();
    //
    //Если ТипЗнч(СтруктураСозданногоПисьма) = Тип("Структура") Тогда
    // СтруктураСозданногоПисьма.Форма.Открыть();
    //КонецЕсли;
    
  4. Annie
    Offline

    Annie Опытный в 1С Команда форума

    Регистрация:
    10 фев 2010
    Сообщения:
    949
    Симпатии:
    23
    Баллы:
    29
    Я правильно понимаю, вы перетащили эту общую форму из УТ в Бухию?
  5. Annie
    Offline

    Annie Опытный в 1С Команда форума

    Регистрация:
    10 фев 2010
    Сообщения:
    949
    Симпатии:
    23
    Баллы:
    29
    Заведите учетные записи для нужных пользователей. В поле Ответственный обязательно укажите пользователя, привязанного к данной учетке.
    Тогда учетка будет привязана к текущему пользователю... Ну, если вы, конечно, перетащили этот механизм целиком...
    А вообще, в Бухии есть подобный механизм...
  6. Буран
    Offline

    Буран

    Регистрация:
    30 янв 2014
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Помогите разобраться с проблемой.
    Перестала отправлять электронные письма
    {ОбщийМодуль.УправлениеЭлектроннойПочтой(1106)}: Ошибка при вызове метода контекста (Подключиться): Время ожидания операции чтения истекло.

    С Outlook все отлично уходит и приходит.
  7. Буран
    Offline

    Буран

    Регистрация:
    30 янв 2014
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Помогите разобраться с проблемой.
    Перестала отправлять электронные письма
    {ОбщийМодуль.УправлениеЭлектроннойПочтой(1106)}: Ошибка при вызове метода контекста (Подключиться): Время ожидания операции чтения истекло.

    С Outlook все отлично уходит и приходит.

Поделиться этой страницей