В этом разделе описываются различные проблемы и варианты их решения, которые могут возникать при работе с программой.
• Program can't start. Error 2
Это означает, что не удалось создать временный файл во временной папке
например в папке C:\Users\user_name\AppData\Local\Temp не хватка прав доступа, нет папки temp по заданному пути.
• Во время импорта или экспорта прайс-листа возникает ошибка Ошибка 1426
Означает, что был открыт Excel при импорте/экспорте прайс-листа. Необходимо закрыть MS Excel и проверить не остался ли он в диспетчере задач. Повторить попытку.
• Во время экспорта данных появляется Ошибка экспорта данных 404.
Необходимо проверить соединение в настройках E-Trade HTTP Tunnel. Проверить путь к адресу E-Trade HTTP Tunnel. Проверить заполнены ли поля имя пользователя и пароль, проверить их правильность.
• При импорте/экспорте возникает ошибка Error Can't connect to MySql.
Необходимо попробовать поставить localhost в адресе MySql либо проверить другие параметры, логин, пароль, порт.
• Ошибка экспорта данных Error: File ./temp/…
Означает, что нет прав на запись 755 на папку Temp в папке где установлен E-Trade HTTP Tunnel.
• Ошибка регистрации программы. Код 106
Необходимо настроить прокси для работы в программе, которые используются у Вас в компании https://www.elbuz.com/ETradeDocs/PLI/use_proxy_server.htm
• При импорте/экспорте через E-Trade HTTP Tunnel возникает Ошибка Error: <html>
Означает, что изменено название папки с E-Trade HTTP Tunnel или само название E-Trade HTTP Tunnel. Внесенные изменения нужно указать в файле .htaccess в папке с Туннелем https://
• При импорте прайс-листа выдается сообщение Error Parse Info Результат вычисления элемента RANGE не является объектом.
Означает, что не получается считать данные с листа, возможно что то мешает, например защита листа или части данных в прайс-листе. Снять защиту листа, повторить попытку.
• Ошибка экспорта данных 504 Gateway Time-out (502 Bad Gateway)
Данная ошибка означает что php скрипт (бэкенд nginx) слишком долго ждал ответ от веб сервера и скрипт завершился раньше, чем был получен ответ.
Для работы некоторых скриптов требуется увеличение времени ожидания и выполнения, это касатеся работы туннеля E-Trade, если выгружается большой объём данных на сайт.
Увеличение времени ожидания nginx при проксировании:
для изменения времени ожидания в конфиг nginx надо добавить следующие параметры (лучше вставлять в контекст location):
proxy_send_timeout 60; # время ожидания при передаче запроса
proxy_read_timeout 60; # время ожидания при чтении ответа
Время указывается в секундах, по-умолчанию 60, т.е. 1 минута.
Но нужно быть готовым, что не каждый хостер пойдёт на это, т.к. увеличение лимитов = увеличение расхода ресурсов.
• Ошибка программы при обновлении: Ошибка UPDATEETRADEPROG
Возможно был запущен процесс обновления при открытых программах серии E-Trade. Проверьте в процессах не зависли ли программы, либо перезапустите компьютер и повторите попытку.
• Нет подключения к серверу при попытки проверки соединения в E-Trade HTTP Tunnel
Вероятнее всего На вашем хостинг аккаунте запрещен прием данных с других источников с
использованием POST запросов. Т.е. программа E-Trade PriceList Importer не может передать
данные на сайт, т.к. заблокирован приём данных с использованием POST
запросов. Обратитесь в службу поддержки вашего хостинг провайдера или
разрешите доступ самостоятельно в панели управления хостинг аккаунта.
https://ru.wikipedia.org/wiki/HTTP#POST
• При импорте выводится сообщение: "Не удается загрузить каталог с сайта".
не находится поле id_1c в таблице SC_products
это поле хранит ИД CML
Как вариант добавить поле вручную в phpMyAdmin
SQL запрос: ALTER TABLE `SC_products` ADD `id_1c` VARCHAR( 80 ) NOT NULL, ADD INDEX ( `id_1c` )
• При экспорте данных на сайт через модуль "туннель" выводится сообщение: ERROR 1153 - Got a packet bigger than 'max_allowed_packet' bytes.
Ошибка означает что стоит лимит на максимальный размер пакета в MySQL и данные передаваемые для сервера MySQL превысили этот лимит.
Варианты решения:
1. В исходном коде модуля "туннель", в файле etrade_http_tunnel.php нужно найти строку ~321 и изменить переменную
$row_id_per_steep=3000;
на
$row_id_per_steep=1000;
Это кол-во строк из файла CSV для передачи MySQL серверу.
2. Второй вариант это перенастройка MySQL сервера, это если используется выделенный сервер или VPS.
Редактируем файл /etc/my.cnf и изменяем параметр max_allowed_packet
max_allowed_packet = 64M (по умолчанию 1)
Сохраняем файл и перезапускаем MySQL:
service mysqld restart