GetReferenceData: TypesOfGeographicObjects — Виды объектов географии
Функция позволяет получить виды объектов географии (страна, область, город и т.д.), использующиеся в других функциях при вызове web-сервиса.
| Параметр | Тип | Обязательно | Описание |
|---|---|---|---|
| login | string | логин | |
| password | string | пароль | |
| parameters | Element | список параметров |
Параметр parameters содержит настройки запроса в виде иерархической структуры, соответствующей XML-представлению.
Он должен включать:
Key: строка со значением parameters (обязательное);
List: непустой массив элементов, каждый из которых представляет отдельный параметр и сам является структурой с тремя полями:
- Key: имя параметра (например, Reference);
- Value: значение параметра указывающая на то какой parameters описывается;
- ValueType: тип значения — строка, указывающая тип Value(string, int и т.д.).
Пример одного элемента из List:
<car:List>
<car:Key>Reference</car:Key>
<car:Value>TypesOfGeographicObjects</car:Value>
<car:ValueType>string</car:ValueType>
</car:List>Каждый такой элемент — независимый узел внутри parameters. Если List отсутствует или пуст — запрос отклоняется.
Иерархия структуры parameters:
parameters → List (массив) → каждый элемент List → Key, Value, ValueType.
| Параметр | Тип | Обязательно | Описание |
|---|---|---|---|
| Reference | string | Имя справочника, должно быть равно «TypesOfGeographicObjects» |
Параметр Element в ответе содержит информацию о видах объектов географии.
Он включает элементы справочника:
Key: строка со значением TypesOfGeographicObjects;
List: массив элементов, каждый из которых содержит информацию о типе графического объекта.
Каждый элемент из списка List содержит в себе:
- Key: уникальный числовой идентификатор типа объекта (например, 0,1...ит.д.)
- Value: наименование типа объекта (например, Страна)
- ValueType: тип значения — строка, указывающая тип Value (string, dateTime и т.п.);
- Fields: массив дополнительных атрибутов .
Структура ответа иерархична:
Element → Key + List (массив) → каждый элемент List → Key + Value +ValueType +Fields → каждый элемент Fields → Key, Value, ValueType.
Если во время запроса произошла ошибка, информация о ней будет отражена в свойстве Properties (см. метод GetReferenceData: ErrorCodes — Коды ошибок).
| Параметр | Тип | Обязательно | Описание |
|---|---|---|---|
| Key | string | Код вида объекта географии | |
| Value | string | Наименование вида объекта географии | |
| Fields | Element | Другие свойства элемента справочника |
Каждый блок Fields содержит в себе один атрибут-признак:
- Key: идентификатор признака объекта (Country или Town);
- Value: значение признака (true/false);
- ValueType: тип значения — строка, указывающая тип Value (string, boolean и т.п.).
Пример фрагмента ответа:
<m:List>
<m:Key>0</m:Key>
<m:Value xsi:type="xs:string">Страна</m:Value>
<m:ValueType>string</m:ValueType>
<m:Fields>
<m:Key>Country</m:Key>
<m:Value xsi:type="xs:boolean">true</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
<m:Fields>
<m:Key>Town</m:Key>
<m:Value xsi:type="xs:boolean">false</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
</m:List> | Параметр | Тип | Обязательно | Описание |
|---|---|---|---|
| Country | boolean | Идентифицирует объект как страну (государство). | |
| Town | boolean | Идентифицирует объект как населённый пункт. |
<soap:Envelope
xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
xmlns:car="http://www.cargo3.ru">
<soap:Header/>
<soap:Body>
<car:GetReferenceData>
<car:login>test</car:login>
<car:password>2016</car:password>
<car:parameters>
<car:Key>parameters</car:Key>
<car:List>
<car:Key>Reference</car:Key>
<car:Value>TypesOfGeographicObjects</car:Value>
<car:ValueType>string</car:ValueType>
</car:List>
</car:parameters>
</car:GetReferenceData>
</soap:Body>
</soap:Envelope> <soap:Envelope
xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<m:GetReferenceDataResponse
xmlns:m="http://www.cargo3.ru">
<m:return
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<m:Key>TypesOfGeographicObjects</m:Key>
<m:List>
<m:Key>0</m:Key>
<m:Value xsi:type="xs:string">Страна</m:Value>
<m:ValueType>string</m:ValueType>
<m:Fields>
<m:Key>Country</m:Key>
<m:Value xsi:type="xs:boolean">true</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
<m:Fields>
<m:Key>Town</m:Key>
<m:Value xsi:type="xs:boolean">false</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
</m:List>
<m:List>
<m:Key>1</m:Key>
<m:Value xsi:type="xs:string">Регион</m:Value>
<m:ValueType>string</m:ValueType>
<m:Fields>
<m:Key>Country</m:Key>
<m:Value xsi:type="xs:boolean">false</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
<m:Fields>
<m:Key>Town</m:Key>
<m:Value xsi:type="xs:boolean">false</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
</m:List>
<m:List>
<m:Key>2</m:Key>
<m:Value xsi:type="xs:string">Район</m:Value>
<m:ValueType>string</m:ValueType>
<m:Fields>
<m:Key>Country</m:Key>
<m:Value xsi:type="xs:boolean">false</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
<m:Fields>
<m:Key>Town</m:Key>
<m:Value xsi:type="xs:boolean">false</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
</m:List>
<m:List>
<m:Key>3</m:Key>
<m:Value xsi:type="xs:string">Город</m:Value>
<m:ValueType>string</m:ValueType>
<m:Fields>
<m:Key>Country</m:Key>
<m:Value xsi:type="xs:boolean">false</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
<m:Fields>
<m:Key>Town</m:Key>
<m:Value xsi:type="xs:boolean">true</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
</m:List>
<m:List>
<m:Key>4</m:Key>
<m:Value xsi:type="xs:string">Населенный пункт</m:Value>
<m:ValueType>string</m:ValueType>
<m:Fields>
<m:Key>Country</m:Key>
<m:Value xsi:type="xs:boolean">false</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
<m:Fields>
<m:Key>Town</m:Key>
<m:Value xsi:type="xs:boolean">true</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
</m:List>
<m:List>
<m:Key>5</m:Key>
<m:Value xsi:type="xs:string">Улица</m:Value>
<m:ValueType>string</m:ValueType>
<m:Fields>
<m:Key>Country</m:Key>
<m:Value xsi:type="xs:boolean">false</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
<m:Fields>
<m:Key>Town</m:Key>
<m:Value xsi:type="xs:boolean">false</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
</m:List>
<m:List>
<m:Key>6</m:Key>
<m:Value xsi:type="xs:string">Прочее</m:Value>
<m:ValueType>string</m:ValueType>
<m:Fields>
<m:Key>Country</m:Key>
<m:Value xsi:type="xs:boolean">false</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
<m:Fields>
<m:Key>Town</m:Key>
<m:Value xsi:type="xs:boolean">false</m:Value>
<m:ValueType>boolean</m:ValueType>
</m:Fields>
</m:List>
</m:return>
</m:GetReferenceDataResponse>
</soap:Body>
</soap:Envelope> 