SetSegContResult SetSegCont(SegContId tSegCont, SetSegContArg tArg)
tSegCont. Моникёр экземпляра контейнера сегментов.
tArg. Параметры выполнения операции.
Операция SetSegCont изменяет метаданные контейнера сегментов.
Для выполнения операции укажите в поле tAlg моникёр экземпляра контейнера сегментов, в поле tArg.pattern шаблон, в соответствии с которым будут изменяться метаданные, а в поле tArg.meta устанавливаемые метаданные. Также можно определить шаблон tArg.metaGet для получения метаданных после их изменения. Моникёр может быть получен при выполнении операции OpenSegCont.
Для сохранения изменений используйте операцию SaveObject.
Результатом работы операции будут обновлённые метаданные, если было определено поле tArg.metaGet.
Ниже приведён пример изменения базы данных для контейнера сегментов. В запросе передаётся моникёр открытого экземпляра контейнера сегментов и ключ базы данных. В ответе возвращается обновлённая информация о базе данных, которую использует контейнер сегментов.
{
"SetSegCont" :
{
"tSegCont" :
{
"id" : "FLEDMHBOCLDPFOAEDMFBLHBLOEJDMKEEKKHHKBBDHHIFPONM!M!S!CNIKPLJBOCLDPFOAEJGOHDKFEFEEPOCLEFIAOPAACCEOBKNOG"
},
"tArg" :
{
"pattern" :
{
"obInst" : "true",
"database" : "true"
},
"meta" :
{
"data" :
{
"database" :
{
"k" : "144693"
}
}
},
"metaGet" :
{
"obInst" : "true",
"database" : "true"
}
}
}
}
{
"SetSegContResult" :
{
"id" :
{
"id" : "FLEDMHBOCLDPFOAEDMFBLHBLOEJDMKEEKKHHKBBDHHIFPONM!M!S!CNIKPLJBOCLDPFOAEJGOHDKFEFEEPOCLEFIAOPAACCEOBKNOG"
},
"meta" :
{
"obInst" :
{
"obDesc" :
{
"@ds" : "",
"@isShortcut" : "0",
"@isLink" : "0",
"@ver" : "27",
"@hf" : "0",
"i" : "SEG_CONTAINER",
"n" : "Контейнер сегментов куба",
"k" : "317162",
"c" : "1296",
"p" : "317056",
"h" : "0",
"hasPrv" : "0",
"ic" : "0",
"trackElementDependents" : "0",
"isPermanent" : "1",
"isTemp" : "0"
}
},
"dirty" : "1",
"data" :
{
"database" :
{
"id" : "BD_1",
"k" : "144693",
"n" : "База данных",
"classId" : "513"
}
}
}
}
}
public static SetSegContResult SetSegCont(string moniker, uint bdKey)
{
var somClient = new SomPortTypeClient(); // Прокси-объект для выполнения операций
// Параметры выполнения операции
var tSet = new SetSegCont()
{
tArg = new SetSegContArg()
{
pattern = new SegContMdPattern()
{
database = true,
},
meta = new SegContMd()
{
data = new SegContData()
{
database = new SimpleMbObject() { k = bdKey }
}
},
metaGet = new SegContMdPattern()
{
database = true
}
},
tSegCont = new SegContId() { id = moniker }
};
// Изменение настроек контейнере сегментов
var result = somClient.SetSegCont(tSet);
return result;
}
См. также: