Ниже приведен пример использования операции GetDimElements для получения значений заданных атрибутов. В запросе передается моникер открытого экземпляра справочника и параметры извлечения информации об элементах. В параметрах указан список атрибутов. В ответе приходит список значений указанных атрибутов для всех элементов справочника.
{
"GetDimElements" :
{
"tDim" :
{
"id" : "S1!M!S!S1"
},
"tArg" :
{
"pattern" :
{
"attributes" : "ID;CODE", "attributeValuesOnly" : "true", "extendedAttributeValuesOnly" : "false", "getParentKey" : "true", "getHasChildren" : "true", "getLevel" : "true", "getImageIndex" : "true" } } } }
{
"GetDimElementsResult" :
{
"els" :
{
"e" :
[
{
"@hc" : "1",
"@l" : "0",
"n" : "Первый элемент",
"a" :
{
"it" :
[
"1",
"A000123"
]
},
"k" : "1",
"h" : "1",
"o" : "0"
},
{
"@hc" : "1",
"@l" : "1",
"n" : "Второй элемент",
"a" :
{
"it" :
[ "2", "A000124" ] }, "k" : "2", "h" : "1", "o" : "1", "p" : "1" },
{
"@hc" : "0",
"@l" : "2",
"n" : "Третий элемент",
"a" :
{
"it" :
[
"3",
"A000125"
]
},
"k" : "3",
"h" : "0",
"o" : "2",
"p" : "2"
},
{
"@hc" : "0",
"@l" : "0",
"n" : "Четвертый элемент",
"a" :
{
"it" :
[
"4",
"A000126"
]
},
"k" : "4",
"h" : "0",
"o" : "0"
}
]
},
"id" :
{
"id" : "S1!M!S!S1"
}
}
}
Указанная функция GetAttributesValue возвращает значения указанных атрибутов для всех элементов справочника. Моникер экземпляра справочника и список атрибутов передаются в качестве входных параметров. Шаблон, в соответствии с которым будет извлекаться информация, указан в теле функции. Результатом работы функции является результат выполнения операции.
public static GetDimElementsResult GetAttributesValue(DmId moniker, string attributes)
{
var somClient = new SomPortTypeClient(); //Прокси-объект для выполнения операций
//Параметры выполнения операции
var tElements = new GetDimElements()
{
tArg = new GetDimElementsArg()
{
//Шаблон, в соответствии с которым будет извлекаться информация
pattern = new ElsPattern()
{
attributes = attributes,
getHasChildren = true,
getLevel = true,
getParentKey = true,
attributeValuesOnly = true,
extendedAttributeValuesOnly = false
}
},
tDim = moniker
};
//Получение информации об элементах справочника
var result = somClient.GetDimElements(tElements);
return result;
}
См. также:
SOAP