|
как заполнить массив XDTO? | ☑ | ||
---|---|---|---|---|
0
КоньЛапчатый
26.07.17
✎
14:15
|
Надо передать массив чисел в веб-сервис, из того, что нашел в интернетах написал такой код:
Фабрика = Прокси.ФабрикаXDTO; ТипЧисло = Фабрика.Тип("http://www.w3.org/2001/XMLSchema", "integer"); ТипМассив = Фабрика.Тип("urn:SoapControllerwsdl", "intArray"); СписокБКИ = Фабрика.Создать(ТипМассив); Значение = Фабрика.Создать(ТипЧисло, 3); СписокБКИ.id1.Добавить(Значение); Значение = Фабрика.Создать(ТипЧисло, 20); СписокБКИ.id1.Добавить(Значение); СтруктураДоговора.bki = СписокБКИ; на который вот так ругается: {Обработка.ВыгрузкаВБКИ.Форма.Форма1.Форма(97)}: Значение не является значением объектного типа (Добавить) СписокБКИ.id1.Добавить(Значение); в отладчике у СписокБКИ есть 4 поля: arrayType, href, id1 и offset, все они типа Неопределено. Собственно, что я делаю не так? |
|||
1
КоньЛапчатый
26.07.17
✎
15:10
|
up
|
|||
2
КоньЛапчатый
26.07.17
✎
16:27
|
ещё раз ап
|
|||
3
Мимохожий Однако
26.07.17
✎
16:37
|
(0) Какой тип значения СписокБКИ показывает отладчик?
|
|||
4
КоньЛапчатый
26.07.17
✎
16:40
|
(3) ОбъектXDTO
|
|||
5
Мимохожий Однако
26.07.17
✎
17:00
|
У тебя Значение не имеет типа ЗначениеXDTO
|
|||
6
КоньЛапчатый
26.07.17
✎
17:02
|
(5) У Значение в отладчике тип тоже ЗначениеXDTO
|
|||
7
Мимохожий Однако
26.07.17
✎
17:03
|
у метода добавить два обязательных оператора
... Вариант синтаксиса: Установка значения существующего произвольного свойства Синтаксис: Добавить(<Имя>, <ЭлементДанных>) Параметры: <Имя> (обязательный) Тип: Строка. Имя произвольного свойства. <ЭлементДанных> (обязательный) Тип: ЗначениеXDTO; ОбъектXDTO. Элемент данных XDTO (значение или объект), являющийся значением произвольного свойства. |
|||
8
Мимохожий Однако
26.07.17
✎
17:04
|
Имя забыл
|
|||
9
КоньЛапчатый
26.07.17
✎
17:08
|
(8) спасибо, сейчас буду пробовать
|
|||
10
КоньЛапчатый
26.07.17
✎
17:13
|
(8) теперь так ругается:
Значение = Фабрика.Создать(ТипЧисло, 3); СписокБКИ.Добавить("id1", Значение); {Обработка.ВыгрузкаВБКИ.Форма.Форма1.Форма(97)}: Ошибка при вызове метода контекста (Добавить) СписокБКИ.Добавить("id1", Значение); по причине: Неизвестное свойство: Свойство 'id1' не обнаружено |
|||
11
Ц_У
26.07.17
✎
17:18
|
(10) из (7)
Установка значения существующего произвольного свойства |
|||
12
КоньЛапчатый
26.07.17
✎
17:20
|
(11) 'id1' это одно из свойств СписокБКИ
|
|||
13
Boroda
26.07.17
✎
17:33
|
СписокБКИ.id1.Добавить(Значение);
В принципе, правильно. Только в этом случае id1 должен быть именем элемента массива. У меня, например есть описание массива: <s:complexType name="ArrayOfStatusItem"> <s:sequence><s:element minOccurs="0" maxOccurs="unbounded" name="StatusItem" nillable="true" type="tns:StatusItem"/></s:sequence></s:complexType> и строка, где вместо id1 у меня StatusItem работает. |
|||
14
КоньЛапчатый
26.07.17
✎
17:37
|
(13) а если массив пустой и элементов нет?
|
|||
15
Boroda
26.07.17
✎
18:19
|
(14) Выгрузи в файл и посмотри.
что-то типа такого: НоваяЗаписьXML = Новый ЗаписьXML(); НоваяЗаписьXML.ОткрытьФайл("C:\Test.xml"); Фабрика.ЗаписатьXML(НоваяЗаписьXML,СписокБКИ); |
|||
16
КоньЛапчатый
27.07.17
✎
09:52
|
(15) вот такое записалось:
<?xml version="1.0"?> <intArray xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:SoapControllerwsdl"/> |
|||
17
КоньЛапчатый
27.07.17
✎
14:24
|
по прежнему актуально
|
|||
18
КоньЛапчатый
27.07.17
✎
15:22
|
ап
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |