1C Exchange для opencart 2.0.3.1

Тема в разделе "Модули и дополнения", создана пользователем Slait, 19 июн 2015.

  1. Slait

    Slait Эксперт

    Сообщения:
    503
    Симпатии:
    454
    Всем привет. Пришло время отладить работу opencart 2.0 и 1C

    Начал пилить данный модуль. Переделал на 80% и вдруг нашел, что данный модуль уже делали. Проверил, не заработал. Внес мелкие правки и выгрузка пошла. Затем решил проблему с заказами и сайт начал обмен.

    Качайте, ставьте и радуйтесь.
    P.S. В ближайшее время разработчик модуля выпустит новую версию (сроки не уточняются) поэтому временно используйте это решение.

    P.S.S. Тестировался только на сервисе "Мой склад" и на opencart 2.0.3.1
     

    Вложения:

    Romans и lavlan нравится это.
  2. Romans

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

    Сообщения:
    1.434
    Симпатии:
    780
    vqmod ?? зачем??

    а разработчик кто??
     
  3. Slait

    Slait Эксперт

    Сообщения:
    503
    Симпатии:
    454
    zenwalker (http://zenwalker.me)
     
  4. Slait

    Slait Эксперт

    Сообщения:
    503
    Симпатии:
    454
    Честно, лень было переписывать :)
     
  5. marand

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

    Сообщения:
    123
    Симпатии:
    9
    Странно. Тот что в инете лежит более менее у меня работает, а вот с вашим валятся ошибки. Тестирую на 2.0.3.1. А что подправляли, если не секрет?
     
  6. Slait

    Slait Эксперт

    Сообщения:
    503
    Симпатии:
    454
    Поправил стили, исправил ошибки в меню, вырезал блоки из-за которых валились ошибки. А который в инете лежит - дай ссылку взглянуть.
     
  7. Alies

    Alies Новичок

    Сообщения:
    11
    Симпатии:
    0
    У меня отчего то неактивна кнопка "Загрузить" в ручном импорте
     
  8. marand

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

    Сообщения:
    123
    Симпатии:
    9
    Ручной режим не работает, у автора руки до него не дошли. Он сам так сказал)))
     
  9. Alies

    Alies Новичок

    Сообщения:
    11
    Симпатии:
    0
    Смех в том что периодически он как раз работал и им удавалось пользоваться(версия ТУТ). Печально вообщем, единственный модуль который в ручном режиме загонял стандарт CommerceML
     
  10. santexnikairk

    santexnikairk Новичок

    Сообщения:
    4
    Симпатии:
    1
    Здравствуйте!
    У меня 1С предприятие 8.2, управление торговлей 10.3, Opencart 2.0.3.1
    При попытке выгрузить товар появились данные ниже сообщения:

    Изменения товаров не зарегистрированы. Выгрузка товаров не произведена.
    Произошла ошибка: . По причине:
    Не удалось разобрать данные, загруженные с сервера.
    Обмен не выполнен
    Не выгружен ни один заказ.
    Обмен заказами завершен с ошибками!!!

    Выгрузилось:
    1. категории
    2. товары:
    - название
    - модель

    Не выгрузилось:
    у товаров цена и количество

    Подскажите по какой причине не выгрузилась цена и количество?
    Безымянный.png
     
  11. Slait

    Slait Эксперт

    Сообщения:
    503
    Симпатии:
    454
    Данный модуль тестировался на "Мой склад" Для тестирования с рабочей 1С используйте данную версию.
     

    Вложения:

  12. santexnikairk

    santexnikairk Новичок

    Сообщения:
    4
    Симпатии:
    1
    Попробую.
    У меня стоит SSL сертификат и при каждой выгрузке товара мне приходится каждый раз закоментировать редирект с http на https для связи с сервером. Есть ли решение этого недочета?
     
  13. Vpriest

    Vpriest Новичок

    Сообщения:
    2
    Симпатии:
    0
    У меня возникла интересная проблема с выгрузкой заказов с сайта в 1С.

    1С не может прочитать полученный пакет. смотрю отладчиком и вижу что пришел пакет в UTF-8, но читается как 1251.
    Вот фрагмент:
    <?xml version="1.0" encoding="utf-8"?>
    <КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="2015-09-11"><Документ><Ид>1</Ид><Номер>1</Номер><Дата>2015-09-11</Дата><Время>08:50:42</Время><Валюта>RUB</Валюта><Курс>1</Курс><ХозОперация>Заказ товара</ХозОперация><Роль>Продавец</Роль>

    Именно в таком виде. Никак не могу придумать с какой стороны подойти к вопросу.
    Что тут можно сделать?
     
  14. Vpriest

    Vpriest Новичок

    Сообщения:
    2
    Симпатии:
    0
    это все на стороне 1С
    Изменения товаров не зарегистрированы. Выгрузка товаров не произведена. - говорит о том, что 1С у себя не нашла товаров для выгрузки согласно отборам.
    А на сайт ничего не загрузилось/не обновилось уже потому что из 1С ничего не выгрузилось.
     
  15. Slait

    Slait Эксперт

    Сообщения:
    503
    Симпатии:
    454
    Проблема в кодировке. Проверьте в какой кодировке данные выгружаются, в противном случае поменяйте строчку
    в файле admin\controller\module\exchange1c.php
    Код:
    echo iconv('utf-8', 'cp1251', $orders);
     
  16. santexnikairk

    santexnikairk Новичок

    Сообщения:
    4
    Симпатии:
    1
    В логах данная ошибка и 1с соединение с сайтом не устанавливает

    PHP Notice: Use of undefined constant exchange1c_order_status - assumed 'exchange1c_order_status' in ...view/template/module/exchange1c.tpl on line 405
     
  17. santexnikairk

    santexnikairk Новичок

    Сообщения:
    4
    Симпатии:
    1
    Модуль заработал после вот этих манипуляций

    Не выгружаются товары на сайт...
    выдает ошибку

    <b>Fatal error</b>: Call to a member function trigger() on a non-object in <b>/home/p5668/www/grufon.ru/admin/model/catalog/product.php</b> on line <b>4</b><br/>
    в product.php в этой строке
    $this->event->trigger('pre.admin.product.add', $data);
    Как починить? Спасибо
    1с8.2УТ10.3
    opencart 2.0.3.1

    Я в \system\engine\model.php вписал
    publicfunction __construct($registry){
    $this->registry = $registry;
    $this->event = new Event($registry);
    }
    _________________________________________________________
    И вторая докрутка


    Скорее всего у твоего хостера не включена HTTP авторизация.

    Добавь в корне сайта в конец файла .htaccess такие строчки:

    RewriteCond %{HTTP:Authorization} ^Basic.*
    RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization},L]
    А в начало файла /export/exchange1c.php:

    $remote_user = $_SERVER["REMOTE_USER"]
    ? $_SERVER["REMOTE_USER"]: $_SERVER["REDIRECT_REMOTE_USER"];
    $strTmp = base64_decode(substr($remote_user,6));
    if($strTmp)
    list($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'])= explode(':', $strTmp);
    Чтобы получилось примерно так:

    <?php

    $remote_user = $_SERVER["REMOTE_USER"]
    ? $_SERVER["REMOTE_USER"]: $_SERVER["REDIRECT_REMOTE_USER"];
    $strTmp = base64_decode(substr($remote_user,6));
    if($strTmp)
    list($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'])= explode(':', $strTmp);

    // Version
    define('VERSION','1.6.1.tesla-chita');
     
    Последнее редактирование: 20 сен 2015
    optimlab нравится это.
  18. griale

    griale Новичок

    Сообщения:
    8
    Симпатии:
    1
    кто подскажет с чем связана ошибка
    <b>Fatal error</b>: Call to a member function seoURL() on a non-object in /vqmod/vqcache/vq2-system_modification_admin_model_catalog_category.php</b> on line <b>93</b><br />
    спасибо
     
  19. griale

    griale Новичок

    Сообщения:
    8
    Симпатии:
    1
    с урлом разобрался, а вот цены выгружаются 0,00
     
  20. marand

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

    Сообщения:
    123
    Симпатии:
    9
    Подскажите, такая проблема. При синхронизации затрагивается поле Отсутствие на складе в карточке товара в админке и сбрасывает. Как сделать чтоб это поле 1С не трогала или же наоборот, прописывала нужное состояние. Где прописывать этот параметр в 1С?