Последние темы


Импорт из minishop2

  • Влетел тут с одним заказчиком, он хотел minishop 2, после реализации выяснилось - нереальные сроки синхронизации товаров при количестве 60 000 тысяч наименований ежедневно. Есть ли какая-нибудь тулза для импорта товара в shopkeeper из minishop 2? Или только ручками? Есть другой заказчик у которого я реализовал это на shopkeeper время обновления 60к составляет 30 минут, что приемлемо.

  • Есть такой компонент:
    http://e-store.modx-shopkeeper.ru/katalog/dopolneniya-dlya-modx/import-eksport-tovarov.html
    Но с минишопом я не тестировал.

  • Если у заказчика синхронизация, значит у вас исходник в Excel ну или 1c, а следовательно Excel есть. Отсюда берите у него исходник и компонент предложеный выше Andchir и грузите напрямую в SHK.
    Т.е. не minishop->SHK, а Excel ->SHK (при помощи Импорт / экспорт товаров)

  • Ага, спасибо. у меня исходник api экселя нету, но смысл понятен

  • @andrace c минишопом как синхронизировали? Попробуйте - modImporter

  • @Advanced сказал Импорт из minishop2:

    @andrace c минишопом как синхронизировали? Попробуйте - modImporter

    ага, заплатить 5 к за разовую операцию...))
    Имеет смысл только если потом с его помощью организовывать импорт из 1с и если заказчик готов платить))

  • @slaad Я потому и спросил каким образом синхронизация была сделана 😃 Возможно проще один раз сделать качественно, чем пилить костыли)

    p.s. Думаю что для разработки магазина на 60к товаров, 5 тысяч небольшая сумма из бюджета. Если не из серии "Интернет магазины" за 10к под ключ =))

  • @Advanced ну тут надо с разработчиками модимпортер связываться и проверять потянет ли компонент. Просто пробовать за 5к то что может и не сработать странно.
    А вот для ШК у ТС есть 100% рабочее решение. Но очевидно, что переход на ШК будет не легок.

  • @Advanced
    А каким образом ещё можно, я вижу два способа :
    1ый который я и использовал - это использование процессора create
    и это капец как оказалось долго, объекты исходники идут разными пачками от 2шт до 1к за раз бывает, но в среднем это 30-100, вставка 180 объектов занимает около минуты, т..е. примерно по 0,3 секунды на объект. Основной проблемой в производительности я вижу даже не создание объектов, а нахождение их почему-то в двух таблицах, т.е. он создаёт modResource и ещё после создания ему надо получить последний id и вставить ещё в одну таблицу. как бы то ни было, это увеличивает время в два раза.

    Второй способ, теоретически более быстрый это прямые запросы insert или replace или on duplicate update и тут вообще фантастика :
    Совсем не понятно и я нигде не нашёл, каким образом он определяет существование объекта чтобы избежать дубликатов, если у товара нету уникального id, а отличается только одно поле, которое не уникально во всей таблице, получается что индекс должен быть составной, но куда его пихать не понятно, уникальных индексов в modx_site_content нету кроме id. Т.е. он это делает, используя видимо индекс cahce_refresh_idx , но как я до конца не разобрался, надо ковырять исходники. Описание механизма нету. В импорте csv который я просмотрел, он уникальность получает из исходников.

    В шопкипере попроще, там одна таблица для товаров и в ней можно делать всё что угодно и это нормально.и это мною реализовано и работает очень хорошо даже не очень оптимизированный синхронизатор. и синхронизация 60к объектов составляет примерно 30 минут, а если оптимизировать синхронизатор я думаю ещё минут 5 можно выиграть. Там сделано через replaceы

    Да у меня особенность, api выдаёт за один запрос кол-во товаров от 2шт до 1000. это динамика. т.е. сидеть накапливать перед вставкой возможности нету, потому как непонятно сколько их может придти на этом тоже можно было бы сэкономить время, но нет 😞

 

Последние комментарии

  • Z

    Спасибо, действительно проще создать отдельно.

    Читать далее
  • Но проблема в том, что эта старая цена "дублируется" в плесхолдер "Дополнительных услуг" - [[+addit_data]].

    Можно не использовать [[+addit_data]], а выводить параметры по-отдельности.

    Цитата из документации:

    [[+shk_любой доп.параметр]] - любой доп. параметр, выбранный при добавлении товара в корзину (из [[+addit_data]]), например [[+shk_param1]].
    Если параметры сделаны в виде чекбоксов, то чтобы вывести отдельно каждый из них, нужно добавлять индекс (номер от нуля) для параметров следующих за первым.
    Пример: [[+shk_param1]], [[+shk_param1_1]], [[+shk_param1_2]] ...
    [[+shk_любой доп.параметр_price]] - цена доп.параметра. Пример: [[+shk_param1_price]].

    Читать далее
  • Z

    Доброго времени суток. Не могу разобраться, как передать данные migx-поля в корзину в плейсхолдер без "дублирования" в [[+addit_data]]
    Суть в чем: У меня есть 2 цены у товара (со скидкой и без скидки) Форма для отправки в корзину:

    <form action="[[~[[*resource_id]]? &scheme=`abs`]][[*alias]].html" method="post"> <input type="hidden" name="shk-id" value="[[*id]]" /> <input type="hidden" name="shk-name" value="[[*pagetitle]]" /> <input type="hidden" name="price_old__[[*id]]__add" value="[[*price_old]]" /> <input type="hidden" name="shk-count" value="1" /> <div class="product-price"> Цена: <span class="shk-price">[[!*price:shk_curr_rate:num_format]]</span> Старая цена - <span class="shk-price-old">[[+price_old]]</span> [[!+shk_currency]] </div> <div class="padding-lr-30"> <h5>Дополнительные услуги</h5> [[*param1]] </div> <div class="product-price"> <button class="btn btn-lg btn-primary" type="submit" class="shk-but">В корзину</button> </div> </form>

    Данные со "старой ценой" в корзину попадают нормально и выводится в нужном месте в плейсхолдере:
    [[+shk_price_old]]
    Но проблема в том, что эта старая цена "дублируется" в плесхолдер "Дополнительных услуг" - [[+addit_data]]. Как сделать чтобы старая цена не выводилась в [[+addit_data]]? Или может я как то не правильно передаю MIGX-параметр в корзину ? Заранее спасибо.

    Читать далее
  • Фотографии, как я понял, это второй вопрос. Я по нему пока ничего не отвечал и не просил информации. Это не отменяет того, что в вашем конфиге есть ошибка, о которой я писал выше. Не нужно задавать разные вопросы в одной теме, чтобы не было путаницы.
    http://forum.modx-shopkeeper.ru/topic/15/рекомендации-по-оформлению-темы-с-вопросом

    Читать далее