Совершение запросов к 1С

Рейтинг: -25.9098  
На голосовании
Предложил Пользователь 45335 02.05.2012 13:31:01

Совершение запросов к 1С

Предлагаю сделать инструмент для совершения запросов к 1С с целю получения информации по заказам покупателей.
Пример:
На странице есть поле ввода номера заказа и даты, после нажатия на кнопку отправить - совершается запрос к 1С в результате которого возварщается информация по заказу в виде  XML, которую обрабываем и выводим посетителю.

Это необходимо, т.к. в нашем случае, компания - производитель, поэтому заказ может изготавливаться в течении нескольких дней, и большинство заказов делается не через сайт а через отдел продаж.
Рейтинг: 0  
Ответил Рябинков Артем 05.05.2012 12:20:41
Этот функционал обычно кастомный, очень сильно зависит от клиента. В коробочной поставке сделать универсально почти невозможно.

Рейтинг: 0  
Пользователь 57829 02.05.2012 18:03:40
Эм запрос с веб сервера к 1С живущей в корпоративной сети?
Не, не надо...
Рейтинг: 0  
Пользователь 45335 11.05.2012 09:43:29
Добрый день Артем!
Да, я понимаю сложность такого механизма, но можно попробовать сделать базовый функционал, в котором будет можно задать параметры подключения к БД 1С и возможность вставить код запроса, который будет отправлен БД, правда придется сделать как в почтовых шаблонах, возможность вставки определенных переменных, которые будут передаваться. Вероятно в этом будет самая большая сложность...
Дальнейший разбор ответного XML можно сделать целиком в шаблоне, или сделать предварительное формирование массива $arResult, повторяющего дерево XML, по сути это будет не такой сложный инструмент, который можно будет включать в коробочную поставку, а дальнейшую кастомизацию можно будет проводить уже непосредственно на проктах.

В крайнм случае достаточно будет даже просто сделать пару классов упрощающих такую работу. Этого уж ебудет достаточно для разработчиков, т.к. все-равно этим иснтрументом будет пользоваться рядовой пользователь.

Да даже одной функции будте достаточно, которыа будет просто отправлять запрос с заданными настойками и передвать в запросе текст, который можно будет формировать динамически используя другие API.
В данном случае единственное что надо еще сделать - ответный модуль для 1С, который будет давать возможность безопасно обработать запрос. Как вариант можно будет сделать так, чтобы в 1С надо было задавать шаблон запросов, и если сделанный запрос не соответсвует шаблону - ничего не выполнять. Кстати можно будет использвать тот же самый XML для совершения запроса, в котором будет передаваться информация о пользователе от имени которого запускать обработку, имени обработки и ключи. А в целяз безопасности 1С научить выполнять только заданный список обработок при вызове данной процедуры.
В ответ на запрос 1С возвращает XML, который разбираем в массив и возвращем его в качестве ответа функции.
По сути сложностей я пока не вижу.

Надеюсь я смог донести тот смысл, который сам изначально представлял :-)
Рейтинг: 0  
Пользователь 144171 01.11.2012 07:34:05
выставить 1С наружу? на это ни один здравомыслящий админ/руководитель не пойдет.
у нас сейчас похожая задача - каким-то образом показать клиенту на сайте состояние его заказа из 1С (сайт сам по себе, 1С сама по себе). пока только видится синхронизация через обмен файлами типа csv и написанием своего небольшого компонента (в простом варианте).
Рейтинг: 0  
Пользователь 25773 01.11.2012 10:16:54
Мне идея нравится.

Возможно, не сайт должен обращаться к 1С, а 1С должна обращаться в сайту по расписанию и забирать данные, которые Битрикс отдает.

Нужен понятный протокол и API для организации кастомных обменов.

Но сначала нужна документация, чтобы можно было смело писать кастомные обмены:
http://idea.1c-bitrix.ru/the-documentation-of-the-api-for-the-integration-of/

Не помешает и документация для программистов 1С. Программист нашего заказчика, например, не знал, как средствами 1C сформировать XML.