1C Exchange и 2.1.0.1

Тема в разделе "Модули и дополнения", создана пользователем marand, 12 окт 2015.

  1. marand

    marand Пользователь

    Сообщения:
    123
    Симпатии:
    9
    Добрый день. Появилась необходимость перейти с 2.0.3.1 rs2 на 2.1.0.1 rs2. Первым делом надо настроить обмен с 1С. Но при установке вот такая ошибка вылезла
    Notice: Error: Could not load model /.../admin/model/sale/customer_group.php! in/.../system/storage/modification/system/engine/loader.php on line 63
    Как ее победить?
     
  2. Romans

    Romans Administrator Команда форума

    Сообщения:
    1.438
    Симпатии:
    780
    Модуль не корректировался для 2.1
    А именно в коде прописано что нужно загрузить модель из model/sale/
    а она в 2.1 находится в model/customer/
    т.е вам надо найти в коде где происходит подключение модели и изменить ее. Так же изменить пути в функции
     
  3. marand

    marand Пользователь

    Сообщения:
    123
    Симпатии:
    9
    А где посмотреть, где какие папки изменились на 2.1 по сравнению с 2.0.3.1?
     
    Последнее редактирование: 12 окт 2015
  4. Romans

    Romans Administrator Команда форума

    Сообщения:
    1.438
    Симпатии:
    780
  5. marand

    marand Пользователь

    Сообщения:
    123
    Симпатии:
    9
    С установкой и админкой вопрос решил, все перевел, но вот при подключении из 1С пишет Не удалось установить соединение. Логин и пароль в норме. При запуске http://мой_сайт/export/exchange1c.php выдает такие ошибки. Подскажите, что и где подправить?

    Notice: unserialize(): Error at offset 0 of 29 bytes in /мой_сайт/export/exchange1c.php on line 49
    Notice: unserialize(): Error at offset 0 of 9 bytes in /мой_сайт/export/exchange1c.php on line 49
    Notice: unserialize(): Error at offset 0 of 22 bytes in /мой_сайт/export/exchange1c.php on line 49
    Notice: unserialize(): Error at offset 0 of 5 bytes in /мой_сайт/export/exchange1c.php on line 49
    Notice: unserialize(): Error at offset 0 of 70 bytes in /мой_сайт/export/exchange1c.php on line 49
    Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /мой_сайт/export/exchange1c.php:49)
    in /мой_сайт/system/library/session.php on line 21success
     
  6. Vlad

    Vlad Эксперт

    Сообщения:
    4.129
    Симпатии:
    999
    Сразу скажу.. модуль не виде. Но в 2.1 перешли на json_encode вместо unserialize
    Может в настройках где старые данные.

    Модуль устанавливали на новый 2.1 или обновленный?? И что в 49 строке?
     
  7. marand

    marand Пользователь

    Сообщения:
    123
    Симпатии:
    9
    Устанавливал на новый 2.1. Кусок кода, выделена 49 строка:

    // Settings
    $query = $db->query("SELECT * FROM " . DB_PREFIX . "setting");

    foreach ($query->rows as $setting) {
    if (!$setting['serialized']) {
    $config->set($setting['key'], $setting['value']);
    } else {
    $config->set($setting['key'], unserialize($setting['value']));
    }
    }
     
  8. Vlad

    Vlad Эксперт

    Сообщения:
    4.129
    Симпатии:
    999
    надо вместо unserialize написать типа json_decode вроде
    Посмотрите как в других модулях
     
  9. marand

    marand Пользователь

    Сообщения:
    123
    Симпатии:
    9
    Поменял. Соединение с базой установлено. Спасибо большое. Но при выгрузке не выгружается цена и такая ошибка:

    Fatal error: Cannot use object of type stdClass as array in /home/m/marand/marand.bget.ru/public_html/opencart/admin/model/tool/exchange1c.php on line 243

    Кусок кода, выделена 243 строка:
    // Первая цена по умолчанию - $config_price_type_main
    if (!$config_price_type_main['keyword']) {
    $data['price'] = (float)$offer->Цены->Цена->ЦенаЗаЕдиницу;
    }
     
  10. Vlad

    Vlad Эксперт

    Сообщения:
    4.129
    Симпатии:
    999
    Посмотрите откуда берется $config_price_type_main
    и далее посмотрите почему не может получить оеъект
     
  11. marand

    marand Пользователь

    Сообщения:
    123
    Симпатии:
    9
    Боюсь, что это мне уже не по силам. Может поможете? Вот сам файл admin/model/tool/exchange1c.php
     

    Вложения:

    • 1C.zip
      Размер файла:
      12,1 КБ
      Просмотров:
      39
  12. v.kolesnikov

    v.kolesnikov Новичок

    Сообщения:
    4
    Симпатии:
    0
    Нужен человек, который за деньги настроит / допишет / напишет обработку синхронизации 1С и OpenCart 2.1.0.1 под нужды нашей компании. Контакт для связи - skype: pride.v.kolesnikov
     
  13. Vlad

    Vlad Эксперт

    Сообщения:
    4.129
    Симпатии:
    999
    посмотрел, чегото не понял почему ошибка у вас..
     
  14. marand

    marand Пользователь

    Сообщения:
    123
    Симпатии:
    9
    Вот и я не могу найти, где собака зарыта. Вроде все пересмотрел. Но ошибка есть.
     
  15. marand

    marand Пользователь

    Сообщения:
    123
    Симпатии:
    9
    Спасибо всем, кто откликнулся. Проблему решил. Все работает.
     
  16. my2you

    my2you Продвинутый пользователь

    Сообщения:
    281
    Симпатии:
    125
    только напишите как..
     
  17. v.kolesnikov

    v.kolesnikov Новичок

    Сообщения:
    4
    Симпатии:
    0
    Вы не могли бы выложить модуль обмена данными с 1С?
     
  18. Zhezkazganetcs

    Zhezkazganetcs Продвинутый пользователь

    Сообщения:
    819
    Симпатии:
    108
    Вопрос на перспективу
    Суть такова
    У нас магазин автозапчастей - НЕ интернет-магазин
    Каждый день/через день приходит товар, где цена на товар меняется, следовательно и розничная цена должна меняться.
    В идеале нужно так:
    • приходит товар, я его вношу в 1С (допустим куплю лицензию)
    • установил розничную цену
    • на сайте цена изменилась
    • появилась возможность заказать этот товар
    • продал
    • товар в 1С списал
    • на сайте нет возможности этот товар заказать

    если готового решения нет, то сколько примерно это будет стоить???
     
  19. Zhezkazganetcs

    Zhezkazganetcs Продвинутый пользователь

    Сообщения:
    819
    Симпатии:
    108
    ту тему я видел, но
    как все это реализовать у меня на сайте? т.е. как все это связать? или кто и за сколько свяжет?
     
  20. optimlab

    optimlab Продвинутый пользователь

    Сообщения:
    924
    Симпатии:
    240
    1С работает как облако. Она просто синхронизирует товар раз вдень или раз в час или каждые 10 сек))).

    1. Рекомендую для начала протестить на "триальной" версии 1С.
    2. Делаете список категорий в 1С, они должны будут совпадать с сайтом, а то будут проблемы потом.
    3. Заполняете номенклатуру...
    4. Устанавливаете модуль 1С для опенкарт.
    5. Делаете синхронизацию на локальном сервере.
    6. Проверяете сайт и товары и прочее, они могут измениться в зависимости от способа синхронизации.
    7. Все вышеперечисленные функции модуль делает, по крайней мере делал.
    Автор модуля писал что он взял за основу файл экспорта-импорта битрикса и переписал его для опенкарта, и получился 1С Exchenge. В той теме обсуждается его работоспособность.
    Другие модули не щупал и отзывов про них не видел.
    Автор пустил его в свободное плавание, самому походу пофиг на него, судя по его блогу он другим занимается.
    Возможно будут огрехи или косяки в связи с новыми версиями Опенкарта.
    Вам нужно остановиться для начала на конечной версии сайта, чтоб удовлетворяла все ваши потребности.
    И потом уже переходить на тесты с 1С.
    И еще надо выбрать сборку 8. Про новые 1С очень много плохих отзывов. 1С зарабатывает на никому ненужных обновлениях и абонентке...
     
    Zhezkazganetcs нравится это.