![]() |
|
Создание веб сервиса и отправка номенклатуры в другую базу по http | ☑ | ||
---|---|---|---|---|
0
Простенький вопросик
06.12.20
✎
17:09
|
Дайте ссылку на грамотный пример без глюков
|
|||
1
ДенисЧ
06.12.20
✎
17:16
|
Веб-сервис не предназначен для передачи данных.
Он отдаёт данные в ответ на запрос. Так что - сначала матчасть поучи. Там делается в 1с за 2 минуты + 5 минут на публикацию (не считая времени на поиск, скачивание и установку апача) |
|||
2
Garykom
гуру
06.12.20
✎
18:12
|
(1) С фига ли? Веб или http (лучше http оно проще) предназначено для передачи в обе стороны.
Данные можно как вытягивать так и заталкивать |
|||
3
ДенисЧ
06.12.20
✎
18:15
|
(2) Ты можешь самостоятельно именно веб-сервис заставить передавать данные?
И да, не путай с .ОтправитьДляОбработки(). Это не веб-сервис. |
|||
4
Гений 1С
гуру
06.12.20
✎
18:42
|
(0) о, я так контрагентов гонял
|
|||
5
Гений 1С
гуру
06.12.20
✎
18:42
|
(0) Еще актуально? Могу набросать кода
|
|||
6
ДедМорроз
06.12.20
✎
18:48
|
Web или http сервис отвечает на полученный запрос,то есть инициатором выступает тот,кто к нему обращается,а уж направление передачи данных определяется логикой
По сути,запрос к сервису,это входящие данные,а ответ сервиса - исходящие. |
|||
7
Гений 1С
гуру
06.12.20
✎
18:53
|
Кароче, вот тебе пример для затравки.
Функция ПодключитьсяКСервисуФормированияПродаж() Экспорт СтруктураСервиса = Новый Структура("ОК, Ошибки", истина, ложь); Логин = Константы._СервисФормированияПродаж_Логин.Получить(); Пароль = Константы._СервисФормированияПродаж_Пароль.Получить();; WSDLТекст = СокрЛП(Константы._СервисФормированияПродаж_WSDLТекст.Получить()); Попытка Если ЗначениеЗаполнено(WSDLТекст) Тогда //WSDL файл локальный, если нужно менять порты ИмяВременногоФайла = ПолучитьИмяВременногоФайла("xml"); Адрес = ИмяВременногоФайла; Адрес = СтрЗаменить(Адрес, "\", "/"); Адрес = "file://" + Адрес; Т = Новый ТекстовыйДокумент(); Т.УстановитьТекст(WSDLТекст); Т.Записать(ИмяВременногоФайла); Иначе //Пример адреса: "http://127.0.0.1/my1s/ws/ws_cliex.1cws?wsdl" Адрес = Константы._СервисФормированияПродаж_Адрес.Получить(); КонецЕсли; Определение = Новый WSОпределения(Адрес, Логин, Пароль); ПространствоИмен = "http://www.geniy1s.ru/CliEx"; Сервис = Новый WSПрокси(Определение, ПространствоИмен, "_ФормированиеПродаж", "_ФормированиеПродажSoap" ); Сервис.Пользователь = Логин; Сервис.Пароль = Пароль; СтруктураСервиса.Вставить("Сервис", Сервис); Исключение СтруктураСервиса.ОК = ложь; СтруктураСервиса.Ошибки = ОписаниеОшибки(); КонецПопытки; Возврат СтруктураСервиса; КонецФункции Функция ПолучитьТовар(СтруктураПоиска) Экспорт УстановитьПривилегированныйРежим(Истина); Результат = Новый Структура(); СтруктураСервиса = _ФормированиеПродаж.ПодключитьсяКСервисуФормированияПродаж(); Если СтруктураСервиса.ОК = ложь Тогда Результат.Вставить("ОК", ложь); Результат.Вставить("Ошибки", "Не удалось подключиться к базе, ошибка: " + СтруктураСервиса.Ошибки); Возврат Результат; КонецЕсли; СтруктураПоиска.Вставить("ИмяКомпьютера", ПараметрыСеанса._ИмяКомпьютераПользователя); РезультатВнутр = СтруктураСервиса.Сервис.GetGoods(ЗначениеВСтрокуВнутр(СтруктураПоиска)); Результат = ЗначениеИзСтрокиВнутр(РезультатВнутр); Возврат Результат; КонецФункции |
|||
8
Cthulhu
06.12.20
✎
18:57
|
а можно просто опубликовать - и сразу кодить дергание-запись чего надо через oData...
|
|||
9
Гений 1С
гуру
06.12.20
✎
19:00
|
(1) Хахаха, Горе-Teacher пришел
|
|||
10
ДенисЧ
06.12.20
✎
19:02
|
(9) Ну не всем же баптистами быть. Некоторым нужно ещё чайников учить
|
|||
11
Гений 1С
гуру
06.12.20
✎
19:03
|
(10) чему ты пытаешься научить?
|
|||
12
ДенисЧ
06.12.20
✎
19:05
|
(11) Тебе всё равно не понять, поэтому я не буду тратить время
|
|||
13
Бишбармак
07.12.20
✎
05:18
|
(0) (не реклама, но...)
https://xn----1-bedvffifm4g.xn--p1ai/articles/2017-09-07-exchange-with-internet-services/ |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |