Обработка отправки документов по почте напрямую из 1С7.7 в файле EXCEL




Данная внешняя обработка предоставляет функционал для быстрой выгрузки документа в файл Excel и отправки электронного письма с вложенным документом напрямую из интерфейса 1С Предприятие 7.7.

Поскольку штатными средствами 1С 7.7  отправить электронное письмо с документом невозможно, была разработана и отлажена данная обработка. 

Требования

Для работы обработки в системе должна быть установлена библиотека для программной отправки электронных писем OstroSoft SMTP Component. Последняя версия компоненты поддерживает TLS/SSL протоколы и отправку через почтовые сервера, требующие защищенную аутентификацию. Библиотека распространяется бесплатно. Поддерживаются любые ОС Windows.

Также, для выгрузки документа в файл Excel (.xsl) в системе должна быть установлена любая версия Microsoft Office Excel.

Как отправлять документы

Все необходимые настройки приведены на скриншоте №3, 4 данной публикации. Настройки сохраняются по нажатию клавиши «Сохранить параметры» в файле «SendEmailSettings.ext» в корне каталога БД. В последующем, при открытии формы обработки, параметры подгружаются из файла настроек. Не сохраняются параметры — вложения письма, адреса получателей. 

Прикрепление документа из БД к письму производится выбором документа в рамке «Основание письма» вкладки «Письмо». При этом извлекается адрес контрагента, при наличии такового, из штатного реквизита контрагента «ЭлПисьмо». Адрес получателя можно добавить вручную по нажатию клавиши «Добавить» напротив списка получателей.

Обработка автоматически определит наличие товаров или услуг в документе и подготовит документ к выгрузке. Все выгружаемые Excel файлы хранятся в папке, заданной во вкладке «Настройки». Можно протестировать выгрузку документа в файл Excel, нажав клавишу «Выгрузить XLS» во вкладке. Формат выгружаемого Excel файла приведен в скриншотах публикации. К письму можно прикрепить любой файл из компьютера, нажав клавишу «Добавить» напротив списка вложений.

После подготовки всех полей и вложений письма просто нажмите «Отправить». При успешном выполнении отправки будет выведено соответствующее сообщение.

При возникновении вопросов обращайтесь в личку.

Установка

  • Установить в Windows модуль OSSMTP (файл из архива «OSSMTP_Setup.msi»)
  • Установить, при необходимости, Microsoft Office Excel
  • Поместить файл обработки «SendEmailModule.ert» в папку: «ПутьВашейИБ/ExtForms/»
  • Запустить 1С Предприятие
  • Открыть форму «Дополнительные возможности» во вкладке «Сервис»
  • Нажать клавишу «Изменить», далее «Внести в список», выбрать файл «SendEmailModule.ert», ввести название для обработки и нажать«ОК»
  • Теперь обработка в списке «Дополнительные возможности» и ею можно пользоваться.

Запуск обработки напрямую из документа

Описанные ниже действия для пользователей конфигурации «Торговля и Склад»!

Необходимо немного изменить код глобального модуля в типовой процедуре «глВыгрузить». Так должен выглядеть код процедуры:

Процедура глВыгрузить(Конт) Экспорт

Если Конт.Выбран() = 0 Тогда
Предупреждение("Перед выполнением данной операции необходимо сохранить документ!", 60);
Возврат;
ИначеЕсли Конт.Модифицированность() = 1 Тогда
Предупреждение("Документ был изменен. Перед выгрузкой необходимо записать документ!", 60);
Возврат;
КонецЕсли;
//ДОБАВЛЕНО НЕТИПОВОЕ
Если ФС.СуществуетФайл(КаталогИБ()+"ExtFormsSendEmailModule.ert")=0 Тогда
Предупреждение("Не найден файл обработки ""SendEmailModule.ert"" для отправки почты!", 25);
Возврат;
Иначе
ОткрытьФорму("Отчет", Конт.ТекущийДокумент(), КаталогИБ()+"ExtFormsSendEmailModule.ert");
КонецЕсли;
//КОНЕЦ ДОБАВЛЕНО НЕТИПОВОЕ

//строка исходного кода типовой процедуры
//ОткрытьФормуМодально("Обработка.XMLВыгрузкаДокумента", Конт.ТекущийДокумент());

КонецПроцедуры // глВыгрузить()

Теперь в меню «Действия» документа «Заказ поставщику» при нажатии пункта «Выгрузить (отправить по эл.почте)» откроется окно обработки отправки почты с прикрепленным и подготовленным к выгрузке документом.

Удобно организовать вход в обработку при помощи иконки на панели инструментов. Например:

Сравнение версий

v.1.0.1

  • Исправлены мелкие недочеты
  • Добавлена возможность выгрузки артикула товара (вкладка «Настройки», галка «Выгружать артикул товара»)

20 Comments

  1. uvsd2014

    как хорошо что и в 1с7.7 работают, а то некоторые не успеют перейти на 1с8.2 как уже думают как бы перейти на 1с8.3. и так следуют моде, чтобы не отстать от времени… но классика вечна. Радует — радует, что есть есть консервативно настроенные программисты.

    Reply
  2. etmarket

    (1) uvsd2014, Спасибо за лестный комментарий! Работаем на семёрке и переходить не собираемся. Просто совершенствуем конфигурацию в ногу со временем 🙂

    Reply
  3. bajen

    Пытаюсь отправить письмо с помощью данной обработки. Настраиваю через mail.ru и ssl, нажимаю отправка, долго думает, потом выдает сообщение что письмо отправлено, на самом деле ничего не отправилось.

    Reply
  4. etmarket

    (3) bajen, письмо могло отфильтроваться при отправлении антивирусом на вашем ПК, либо попасть в папку спам у получателя. Обработка и библиотека рабочие. Проверена много раз при внедрении.

    Reply
  5. bajen

    (4) etmarket, нет в спам не попадает. Не смог почту на mail.ru настроить, сделал на qip.ru без ssl и все нормально заработало. Спасибо за обработку.

    Reply
  6. etmarket

    (5) bajen, а для mail.ru настройки как в скриншоте данной публикации ставили?

    Reply
  7. Доня

    Это же только для ТиС ?

    Reply
  8. etmarket

    (7) Доня, не только. При мельчайших доработках можно использовать и в Бухгалтерии. Но тестировалось на ТиС. На комплексной тоже должно работать.

    Reply
  9. selesta

    вроди бы не плохо

    но имхо 2 минуса

    — лишняя компонента, все тоже самое делается через CDO без вмешательств в винду и прав

    — не универсальность по отношению к источнику и конфе

    Reply
  10. etmarket

    (9) selesta, что значит лишняя компонента?! Для вас лишняя, для кого то очень нужная.

    По поводу универсальности. Это внешняя компонента, её надо правильно подключить. Я привел пример для конфигурации «Торговля и склад». Для других конфигураций не намного сложнее.

    Reply
  11. Alav

    (10) Вот только для коммерческого использования она платная http://ostrosoft.com/ossmtp.aspx

    Reply
  12. user752800

    какие именно документы нужно отправлять

    Reply
  13. etmarket

    (11) а вы и не пользуетесь ей в коммерческих целях

    Reply
  14. etmarket

    (12) любые с табличной частью и товарами.

    Reply
  15. Alav

    (14) Ну как бы неплохо это было осветить в описании, а не узнавать после скачивания.

    Как мне теперь заказчать обработку обратно и вернуть потраченные стартмани?

    Reply
  16. etmarket

    (15) это не влияет на работоспособность программы. По поводу возврата, вопрос в техническую поддержку.

    Reply
  17. ivanmeneger

    Запускаю Ваш модуль. Все настройки перепробовал, но не отправляет почту.

    Скрипт срабатывает до строки Состояние(«Отправка электронной почты…»);

    И зависает насмерть, всё перепробовал, но не работает всё равно.

    П.С. У меня типовая 1с7,7 ТиС

    Reply
  18. CheBurator

    для «выгрузки» документа можно воспользоваться любой печатной формой этого документа и тупо отправить эту печформу на почту. реализуется без изменения конфигурации связкой https://infostart.ru/public/14180/ + https://infostart.ru/public/14131/

    Перед использованием второй упомянутой обработки следует убедиться что у вас на ПК работает обычная отправка через любой почтовый агент. если работает такая отправка то скорее всего и будет работать https://infostart.ru/public/14131/

    а https://infostart.ru/public/14180/ — всего лишь перехватчик печатных форм, их конвертации и скармливания отсылателю-почтовику

    Reply
  19. trdm

    (1)

    Радует — радует, что есть есть консервативно настроенные программисты.

    Скорее умеющие считать бабло директора.

    Ибо программист — не главный в вопросах «на что предприятие тратит бабло»

    Reply
  20. etmarket

    (17) проверьте, что письма не отправляются в спам на почтовом сервере получателя. Поэкспериментируйте с разными доменами для отправки почты. Проверьте firewall на компьютере отправителя, и добавьте в исключение 1с и обработку smtp.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *