OpenLinkConnection

Синтаксис

LinkConnectionResult OpenLinkConnection(OdId tOb, OpenLinkConnectionArg tArg)

Параметры

tOb. Моникёр объекта репозитория, являющегося ярлыком.

tArg. Параметры выполнения операции.

Описание

Операция OpenLinkConnection открывает соединение с репозиторием, на который настроена связь с репозиторием, используемая ярлыком.

Комментарии

Для выполнения операции укажите в поле tOb моникёр объекта репозитория, являющегося ярлыком. Моникёр объекта может быть получен при выполнении операции GetObjects. В поле tArg.metaGet может быть указан шаблон, в соответствии с которым будет получена информация об объекте из другого репозитория, на который ссылается ярлык. Открытие соединения осуществляется с учётными данными, которые должны быть сохранены в настройках связи с репозиторием.

Результатом выполнения операции будет моникёр соединения с репозиторием, на работу с которым настроена связь с репозиторием, и описание объекта, если было определено поле tArg.metaGet.

Пример

Ниже приведён пример открытия соединения с репозиторием, на который настроена связь с репозиторием, используемая ярлыком. В запросе передаётся моникёр ярлыка. В ответе возвращается моникёр созданного соединения и описание объекта из другого репозитория, на который ссылается ярлык.

В примере C# используется функция FindObjectById, код которой приведен в примере «Получение описания объекта по его идентификатору».

SOAP-запрос:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<OpenLinkConnection xmlns="http://www.fsight.ru/PP.SOM.Som">
<tOb xmlns="">
  <id>IJOPIIAIMOBHGOAECKHNANPEIOCCJHNEGKCCHICKJBCCIFCP!M!461455</id>
  </tOb>
<tArg xmlns="">
<metaGet>
  <source>true</source>
  </metaGet>
  </tArg>
  </OpenLinkConnection>
  </s:Body>
  </s:Envelope>

SOAP-ответ:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<OpenLinkConnectionResult xmlns="http://www.fsight.ru/PP.SOM.Som" xmlns:q1="http://www.fsight.ru/PP.SOM.Som" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<id xmlns="">
  <id>IJOPIIAIMOBHGOAECKHNANPEIOCCJHNEGKCCHICKJBCCIFCP!M!S!MLCCHOLJAIMOBHGOAEAJLMHGHHGFFHEIKEFIAOKKIGHGCBKIPC!M</id>
  </id>
<meta xmlns="">
<source ds="" isShortcut="0" isLink="0" ver="1" hf="0">
  <i>FUNCTION</i>
  <n>Function</n>
  <k>118</k>
  <c>9473</c>
  <p>57</p>
  <h>0</h>
  <hasPrv>0</hasPrv>
  <ic>0</ic>
  <trackElementDependents>0</trackElementDependents>
  </source>
  </meta>
  </OpenLinkConnectionResult>
  </soapenv:Body>
  </soapenv:Envelope>

JSON-запрос:

{
"OpenLinkConnection" :
{
"tOb" :
{
"id" : "IJOPIIAIMOBHGOAECKHNANPEIOCCJHNEGKCCHICKJBCCIFCP!M!461455"
},
"tArg" :
{
"metaGet" :
{
"source" : "true"
}
}
}
}

JSON-ответ:

{
"OpenLinkConnectionResult" :
{
"id" :
{
"id" : "IJOPIIAIMOBHGOAECKHNANPEIOCCJHNEGKCCHICKJBCCIFCP!M!S!MLCCHOLJAIMOBHGOAEAJLMHGHHGFFHEIKEFIAOKKIGHGCBKIPC!M"
},
"meta" :
{
"source" :
{
"@ds" : "",
"@isShortcut" : "0",
"@isLink" : "0",
"@ver" : "1",
"@hf" : "0",
"i" : "FUNCTION",
"n" : "Function",
"k" : "118",
"c" : "9473",
"p" : "57",
"h" : "0",
"hasPrv" : "0",
"ic" : "0",
"trackElementDependents" : "0"
}
}
}
}
public static LinkConnectionResult OpenLinkConnection(MbId mb, string shortcutId)
{
var somClient = new SomPortTypeClient(); // Прокси-объект для выполнения операций
// Параметры выполнения операции
var tOpen = new OpenLinkConnection()
{
tArg = new OpenLinkConnectionArg()
{
metaGet = new LinkConnectionMdPattern()
{
source = true
}
},
tOb = new OdId() { id = mb.id + "!" + PP7SOMSampleClass.FindObjectById(mb, shortcutId).k }
};
// Открытие соединения с репозиторием, на который настроена связь с репозиторием, используемая ярлыком
var result = somClient.OpenLinkConnection(tOpen);
return result;
}

См. также:

Работа с репозиторием