我正在使用 Worksite API 在 iManage(8.5 版)中查询文档。我在下面列出了我的代码。如果我只使用一个搜索参数,那么代码就可以正常工作。但是,如果我添加多个参数,则它返回 null 或无结果(result.Count = 0)
然后我更改了我的代码以使用 ManOrQuery 类(由我的 Worksite API 提供,请参阅注释行),但这仍然不起作用。
// Search for documents matching the specified date range.
iManageSearch rds = new iManageSearch(isession);
// Populate searchparameters
IManProfileSearchParameters searchparams = Utility.CreateUnpopulatedProfileParams(idms);
//searchparams.Add(imProfileAttributeID.imProfileCreateDate, dateRange.Value);
//searchparams.Add(imProfileAttributeID.imProfileAuthor, srchKey);
//searchparams.Add(imProfileAttributeID.imProfileFullText, srchKey);
searchparams.Add(imProfileAttributeID.imProfileDocNum, srchKey);
//searchparams.Add(imProfileAttributeID.imProfileDescription, srchKey);
// Search documents
IManDocuments results = rds.GetDocuments(Utility.BuildDatabaseList(isession.Databases), searchparams);
// tried the other way to search document
//QueryBuilder qb = new QueryBuilder();
//ManOrQuery orquery = qb.CreateORQuery;
//qb.AddORSearchFieldValue(orquery, imProfileAttributeID.imProfileDocNum, srchKey);
//qb.AddORSearchFieldValue(orquery, imProfileAttributeID.imProfileAuthor, srchKey);
//qb.AddORSearchFieldValue(orquery, imProfileAttributeID.imProfileFullText, srchKey);
//IManContents results = qb.GetContents(iworkarea, Utility.BuildDatabaseList(isession.Databases), (IManQuery)orquery);
int c = results.Count;
在我的 UI 上,我有一个文本框供用户输入他们的搜索凭据。我想将搜索值与Author
,DocNumber
以及DocTitle
文档的内容进行比较。我的目标是建立一个像(docAuthor=srchKey OR docNum=srchKey OR docDescription = srchKey ...)
. 我一直在敲我的头,希望有人能帮助我。谢谢你。
PS:我还在这里提到了一篇文章How to get information out of iManage / Desksite,但这对我不起作用......