При вызове ws-операций очень часто надо вернуть массив значений. В этой статье я расскажу как это сделать используя XDTOОбъект.
Создайте веб-сервис. В задайте свойство "URI пространства имен" веб-сервиса например "
http://ghostaz.no-ip.org".
И создайте ws-операцию, например "ВозвратитьМассив".
Далее создайте XDTO-пакет и добавьте в него Тип объекта как это показано на картинке:
И создайте свойство объекта:
У свойства укажите "Максимальное количество" равное -1. Это свойство и указывает что Элемент объекта "Свойство1" может быть повторен любое количество раз. Не забудьте указать тип свойства например string.
Теперь в ws-операции можно указывать XDTOОбъект "ТипОбъекта1" как Тип возвращаемого значения, но перед этим необходимо в у веб сервиса указать XDTO пакет:
После этого можно у ws-операции "ВозвратитьМассив" указать Тип возвращаемого значения:
Можно приступать к написанию кода. В обработке вызова операции мы создадим тип объекта XDTO, затем сам объект и в цикле добавим ему несколько элементов.
Функция ВозвратитьМассив()
ТипXDTOТипОбъекта1 = ФабрикаXDTO.Тип("
http://ghostaz.no-ip.org", "ТипОбъекта1");
ТипОбъекта1 = ФабрикаXDTO.Создать(ТипXDTOТипОбъекта1);
Для Ай = 1 по 4 Цикл
//добавим строку в массив
ТипОбъекта1.Свойство1.Добавить("Строка"+Ай);
КонецЦикла;
Возврат ТипОбъекта1;
КонецФункции
Вот и все. Можно публиковать и смотреть результат. А результат такой:
Смотрите также:
Электронный учебник по программированию в 1С Рекомендации по изучению программирования 1С с нуля Игра "Кто хочет стать миллионером?" с вопросами на определенную тематику (язык программирования JavaScript, английские, немецкие, французские, испанские, португальские, нидерландские, итальянские слова, электробезопасность, промышленная безопасность, бокс и т.п.), написанная на 1С Программирование в 1С 8.3 с нуля - краткий самоучитель Комплексная подготовка программистов 1С:Предприятие 8.2 Сайты с уроками программирования и со справочниками Youtube-каналы с уроками программирования Сайты для обучения программированию Лекции и уроки