Worksite API を使用して、iManage (バージョン 8.5) でドキュメントを照会しています。以下にコードをリストしました。検索パラメータを 1 つだけ使用すると、コードは問題なく動作します。ただし、複数のパラメーターを追加すると、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: iManage / Desksite から情報を取得する方法についての記事も参照しましたが、うまくいきません....