Всем привет!
Перестали обновляться остатки и цены на сайте из 1С. В файле обмена все есть, и цены и остатки, внешний код типа цены соответствует. Картинки, характеристики и тд грузятся, а цены и остатки нет. Перепробовал все, что можно, даже полностью удалял товары, все без результатно. В Журнале документов участующих в обмене смотрел, там только заказы, информации по товарам нет.
Как понять в чем проблема? Есть ли какой-то лог обмена?
первое что можно включить - это сохранение файлов выгрузки - так хотя бы будете знать все файлы приходят или нет, полные или обрезаны
в /bitrix/php_interface/dbconn.php добавить строку define("BX_CATALOG_IMPORT_1C_PRESERVE", true);
но помните оставлять без присмотра после этого обмен нельзя иначе место на сервере очень быстро закончится.
если все в порядке, то тут как вариант пробовать ковырять код и логировать его выполнение.
Вообще такое может быть если файл очень большой(у нас на проекте было что файл весом более 400Мб не читался - улетало все в 502 ошибку, от полной выгрузки после этого отказались потом 1С-ник написал ограничение на количество товаров в файлах за раз обмена, а потом вообще пришлось писать новый обмен через справочники и свою обработку), попробуйте выгрузить только пару товаров.
товары выгружаются все, их не много, около 3 тыс. И характеристики у них заполнены, а вот цены и остатки нет, хотя в файле обмена эти данные есть. Файлы загрузки сохранял, толку 0, т.к. в файлах видно, что данные передаются.
ну если файлы впорядке и весят не много, то вариантов я вижу 2:
1. как и сказал ковырять код, например я делал так(не совсем хорошо, но зато быстро) /bitrix/components/bitrix/catalog.import.1c/component.php - примерно на 650-700 строке где отдается ответ сохраняем этот ответ совместно с реквестом в свой файл. и вы увидите что вызывается на на каком шаге заканчивается обмен
2. теребите 1С-ника чтобы он добавил в 1с все ответы от сайта если они не выводятся там. В этом случае и 502 ошибку увидеть сможете и ошибку класса если вдруг(в первом варианте это только через логи сервера искать по промежутку времени и если они настроены).