ClearQuest的动态关联

   1.   创建Record types –Stateless
1、 在Record Types –Stateless中创建一个type,其名字叫:“项目”,其DBName为“item”。
2、 然后在项目中的fields中新建一个field,取名字为“item_name”,其type选择为SHORT_STRING。
3、 在项目的forms中选择把该field放到窗体上。
 
 
4、 在Record Types –Stateless中创建一个type,其名字叫:“一级菜单”,其DBName为“one­_menu”。
5、 然后在项目中的fields中新建一个field,取名字为:“model­_one_name”,其type选择为SHORT_STRING。另外再创建一个type其field name为:“item­_name”;type为:REFERENCE,其Reference To为:“项目”。
6、 在项目的forms中选择把该field放到窗体上。
 
 
7、 在Record Types –Stateless中创建一个type,其名字叫: “二级菜单”,其DBName为:“two­_menu”。
8、 然后在项目中的fields中新建一个field,取名字为:“model­_two_name”,其type选择为SHORT_STRING。另外再创建一个type其field name为:“model­_one_name”;type为:REFERENCE,其Reference To为:“一级菜单”。
9、 在项目的forms中选择把field放到窗体上。
 
 
2.创建Record types:
    1、新建一个field,其field name为:“项目”,type为:REFERENCE,其Reference To为:“项目”。其choice list为BASIC, 点Basic的右键,点Hook properties;在出现的对话框中选中: Recalculate choice List.其代码如下:
       Dim sessionObj
            Dim queryObj
            Dim filterObj
            Dim resultSetObj
            Dim prj_name
            Dim curSession
 
            Set sessionObj = GetSession()
 
            Set queryObj = sessionObj.BuildQuery("item")
            queryObj.BuildField ("item_name")      
            Set resultSetObj = sessionObj.BuildResultSet(queryObj)
 
resultSetObj.Execute    
 
            Do While resultSetObj.MoveNext = AD_SUCCESS
             choices.AddItem resultSetObj.GetColumnValue(1)
SessionObj.OutputDebugString resultSetObj.GetColumnValue(1)
            Loop
 
2、新建一个field,其field name为:“一级菜单”,type为:REFERENCE,其Reference To为:“一级菜单”。其choice list为BASIC, 点Basic的右键,点Hook properties;在出现的对话框中选中: Recalculate choice List.其代码如下:
 Dim sessionObj
    Dim queryObj
    Dim filterObj
    Dim resultSetObj
    Dim prj_name
 
    Set sessionObj = GetSession()
    prj_name = GetFieldValue("item").GetValue()
 
    Set queryObj = sessionObj.BuildQuery("one_menu")
 
    queryObj.BuildField ("model_one_menu")
 
    Set filterObj = queryObj.BuildFilterOperator(AD_BOOL_OP_AND)
    filterObj.BuildFilter "pm", AD_COMP_OP_EQ, prj_name
    Set resultSetObj = sessionObj.BuildResultSet(queryObj)
 
    resultSetObj.Execute
 
    Do While resultSetObj.MoveNext = AD_SUCCESS
        choices.AddItem resultSetObj.GetColumnValue(1)
        SessionObj.OutputDebugString resultSetObj.GetColumnValue(1)
    Loop
 
3、新建一个field,其field name为:“二级菜单”,type为:REFERENCE,其Reference To为:“二级菜单”。其choice list为BASIC, 点Basic的右键,点Hook properties;在出现的对话框中选中: Recalculate choice List.其代码如下:
  Dim sessionObj
    Dim queryObj
    Dim filterObj
    Dim resultSetObj
    Dim prj_name
 
    Set sessionObj = GetSession()
    prj_name = GetFieldValue("one_menu").GetValue()
 
    Set queryObj = sessionObj.BuildQuery("two_menu")
 
    queryObj.BuildField ("model_two_menu")
 
    Set filterObj = queryObj.BuildFilterOperator(AD_BOOL_OP_AND)
    filterObj.BuildFilter "one_menu", AD_COMP_OP_EQ, prj_name
    Set resultSetObj = sessionObj.BuildResultSet(queryObj)
 
    resultSetObj.Execute
 
    Do While resultSetObj.MoveNext = AD_SUCCESS
        choices.AddItem resultSetObj.GetColumnValue(1)
        SessionObj.OutputDebugString resultSetObj.GetColumnValue(1)
    Loop
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值