Выгрузка цен и остатков по CommerceML, а так же проблема с фотками

Добрый день!

Проблема 1 - при выгрузке цен и остатков повторяемой несколько раз за один день старые файлы offers не подменяются, не удаляются, а дополняются(прямо в те же файлы дозаписываются новые данные, прямо как в файл log_commerceml.txt. При этом цены и остатки не обновляются. Если же перед новым импортом цен старые файлы offers удалить, то выгрузка проходит корректно. Я узнавал, проблема такая не у одного меня, является общей. Если выгружать раз в день, то проблемы нет т.к. выгрузка происходит в новую папку. При этом с файлами import такого не происходит - думаю просто по ошибке не ту функцию сохранения файлов использовали, но лишь догадка. Надо исправить.

Подскажите, пожалуйста, как пофиксить по-простому? Например, чтобы эти файлы offers по завершении обмена удалялись? Подскажите плз такую строчку кода php и куда ее воткнуть?

Проблема 2 - нет опции полной перезаписи фотографий при выгрузке карточки товаров. Проблема возникает при использовании модуля Simtech, при генерации SEO-url изображениям. При активации этой функции URL фотографий становятся человекопонятными(а не теми что сгенерированы в 1С), но при повторной выгрузке карточек товаров фотографии задваиваются. С одной стороны желательно чтобы такой проблемы не было в результате работы модуля(это вопрос к модулю, хорошо бы придумать способ решения), с другой - такая возможность нужна в целом ряде и других сценариев.

1 лайк

По первому пункту такой проблемы не вижу у себя. Выгрузка раз в 2 часа, все остатки и цены меняются в соответствии с 1С.

UPD: перепроверил на всякий случай и проблем не выявил, опять же.

В розничном магазине продают товар через 1С, после обмена на сайте остатки актуализируются.

С ценами так же, поменял вручную в 1С нескольким товарам, сделал обмен с изменениями, и цены поменялись этим товарам в CS Cart как надо.

Версия CS Cart 4.10.2; точно так же создаются три файла: offers, import и log раз в сутки и в течение дня добавляют в себя данные по каждой выгрузке.

Тоже не вижу проблемы по п.1. МойСклад, CS-Cart 4.9.3.SP1 пока.
Попробуйте воспроизвести на демоверсии.

1с к демоверсии подключить? Не знаю, как с остатками, я их испокон своим скриптом гружу, которому 1с передает данные. А вот при выгрузке заказов файлы, выгружаемые из 1с очень быстро забивают диск, так как не удаляются после обработки.

Дело в количестве. Проблем не было пока товаров было мало. Появились когда их количество перевалило за 20к, количество видов цен дошло до 4, не знаю, влияет ли количество складов в файлах, но их стало несколько. И в этот момент перестало работать, проявился косяк. До того проблем не наблюдал. А тут что-то пошло не так. Проблема не в весе файлов, грузится с разбивкой по 1000 товаров. Когда товаров мало проблема не наблюдается. Наглядно - недавно удалил файлы, выглядит папка после выгрузки вот так(смотреть надо на размер файлов):

. Через некоторое время пройдет еще обмен, еще один скриншот приложу.

К демке подключить затруднительно - не знаю, работает ли в ней выгрузка вообще, но нужное для демонстрации проблемы количество товаров выгрузить слишком долго, почти нереально. А на малом количестве товаров всё работает.

У нас такая проблема возникала в 2х случаях:

  1. Есть модуль, который взаимодействует с контроллером exim_1с. Иногда это вызывало такое поведение, а именно параллельная обработка файла выгрузки.

  2. На стороне 1С. Система учета формировала файл и в процессе формирования дополняла его же и выгружала.

Единственный модуль который взаимодействует с контроллером является разработкой самих Simtech, это модуль для SEO

В общем, файлы продолжали расти… пофиксил записью в cron.
55 */1 * * * find /адрес_сайта_на_сервере/var/files/1/exim/ ! -name log_commerceml.txt -mmin +60 -delete
Теперь всё что старое и не нужное, возрастом более 60 минут удаляется каждый час, кроме логов. Заодно папка exim медленнее разрастаться будет, только папки с логами по дням теперь иногда удалять нужно. Выгрузка у меня раз в 2 часа, так что проблему решает(хотя лучше бы чтобы она не возникала).

Осталось что-то с фотками придумать.

2 лайка

Спасибо вам за подсказку, что надо сделать очистку старых логов.

Если проблема все еще возникает, пожалуйста, создайте обращение в Help desk, чтобы мы смогли изучить проблему.

Добрый день ! у меня точно такая же ситуация…

Сегодня обратил внимание у меня все то же самое…

Как сделать что бы файл перезаписывался ? или что бы старый удалялся и создавался новый