![]() |
|
Получение данных с веб-сервиса 1с, через url-линк. | ☑ | ||
---|---|---|---|---|
0
Turms
22.04.13
✎
20:18
|
Коротко о ситуации:
Я начинающий программист 1с (чуть больше года), впервые столкнулся с веб-сервисами, полазил в гугле, смог создать, опубликовать и получить данные с веб-сервиса в другой конфе посредством wsdl-ссылки и объекта конфы. Задача по работе у меня следующая, есть пара иностранных программистов (из Кореи) которые заказали у нас автоматизацию склада в нашем городе + обмен данными с их корейской системой, изначально была договоренность что обмен данным будет происходить через веб-сервисы, так что я подготовился и подтянул мат. часть в этом вопросе. Сегодня выяснилось что они хотят обмен данными, посредством url-ссылок ввести. То есть что-то вроде следующего: Примеры: http://www.cbu.uz/section/rates/widget/xml - при обращении без параметров, выдаются курсы по всем валютам на текущую дату; http://www.cbu.uz/section/rates/widget/xml/[curr] – при запросе с параметром «curr» с указанием запрашиваемой валюты, выдается курс по запрашиваемой валюте на текущую дату; http://www.cbu.uz/section/rates/widget/xml/all/[yyyy-mm-dd] – при запросе с параметром «yyyy-mm-dd» с указанием запрашиваемой даты (в формате yyyy-mm-dd, год 4 знака, месяц 2 знака, день 2 знака ), выдаются курсы по всем валютам на запрашиваемую дату; http://www.cbu.uz/section/rates/widget/xml/[curr]/[yyyy-mm-dd] – при запросе с параметром «curr» с указанием запрашиваемой валюты, а также с параметром «yyyy-mm-dd» с указанием запрашиваемой даты, выдается курс по запрашиваемой валюте на запрашиваемую дату; Собственно вопрос, можно ли поднять такую вещь силами 1с платформы или нет? Если нет то коротко, что еще понадобится чтоб поднять (софт, навыки и т.д.)? З.ы. Когда сегодня корейцам дал wsdl линк на свой сервис, у них были круглые глаза и они сказали, что нам с этим делать, и как нам из этого получить xml-файл который они хотят видеть. То есть второе возможное решение данной ситуации, это дать какой-то пример работы на яве с веб-сервисами 1с. Прошу подсказать :о( |
|||
1
Fragster
гуру
22.04.13
✎
20:53
|
прослойку между rest (чего хотят они) и 1сным soap можно очень просто написать
|
|||
2
mistеr
22.04.13
✎
21:09
|
Да, прослойку легкую нужно. Хоть на PHP, хоть на яве, хоть на дотнете. А можно и SOAP-прослойку выкинуть и по COMу тянуть данные.
Или скажи корейцам, чтоб тоже учили матчасть по WS :) P.S. А что за контора если не секрет? Просто город уж больно знакомый. |
|||
3
Turms
22.04.13
✎
21:23
|
Контора LG.
Пример прослойки можно? И что надо чтоб поднять её у себя на коллокейшн? А то у меня там только сервак крутится и апач к нему. |
|||
4
Turms
22.04.13
✎
21:37
|
http://91.212.89.123/test_lgeak/ws/test_lgeak.1cws?wsdl
Вот тестовый линк на веб сервис. Дайте пожалуйста пример кода на яве как достучатся им до данных веб-сервиса. Или подскажите как сделать прослойку средствами 1с (или как я понимаю не 1с), просто прошу задать направление в котором надо рыть, ибо в веб делах я профан полный, ни с пхпп ни с явой не знаком и с чем едят SOAP тоже не представляю( |
|||
5
oleg_km
22.04.13
✎
21:38
|
Так может вам отказаться от SOAP и просто обмениваться XML с помощью GET и POST? Кстати, внимательно прочитал (0) и понял, что именно это они вам и предлагают, а отнють не вес-сервис.
|
|||
6
Turms
22.04.13
✎
21:43
|
(5) Я конечно нуб) Я не понимаю методов GET и POST)
Одним из требований у меня является наличие входящих параметров, к примеру PROGRAMM_ID и других. Меня полностью устраивает веб-сервис (зря я его что ли курил два дня) просто если есть возможность поставить некую надстройку чтоб и их устроило, был бы идеальный выход. |
|||
7
Turms
22.04.13
✎
22:00
|
(5) Почитал про методы GET и POST. Пересплю с этой мыслью.
|
|||
8
mistеr
22.04.13
✎
22:04
|
(4) Примеры на яве легко гуглятся. Любая IDE импортирует WSDL и генерит классы.
Про GET и POST стоит почитать, пригодится. |
|||
9
mistеr
22.04.13
✎
22:04
|
||||
10
Jaap Vduul
22.04.13
✎
22:07
|
axis.apache.org/axis/java/user-
guide.html |
|||
11
Turms
23.04.13
✎
09:05
|
Мне хватит платформенных средств 1с, чтоб организовать такой обмен данных? Методами GET и POST?
|
|||
12
sikuda
23.04.13
✎
09:21
|
А чем вариант с HTTPСоединение.Получить не устраивает?
У вас же жестко прописанные адреса. А потом обработка полученного xml... |
|||
13
oleg_km
23.04.13
✎
09:22
|
(11) Нет. Как вариант сделать страничку например на PHP, там создавать COM-подключения к 1С. Или на инфостарте есть разработка ExpoServer, там описано, как из 1С сделать веб-сервер. Я просто взял АктивИкс WinSock и сам себе сделал из 1С однопоточный веб-сервер. Мне пока хватает
|
|||
14
oleg_km
23.04.13
✎
09:23
|
+(12)+(13) Да кстати, если серверную часть на себя возьмут корейцы, то ты весь обмен можешь организовать HTTPСоединение: заливать им данные POSTом, забирать GETом
|
|||
15
Turms
23.04.13
✎
09:35
|
(14)
Понятно, буду разговаривать с ними тогда. Но теперь мне уже самому интересно. Что мне понадобится для написания прослойки для веб сервиса, чтобы выводить результирующие данные через uri-линк? Если верить предыдущим постам то это можно просто сделать. Или может ли кто-то взяться за написание этой прослойки за определенную плату? С полным пояснениями, какие действия я потом должен сделать на сервере у себя. |
|||
16
sda553
23.04.13
✎
09:39
|
(0) Что такое "Сегодня выяснилось, что они хотят...."? Что у вас там за ИТ менеджеры, которые так выясняют? Наведите лучше с этим порядок, чем прослойки и прокладки теперь писать.
|
|||
17
sda553
23.04.13
✎
09:42
|
(15) Технически: поднимаешь на том же сервере, где у тебя веб сервис 1С сайт-прослойку.
Он будет принимать вот эти вот GET параметры, обрабатывать, обращаться к веб сервису 1С, и возвращать результат в нужном виде. Написать такое можно очень быстро, поэтому лучше кого то нанять (сам долльше разбираться будешь, чем писать), весь проект написания такой прослойки от ТЗ до финального тестирования я бы оценил где то в 30 тыс руб. |
|||
18
Turms
23.04.13
✎
10:09
|
(16)
Ну дело было так) У них программист и аналитик приехали, проггер их только по корейски говорит, аналитик же и английский знает, с нашей стороны местный менеджер из представительства фирмы + я, у аналитика 5 раз спросили (разной формулировкой), будет ли это обмен данным посредством веб сервисов, он ответил что да. |
|||
19
oleg_km
23.04.13
✎
10:20
|
(17) да тут возможен 1000 и один вариант. Мне кажется перво-наперво нужно выяснить у корейцев могут ли они работать с веб-сервисами в узком смысле этого слова, т.е. с SOAP. Причем желательно попробовать именно веб-сервисы 1С. Если смогут, то вам проще: ваяйте все на 1С. Если на самом деле под веб-сервисами они понимают HTTP + XML и по-другому не могут, тогда вам сложнее. Нужно или делать сайт прослойку, которая будет обмениваться с 1С информацией толи по SOAP, толи по COM, толи вообще текстовыми файлами. Или выкинуть все веб-сервисы, апачи, взять как я уже сказал WinSock и написать свой веб сервер, мне кажется с вашей задачей он справится
|
|||
20
sda553
23.04.13
✎
11:02
|
(19) Счас, завтра они по корейски скажут, что у сайта должна быть морда, где можно без всяких xml глазами посмотреть что и куда выдается, задавая руками параметры. И будешь ты со своим winsockом опять офигевать от новой прослойки
|
|||
21
oleg_km
23.04.13
✎
11:25
|
(20) Ну я-то не буду, у меня нет корейцев. Просто громоздить веб-сервер для веб-морды, потом веб-морда опять через веб-сервер будет обращаться к веб-сервисам и все это ради одного-двух запросов в день. Ну разве что это социальный проект по борьбе с безработицей
|
|||
22
Turms
23.04.13
✎
13:23
|
У меня есть две таблицы которые надо возвращать каждые 30 минут.
|
|||
23
oleg_km
23.04.13
✎
13:38
|
(22) Я рад, но мне добавить нечего. Корейцы готовы осваивать SOAP? Тогда тебе повезло.
|
|||
24
Turms
23.04.13
✎
14:25
|
Нет, от корейцев пришел ответ "Нам некогда осваивать новые методы"
|
|||
25
Fragster
гуру
23.04.13
✎
14:25
|
что-то я не понял, а бюджет какой?
|
|||
26
oleg_km
23.04.13
✎
14:52
|
(24) Это нормально, т.е. им некогда, а вам есть когда. Тогда действительно вопрос в бюджете, сколько ваш работодатель готов закопать денег или хотя бы человеко-дней
|
|||
27
sikuda
23.04.13
✎
15:02
|
(22) Можешь возращать им xml в виде строки типа http://sikuda.ru/?p=22.
Но еще раз повторюсь лень твоих корейцев, даст возможность тебе освоить Httpсоединение в 1с. |
|||
28
oleg_km
23.04.13
✎
15:09
|
(27) Похоже беда еще в том, что корейцы не хотят у себя поднимать веб-сервер, а напрягают на это ТС. И это они хотят ходить по типа Httpсоединение, а ТС должен их запросы обрабатывать
|
|||
29
Turms
23.04.13
✎
22:24
|
(27) Да, я когда гуглил уже попадал по этой ссылке и даже в закладки поставил. И про НТТРСоединение почитал в синтакс помошнике и увидел аналоги методов GET & POST. Инфа полезная и я вижу применение новых возможностей в других проектах своих.
(28) Скорее всего с их стороны веб-сервер поднят и аналогичного они ждут от нас, но повторюсь у меня нет опыта работы в пхпп, поэтому писать прослойку буду нанимать со стороны. У меня еще вопрос родился. Можно ли посредством веб-сервиса 1с вернуть xml док. Именно док, а то сейчас я у себя в тексте модуля формирую ЧтениеХМЛ, а потом методом УстановитьСтроку, возвращаю именно строку (string). Грубо говоря вопрос звучит так, какой тип выходного параметра мне установить у веб-сервиса чтобы вернуть ЧтениеХМЛ? |
|||
30
Kabz
23.04.13
✎
23:30
|
||||
31
Turms
25.04.13
✎
13:00
|
Всем большое спасибо, в итоге была написана прослойка.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |