Поскольку штатными средствами 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
- Исправлены мелкие недочеты
- Добавлена возможность выгрузки артикула товара (вкладка «Настройки», галка «Выгружать артикул товара»)
как хорошо что и в 1с7.7 работают, а то некоторые не успеют перейти на 1с8.2 как уже думают как бы перейти на 1с8.3. и так следуют моде, чтобы не отстать от времени… но классика вечна. Радует — радует, что есть есть консервативно настроенные программисты.
(1) uvsd2014, Спасибо за лестный комментарий! Работаем на семёрке и переходить не собираемся. Просто совершенствуем конфигурацию в ногу со временем 🙂
Пытаюсь отправить письмо с помощью данной обработки. Настраиваю через mail.ru и ssl, нажимаю отправка, долго думает, потом выдает сообщение что письмо отправлено, на самом деле ничего не отправилось.
(3) bajen, письмо могло отфильтроваться при отправлении антивирусом на вашем ПК, либо попасть в папку спам у получателя. Обработка и библиотека рабочие. Проверена много раз при внедрении.
(4) etmarket, нет в спам не попадает. Не смог почту на mail.ru настроить, сделал на qip.ru без ssl и все нормально заработало. Спасибо за обработку.
(5) bajen, а для mail.ru настройки как в скриншоте данной публикации ставили?
Это же только для ТиС ?
(7) Доня, не только. При мельчайших доработках можно использовать и в Бухгалтерии. Но тестировалось на ТиС. На комплексной тоже должно работать.
вроди бы не плохо
но имхо 2 минуса
— лишняя компонента, все тоже самое делается через CDO без вмешательств в винду и прав
— не универсальность по отношению к источнику и конфе
(9) selesta, что значит лишняя компонента?! Для вас лишняя, для кого то очень нужная.
По поводу универсальности. Это внешняя компонента, её надо правильно подключить. Я привел пример для конфигурации «Торговля и склад». Для других конфигураций не намного сложнее.
(10) Вот только для коммерческого использования она платнаяhttp://ostrosoft.com/ossmtp.aspx
какие именно документы нужно отправлять
(11) а вы и не пользуетесь ей в коммерческих целях
(12) любые с табличной частью и товарами.
(14) Ну как бы неплохо это было осветить в описании, а не узнавать после скачивания.
Как мне теперь заказчать обработку обратно и вернуть потраченные стартмани?
(15) это не влияет на работоспособность программы. По поводу возврата, вопрос в техническую поддержку.
Запускаю Ваш модуль. Все настройки перепробовал, но не отправляет почту.
Скрипт срабатывает до строки Состояние(«Отправка электронной почты…»);
И зависает насмерть, всё перепробовал, но не работает всё равно.
П.С. У меня типовая 1с7,7 ТиС
для «выгрузки» документа можно воспользоваться любой печатной формой этого документа и тупо отправить эту печформу на почту. реализуется без изменения конфигурации связкойhttps://infostart.ru/public/14180/ + https://infostart.ru/public/14131/
Перед использованием второй упомянутой обработки следует убедиться что у вас на ПК работает обычная отправка через любой почтовый агент. если работает такая отправка то скорее всего и будет работатьhttps://infostart.ru/public/14131/
аhttps://infostart.ru/public/14180/ — всего лишь перехватчик печатных форм, их конвертации и скармливания отсылателю-почтовику
(1)
Скорее умеющие считать бабло директора.
Ибо программист — не главный в вопросах «на что предприятие тратит бабло»
(17) проверьте, что письма не отправляются в спам на почтовом сервере получателя. Поэкспериментируйте с разными доменами для отправки почты. Проверьте firewall на компьютере отправителя, и добавьте в исключение 1с и обработку smtp.