Quad.Wiki
Sync.X - Получение файлов из Web (по ссылкам)
Обычные файлы по ссылке
Перейдите во вкладку Автоматизация / Sync.X
Для добавления скачивания какого-то файла по ссылке зайдите в настройки существующего задания или, если такого нет, создайте новое. В одном задании можно скачивать несколько разных прайсов по разным ссылкам, т.е. не нужно под каждый прайс делать отдельное задание.
Добавьте новую строку и заполните ее настройки, введите ссылку, по которой скачивается файл, а так же путь к файлу, в который будет сохранен файл.
Расширения файла указывайте такое, как и в скачиваемом файле.
Если по ссылке не видно какое расширение файла, а это, например, просто скрипт PHP, то скачайте файл по ссылке и сохраните его на диск - посмотрите расширение в полученном файле.
Колонка Арх. - если прайс по ссылке находится в архиве, то укажите тип этого архива. Если в архиве несколько файлов или кроме файла есть еще какие-то подпапки, то можно указать просто путь к папке, в которую сохранятся все файлы из архива (обязательно укажите слеш на конце пути к папке)
Если в названиях файлов в архиве есть цифры, то они будут заменены на знаки подчеркивания.
Колонка XML->Excel - здесь должна быть пустая птичка, если по ссылке вы скачиваете не XML-файл, который нужно конвертировать в Excel.
URL - здесь должна быть ссылка на файл или скрипт, который генерирует файл.
Если в ссылке есть дата, то можно ее подставить при помощи кодов
[yyyy] - год 4 символа (например 2021)
[yy] - год 2 символа (например 21)
[mm] - месяц 2 символа (например 05)
[dd] - день 2 символа (например 01)
т.е. например, для ссылки test.ru/img/prices/Остатки_на_20210512_АТ.xlsx итоговая ссылка будет выглядеть как test.ru/img/prices/Остатки_на_[yyyy][mm][dd]_АТ.xlsx
Если в момент выполнения задания еще нет файла с сегодняшней датой, то будет ошибка в задании.
Файл по ссылке должен скачиваться без ввода паролей, иначе его нельзя скачать этим заданием. Проверить можно в браузере в режиме инкогнито, скачается ли по ссылке прайс. Если нужно вводить пароль - нужна настройка обработчика под этот сайт. Настройку делает наша техподдержка, цена 20$ если требуется просто ввод логина и пароля для скачивания.
Сохранить в файл - здесь указывается путь к файлу, в который будет сохранен скачиваемый прайс. Сохраняйте прайсы в папку Quad Solutions\files\2_ price\ чтобы они все были в одном месте. Называйте файл по названию поставщика, например merlion.xlsx, чтобы потом проще было его найти.
XML -> CSV / CSV -> XLSX - в этой колонке можно указать настройки конвертации файла сразу при скачивании. Если вы, например, скачиваете файл CSV, при этом он в таком формате, который не открывается сразу правильно в Excel, то его можно конвертировать такими настройками:
Настройки вводятся в окне редактирования, которое открывается при нажатии кнопки в правой части ячейки, если в нее установить курсор.
В первой строке нужно указать тег csvxlsx - это значит что файл будет конвертирован из CSV в Excel.
В этой же строке нужно указать теги utf8, если файл в кодировке utf-8 или ansi, если файл CSV в кодировке Windows и русские тексты в нем читаемые.
Если вы скачали файл CSV и видите в нем “кракозябры” вместо русских букв, то значит нужно указать в настройках параметр utf8
Во второй строке указывается разделитель значений в CSV файле, может быть запятая или точка с запятой.
Пример настроек:
csvxlsx utf8
,
GoogleSheets / GoogleDrive
Для загрузки файлов из GoogleSheets и GoogleDrive используется загрузка как через обычную ссылку.
Вам нужно скопировать ссылку из браузера, когда просматриваете документ, например получилась такая ссылка
https://docs.google.com/spreadsheets/d/1pS5XpAzkxyoUzv7khJN_fkEL0/edit#gid=0
из нее нужно убрать все что идет после выделенного идентификатора, остается
https://docs.google.com/spreadsheets/d/1pS5XpAzkxyoUzv7khJN_fkEL0/
и к тому что получилось добавить export?format=xlsx , чтобы в итоге получилось так:
https://docs.google.com/spreadsheets/d/1pS5XpAzkxyoUzv7khJN_fkEL0/export?format=xlsx
эта ссылка вставляется в задание
Таким способом можно скачать только прайсы, к которым есть общий доступ (т.е. файл открывается в браузере в режиме инкогнито, без необходимости логина в аккаунт гугла) и разрешено его скачивание в меню
Начиная с версии Quad.X 1482 ссылку на файл GoogleDocs можно добавлять специальной кнопкой. В открывшемся окне нужно ввести ID из ссылки на документ, в примере ниже ИД выделен жирным
https://docs.google.com/spreadsheets/d/ 1pS5XpAzkxyoUzv7khJN_fkEL0/edit#gid=0
Если вы скачиваете прайс с GoogleDrive и после продолжительного ожидания скачивания прайса по ссылке, формирование которой описано выше, в браузере вы видите ошибку, то попробуйте использовать такую ссылку:
еще вариант, который можно попробовать:
где вместо выделенного жирным подставить ваш ID.
Интервал устанавливается в миллисекундах. Можете поставить 2 или 3 секунды, для этого нужно ввести 2000 или 3000.
Yandex Disk
Пример ссылки https://disk.yandex.by/d/8MCgWMMjgPX3Mw
Для скачивания по этой ссылке нажмите кнопку +Я
в окне ввода удалите первую строку и отредактируйте ссылку так, чтобы в ней нужная вам ссылка была после текста https://getfile.dokpub.com/yandex/get/
т.е. должно получиться так:
https://getfile.dokpub.com/yandex/get/https://disk.yandex.by/d/8MCgWMMjgPX3Mw
Если у вас ссылка не на прайс, а на какую-то папку, в которой несколько файлов, то название файла нужно указать после вашей ссылки. Если файлов несколько, то на каждый файл нужно делать отдельное задание. Пример того, что вы видите по ссылке:
Ссылка на прайс будет такой:
https://getfile.dokpub.com/yandex/get/https://disk.yandex.by/d/eRZh-4Ac4YhRdA/wc-product-export-30-06-2021.csv
Если по ссылке вы видите какие-то папки, а не просто файл, и вам нужен файл из этой папки, то нужно указать и папку:
https://getfile.dokpub.com/yandex/get/https://disk.yandex.by/d/eRZh-4Ac4YhRdA/Папка/wc-product-export-30-06-2021.csv
DropBox
Пример ссылки
https://www.dropbox.com/scl/fi/9vk60k53yx111hr9ovk2gt/price.xls?rlkey=g5jcg4mfo0ias3jp1jee114z1mz
Чтобы скачать такой прайс нужно к ссылке добавить &dl=1
https://www.dropbox.com/scl/fi/9vk60k53yx111hr9ovk2gt/price.xls?rlkey=g5jcg4mfo0ias3jp1jee114z1mz&dl=1
Если в ссылке уже есть &dl=0, то поменять 0 на 1.
GoogleSheets через CSV
Если по каким-то причинам вы не можете скачать файл из GoogleSheets в формате XLSX, то можно скачать прайс или один из его листов в формате CSV.
Вам нужно скопировать ссылку из браузера, когда просматриваете документ, например получилась такая ссылка
https://docs.google.com/spreadsheets/d/1pS5XpAzkxyoUzv7khJN_fkEL0/edit#gid=0
из нее нужно убрать все что идет после выделенного идентификатора, остается
https://docs.google.com/spreadsheets/d/1pS5XpAzkxyoUzv7khJN_fkEL0/
и к тому что получилось добавить export?format=csv , чтобы в итоге получилось так:
https://docs.google.com/spreadsheets/d/1pS5XpAzkxyoUzv7khJN_fkEL0/export?format=csv
Если в прайсе несколько листов, то скачать одной ссылкой вы можете только 1 лист. В этом случае в ссылку нужно добавить еще ИД листа
https://docs.google.com/spreadsheets/d/1pS5XpAzkxyoUzv7khJN_fkEL0/export?format=csv&gid=1615075392
ИД листа можно посмотреть в браузере в строке ссылки, выбрав соответствующий лист в самом прайсе
Скачиваемый CSV вы можете сразу сконвертировать в XLSX, как написано в этой инструкции для настройки “XML -> CSV / CSV -> XLSX”
Пример настройки для прайса Русклимат:
Обратите внимание, что если вы конвертируете в XLSX, то и расширение сохраняемого файла нужно указывать как XLSX, а не CSV.
При перенастройке прайса, чтобы сохранились все связи, важно сохранить соответствие текста, загружаемого в п.5 настройки прайса, чтобы товары не задублировались. Подробнее здесь: Настройка прайса: сравнение при загрузке
Второй вариант - оставить старую настройку прайса, выключить тот прайс и добавить новый прайс для файла CSV. В этом случае нужно будет скопировать связи из старого прайса, а так же выбрать новый прайс во всех правилах наценки, где он был, и в правилах Автозаполнения/Экспорта, если он там использовался.
Копировать связи из одного прайса в другой