Имя: Пароль:
1C
1С v8
Параметр операции Web-сервиса
0 Valadis
 
04.12.12
10:05
Здравствуйте!
Может ли массив быть типом параметра операции Web-сервиса? На данный момент нашел реализацию через типы данных XDTO - тип объекта array (пространство имен v8.1c.ru/8.1/data/core). Может быть есть еще варинты?
1 Valadis
 
04.12.12
10:41
Есть какие-нибудь предложения?
2 0xFFFFFF
 
04.12.12
10:48
Массивы
Массивы моделируются свойствами типов-объектов. Тип массива нельзя
создать напрямую, но на определенном свойстве типа-объекта можно
указать минимальное и максимальное количество элементов массива.
Если оба значения равны 1, то это единичное свойство; если максимальное
количество больше 1, то множественное свойство; если же максимальное
количество равно -1, то количество элементов массива неограниченно.
Свойства-массивы реализованы в XDTO через СписокXDTO.
Например, для создания массива элементов номенклатуры, определенного
в свойстве Элементы структуры НоменклатураГруппа, из демоконфигу-
рации «Web-сервисы» (ИТС) нужно выполнить следующий фрагмент
кода (листинг 18.147).
Листинг 18.147. Пример создания массива объектов структурного типа
структурныйТип = ФабрикаXDTO.Тип("http://www.1c.ru/demos/products", "НоменклатураГруппа");
номенклатураГруппа = ФабрикаXDTO.Создать(структурныйТип);
номенклатура.Элементы.Добавить(номенклатура);
Массив при передаче представляется в виде XML-структуры
(листинг 18.148).
Листинг 18.148. Фрагмент XML-документа
<НоменклатураГруппа xmlns="http://www.1c.ru/demos/products">
<Элементы>
<Наименование>Ботинки женские</Наименование>
<ЗакупочнаяЦена>1000</ЗакупочнаяЦена>
</Элементы>
<Элементы>
<Наименование>Ботинки детские</Наименование>
<ЗакупочнаяЦена>500</ЗакупочнаяЦена>
</Элементы>
</НоменклатураГруппа>
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший