OpenRdsDatabaseResult OpenRdsDatabase(OdId tOb, OpenRdsDatabaseArg tArg)
tOb. Моникёр объекта репозитория, являющегося репозиторием НСИ.
tArg. Параметры выполнения операции.
Операция OpenRdsDatabase открывает репозитории НСИ.
Для выполнения операции укажите в поле tOb моникёр объекта репозитория, являющегося репозиторием НСИ, а в поле tArg параметры открытия. Результатом операции будет моникёр открытого экземпляра репозитория НСИ и метаданные, если было определено поле tArg.metaGet.
Дальнейшая работа осуществляется с помощью операций GetRdsDatabase и SetRdsDatabase.
Для закрытия экземпляра репозитория НСИ используйте операцию CloseRdsDatabase.
Ниже приведён пример открытия репозитория НСИ на редактирование. В запросе передаётся моникёр объекта репозитория, являющегося репозиторием НСИ. В ответе приходит моникёр экземпляра репозитория НСИ, открытого на редактирование.
В примере C# используется функция FindObjectById, код которой приведён в примере «Получение описания объекта по его идентификатору».
{
"OpenRdsDatabase" :
{
"tOb" :
{
"id" : "S1!M!219759"
},
"tArg" :
{
"args" :
{
"bind" : "true",
"openForEdit" : "true"
}
}
}
}
{
"OpenRdsDatabaseResult" :
{
"id" :
{
"id" : "S1!M!S!RD1"
}
}
}
public static OpenRdsDatabaseResult OpenRDSDatabase(MbId mb, string id)
{
var somClient = new SomPortTypeClient(); //Прокси-объект для выполнения операций
//Параметры выполнения операции
var tOpen = new OpenRdsDatabase()
{
tArg = new OpenRdsDatabaseArg()
{
args = new RdsDatabaseOpenArgs()
{
bind = true,
openForEdit = true
}
},
tOb = new OdId() { id = mb.id + "!" + FindObjectById(mb, id).k }
};
//Открытие репозитория НСИ
var tResult = somClient.OpenRdsDatabase(tOpen);
return tResult;
}
См. также: