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

时间:2014-06-20 09:04:19

标签: c# qc alm

我正在从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"]); 

前两个可以获得结果,而最后一个语句显示无效字段名称错误。

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

谢谢。

2 个答案:

答案 0 :(得分:1)

请参阅我对这个问题的回答:

HP Quality Center field names

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

答案 1 :(得分:0)

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

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

更新:我在这里找到了完整的答案 excel object name :)

@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));
            }
        }
    }