Инструменти за потребители

Инструменти за сайта


kak_da:izprastane_na_razpechatka_po_email

Изпращане на разпечатка по електронна поща с и без локален пощенски клиент

За да се конфигурира произволна подложка да може да изпраща разпечатка по електронна поща е нужно да се направят най-малко следните настройки в Report.EmailSettings:

1) Избира се Report в ReportTree:

2) Избира се EmailSettings - натиска се „+“:

В подложката е възможно да се укажат всякакви готови свойства на бъдещото писмо, като:

  • Recipients - Получател(и)
  • Subject - относно
  • Body - съдържание на самото писмо
  • ReportFormat - формат на файла (по подразбиране PDF, но може и в много други, повече или по-малко успешно)

Тези свойства могат да се заложат твърдо в самата подложка, да се програмират динамично и/или да се изтеглят от базата данни чрез код в подложката, в събитие ReportBeforeEmail.

Методът на изпращане на писмата има два варианта за настройка:

Вариант 1: Използване на локален пощенски клиент (като Microsoft Outlook, EmClient, Thunderbird):

За този вариант е необходимо да има инсталиран локално пощенски клиент, който поддържа MAPI (най-популярният такъв е например Microsoft Outlook, но може да се използват и други, като emClient, Thunderbird и др.) и в подложката да са настроени следните свойства:

  • PreviewInEmailClient да е чекнато
  • ShowEmailDialog да не е чекнато

За да се изпрати писмо от крайния ползвател на програмата се натиска Изпрати по E-MAIL в диалога за Преглед печат:

След което СМЕРП стартира локалната пощенска програма, зарежда в нея Получателя, относно, съдържанието на писмото и прикача като прикачен файл разпечатката от подложката в избрания формат (обикновено PDF).

Възможно е в Windows да има настроени ограничения, които да НЕ ПОЗВОЛЯТ безпроблемното стартиране чрез MAPI протокола на локалния пощенски клиент.
Ако има такива затруднения те са отговорност и в контрола на локалния ИТ администратор.

Вариант 2: Директно изпращане на поща през SMTP

Описаната тук функционалност е достъпна от версия R2018.8 v2018.11.8 или по-нова.

Когато на машината, на която се използва СМЕРП няма инсталирана пощенска програма от типа на Microsoft Outlook (например защото се използва уеб поща като gmail, abv или се работи през RemoteDesktop/App) няма как да се използва вграденият в СМЕРП механизъм за изпращане на разпечатки (като фактури, оферти, заявки и т.н.) по електронна поща, защото той разчита именно на такъв допълнителен софтуер.

За начало в подложката трябва да са настроени свойства:

  • PreviewInEmailClient да не е чекнато
  • ShowEmailDialog да е чекнато

Допълнително е необходимо да се настрои следната техническа информация, която може да бъде предоставена от ИТ администратора на Вашата фирма:

  • FromAddress - имейл адрес, от името на който да се изпрати писмото. Трябва в пощенския сървър да е позволено да се изпраща от този адрес (повечето сървъри не позволяват изпращане от адрес, от името на който не е позволено на потребителя указан в UserName да изпраща поща). Примерно ipetrov@gmail.com
  • FromName - Името, което ще се изпише като изпращач, в свободен текст, примерно Ivan Petrov (някои пощенски сървъри като Office365 и GMail игнорират този текст и използват само името, което е конфигурирано в самия сървър)
  • HostAddress - smtp сървър, от който ще се изпраща пощата. Примерно smtp.gmail.com
  • Port - SMTP порт, на който да се достъпи сървъра. Най-често (и най-несигурно) е 25; GMail и Office365 изискват порт 587.

Важно:

  1. Когато портът е номер до 100 включително, СМЕРП НЕ използва TLS (примерно порт 25)
  2. Когато портът е над 100, СМЕРП автоматично използва TLS (примерно 587)
  3. Важно: Когато се използва TLS, в директорията на SelMaticERP.exe трябва да присъстват OpenSSL библиотеките - това са DLL файлове, които могат да се свалят от http://indy.fulgan.com/SSL/ и по принцип се инсталират автоматично от инсталатора на СМЕРП (след R2018.11).
  • UserName - потребителско име, с което да се влезе в пощенския сървър, например ipetrov@gmail.com
  • Password - парола, с която да се влезе в пощенския сървър
  • ReplyTo - email адрес, на който да се изпрати поща, в случай, че получателят натисне бутон Reply в своя пощенски клиент

За да се изпрати писмо от крайния ползвател на програмата се натиска Изпрати по E-MAIL в диалога за Преглед печат:

В следствие СМЕРП стартира вградения си пощенски клиент (към настоящия момент все още не се предлага на Български):

Потребителят може да редактира всички параметри на писмото (като, но не само: получател, копие до, относно, самия текст на писмото). Към писмото автоматично се прикача разпечатката от подложката в съответния формат (най-често PDF), като може да се закачат и допълнителни файлове.

За да се изпрати писмото се натиска „Send“.

Програмата ще визуализира в реално време етапите/прогреса на изпращане на писмото.

Ако по време на изпращането пощенският сървър сигнализира за грешка, тя ще се покаже на екрана.

Практическият опит показва, че някои сървъри, като gmail и office365 не връщат никаква грешка, ако настройките за порт или потребителско име или „FromAddress“ са непозволени - вместо това директно, без грешка, затварят връзката, без да връщат никаква сигнализация, че писмото не е доставено.

Налице е динамично изтегляне на настройки за SMTP сървър при изпращане на имейли от печатни форми с вградения имейл клиент на Report Builder.
Настройките се запазват в номенклатура Константи за интерфейси, където трябва да се добавят следните константи: - SMTP_HOST_NAME – host адрес на SMTP сървъра; - SMTP_PORT – порт; - SMTP_USERNAME – потребителско име; - SMTP_PASSWORD – парола.

kak_da/izprastane_na_razpechatka_po_email.txt · Последна промяна: 2021/04/16 13:48 от k.kyurkchieva