SetRubMdResult SetRubMd(RubId tRub, SetRubMdArg tArg)
tRub. Моникёр открытого экземпляра базы данных временных рядов.
tArg. Параметры изменения метаданных.
Операция SetRubMd изменяет метаданные базы данных временных рядов.
Для выполнения операции укажите в поле tRub моникёр открытого экземпляра базы данных временных рядов, а в поле tArg параметры изменения. Моникёр может быть получен при выполнении операции OpenRub. В поле tArg.pattern указывается шаблон, в соответствии с которым будут производиться изменения, а в поле tArg.meta обновлённые метаданные базы данных временных рядов. Для сохранения изменений после операции SetRubMd выполните операцию SaveObject или SaveObjectAs.
Результатом работы операции SetRubMd будет моникёр базы данных временных рядов и обновлённые метаданные, которые могут быть запрошены в шаблоне tArg.metaGet.
Ниже приведён пример изменения свойств базы данных временных рядов. В запросе передаётся моникёр базы данных временных рядов и новые значения свойств. В ответе приходит обновлённая информация о всех свойствах, заданных для базы данных временных рядов.
{
"SetRubMd" :
{
"tRub" :
{
"id" : "S1!M!S!R1"
},
"tArg" :
{
"pattern" :
{
"obInst" : "true",
"period" : "true",
"properties" : "true"
},
"meta" :
{
"properties" :
{
"@useDeduplication" : "true",
"calendarLevels" :
{
"it" :
[
"Month",
"Quarter",
"Year"
]
}
}
},
"metaGet" :
{
"obInst" : "true",
"period" : "true",
"properties" : "true"
}
}
}
}
{
"SetRubMdResult" :
{
"id" :
{
"id" : "S1!M!S!R1"
},
"meta" :
{
"obInst" :
{
"obDesc" :
{
"@ds" : "",
"@isShortcut" : "0",
"@isLink" : "0",
"@ver" : "5",
"@hf" : "0",
"i" : "TS_DB",
"n" : "БД временных рядов",
"k" : "5472",
"c" : "2822",
"p" : "5471",
"h" : "0",
"hasPrv" : "0",
"ic" : "0",
"trackElementDependents" : "0",
"isPermanent" : "1",
"isTemp" : "0"
},
"openArgs" : ""
},
"period" :
{
"startYear" : "1980",
"endYear" : "2020"
},
"properties" :
{
"@lightWeight" : "0",
"@useDeduplication" : "1",
"@valuesOnQuery" : "0",
"@factsOnQuery" : "0",
"@hasMnemonics" : "1",
"@revisionsOnQuery" : "0",
"@treatEmptyStringAsNull" : "0",
"@keepHistory" : "1",
"@autoUpdateStat" : "1",
"@useDistinctSequence" : "0",
"@separateTableForActualData" : "0",
"@unitIsRequired" : "0",
"@compoundFactorKey" : "0",
"@hasEmptyAttribute" : "0",
"objRdsRepo" :
{
"@ds" : "",
"@isShortcut" : "0",
"@isLink" : "0",
"@ver" : "0",
"@hf" : "0",
"i" : "RDS",
"n" : "Репозиторий НСИ",
"k" : "159",
"c" : "4353",
"p" : "51",
"h" : "0",
"hasPrv" : "0",
"ic" : "0",
"trackElementDependents" : "0"
},
"objUnitsDictionary" :
{
"@ds" : "",
"@isShortcut" : "0",
"@isLink" : "0",
"@ver" : "0",
"@hf" : "0",
"i" : "UNITS_D",
"n" : "Единицы Измерения",
"k" : "174",
"c" : "3076",
"p" : "159",
"h" : "0",
"hasPrv" : "0",
"ic" : "0",
"trackElementDependents" : "0"
},
"objMeasuresDictionary" :
{
"@ds" : "",
"@isShortcut" : "0",
"@isLink" : "0",
"@ver" : "0",
"@hf" : "0",
"i" : "MEASURES",
"n" : "Меры",
"k" : "172",
"c" : "3076",
"p" : "159",
"h" : "0",
"hasPrv" : "0",
"ic" : "0",
"trackElementDependents" : "0"
},
"calendarLevels" :
{
"it" :
[
"Year",
"Quarter",
"Month"
]
},
"firstDayOfWeek" : "Monday"
}
}
}
}
public static SetRubMdResult SetRubMetadata(RubId moniker)
{
var somClient = new SomPortTypeClient(); //Прокси-объект для выполнения операций
//Параметры выполнения операции
var tSet = new SetRubMd()
{
tArg = new SetRubMdArg()
{
pattern = new RubMdPattern()
{
properties = true
},
meta = new RubMd()
{
properties = new RubProperties()
{
calendarLevels = new DimCalendarLvl[]
{
DimCalendarLvl.Month,
DimCalendarLvl.Quarter,
DimCalendarLvl.Year
},
useDeduplication = true,
useDeduplicationSpecified = true
}
},
metaGet = new RubMdPattern()
{
properties = true
}
},
tRub = moniker
};
//Изменение метаданных базы данных временных рядов
var result = somClient.SetRubMd(tSet);
return result;
}
См. также: