#1 2010-12-30 17:25
- air
- Пользователь
Ошибка при Автоматическом обмене данными 1С с сайтом
Добрый день!
Пожалуйста, помогите решить следующую проблему: при автоматическом обмене данными 1С с сайтом возникает ошибка со стороны сервера. Ниже ошибка, которую выдает 1С
—————————————————————
Выгружено товаров: 4
Произошла ошибка: . По причине:
{Обработка.ОбменССайтом(302)}: Ошибка при вызове метода контекста (ОтправитьДляОбработки): Ошибка при выполнении файловой операции ‘published/SC/html/scripts/callbackhandlers/1c_exchange.php?type=catalog&mode=file&filename=import.xml’
Произошла ошибка: . По причине:
Произошла ошибка на стороне сервера. Не получен статус завершения операции. Файл не отправлен (C:Documents and SettingsuserLocal SettingsTemp1cbitriximport.xml).
Обмен не выполнен
Ответ сервера:
<HTML><HEAD><META HTTP-EQUIV=»Content-Type» CONTENT=»text/html; charset=iso-8859-1″>
<TITLE>ERROR: The requested URL could not be retrieved</TITLE>
<STYLE type=»text/css»><!—BODY{background-color:#ffffff;font-family:verdana,sans-serif}PRE{font-family:sans-serif}—></STYLE>
</HEAD><BODY>
<H1>ERROR</H1>
<H2>The requested URL could not be retrieved</H2>
<HR noshade size=»1px»>
<P>
While trying to process the request:
<PRE>
POST /published/SC/html/scripts/callbackhandlers/1c_exchange.php?type=catalog&mode=file&filename=import.xml HTTP/1.1
Authorization: Basic бла-бла-бла=
User-Agent: 1C+Enterprise/8.1
Host: mobidect.ru
Accept: */*
Cookie: PHPSESSID=80a3fbb3e2cb981d77fec4b223a71d80
Content-Type: application/octet-stream
Content-Length: 9491
Expect: 100-continue
</PRE>
<P>
The following error was encountered:
<UL>
<LI>
<STRONG>
Invalid Request
</STRONG>
</UL>
<P>
Some aspect of the HTTP Request is invalid. Possible problems:
<UL>
<LI>Missing or unknown request method
<LI>Missing URL
<LI>Missing HTTP Identifier (HTTP/1.0)
<LI>Request is too large
<LI>Content-Length missing for POST or PUT requests
<LI>Illegal character in hostname; underscores are not allowed
</UL>
<P>Your cache administrator is <A HREF=»mailto:admin@localhost»>admin@localhost</A>.
<BR clear=»all»>
<HR noshade size=»1px»>
<ADDRESS>
Generated Thu, 30 Dec 2010 13:08:40 GMT by localhost (squid/2.7.STABLE9)
</ADDRESS>
</BODY></HTML>
Выгрузка товаров завершена с ошибками!!!
Неактивен
#2 2011-01-04 18:09
- air
- Пользователь
Re: Ошибка при Автоматическом обмене данными 1С с сайтом
С наступившим всех! Блин, не кто не сталкивался что-ли…? В техподдержке молчат и тут ответа нет. Как эту ошибку-то разгребать? Может разработчики недотестили чего? На всякий решил подстраховаться залил трехсотку на Архост — коннект проверяю — есть, а товары так и не выгружаются.
Неактивен
#3 2011-01-07 14:11
- air
- Пользователь
Re: Ошибка при Автоматическом обмене данными 1С с сайтом
Оказалось, что все дело было в прокси-сервере, через который работал компьютер. После его отключения выгрузка прошла на Ура!
Неактивен
Загрузка…
После установки последний обновлений БУС при обмене заказами в логах 1С наблюдается ошибка : #1: call_user_func_array(array, array) www.bitrix/modules/main/classes/general/xml.php:949 #3: CXMLFileStream->findNext() www.bitrix/components/bitrix/sale.export.1c/component.php:439 #4: include(string) Но заказы в 1С создаются. |
|
Пользователь 340226 Заглянувший Сообщений: 13 |
#2 10.03.2018 11:57:02 Аналогичная проблема! После обновление БУС модуля SALE с 17.8.5 до 17.8.10.
Прошу оперативно принять меры, так как это проблема на стороне БУС. |
||
Пользователь 178479 Заглянувший Сообщений: 26 |
#3 11.03.2018 18:00:36 Поддерживаю. С сайта заказы выгружаются, на сайт нет!
Уже много дней не работает выгрузка! |
||
Пользователь 136059 Гуру Сообщений: 5418 |
#4 12.03.2018 09:08:09
А в техническую поддержку то написали? Голосуй за идеи по развитию API Bitrix: |
||
Пользователь 774637 Заглянувший Сообщений: 1 |
#5 12.03.2018 10:32:33
В ТП написал, номер тикета 1861895 |
||||
Такая же ошибка. Сообщите, пожалуйста, что ответит ТП |
|
Пользователь 178479 Заглянувший Сообщений: 26 |
#7 12.03.2018 20:18:10
Пока меня отпинывают, т.к. моя выгрузка лишь эмулируется по примеру статьи https://mrcappuccino.ru/blog/post/1c-exchange |
||
У меня данная ошибка возникает даже на отладочном скрипте bx_1c_import.php https://yadi.sk/i/Cv25q6gE3TJYsG |
|
Пользователь 340226 Заглянувший Сообщений: 13 |
#10 13.03.2018 11:25:32
Аналогичный ответ пришел сегодня
|
||||
|
|
Пользователь 340226 Заглянувший Сообщений: 13 |
#12 13.03.2018 18:19:42 Пришел ответ. Ждите обнову, вот-вот будет.
|
||
В на сайте замените файл bitrix/components/bitrix/sale.export.1c/component.php этим файлом . |
|
Пользователь 178479 Заглянувший Сообщений: 26 |
#15 14.03.2018 11:06:58
Спасибо мы уж лучше подождем обновления, чем качать неизвестный файл от неизвестного участника) |
||
Пользователь 340226 Заглянувший Сообщений: 13 |
#16 14.03.2018 12:31:39
Дело ваше, я опубликовал, что прислали мне. На форум выложить файл не удалось. |
||||
заменил, все заработало. Спасибо! |
|
у меня после замены файла ошибка не пропала… |
|
Пользователь 493969 Заглянувший Сообщений: 27 |
#19 14.03.2018 18:07:59 закомментировал 438,439 строки в файле bitrix/components/bitrix/sale.export.1c/component.php
пока работает, но это не выход! |
||
При изменении статута заказа, или информации в заказе (например сумма заказа) через административную панель, в 1С меняется на аналогичные, совершённые изменения с заказом. Если делаем такие же манипуляции в 1С, то в админке ничего с заказами, статусами, суммами заказов не происходит… Для решения этой проблемы ждём обновление: Модуль: sale, версия: 17.8.12? |
|
Интернет-магазин (sale) Позволяет осуществлять продажи товаров посетителям сайта. Версия 17.8.11 [*]Исправлены ошибки в компоненте sale.basket.basket. Версия 17.8.10 [*]Убран обработчик службы доставки EMS в связи с тем, что сайт www.emspost.ru перестал работать. Версия 17.8.9 [*]Исправление ошибки, при которой не сохранялись изменения в кастомных шаблонах компонента sale.basket.basket. — Это обновление не спасёт?))) |
|
У меня установлены все последние стабильные обновления и файл bitrix/components/bitrix/sale.export.1c/component.php заменен из прикрепленного выше пользователем Ustinov в таком варианте обмен заказами происходит в штатном режиме, без каких либо ошибок. |
|
Версия 17.8.12 еще не вышла даже в бетку. Мне помогло заменить файл component.php и пока текущая последняя версия sale 17.8.11 |
|
Пользователь 212433 Заглянувший Сообщений: 13 |
#24 15.03.2018 14:54:12
А статусы заказов обновляются? |
||
Пользователь 493969 Заглянувший Сообщений: 27 |
#25 19.03.2018 18:31:51
нет конечно) , но хоть ошибка не крашит весь обмен… |
||||
Статья основана на запросе клиента:
выгрузка из 1С на сайт после сбоя происходит с ошибкой — ранее работала корректно. Выдает вот такую штуковину
Лог:
Выгружено товаров: 200
Выгружено картинок: 254
Выгружено предложений: 186
Выгружено документов Ремонт: 355
Ошибка при вызове метода контекста (ОтправитьДляОбработки): Ошибка при выполнении файловой операции ‘admin/exchange/auto/?type=catalog&mode=file&filename=import_files/44/446dce7e-0f76-11e1-81d4-0015179911ad_6cba4f76-3289-11e4-adc9-0015179911ac.jpeg’: Ошибка работы с Интернет: неверный формат ответа шлюзу (502). <html>
<head><title>502 Bad Gateway</title></head>
<body bgcolor=»white»>
<center><h1>502 Bad Gateway</h1></center>
<hr><center>nginx-reuseport/1.11.10</center>
</body>
</html>
: Ошибка работы с Интернет: неверный формат ответа шлюзу (502)
Произошла ошибка: . По причине:
Произошла ошибка на стороне сервера. Не получен статус завершения операции. Файл не отправлен (C:UsersUSR1CV82AppDataLocalTemp1cbitriximport_files44446dce7e-0f76-11e1-81d4-0015179911ad_6cba4f76-3289-11e4-adc9-0015179911ac.jpeg.2).
Обмен не выполнен
Ответ сервера:
<head><title>502 Bad Gateway</title></head>
<body bgcolor=»white»>
<center><h1>502 Bad Gateway</h1></center>
<hr><center>nginx-reuseport/1.11.10</center>
</body>
</html>
Выгрузка товаров завершена с ошибками!!!
Техническая информация:
Выгружено товаров: 200
Выгружено картинок: 254
Выгружено предложений: 186
Выгружено документов Ремонт: 355
{Обработка.ОбменССайтом.МодульОбъекта(326)}: Ошибка при вызове метода контекста (ОтправитьДляОбработки): Ошибка при выполнении файловой операции ‘admin/exchange/auto/?type=catalog&mode=file&filename=import_files/44/446dce7e-0f76-11e1-81d4-0015179911ad_6cba4f76-3289-11e4-adc9-0015179911ac.jpeg’: Ошибка работы с Интернет: неверный формат ответа шлюзу (502). <html>
<head><title>502 Bad Gateway</title></head>
<body bgcolor=»white»>
<center><h1>502 Bad Gateway</h1></center>
<hr><center>nginx-reuseport/1.11.10</center>
</body>
</html>
: Ошибка работы с Интернет: неверный формат ответа шлюзу (502)
Произошла ошибка: . По причине:
Произошла ошибка на стороне сервера. Не получен статус завершения операции. Файл не отправлен (C:UsersUSR1CV82AppDataLocalTemp1cbitriximport_files44446dce7e-0f76-11e1-81d4-0015179911ad_6cba4f76-3289-11e4-adc9-0015179911ac.jpeg.2).
Обмен не выполнен
Ответ сервера:
<head><title>502 Bad Gateway</title></head>
<body bgcolor=»white»>
<center><h1>502 Bad Gateway</h1></center>
<hr><center>nginx-reuseport/1.11.10</center>
</body>
</html>
Просьба подсказать, что тут может быть?
Комментарий разработчиков на UMI.CMS А25 по настройке корректной выгрузки из 1С и исправлению ошибок:
502 ошибка возникает в момент, когда сервер не справляется с нагрузкой.
В вашем случае очень похоже, что картинка 446dce7e-0f76-11e1-81d4-0015179911ad_6cba4f76-3289-11e4-adc9-0015179911ac.jpeg является причиной данной проблемы. Возможно, что её размер превышает допустимые сервером нормы. Или же из-за её размера время загрузки увеличивается настолько, что сервер обрубает процесс.
Первая рекомендация — проверить саму картинку и уменьшить её.
Вторая рекомендация (если это не получится) — получить информацию о причинах сбоя у хостера. У него должны быть логи относительно этой ошибки и, возможно, там будет ответ.
А началось все довольно безобидно. Позвонил старый клиент у которого уже года 2-3 работает магазин в связке с 1С и пожаловался что обмен перестал работать. Полез я к нему в 1С и вижу, что обмен действительно падает причем с разными ошибками и на разных файлах.
Первое что сделали — перешли на более мощный тариф хостинга. Половина зоопарка ошибок исчезла. Однако ошибка
Выгрузка на сайт завершилась с ошибками.
import.xml: Произошла ошибка на стороне сервера. Получен неизвестный статус импорта.
Неверный тип файла, либо превышен максимальный размер файла
осталась и уходить не собиралась.
Пробовали выгружать и на тиражный магазин и на VDS на который другая 1С прекрасно все грузит — везде одна и та же ошибка.
В итоге обратились в поддержку Битрикса. Судя по оперативности и точности ответов поддержка знает о проблеме. А суть ответов была в следующем: поддержка вставила отладочную печать и попросила сделать выгрузку.
По результатам выгрузки в консоли 1С появилась отладочная информация вида
Отсюда можно видеть, что одна из картинок имеет mimetype: application/octet-stream (т.е. двоичные данные вместо структурированных).
Далее по названию картинки вычисляем (например, можно в import.xml поискать по названию картинки) нехороший товар, пересохраняем его картинку в любом графическом редакторе и все работает.
Кому интересно — вся отладка заключается в изменении файла /bitrix/modules/main/classes/general/file.php:
после каждого вызова
return GetMessage("FILE_BAD_TYPE");
нужно вставить
print_r($arFile);
Попросил поддержку исправить этот баг в импорте, но мы то с вами знаем сколько такие неважные исправления могут делаться. Поэтому я просто оставлю это сообщение здесь. Возможно кому-то поможет сэкономить время.
Актуально для версии 2.9
Проблема: При синхронизации через 1С, возникает ошибка на этапе обмена заказами.
Ошибка может быть выглядеть следующим образом:
Выгружено товаров: 10 Выгружено картинок: 9 Выгрузка товаров успешно завершена Выгружено заказов: 7 Произошла ошибка на стороне сервера. Не получен статус завершения операции. Файл не отправлен (C:a0fc4c7-cf54-4b0a-9ba0-0e42fe9ff2911cbitrix-6ff19691-637c-dd0f-aad3-32a00be942c8.xml.1). Обмен не выполнен Ответ сервера: Warning: XMLReader::read(): /sys-temp/1c_import/1cbitrix-6ff19691-637c-dd0f-aad3-32a00be942c8.xml:1965: parser error : Extra content at the end of the document in /classes/system/subsystems/import/splitters/commerceML2Splitter.php on line 187 Обмен заказами завершен с ошибками!!!
Дело в том, что 1с не сделали возможным пересылку файла с заказами по частям, а отдают его только 1 раз причем с учетом параметра, задающего максимальный размер принимаемого файла. Если передаваемый файл превышает размер указанный в параметре, то файл обрывается.
Для таких ситуаций мы предусмотрели настройку в config.ini
exchange.commerceML.maxFileSize = "102400"
По-умолчанию настройка выставлена в 102400 байт и если файл в папке sys-temp/1c_import будет иметь размер точно такой же, каков указан в настройке, то остается только эксперементальным путем подбирать значение параметра exchange.commerceML.maxFileSize, чтобы файл с заказами мог загрузится целиком.
По материалам отдела разработки.
Если у вас возникли какие либо вопросы которые вы не смогли решить по нашим публикациям самостоятельно,
то ждем ваше обращение в нашей службе тех поддержки.
Источник: https://dev.1c-bitrix.ru/community/forums/messages/forum26/topic24011/message311755/#message311755
Вот мои 5 коп.
Суть: все работало нормально до обновления битрикса.
Т.е. с настройками хостинга все ок
изменения вносил в 1С
http://dev-doc.blogspot.com/2013/12/1.html
Назад в раздел
Подписаться на новые материалы раздела:
Загрузка…
Актуально для версии 2.9
Проблема: При синхронизации через 1С, возникает ошибка на этапе обмена заказами.
Ошибка может быть выглядеть следующим образом:
Выгружено товаров: 10 Выгружено картинок: 9 Выгрузка товаров успешно завершена Выгружено заказов: 7 Произошла ошибка на стороне сервера. Не получен статус завершения операции. Файл не отправлен (C:a0fc4c7-cf54-4b0a-9ba0-0e42fe9ff2911cbitrix-6ff19691-637c-dd0f-aad3-32a00be942c8.xml.1). Обмен не выполнен Ответ сервера: Warning: XMLReader::read(): /sys-temp/1c_import/1cbitrix-6ff19691-637c-dd0f-aad3-32a00be942c8.xml:1965: parser error : Extra content at the end of the document in /classes/system/subsystems/import/splitters/commerceML2Splitter.php on line 187 Обмен заказами завершен с ошибками!!!
Дело в том, что 1с не сделали возможным пересылку файла с заказами по частям, а отдают его только 1 раз причем с учетом параметра, задающего максимальный размер принимаемого файла. Если передаваемый файл превышает размер указанный в параметре, то файл обрывается.
Для таких ситуаций мы предусмотрели настройку в config.ini
exchange.commerceML.maxFileSize = "102400"
По-умолчанию настройка выставлена в 102400 байт и если файл в папке sys-temp/1c_import будет иметь размер точно такой же, каков указан в настройке, то остается только эксперементальным путем подбирать значение параметра exchange.commerceML.maxFileSize, чтобы файл с заказами мог загрузится целиком.
По материалам отдела разработки.