Ниже приведен пример использования операции GetSearch для BI-поиска индексированных объектов репозитория. В запросе передается текст для поиска, в ответе возвращается информация об объектах, в метаданных которых встретился указанный текст.
{
"GetSearch" :
{
"tMb" :
{
"id" : "S1!M"
},
"tArg" :
{
"GetMbObjectsArg" :
{
"text" : "куб",
"pattern" :
{
"n" : "true",
"note" : "false",
"id" : "true",
"classId" : "true",
"className" : "false",
"content" : "false",
"changeDate" : "false"
}
}
}
}
}
{
"GetSearchResult" :
{
"GetMbObjectsResult" :
{
"resCount" : "1",
"its" :
{
"it" :
[
{
"n" : "Куб",
"hlName" : "<hlt>Куб<\/hlt>",
"customRes" :
{
"Item" :
{
"fName" : "tag",
"its" :
{
"Item" : "Тестовый куб с фиктивными данными"
},
"hlIts" :
{
"Item" : "Тестовый <hlt>куб<\/hlt> с фиктивными данными"
}
}
},
"docId" : "19815|OBJ19815",
"k" : "19815",
"Id" : "19815|OBJ19815",
"hlId" : "",
"classId" : "1281"
}
]
}
}
}
}
public static GetSearchResult BiSearchMBObject(string mb, string text)
{
var somClient = new SomPortTypeClient(); //Прокси-объект для выполнения операций
//Параметры выполнения операции
var tGet = new GetSearch()
{
tArg = new GetSearchArg()
{
GetMbObjectsArg = new SearchMbObjectsArg()
{
pattern = new SearchMbObjectsPattern()
{
changeDate = false,
classId = true,
className = false,
note = false
},
text = text
}
},
tMb = new MbId() { id = mb }
};
//BI-поиск индексированных объектов
var result = somClient.GetSearch(tGet);
return result;
}
См. также:
SOAP