GetDmClnResult GetDmCln(DmId tDim, GetDmClnArg tArg)
tDim. Моникёр открытого экземпляра календарного справочника.
tArg. Параметры выполнения операции.
Операция GetDmCln извлекает метаданные календарного справочника.
Данная операция позволяет получить информацию о структуре календарного справочника: используемую иерархию, уровни, пользовательские атрибуты, пределы календаря, а также другие настройки, влияющие на работу справочника. Для выполнения операции укажите в поле tDim моникёр экземпляра календарного справочника, а в поле tArg параметры для извлечения информации. Моникёр может быть получен при выполнении операции OpenDim. В поле tArg.pattern указывается шаблон, в соответствии с которым будет извлекаться информация. Результатом работы операции будут запрошенные метаданные.
Ниже приведён пример использования операции GetDmCln для получения информации о структуре календарного справочника. В запросе передаётся моникёр справочника и шаблон, который определяет, какие именно метаданные необходимо извлечь. В ответе приходит полученная информация.
{
"GetDmCln" :
{
"tDim" :
{
"id" : "S1!M!S!DM2"
},
"tArg" :
{
"pattern" :
{
"obInst" : "true",
"attrs" : "Get"
}
}
}
}
{
"GetDmClnResult" :
{
"id" :
{
"id" : "S1!M!S!DM2"
},
"meta" :
{
"obInst" :
{
"obDesc" :
{
"@ds" : "",
"@isShortcut" : "0",
"@isLink" : "0",
"@ver" : "9",
"@hf" : "0",
"i" : "CALENDAR",
"n" : "Календарь",
"k" : "112",
"c" : "1026",
"p" : "103",
"h" : "0",
"hasPrv" : "0",
"ic" : "0",
"trackElementDependents" : "0",
"isPermanent" : "1",
"isTemp" : "0"
}
},
"dirty" : "0",
"startYear" : "2000",
"endYear" : "2003",
"startYearAsParam" : "0",
"endYearAsParam" : "0",
"hierarchy" : "0",
"attrCount" : "9",
"levelCount" : "6",
"reverseOrder" : "0",
"shiftForward" : "0",
"hierarchyCorrection" : "0",
"lastLevelNameAsDay" : "0",
"defaultOpenType" : "Hierarchical",
"isDynamicAttrs" : "1",
"attrs" :
{
"its" :
{
"it" :
[
{
"k" : "1",
"id" : "BLOCK_TYPE",
"n" : "Тип блока календаря",
"vis" : "0",
"dt" : "2",
"dataDomain" : "0",
"nullable" : "0",
"hasHierarchy" : "0",
"isSystem" : "1"
},
{
"k" : "2",
"id" : "START_DATE",
"n" : "Дата начала периода",
"vis" : "1",
"dt" : "4",
"dataDomain" : "0",
"nullable" : "0",
"hasHierarchy" : "0",
"isSystem" : "1"
},
{
"k" : "3",
"id" : "NAME",
"n" : "Имя элемента календаря",
"vis" : "1",
"dt" : "1",
"predefined" : "Name",
"dataDomain" : "0",
"nullable" : "1",
"hasHierarchy" : "0",
"isSystem" : "1"
},
{
"k" : "4",
"id" : "ID",
"n" : "Идентификатор",
"vis" : "0",
"dt" : "1",
"predefined" : "Ident",
"dataDomain" : "0",
"nullable" : "0",
"hasHierarchy" : "0",
"isSystem" : "1"
},
{
"k" : "5",
"id" : "ORDER",
"n" : "Порядок",
"vis" : "0",
"dt" : "2",
"uniqueIndex" : "INDEX_ORDER",
"predefined" : "Order",
"dataDomain" : "0",
"nullable" : "1",
"hasHierarchy" : "0",
"isSystem" : "1"
},
{
"k" : "6",
"id" : "PERIOD",
"n" : "Период",
"vis" : "0",
"dt" : "4",
"dataDomain" : "0",
"nullable" : "1",
"hasHierarchy" : "0",
"isSystem" : "1"
},
{
"k" : "7",
"id" : "YEAR",
"n" : "Номер года",
"vis" : "0",
"dt" : "2",
"dataDomain" : "0",
"nullable" : "1",
"hasHierarchy" : "0",
"isSystem" : "1"
},
{
"k" : "8",
"id" : "HALF_OF_YEAR",
"n" : "Номер полугодия",
"vis" : "0",
"dt" : "2",
"dataDomain" : "0",
"nullable" : "1",
"hasHierarchy" : "0",
"isSystem" : "1"
},
{
"k" : "9",
"id" : "QUARTER",
"n" : "Номер квартала",
"vis" : "0",
"dt" : "2",
"dataDomain" : "0",
"nullable" : "1",
"hasHierarchy" : "0",
"isSystem" : "1"
}
]
}
}
}
}
}
public static GetDmClnResult GetCalendar(DmId moniker)
{
var somClient = new SomPortTypeClient(); //Прокси-объект для выполнения операций
//Параметры выполнения операции
var tGet = new GetDmCln()
{
tArg = new GetDmClnArg()
{
pattern = new DmClnMdPattern()
{
attrs = ListOperation.Get
}
},
tDim = moniker
};
//Получение информации о календарном справочнике
var result = somClient.GetDmCln(tGet);
return result;
}
См. также: