Последнее обновление: 23 мая 2015 в 14:58
Подпишись на RSS
rss Подпишитесь на RSS, чтобы всегда быть в курсе событий.
7 октября 2010 ·

Иногда сталкиваюсь с проблемой, когда необходимо осуществить поиск в таблице значений 2х значений, например необходимо найти товар по артикулу на определенном складе. в 1С 7.7 можно применить НайтиЗначение, но возможно найти только одно значение. Я решаю эту проблему достаточно просто. Создаю дополнительное служебное поле, в которое записываю оба реквизита-значения. Например, так: Т = СоздатьОбъект(«ТаблицаЗначений»); ……… […]


30 августа 2014 · Интересные места

День 1 18 августа 2014. Проснувшись утром обнаружили, что вода очистилась, зелень ушла. Ура можно купаться. Сегодня пересекли Жигулевское море и прибыли в город Тольятти для того, чтобы объехать ГЭС. Причалили в районе речного порта, просушились, позвонили в такси, заказали ГАЗель, которая перевезла нас на другую сторону плотины. На это у нас ушло около 3х […]


Метки

Метки записей
1с реестр новости Печатные формы Ошибки 1С Экономика Жизнь Подключить 1С к MySQL Драйвера Вирусы вирус код защита Взлом 1С Анализ ПДЗ свертка в картинках сверка базы 1С СМС оплата переустановка windows скачать конвертер office 2003-2007 дравер MySQL скачать office 2007 Windows XP Обработки Drivers Армия сертфикаты День жестянщика Интересные места Новая форма счет-Фактуры Zver DVD Бухгалтерия Видео гаджеты сайт HP Pavilion dv6000 Удаление партий Экстремальные игры Интернет Отношения ZverCD LiveCD Dr.Web Делаем LiveCD перенос документов автозапуск автоматизация Деньги связь печать от поставщика Альпинизм мошенничество Пошаговая свертка Взлом Драйвер ODBC скачать Asus Eee Проблемы заблокирован Командная строка перенумарация Отзывы Работа Оптимизация Финансы свертка реестр Игры пакетный запуск 1С Скачать 1С Свертка базы 1С Кино Свертка 1С программы для слепых удаляем пароли Взлом 1 Документы на почту Спорт homachi локальная сеть через интернет Структура 1С office 2003 вирус SMS Программы 1с и MySQL Юмор контент-провайдер расчет ПЗД Загрузка с компакт - диска открыть xlsx docx Интерент Вопросы Oracle Система партии антивирусы Добавить новую метку Файлы 1С вирус эмулирует нажатие Win Интренет Вся Установка Windows jaws просроченная дебиторская задолженность сбились номера документов свертка торговли Отчет СМС Методика свертки 1С Программы для 1С восстановить нумерацию бесплатно Автомобили Мужчина и женщина редактирование DBF взломать пароль антивирус Свертка по партиям портативный аккумулятор узнать пароль Оборудование Фото уменьшить размер базы Сайты удаление документов XPE Спутниковое ТВ Лирика Обзоры
24 августа 2010

Отпрявляем почту из 1С

Автор статьи: , 24 августа 2010 в рубрике . Метки: , . Просмотров: 16 708

При написании конфигурации-робота, которая висит в трее и выполняет необходимые обработки по расписанию встала необходимость отслеживать ошибки, возникающие проблемы, записывать в файл и отправлять на почту. Можно конечно использовать для этой цели (отправка почты) средства 1cpp.dll, используя встроенный почтовый клиент, но в этом случае будет запускаться сам почтовый клиент, например outlook express, что не приемлемо, ибо за компом еще сидит оператор. Поэтому я решил использовать внешнюю компоненту DialMail.dll. Компонента Dialmail.dll может многое, в том числе отправлять и принимать почту, работать с FTP — серверами, упаковывать файлы и пр. Меня же интересует только функция отправки писем с вложениями.

e mail Отпрявляем почту из 1С

Авторские права на предоставленный материал принадлежат автору сайта http://extremallife.ru

Итак, качаем dialmail. Архив содержит саму компоненту dialmail.dll, примеры работы в 1С, файлы для синтаксис-помощника в 1С. В принципе вся необходимая информация содержится в справке к компоненте, поэтому я приведу пример кода для быстрой вставки для конкретного случая — отправка писем из 1С.

Далее по шагам как использовать dialmail для отправки почты.

1. Копируем dialmail.dll в каталог базы данных. ( в принципе можно скопировать в любое место, из которого потом в коде 1С будем подключать). 2. Копируем файл dialmail.als в каталог C:\Program Files\1Cv77.adm\BIN. Это необходимо для помощи с синтаксис — помощнике.

dialmail als Отпрявляем почту из 1С

Методы dialmail в синтаксис-помощнике

Предварительные приготовления завершены, теперь к делу.

3. Заводим почтовый ящик или готовим настройки существующего

Я создал почтовый ящик на mail.ru. Этот бесплатный сервис вполне подходит для наших целей.

