1452
правки
Изменения
Нет описания правки
== Экспорт данных ==
query, OperNo, FileType, Param1, Param2, Param3, Param4, Param5, Param6
QueryText
Модуль выполняет запрос QueryText, и передает результат его выполнения функции отправки, описанной в первой строке задания.
{|
Тип операции - 1:
{|
!Параметр
!Описание
|-
|Param1
|Адрес e-mail для отправки
Тип операции - 2:
{|
!Параметр
!Описание
|-
|Param1
|Полный путь к папке на FTP-сервере (вместе с именем сервера)
Типы операции - 3, 4:
{|
!Параметр
!Описание
|-
|Param1
|Имя пользователя системы "Аксиомус"
Тип операции - 5:
{|
!Параметр
!Описание
|-
|Param1
|Адрес сервера системы "Эмпрана"
|Не используется
|}
== Примеры использования ==
=== Импорт заказов в стандартном формате с FTP-сервера ===
input, 0, 4, myftphost.ru/upload/foulder/, MyUserName, MyPassword, *_orders.csv, 123, active
=== Экспорт заказов в CSV-файле на FTP-сервер ===
query 0,
replace scheduler.sent (code, sent, source, rectype)
select a.code, 'F', b.source, 2
from
courier.address a join zakaz b on a.zakaz=b.code left join scheduler.sent s on s.code=a.code and s.source=b.source and s.rectype=2
where a.ldtime>=date_sub(now(), interval 7 day)
and s.code is null
and b.source=123
query, 2, 1, myftphost.ru/upload/foulder/, MyUserName, MyPassword, MY-ORD-%DT%
select a.code, a.strbarcode, a.target, a.name, a.address, a.phone, a.rur
from scheduler.sent s join courier.address a on s.code=a.code
where s.sent='F' and s.source=123 and s.rectype=2
query, 0
update scheduler.sent set sent='T' where sent='F' and source=123 and rectype=2
Данное задание состоит из 3-х подзаданий. В первом - запрос собирает коды корреспонденции, измененной за последние 7 дней, но не добавленных в очередь отправки в таблице sent. Во втором происходит формирование CSV-файла с заказами, у которых стоит отметка, что они не отправлены (sent.sent='F'), и отправка файла на FTP-сервер. В последнем подзадании запрос отмечает всю корреспонденцию отправленной. Если на втором этапе, при отправке файла произойдет ошибка, то этот, третий запрос не будет выполнен, заказы останутся в состоянии "не отправлен", и в следующий раз будет предпринята повторная попытка их отправки.