问题描述
我需要使用其 OTA 从 HP ALM 过滤特定范围 ID 的缺陷。这需要在不从 ALM 调用所有缺陷并从代码中过滤它们的情况下完成,因为这会显着增加不可取的时间。
例如,我可以按如下方式过滤单个缺陷:
TDAPIOLELib.BugFactory OBugFactory = alm_core.tDConnection.BugFactory as TDAPIOLELib.BugFactory;
TDAPIOLELib.TDFilter OTDFilter = OBugFactory.Filter as TDAPIOLELib.TDFilter;
TDAPIOLELib.List OBugList;
// Gets only the bug with ID 3
OTDFilter["BG_BUG_ID"] = 3;
OBugList = OBugFactory.NewList(OTDFilter.Text);
有没有办法在 1 到 100 之间的 ID 范围内获取错误列表。像这样:
// Gets all the bugs between 1-100
OTDFilter["BG_BUG_ID_MIN"] = 1;
OTDFilter["BG_BUG_ID_MAX"] = 100;
OBugList = OBugFactory.NewList(OTDFilter.Text);
解决方法
过滤1-100之间所有缺陷的完整解决方案如下:
TDAPIOLELib.BugFactory OBugFactory = alm_core.tDConnection.BugFactory as TDAPIOLELib.BugFactory;
TDAPIOLELib.TDFilter OTDFilter = OBugFactory.Filter as TDAPIOLELib.TDFilter;
TDAPIOLELib.List OBugList;
List<DefectOutputModel> AllBugList = new List<DefectOutputModel>();
OTDFilter.Text= @"[Filter]{
TableName: BUG,ColumnName: BG_BUG_ID,LogicalFilter: "">= 1 And <= 100"",VisualFilter: "">= 1 And <= 100"",SortOrder: 1,SortDirection: 0,NO_CASE:
}";
OBugList = OBugFactory.NewList(OTDFilter.;
OTDFilter.Text
的查询是通过首先在 HP ALM webapp 中按 ID 过滤缺陷,然后复制过滤查询文本并将其粘贴到此处来获得的。