Нам понадобятся адрес smtp сервера, логин и пароль от почты.

4. Подключаем компоненту dialmail.dll

Обычно это делается при открытии формы обработки:


Процедура ПриОткрытии()
//.......................
Путь = КаталогИБ() + "DialMail.dll";
Если ЗагрузитьВнешнююКомпоненту(Путь) = 0 Тогда Сообщить("Неудачная попытка загрузить DialMail.dll"); КонецЕсли;
//.........................
КонецПроцедуры;

5. Заполняем реквизиты и оправляем почту.


Процедура ОтправитьПочту()
ОтправкаПочты = СоздатьОбъект("AddIn.SMTP");
ОтправкаПочты.РабочийКаталог=СокрЛП(КаталогИБ());
ОтправкаПочты.УстановитьКодировкуИСпособКодирования(14, 1);
ОтправкаПочты.MakeContentDescriptionTag = 0;
ОтправкаПочты.ПочтоваяПрограмма = "Имя почтовой программы";
//В моем случае ошибки пишутся в отдельный каталог в текстовые файлы, имена которых соответствуют дате.
ВыбФайл = СокрЛП(КаталогОшибок) +"\"+ СокрЛП(ДатаЧисло(ТекущаяДата())) + СокрЛП(ДатаМесяц(ТекущаяДата()))+ СокрЛП(ДатаГод(ТекущаяДата())) + ".txt";
//имя файла - вложения должно быть в кавычках.
ВыбФайл = """" + ВыбФайл + """";
// От кого, Кому, Копии - это адреса почты.
ОтправкаПочты.СоздатьПисьмо(ОтКого,Кому,СокрЛП(СпрПочта.Копии),"Ошибки обмена в " + СокрЛП(Константа.Магазин.Наименование),,"Данное письмо сформировано автоматически. Смотри вложение",СокрЛП(ВыбФайл));
Если ОтправкаПочты.Подключиться("smtp.mail.ru","25",ИмяПользователя,Пароль)=0 тогда
Сообщить("Не смогли подключиться к SMTP-серверу");
КонецЕсли;
Если ОтправкаПочты.ОтправитьВсеПисьма(0,1,0) = -100 Тогда
Сообщить("Успешно отправлено");
КонецЕсли;
КонецПроцедуры

Вот и все. Почта отправляется на ура. Все легко и просто.

Скачать внешнюю компоненту DialMail.dll




К записи "Отпрявляем почту из 1С" 2 комментария

Вопрос — отчего у меня не работает?Задача — автоматическая отправка почты (раз в сутки)Скачал Диамайл 2 7 6. Поставил в папку 1С7 где БИН. Сисадмин сказал что зарегестрировал.ЗагрузитьВнешнююКомпоненту(«C:\Program Files (x86)\1Cv77\BIN\DialMail.dll») прошло норм — сообщение и возврат не было.А вот дальшеПопытка Почта = СоздатьОбъект(«AddIn.SMTP»); — фиг! Вылет по исключению с сообщением Не удалось создать объект из компоненты DialMail.dll  — и занавес!Причем когда я убрал Попытка-Исключение, оставил просто СОздатьОбъект — то следующий оператор    Почта.ПОдключиться (Сервер, параметры…) отработал норм!Но вылетало при попытках присвоить объекту значения реквизитов!ЧТО НЕ ТАК??Самое смешное. Я брал «прототипом» — обработку из пакета ExampleSMTP.ert -которая работала!  (я прогнал майл с рабочего компа на домашний — норм!).Всего лишь копировал процедуры с этого примера в свою обработку.После чего обнаружил что не работает — но перестал работать и Экзампл!! С тем же сообщением. И другие примеры из скачанного пакета — тоже!Я программист 1С, стаж 13 лет. Но с почтой из 1С не работал никогда — вот первый блин выходит комом!   

Ответить

Заработало! В копии базы. Больше ничего не менял! ЧТо за….Предположение: перенося процедуры я, прочтя мануал, решил улучшить и вставил в концеОтправкаПочты.Отключиться(); В копии — убрал.МОгло это «кислород перекрыть»?

Ответить


Оставить комментарий

*

Блог программиста 1С. Программирование 1С
Если Вас что-то заинтересовало или возникли вопросы, пишите.
petr@evseev.ru
Skype - evseev_petr
ICQ - 262808698

Сохраните меня в социальных сервисах

Комментарии

Присоединяйтесь к обсуждению
  • Леха: Мало того, что это говно-антивирус требует .Net Framework не ниже 4.0, так он еще пожирает ресурсы компьютера,...
  • tommy: AVG равно еще хуже Касперского . Иди в жопу с ним
  • просто_чайник: Не люблю этот антивирус. Заметил такую особенность. Если обновить базы в начале работы, довольно часто...
  • Елена: Самое главное. Файл для совместной работы открыть нельзя! Если надо что-то отредактировать — только...
  • Виктор: Поставили мне на работе эту замечательную программку. Работать невозможно, ужасные тормоза. Стали...

Избранное видео

Ссылки