bitrix admin 1c exchange php
Изменения протокола обмена между 1С-Битрикс и 1С Предприятие
Вот такую веселую ошибку при обмене заказами могут наблюдать Битрикс-администараторы, накатившие свежие обновления на Битрикс, но не обновившие модуль обмена на стороне 1С
failure Ошибка проверки источника запроса. Обновите модуль обмена.
Видимо, битриксоиды отказались от поддержки ранее описанного ими же здесь протокола обмена:
Напомню, каким раньше был протокол:
Конечно, странно, что сейчас битриксоиды полностью отказались от поддержки модуля обмена, который идет в 1С УТ 11 без дополнений
Я думаю, каждый, кто захочет сделать себе деградацию модуля обмена на стороне Битрикс – сделает ее. А я сейчас расскажу, как сделать, чтобы ваш модуль обмена на стороне сайта был зафиксирован, никогда не обновлялся, не преподносил сюрпризов вашей кастомной 1С-ке при сохранении возможности обновления всех остальных модулей.
Идем в папку /bitrix/components/bitrix/ (на сайте, на котором обмен уже настроен и версия обмена вас устраивает) и копируем компоненты обмена
catalog.export.1c
catalog.export.1c
sale.export.1c
в свое пространство имен. Соответсвенно я копирую их в папку
Далее нам необходимо скопировать классы обмена. Мы не будем их наследовать в этот раз, а сделаем копии. Заводим свой файлик, не важно по сути, где он будет лежать и как называться, к примеру, можно положить его в /local/php_interface/lib/exchange.php
Аналогично поступаем с классом CAllSaleExport из файла /bitrix/modules/sale/general/ export.php и с классом CSaleExport из /bitrix/modules/sale/mysql/export.php (делаем ему class CSaleExport2 extends CAllSaleExport2 )
Далее в наших компонентах обмена из нашего пространства имен подключаем наш файл с нашими классами-копиями, после чего заменяем в компонентах все вызовы CIBlockCMLImport, CIBlockCMLExport и CSaleExport на вызовы CIBlockCMLImport2, CIBlockCMLExport2 и CSaleExport2
Наслаждаемся!
Теперь можем спокойно обновлять битрикс, и не ждать сюрпризов по части обмена с 1С.
Примечание! Наши скопированные классы продолжают использовать стандартные языковые файлы.
Документация по 1c_exchange.php
существует ли оная в свободном доступе? (либо для партнеров, клиентов. )
хочу использовать этот скрипт для обмена данными с конфигурацией 1С, в которой такой обмен не реализован.
но не хочу это делать методом тыка и ковыряний в исходниках этого скрипта.
спасибо большое (жаль, что день я потратил на выяснение 70% протокала обмена из исходника). но справка помогла.
| Цитата |
|---|
| zip=no, в таком случае файлы не должны быть упакованы, а передаются каждый по отдельности. |
т.е. в zip можно запихнуть несколько файлов? а смысл?
| Цитата |
|---|
| Затем из 1С отправляется запрос вида: http:// /bitrix/admin/1c_exchange.php?type=sale&mode=file&filename= который загружает на сервер файл обмена, посылая содержимое файла в виде POST. |
не могу понять, каким образом нужно резать файл?
резать наглым образом, отправлять несколько кусков а скрипт 1c_exchange.php будет каждый последующий кусок дописывать к существующему файлу?(если, конечно, я укажу при передаче каждого куска одинаковое имя файла)
или же резать «не наглым», но неудобным образом, разбивая информацию на логически целостные куски и архивируя каждый отдельно?
| Цитата |
|---|
| Денис Кузьменко пишет: Цитата zip=no, в таком случае файлы не должны быть упакованы, а передаются каждый по отдельности. |
т.е. в zip можно запихнуть несколько файлов? а смысл?
| Цитата |
|---|
| Денис Кузьменко пишет: Цитата Затем из 1С отправляется запрос вида: http:// /bitrix/admin/1c_e. me= который загружает на сервер файл обмена, посылая содержимое файла в виде POST. |
не могу понять, каким образом нужно резать файл? резать наглым образом, отправлять несколько кусков а скрипт 1c_exchange.php будет каждый последующий кусок дописывать к существующему файлу?(если, конечно, я укажу при передаче каждого куска одинаковое имя файла)
или же резать «не наглым», но неудобным образом, разбивая информацию на логически целостные куски и архивируя каждый отдельно?
Да, файл будет дописываться. Резать можете как вам удобно. Нарезка сделана, как сказано выше, для того, чтобы умещяться в ограничения серверов.
Изменения протокола обмена между 1С-Битрикс и 1С Предприятие
Вот такую веселую ошибку при обмене заказами могут наблюдать Битрикс-администараторы, накатившие свежие обновления на Битрикс, но не обновившие модуль обмена на стороне 1С
failure Ошибка проверки источника запроса. Обновите модуль обмена.
Видимо, битриксоиды отказались от поддержки ранее описанного ими же здесь протокола обмена:
Напомню, каким раньше был протокол:
Конечно, странно, что сейчас битриксоиды полностью отказались от поддержки модуля обмена, который идет в 1С УТ 11 без дополнений
Я думаю, каждый, кто захочет сделать себе деградацию модуля обмена на стороне Битрикс – сделает ее. А я сейчас расскажу, как сделать, чтобы ваш модуль обмена на стороне сайта был зафиксирован, никогда не обновлялся, не преподносил сюрпризов вашей кастомной 1С-ке при сохранении возможности обновления всех остальных модулей.
Идем в папку /bitrix/components/bitrix/ (на сайте, на котором обмен уже настроен и версия обмена вас устраивает) и копируем компоненты обмена
catalog.export.1c
catalog.export.1c
sale.export.1c
в свое пространство имен. Соответсвенно я копирую их в папку
Далее нам необходимо скопировать классы обмена. Мы не будем их наследовать в этот раз, а сделаем копии. Заводим свой файлик, не важно по сути, где он будет лежать и как называться, к примеру, можно положить его в /local/php_interface/lib/exchange.php
Аналогично поступаем с классом CAllSaleExport из файла /bitrix/modules/sale/general/ export.php и с классом CSaleExport из /bitrix/modules/sale/mysql/export.php (делаем ему class CSaleExport2 extends CAllSaleExport2 )
Далее в наших компонентах обмена из нашего пространства имен подключаем наш файл с нашими классами-копиями, после чего заменяем в компонентах все вызовы CIBlockCMLImport, CIBlockCMLExport и CSaleExport на вызовы CIBlockCMLImport2, CIBlockCMLExport2 и CSaleExport2
Наслаждаемся!
Теперь можем спокойно обновлять битрикс, и не ждать сюрпризов по части обмена с 1С.
Примечание! Наши скопированные классы продолжают использовать стандартные языковые файлы.
Документация по 1c_exchange.php
существует ли оная в свободном доступе? (либо для партнеров, клиентов. )
хочу использовать этот скрипт для обмена данными с конфигурацией 1С, в которой такой обмен не реализован.
но не хочу это делать методом тыка и ковыряний в исходниках этого скрипта.
спасибо большое (жаль, что день я потратил на выяснение 70% протокала обмена из исходника). но справка помогла.
| Цитата |
|---|
| zip=no, в таком случае файлы не должны быть упакованы, а передаются каждый по отдельности. |
т.е. в zip можно запихнуть несколько файлов? а смысл?
| Цитата |
|---|
| Затем из 1С отправляется запрос вида: http:// /bitrix/admin/1c_exchange.php?type=sale&mode=file&filename= который загружает на сервер файл обмена, посылая содержимое файла в виде POST. |
не могу понять, каким образом нужно резать файл?
резать наглым образом, отправлять несколько кусков а скрипт 1c_exchange.php будет каждый последующий кусок дописывать к существующему файлу?(если, конечно, я укажу при передаче каждого куска одинаковое имя файла)
или же резать «не наглым», но неудобным образом, разбивая информацию на логически целостные куски и архивируя каждый отдельно?
| Цитата |
|---|
| Денис Кузьменко пишет: Цитата zip=no, в таком случае файлы не должны быть упакованы, а передаются каждый по отдельности. |
т.е. в zip можно запихнуть несколько файлов? а смысл?
| Цитата |
|---|
| Денис Кузьменко пишет: Цитата Затем из 1С отправляется запрос вида: http:// /bitrix/admin/1c_e. me= который загружает на сервер файл обмена, посылая содержимое файла в виде POST. |
не могу понять, каким образом нужно резать файл? резать наглым образом, отправлять несколько кусков а скрипт 1c_exchange.php будет каждый последующий кусок дописывать к существующему файлу?(если, конечно, я укажу при передаче каждого куска одинаковое имя файла)
или же резать «не наглым», но неудобным образом, разбивая информацию на логически целостные куски и архивируя каждый отдельно?
Да, файл будет дописываться. Резать можете как вам удобно. Нарезка сделана, как сказано выше, для того, чтобы умещяться в ограничения серверов.
Изменения протокола обмена между 1С-Битрикс и 1С Предприятие
Вот такую веселую ошибку при обмене заказами могут наблюдать Битрикс-администараторы, накатившие свежие обновления на Битрикс, но не обновившие модуль обмена на стороне 1С
failure Ошибка проверки источника запроса. Обновите модуль обмена.
Видимо, битриксоиды отказались от поддержки ранее описанного ими же здесь протокола обмена:
Напомню, каким раньше был протокол:
Конечно, странно, что сейчас битриксоиды полностью отказались от поддержки модуля обмена, который идет в 1С УТ 11 без дополнений
Я думаю, каждый, кто захочет сделать себе деградацию модуля обмена на стороне Битрикс – сделает ее. А я сейчас расскажу, как сделать, чтобы ваш модуль обмена на стороне сайта был зафиксирован, никогда не обновлялся, не преподносил сюрпризов вашей кастомной 1С-ке при сохранении возможности обновления всех остальных модулей.
Идем в папку /bitrix/components/bitrix/ (на сайте, на котором обмен уже настроен и версия обмена вас устраивает) и копируем компоненты обмена
catalog.export.1c
catalog.export.1c
sale.export.1c
в свое пространство имен. Соответсвенно я копирую их в папку
Далее нам необходимо скопировать классы обмена. Мы не будем их наследовать в этот раз, а сделаем копии. Заводим свой файлик, не важно по сути, где он будет лежать и как называться, к примеру, можно положить его в /local/php_interface/lib/exchange.php
Аналогично поступаем с классом CAllSaleExport из файла /bitrix/modules/sale/general/ export.php и с классом CSaleExport из /bitrix/modules/sale/mysql/export.php (делаем ему class CSaleExport2 extends CAllSaleExport2 )
Далее в наших компонентах обмена из нашего пространства имен подключаем наш файл с нашими классами-копиями, после чего заменяем в компонентах все вызовы CIBlockCMLImport, CIBlockCMLExport и CSaleExport на вызовы CIBlockCMLImport2, CIBlockCMLExport2 и CSaleExport2
Наслаждаемся!
Теперь можем спокойно обновлять битрикс, и не ждать сюрпризов по части обмена с 1С.
Примечание! Наши скопированные классы продолжают использовать стандартные языковые файлы.