Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
12 дек 2024, 06:36

Как передать параметры из одной базы в другую через веб сервис.

Автор Mtjal, 01 окт 2021, 09:01

0 Пользователей и 1 гость просматривают эту тему.

Mtjal

Доброго времени суток. Есть опубликованная база с веб сервисом (база источник), операция веб сервиса SubmitQuery с параметрами TypeOfExchange (тип значения string), BeginingDate и EndDate (тип значения Date) . Эти параметры передаются в модуль веб сервиса. В другой базе (база приемник) написан обработчик, который подключается через WS-ссылку к базе источнику и получает оттуда данные из запроса. На форме обработчика есть выбор периода. Подскажите, как передать дату из базы приемника в базу источник , чтобы параметрам BeginningDate и EndDate из функции SubmitQuery присвоились значения , которые будут выбраны в обработчике. Может кто уже сталкивался с такими задачами.

Куски кода базы источника (с запросом, передающим данные) и обработчика базы приемника (отвечающий за подключение к базе источнику) представлены ниже

Код базы источника:

    Функция SubmitQuery(TypeOfExchange,BeginningDate,EndDate)
   
    Структура = Десериализовать(TypeOfExchange);
    ТаблицаЗначений = Новый Структура;
    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("НачалоПериода", BeginningDate);
    Запрос.УстановитьПараметр("КонецПериода", КонецДня(EndDate));
    Запрос.Текст =

Код обработчика базы приемника:

&НаСервере
Функция ВыполнитьЗагрузкуНаСервере()
   
    ТабДок = Новый ТабличныйДокумент;
    ТабДок.ТолькоПросмотр = Истина;
    ТабДок.АвтоМасштаб = Истина;
    ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
   
    Счетчик = 1;
   
    Макет = РеквизитФормыВЗначение("Объект").ПолучитьМакет("СравнениеДанных");
    Шапка = Макет.ПолучитьОбласть("Шапка");
    ОбластьСтрока = Макет.ПолучитьОбласть("Строка");
    ОбластьОшибок = Макет.ПолучитьОбласть("СтрокаОшибок");
   
    Шапка.Параметры.НачПериод = Формат(НачалоПериода,"ДФ=dd.MM.yyyy");
    Шапка.Параметры.КонПериод = Формат(КонецПериода,"ДФ=dd.MM.yyyy");
   
    ТабДок.Вывести(Шапка);
   
    ТЗ = Новый ТаблицаЗначений;
    ТЗ.Колонки.Добавить("Данные", Новый ОписаниеТипов("Строка",,,, Новый КвалификаторыСтроки(150)));   
   
    Соединение = WSСсылки.ПолучитьДанныеДокументов.СоздатьWSПрокси("http://localhost/ws/CompareDocument", "WebCompareDocument", "WebCompareDocumentSoap");
    Соединение.Пользователь = "Admin";
    Соединение.Пароль = "13788";
   
    Операция = Соединение.ТочкаПодключения.Интерфейс.Операции.Получить("SubmitQuery");
    //Операция = Соединение.ТочкаПодключения.Интерфейс.Операции.Получить("BeginningDate");
    //Операция = Соединение.ТочкаПодключения.Интерфейс.Операции.Получить("EndDate");
   
    Данные = Новый Структура;
    Данные.Вставить("ТаблицаДанных", ТЗ);

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск