|
Веб сервисы: передать массив из 1С в 1С | ☑ | ||
---|---|---|---|---|
0
ivant
08.12.15
✎
19:17
|
День добрый.
Есть задача - передать из одной конфигурации 1С (источник) в другую (приемник) некий массив данных, например, список товаров. На стороне приемника предпологается создание веб сервиса для этих нужд. Вопрос - можно ли передать данные из источника не дорабатывая конфигурацию, только с помощью внешней обработки? |
|||
1
ИсчадиеADO
08.12.15
✎
19:19
|
как бе создание веб сервиса - это уже доработка?
|
|||
2
ivant
08.12.15
✎
19:21
|
(1) приемник дорабатывать можно. хочется в источнике обойтись без изменения конфигурации
|
|||
3
ИсчадиеADO
08.12.15
✎
19:24
|
(2) ну да, создаешь прокси, из него получаешь xdto пакет. И конвертируешь.
|
|||
4
ivant
08.12.15
✎
19:26
|
(3) То есть я могу получить определение xdto прямо из прокси? и уже по этому определению формировать массив?
|
|||
5
ivant
08.12.15
✎
19:27
|
(3+) то есть сам пакет я описываю на стороне приемника, а в источнике просто получаю его описание и по нему формирую массив?
правильно? |
|||
6
ivant
08.12.15
✎
20:02
|
Получилось сделать как тут:
http://3.bp.blogspot.com/-eiQrgdwYui0/VeWefHOWq1I/AAAAAAAAAbo/2Is3GjexD90/s1600/%25D0%259F%25D0%25B5%25D1%2580%25D0%25B5%25D0%25B4%25D0%25B0%25D1%2587%25D0%25B0%2B%25D1%2581%25D1%2582%25D1%2580%25D1%2583%25D0%25BA%25D1%2582%25D1%2583%25D1%2580%25D1%258B%2B%25D0%25B2%2B1%25D0%25A1.png Кому интересно, вот текст процедуры: Процедура ПередатьМассивНаСервере() ПараметрыХДТО = Новый ТаблицаЗначений(); ПараметрыХДТО.Колонки.Добавить("Колонка1"); ПараметрыХДТО.Колонки.Добавить("Колонка2"); СтрокаТаблицы = ПараметрыХДТО.Добавить(); СтрокаТаблицы.Колонка1 = "1"; СтрокаТаблицы.Колонка2 = 2; Сериализатор = Новый СериализаторXDTO(ФабрикаXDTO); ПараметрыОбъектаХДТО = Сериализатор.ЗаписатьXDTO(ПараметрыХДТО); WSОпределение = Новый WSОпределения(АдресАутентификации, , ,,,); WSПрокси = Новый WSПрокси(WSОпределение, "http://www.URL.com", "WebService", "WebServiceSoap", , ,); Результат = WSПрокси.GetMass(ПараметрыОбъектаХДТО); КонецПроцедуры //ПередатьМассивНаСервере |
|||
7
ivant
08.12.15
✎
20:04
|
с форматированием беда, конечно.
На стороне приемника проходит десериализация: Десериализация = Новый СериализаторXDTO(ФабрикаXDTO); ТаблицаЗначений = Десериализация.ПрочитатьXDTO(Param); |
|||
8
ivant
08.12.15
✎
20:06
|
С массивом не пробовал, но структуру передает аналогично
|
|||
9
ivant
08.12.15
✎
20:12
|
Вообще, подробнее про реализованный метод можно тут почитать: http://codenotes-1c.blogspot.ru/2014/04/1-8-1.html
|
|||
10
EvgeniuXP
08.12.15
✎
23:10
|
моб приложения от гилева возьми - там рассказывают.
|
|||
11
ivant
09.12.15
✎
13:56
|
(10) о, круто! спасибо
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |