如何在HP ALM中找到缺陷中的字段名称

本文关键字:缺陷 字段 HP ALM | 更新日期: 2023-09-27 18:09:34

我正在从HP ALM检索字段。但是这里我要麻烦地获取字段名。

 BugFactory bf = (BugFactory)qcc.BugFactory;
 List bugs = (List)bf.NewList(bf.Filter.Text); 
string b5 = Convert.ToString(bg["BG_PROJECT"]); 
string b6 = Convert.ToString(bg["BG_STATUS"]);
string b7 = Convert.ToString(bg["BG_TARGET_CYCLE"]); 

前两条可以得到结果,最后一条显示无效字段名错误。

请告诉我获取字段名的正确方法。

谢谢。

如何在HP ALM中找到缺陷中的字段名称

请看我对这个问题的回答:

惠普质量中心字段名称

它有一些示例代码,展示了如何以编程方式确定给定工厂对象的字段。您有了BugFactory对象,这是一个完美的开始。

您可以使用工厂的过滤器,例如下一个是AuditRecord,您可以使用相同的BugFactory

AuditRecordFactory auditLog = this.ALMConnection.AuditRecordFactory as AuditRecordFactory;
var auditLogFilter = auditLog.Filter as ITDFilter;
//Get the field list
List fieldList= auditLogFilter.Fields;

UPDATE:我在这里找到了一个完整的答案https://stackoverflow.com/a/24368561/3915468:)

@TheArtTrooper为下一个方法提供了一个很好的答案

private void ExploreFactoryFieldDefinitions(IBaseFactory factory)
    {
        List fields = factory.Fields;
        foreach (TDField field in fields)
        {
            FieldProperty field_property = (FieldProperty)field.Property;
            if (field_property.IsRequired)
            {
                Log(String.Format("User Label: {0}'n", field_property.UserLabel));
                Log(String.Format("User Column Type: {0}'n", field_property.UserColumnType));
                Log(String.Format("DB Column Name: {0}'n", field_property.DBColumnName));
                Log(String.Format("DB Column Type: {0}'n", field_property.DBColumnType));
                Log(String.Format("DB Table Name: {0}'n", field_property.DBTableName));
            }
        }
    }