SetObjectResult SetObject(OdId tObject, SetObjectArg tArg)
tObject. Моникёр объекта, структуру которого необходимо изменить.
tArg. Параметры выполнения операции.
Операция SetObject изменяет базовые свойства объекта репозитория.
Операция позволяет изменить наименования, идентификаторы и значения параметров объекта репозитория. Также можно настраивать ярлыки на другие объекты репозитория. Для выполнения операции укажите в поле tObject моникёр объекта, а в поле tArg необходимые условия изменения свойств объекта. Все изменения сохраняются автоматически после завершения выполнения операции.
Если определено поле tArg.metaGet, то в результате выполнения операции будет получена обновленная информация об объекте.
Ниже приведён пример изменения свойств ярлыка. В запросе передаётся моникёр ярлыка и метаданные нового объекта, на который будет ссылаться ярлык. В ответе приходят обновлённая информация о ярлыке.
{
"SetObject" :
{
"tObject" :
{
"id" : "S1!M!SHORTCUT_TO_REPORT"
},
"tArg" :
{
"metaGet" :
{
"obInst" : "true",
"shortcutSource" : "true"
},
"pattern" :
{
"obInst" : "true",
"shortcutSource" : "true"
},
"meta" :
{
"shortcutSource" :
{
"obDesc" :
{
"@ds" : "",
"@isShortcut" : "false",
"@isLink" : "false",
"@ver" : "5",
"@hf" : "false",
"i" : "REPORT_1",
"n" : "Регламентный отчет",
"k" : "6334",
"c" : "2562",
"p" : "6333",
"h" : "false",
"hasPrv" : "false",
"ic" : "false",
"trackElementDependents" : "false",
"isPermanent" : "true",
"isTemp" : "false"
}
}
}
}
}
}
{
"SetObjectResult" :
{
"id" :
{
"id" : "S1!M!SHORTCUT_TO_REPORT"
},
"metaGet" :
{
"obInst" :
{
"obDesc" :
{
"@ds" : "",
"@isShortcut" : "1",
"@isLink" : "0",
"@ver" : "12",
"@hf" : "0",
"i" : "SHORTCUT_TO_REPORT",
"n" : "Регламентный отчет (2)",
"k" : "176020",
"c" : "2562",
"p" : "61",
"h" : "0",
"hasPrv" : "0",
"ic" : "0",
"trackElementDependents" : "0",
"isPermanent" : "1",
"isTemp" : "0"
}
},
"shortcutSource" :
{
"obDesc" :
{
"@ds" : "",
"@isShortcut" : "0",
"@isLink" : "0",
"@ver" : "4",
"@hf" : "0",
"i" : "REPORT_1",
"n" : "Регламентный отчет",
"k" : "6334",
"c" : "2562",
"p" : "6333",
"h" : "0",
"hasPrv" : "0",
"ic" : "0",
"trackElementDependents" : "0",
"isPermanent" : "1",
"isTemp" : "0"
}
}
}
}
}
public static SetObjectResult SetShortcutObject(MbId mb, string shortcutId, PrxMd report)
{
var somClient = new SomPortTypeClient(); //Прокси-объект для выполнения операций
//Параметры выполнения операции
var tObject = new SetObject()
{
//Параметры выполнения операции
tArg = new SetObjectArg()
{
pattern = new MbObjectPattern()
{
shortcutSource = true
},
meta = new MbObjectMd()
{
shortcutSource = report.obInst
},
metaGet = new MbObjectPattern()
{
obInst = true,
shortcutSource = true
}
},
tObject = new OdId()
{
id = mb.id + '!' + shortcutId
}
};
//Изменение метаданных ярлыка
var result = somClient.SetObject(tObject);
return result;
}
См. также: