Ниже приведен пример использования операции GetDimMetadata для получения информации о структуре справочника репозитория. В запросе передается моникёр справочника и шаблон, который определяет, какие именно данные необходимо извлечь. В ответе приходит полученная информация.
{
"GetDimMetadata" :
{
"tDim" :
{
"id" : "S1!M!S!S1"
},
"tArg" :
{
"pattern" :
{
"obInst" : "false",
"getDescr" : "true",
"getAttrs" : "true",
"getLevs" : "true",
"getCompound" : "true"
}
}
}
}
{
"GetDimMetadataResult" :
{
"id" :
{
"id" : "S1!M!S!S1"
},
"data" :
{
"descr" :
{
"k" : "116",
"id" : "DIM_1",
"n" : "Dim_1",
"vis" : "1",
"cls" :
{
"k" : "1025"
}
},
"attrs" :
{
"it" :
[
{
"k" : "117",
"id" : "NAME",
"n" : "Наименование",
"vis" : "1",
"dt" : "1",
"predefined" : "Name",
"dataDomain" : "0",
"nullable" : "1",
"hasHierarchy" : "0"
},
{
"k" : "118",
"id" : "ID",
"n" : "Идентификатор",
"vis" : "1",
"dt" : "2",
"uniqueIndex" : "INDEX1",
"predefined" : "Ident",
"dataDomain" : "0",
"nullable" : "1",
"hasHierarchy" : "0"
},
{
"k" : "119",
"id" : "ORDER",
"n" : "Порядок",
"vis" : "1",
"dt" : "2",
"predefined" : "Order",
"dataDomain" : "0",
"nullable" : "1",
"hasHierarchy" : "0"
},
{
"k" : "122",
"id" : "PARENT",
"n" : "Родитель",
"vis" : "1",
"dt" : "2",
"dataDomain" : "0",
"nullable" : "1",
"hasHierarchy" : "0"
},
{
"k" : "177",
"id" : "CODE",
"n" : "Код",
"vis" : "1",
"dt" : "1",
"dataDomain" : "0",
"nullable" : "1",
"hasHierarchy" : "0"
}
],
"ident" : "1",
"name" : "0",
"order" : "2"
},
"levs" :
{
"it" :
[
{
"k" : "150",
"id" : "LEVEL1",
"n" : "Уровень 1",
"vis" : "1"
},
{
"k" : "151",
"id" : "LEVEL2",
"n" : "Уровень 2",
"vis" : "1"
},
{
"k" : "152",
"n" : "Уровень 2",
"vis" : "0"
}
]
},
"selection" :
{
"selectedCount" : "-1",
"compound" :
{
"k" : "4294967295"
}
},
"isAbacSecured" : "0"
}
}
}
public static GetDimMetadataResult GetDictInfo(DmId moniker)
{
var somClient = new SomPortTypeClient(); //Прокси-объект для выполнения операций
//Параметры выполнения операции
var tMeta = new GetDimMetadata()
{
tArg = new GetDimMetadataArg()
{
pattern = new DmMetadataPattern()
{
getAttrs = true,
getIndexes = true,
getLevs = true,
getCompound = true,
getDescr = true,
obInst = false
}
},
tDim = moniker
};
//Получение информации о структуре справочника
var result = somClient.GetDimMetadata(tMeta);
return result;
}
См. также: