Передача ссылки через вебсервис

1. Xershi 1555 11.04.18 21:00 Сейчас в теме
Добрый день, коллеги!

Есть вебсервис "DigitizedDocument" базы А.
Далее база Б подключается к этому вебсервису и передает данные документа через ФабрикаXDTO.

У этого документа в базе А есть реквизит тип "справочник", например "Справочник1". Базе Б есть похожий реквизит, только название справочника другое, например "Справочник1Б". Структура реквизитов однородна, за исключением не примитивных типов.

Прокси = ПолучитьПрокси();
	
	ОбъектXDTO = Прокси.ФабрикаXDTO.Создать(Прокси.ФабрикаXDTO.Тип("http://www.1c.ru/ECM/DocumentsDigitization", "DigitizedDocument"));
	
	ПользовательТелеграмТип = ОбъектXDTO.Свойства().Получить("UserTelegram").Тип;	
	
	ПользовательТелеграмXDTO = Прокси.ФабрикаXDTO.Создать(ПользовательТелеграмТип);
	
	ПользовательТелеграмXDTO.АдресЭлектроннойПочты	 = Автор.АдресЭлектроннойПочты;
	ПользовательТелеграмXDTO.Долгота				 = Автор.Долгота;
	ПользовательТелеграмXDTO.Код					 = Автор.Код;
	ПользовательТелеграмXDTO.Мессенджер				 = Строка(Автор.Мессенджер);
	ПользовательТелеграмXDTO.Наименование			 = Автор.Наименование;
	ПользовательТелеграмXDTO.НомерТелефона			 = Автор.НомерТелефона;
	ПользовательТелеграмXDTO.СсылкаНаРезюме			 = Автор.СсылкаНаРезюме;
	ПользовательТелеграмXDTO.ТипОтправки			 = Автор.ТипОтправки;
	ПользовательТелеграмXDTO.ЧасовойПояс			 = Автор.ЧасовойПояс;
	ПользовательТелеграмXDTO.Широта					 = Автор.Широта;
	ПользовательТелеграмXDTO.Язык					 = Строка(Автор.Язык);
		
	ОбъектXDTO.UserTelegram = ПользовательТелеграмXDTO;			
	
Показать


Но хотелось передать саму ссылку. Вариант переписать через чтение и запись хмл, затем замена названий у меня не получилась, наверно потому что значение хдто пакета не может существовать под другим метаданным.

Как в такой ситуации делают обмен?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. Dream_kz 129 12.04.18 08:27 Сейчас в теме
(1) Выгружай все реквизиты в структуру, и сериализуй ее. Единственное, что саму ссылку передать не получится, так как таблица другая, но передать guid и тип строкой можно.
4. Xershi 1555 12.04.18 10:38 Сейчас в теме
(3) выходит из разных баз нельзя использовать хдто пакеты. Только в рамках одной базы или РИБа?
5. Dream_kz 129 12.04.18 12:34 Сейчас в теме
(4) Да вообще можно, просто по-моему структурой проще. Так я выгружаю документ Остатки в мобильное приложение, в основной конфе такого нет

ТипДок = ФабрикаXDTO.Тип("ПакетXDTO","DocumentObject.ОстаткиНоменклатуры");
	ТипТовары = ФабрикаXDTO.Тип("ПакетXDTO","Товары");
	
	Док = ФабрикаXDTO.Создать(ТипДок);
	Док.Ref = ГУИД;
	Док.DeletionMark = Ложь;
	Док.Date = НачалоДня(ТекущаяУниверсальнаяДата());
	Док.Number = "";
	Док.Posted = Истина;	
	Для Каждого Стр Из ТаблицаОстатков Цикл
		Товары = ФабрикаXDTO.Создать(ТипТовары);	
		ЗаполнитьЗначенияСвойств(Товары,Стр);
		Док.Товары.Добавить(Товары);
	КонецЦикла;
	МойXML = Новый ЗаписьXML;
	МойXML.УстановитьСтроку();
	ФабрикаXDTO.ЗаписатьXML(МойXML, Док);
	ТекстВозврата = МойXML.Закрыть();
	ТекстВозврата = СтрЗаменить(ТекстВозврата,"xmlns=""ПакетXDTO""", "xmlns=""http://v8.1c.ru/8.1/data/enterprise/current-config""");
Показать
6. Xershi 1555 12.04.18 12:43 Сейчас в теме
(5) ну я так и сделал. Просто хотел оперировать ссылками, а не получилось. Плюс потом писать читалку структуры.
Вопрос тогда решен.
2. Xershi 1555 11.04.18 21:14 Сейчас в теме
Хотя насколько помню. В последних частях курса по мобильной разработке была ситуация когда из конфы стационарки урезают объект до мобильной версии и наоборот кажись.

Но это не применял и забыл. Кто напомнит, как это реализуется?
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот