Запись информации в excel файл с последующей его отправкой по email

Материал из Oktell
Перейти к: навигация, поиск

Наверх

Сохранение данных полученных оператором от клиента в файл excel с последующей отправкой данного excel файла по e-mail.

Для корректного сохранения всех пользовательских данным,полученных оператором в ходе разговора, можно использовать локальные переменные, и дальнейшую запись этих данных с помощью SQL запроса файл EXCEL.

Рассмотрим на примере:

В ходе диалога оператор заполняет соответствующие текстовые поля,значения которых мы сохраняем в переменные. В нашем случае это переменные info1,info2 и info3.

Эксель2.PNG

Затем с помощью компонента SQL-запрос реализуем запись значений этих переменных в документ MS EXCEL, в нашем случае документ 111.xls. Подробнее рассмотрим настройку компонента SQL-запрос.

На вкладке подключение используем OLE драйвер. Строка подключения будет выглядеть так:

Provider=Microsoft.Jet.OLEDB.4.0; Data Source=D:\111.xls; Extended Properties="Excel 8.0" 
Эксель3.PNG

Далее переходим на вкладку запрос. С помощью команды insert реализуем заполнение файла. Таким образом запрос получит вид:

insert into [test]
values (@info1,@info2,@info3) 

Важное замечание: при использовании OLEDB Provider (например, при работе с файлами Excel) необходимо использовать неименованные переменные. То есть в запросе указывать в качестве переменной не @info1 , а ?. Если же вы будете использовать именованные переменные @b, @a, @c, то в запрос они подставятся в лексикографическом порядке @a, @b, @c и произойдет путаница с переменными.

Таким образом, резюмируя выше сказанное, запрос желательнее писать следующим образом:

insert into [test]
values (?, ?, ?) 


Эксель4.PNG

И последняя вкладка - параметры, здесь назначает входные параметры используемые в ходе запроса. В нашем случае @info1,@info2 и @info3. В случае использования ? параметры указываются в том порядке, в котором они идут в запросе.


Эксель5.PNG


Предварительно нужно создать файл Excel:

Эксель7.PNG

Работа будет выглядеть так:

Эксель8.PNG
Эксель9.PNG

Далее рассмотрим служебный сценарий,который будет производить отправку E-mail.

С помощью компонента присвоение переменной "name" присваиваем значение равное имени файла с разрешением, который мы будем отправлять. В нашем случае переменной "name" даем значение "111.xls"

Эксель11.PNG

Далее переходим к компоненту "Отправка Email"

Указываем с помощью какого сервера SMTP осуществить отправку, указываем адресата(полный адрес), поле от кого должно соответствовать имени вашей почты.

Эксель13.PNG

Так же указываем тему,формат - текст и непосредственно текст вашего сообщения.

Затем в редакторе свойства "вложение" переходим на вкладку сформировать имя,где выбираем свойство абсолютный путь, и указываем переменную в которой содержится имя файла.

Эксель14.PNG

Сценарий сохраняем. Переходим к задаче.

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

Эксель12.PNG
Эксель15.PNG

Так же рекомендуется в настройках задачи на вкладке дополнительно, свойству поведение сценария диалога при разрыве коммутации выставить значение "Довести сценарий до конца"

Теперь,после каждой коммутации на указанный email адрес будет отправляться письмо в котором будет содержаться excel файл.