Доброго времени суток.
Имеется интернет магазин, на редакции Старт (так веб-студия продала). Для обновления цен используется обмен с 1С УТ 10.3. Написан отдельный модуль, на основе базового, который выполняет загрузку цен в ручную из панели администратора. Есть ли какой-то костыль для автоматизации процесса загрузки?
Порог вхождения в Битрикс нулевой, попросили сменить хостинг и разобраться почему не работает автоматическая загрузка. Студия не имеет желания помогать в данном вопросе.
Если речь про админ-страницу /bitrix/admin/iblock_xml_import.php
... то ею фактически выполняется скрипт /bitrix/modules/iblock/admin/iblock_xml_import.php
Можно его себе скопировать, откорректировать обрабатываемые параметры, добавить "шапку" (для вызова из php-интерпретатора) и вызывать в кроне.
Алексей:
Задача состоит из:
1. Получить файл в область действия скриптов сайта (есть возможность скачивать скриптом по урлу или доступу или через фтп?).
2. Запустить скрипт для обработки полученного файла с набором параметров.
Создаём комплексный скрипт, который скачивает файл и запускает скрипт синхронизации цен и кладём его в крон на выполнение.
Алексей Бурлака: есть стандартная функция импорта XML в Битрикс, там по факту 3 параметра, 1) Имя файла (обычно /upload/1c_bitrix/offer.xml или import.xml), 2) Имя сайта к которому применяется импорт, 3) Что делать с данными которых нет в выгрузке (на выбор 3 пункта). Итого: у меня путь к файлу статичен, Имя сайта тоже одно и в третьем пункте деактивировать товар если его нет в выгрузке. Я к сожалению не знаю как обратиться к данному импорту через параметры.
В общем если я правильно понял то массив для загрузки формируется вот так
$NS = array(
"STEP" => 0,
"IBLOCK_TYPE" => "catalog",
"LID" => "s1",
"URL_DATA_FILE" => $ABS_FILE_NAME,
"ACTION" => "A",
"PREVIEW" => "N",
);
$ABS_FILE_NAME = "/1c/1cbitrix/offers.xml";
сохранил как my_iblock_xml_import.php и попытался выполнить из адресной строки, толку 0.
Можно сделать по комментарию выше, но я пошел другим путем.
Имеем 1С 7й версии, и скрипт, который генерирует xml файл.
На стороне битрикса самописный скрипт, который ловит xml-файл и забриает все по полочкам