Quad.Wiki

Отправить/получить по FTP/SFTP

 

Для работы с FTP используется действие Quad.Magic и программа WinSCP.

Проверьте, есть ли у вас папка Quad Solutions\files\winscp

1. Создайте такую папку

2. Скачайте и установите в созданную папку программу WinSCP https://winscp.net/eng/download.php

Если у вас уже установлена программа WinSCP и вы не хотите ее переустанавливать, то тогда меняйте путь к этой программе в Настройке 4 заданий, описание которых приведено ниже.

 

Если у вас планируется много операций, связанных с FTP, то сделайте в QM отдельную группу для этих заданий.

1. Зайдите в Редактор Quad.Magic

2. Выберите группу действий, в которой будет выполняться задание для FTP или создайте новую группу действий.

3. Выберите нужное действие

4. В результате добавится действие Quad.Magic, в котором нужно обязательно изменить название (чтобы потом не путаться) и установить порядок, чтобы действие выполнялось в нужной последовательности с остальными действиями (например, если это отправка, то после этого как отработает экспорт файлов, а если это получение файла с ценами, то действие должно выполниться до обновления цен).

Отправить по FTP

Для отправки файлов на FTP нужно создать отдельную папку в папке Quad Solutions\files\4_ out , в которую будут выгружаться все файлы, которые нужно отправлять на FTP (если это FTP одинаковое для всех файлов, если разное, то создать несколько папок)

Перенастройте шаблоны экспорта и действия Quad.Magic, чтобы файлы экспортировались в эту папку.

В добавленном ранее действии QM нужно поменять настройку 4.

 

1. В строке номер 6 укажите адрес сервера, порт, логин и пароль для доступа к FTP. Если не знаете какой порт, то это обычно 21.

Или можно оставить адрес без порта, в таком виде ftp://login:password@server , если вы не знаете какой порт (т.е. у вас есть данные подключения без порта).

Если у вас в пароле есть знак процента, то замените его в настройке на 2 процента, т.е. %% . Например, если пароль у вас 12345%678, то в файле напишите его как 12345%%678

По другим символам можно посмотреть здесь: https://winscp.net/eng/docs/session_url

 

2. В строке 8 укажите путь к вашей папке, из которой будут отправляться файлы

Все кавычки и знаки нужно оставлять как есть, только менять указанную информацию.

3. В строке 8 укажите папку на FTP, в которую будет копироваться файл.

Если нужно файл отправлять в корень папки, которая открывается при подключении к FTP с вашим логином и паролем, то здесь нужно поставить /

 

Полученное в результате настройки задание будет отправлять все файлы из созданной папки на сервер FTP, в случае, если эти файлы изменились по сравнению с теми, которые уже отправлены на FTP. Т.е. если файл не менялся, то заново он не будет копироваться.

 

Отправить по SFTP

Для отправки по SFTP нужно сделать то же самое, что и для отправки по FTP. Действие добавляется этим пунктом меню:

 

После запуска действия вы получите примерно такое сообщение в окне выполнения:

Нужно из этого окна скопировать ключ (выделить и нажать правую кнопку мыши)

и этот ключ вставить в настройку 4 вместо слова sftpkey

 

 

Скачать по FTP

Для получения прайсов по FTP добавьте соответствующее действие

 

1. В Настройке 4 действия нужно указать сервер, порт, логин и пароль, так как описано в разделе “Получить по FTP”

2. Укажите путь к файлу на FTP, это может быть просто название файла, если при подключении к FTP он сразу виден и не нужно переходить в какую-то папку

3. Укажите путь, куда будет сохранен файл и его название

4. В примере добавляется получение 2х файлов с одного и того же FTP, вы можете добавить любое количество, скопировав эту строку. Если нужно получить только 1 файл, то удалите вторую строку.

 

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

 

Скачать по SFTP

 

Аналогично как и скачать по FTP, только нужно еще скопировать ключ, как это описано в разделе “Отправить по SFTP”

 

Разархивировать

Если вы скачиваете архив с прайсом и его нужно разархивировать, то можно добавить такую команду в скрипт:

call "%ProgramFiles%\WinRAR\winrar.exe" x -ibck "путь к архиву.ZIP" *.* "d:\Quad Solutions\files\2_ price\" -y

 

где d:\Quad Solutions\files\2_ price\ - папка, в которую помещаются разархивированные файлы

путь к архиву.ZIP - полный путь к скачанному архиву

 

У вас должна быть установлена программа WinRar

 

Пример строки и куда она вставляется в скрипт: