Загрузка файлов из директории, находящейся на FTP сервере
В этом примере мы разберем пример загрузки файлов из директории /outgoing/ находящейся на FTP сервере localhost (127.0.0.1)
в директорию на локальном компьютере C:\Atlas365\data\ftp_download\. Файлы к этому примеру находятся в директории C:\Atlas365\examples\FTP\.
Данный пример является общим руководством и может быть применен к Вашему FTP-серверу.Шаг 1
Сформируем файл процесса, который будет проверять директорию outgoing на FTP сервере localhost на предмет нахождения файлов формата Excel (xls, xlsx). В файле процесса укажем эту директорию, а также директорию C:\Atlas365\data\ftp_download\ в которую будут сохраняться файлы. Данный файл был создан (ProcessFTPDownload.xml) и находится: C:\Atlas365\examples\FTP\. Ниже мы разберем пошаговое создание этого файла.- Откройте редактор процессов Atlas365 (Пуск -> Все программы -> Atlas365 –> Edit Atlas365 processes).
- Создайте стартовое (кнопка «Start event») и конечное (кнопка «End event») события:

- Откройте настройки стартового события («Start»).

- На панели FTP files установим следующие параметры:
Name of FTP server: localhost
Path to the file: /outgoing/*.xls*
Check every: PT10S
И нажмем кнопку «Select this trigger». - Добавим две задачи (кнопка «Task»), расположим их одну под другой, так, как показано на рисунке ниже. Верхнюю задачу назовем «Загрузить файл с FTP-сервера», а нижнюю – «Копировать файл».
- Войдем в настройки задачи загрузки файла с FTP-сервера:

В разделе «FTP functions» в подразделе «Download file» укажем «C:\Atlas365\data\» в качестве директории для загрузки файлов. Эта директория будет представлять собой временное хранилище файлов, которые впоследствии будут перемещены в директорию «C:\Atlas365\data\ftp_download» (см. ниже). Нажмем кнопку «Select this task» и сохраним изменения.
- Войдем в свойства задачи «Копировать файл»:

В разделе «File functions» в подразделе «File copy» установим следующее значение директории в которую будут скопированы (с перемещением) файлы: «C:\Atlas365\data\ftp_download\». Нажмем кнопку «Select this task» и сохраним изменения. - Соединим все элементы соединительными линиями. Чтобы соединить два элемента, первый из них (источник) необходимо выделить:

Затем нажать на кнопку «Select element and press me», при этом появится следующая подсказка, говорящая о том, что необходимо выбрать второй соединяемый элемент (т.е. приемник):
Выберем второй элемент, появится соединительная линия:
Далее таким же образом соединим остальные элементы, чтобы получилось так, как на рисунке ниже:
- Проверим только что созданную структуру на наличие ошибок, нажав на кнопку «Validate structure». Если есть ошибки, то будет выдано соответствующее сообщение.
- Сохраним созданный процесс в файл при помощи кнопки «Save as» под именем «ProcessFTPDownload.xml» в директории C:\Atlas365\examples\FTP.
- Закроем редактор процессов. На этом этапе пример создания файла процесса с помощью редактора процессов завершен.
На рисунке ниже показана основная часть сформированного xml – файла процесса:
<process id="processID20160509">
<startEvent name="Start" id="StartEvent0001" parallelMultiple="false" isInterrupting="true">
<extensionElements>
<atlas:FTPFile>
<Path Identity="localhost">/outgoing/*.xls*</Path>
<Interval>PT10S</Interval>
</atlas:FTPFile>
</extensionElements>
</startEvent>
<endEvent name="End" id="EndEvent0003"/>
<task name="Загрузить файл с FTP-сервера " id="Task0002" completionQuantity="1" startQuantity="1" isForCompensation="false">
<extensionElements>
<atlas:action do="FTPDownloadMoveToDir">
<param1 type="text">C:\Atlas365\data\</param1>
<param2 type="text"/>
</atlas:action>
</extensionElements>
</task>
<task name="Копировать файл" id="Task0006" completionQuantity="1" startQuantity="1" isForCompensation="false">
<extensionElements>
<atlas:action do="FileCopyToDir">
<param1 type="text">C:\Atlas365\data\ftp_download</param1>
</atlas:action>
</extensionElements>
</task>
<sequenceFlow name="" id="SequenceFlow0009" targetRef="Task0002" sourceRef="StartEvent0001" isImmediate="false"/>
<sequenceFlow name="" id="SequenceFlow0010" targetRef="Task0006" sourceRef="Task0002" isImmediate="false"/>
<sequenceFlow name="" id="SequenceFlow0011" targetRef="EndEvent0003" sourceRef="Task0006" isImmediate="false"/>
</process>
Шаг 2
Настроим файл конфигурации программы. Для этого запустим ConfigEditor, создадим сервер процессов, настроим FTP сервер, и подключим созданный на предыдущем шаге файл процесса. Этот конфигурационный файл находится по следующему адресу: C:\Atlas365\examples\FTP\ ExampleFTPConfig.xml:
Необходимо удостовериться в правильности параметров FTP сервера:
Подключим файл процесса (ProcessFTPDownload.xml) (сделаем его активным):
Шаг 3
Запустим программу и проверим, что всё работает. Программа запускается нажатием на кнопку «Запуск»:
Проверим, что файл «Пример.xls» скачался и находится в директории C:\Atlas365\data\ftp_download:
На этом мы заканчиваем пример загрузки файла из директории на FTP – сервере.С уважением,
Коллектив разработчиков программы Atlas365.