51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2435|回复: 3
打印 上一主题 下一主题

[原创] 为何在工作流中添加的两个Defects_Bug_FieldChange函数只有一个起作用?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-9-24 10:42:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 sharon0000 于 2012-9-24 10:43 编辑

在TD工作流中添加了两个Defects_Bug_FieldChange函数如下:

Sub Defects_Bug_FieldChange(FieldName)
  On Error Resume Next
  if FieldName = "BG_STATUS" then
     if Bug_Fields.Field(FieldName).IsModified and Bug_Fields.Field(FieldName).Value = "Reopen" then
        Bug_Fields.Field("BG_USER_41").Value  = Bug_Fields.Field("BG_USER_41").Value + 1
     else Bug_Fields.Field("BG_USER_41").Value  = Bug_Fields.Field("BG_USER_41").Value
     end if
  end if

  On Error GoTo 0
End Sub

Sub Defects_Bug_FieldChange(FieldName)
  On Error Resume Next
  if FieldName = "BG_STATUS" then
     if Bug_Fields.Field(FieldName).IsModified and Bug_Fields.Field(FieldName).Value = "Resolved" then
        Bug_Fields.Field("BG_USER_42").Value  = date
     end if
  end if

  On Error GoTo 0
End Sub

后重新登录,只有第二个函数生效了,第一个函数的内容不起作用,而且如果只有第一个函数时,函数是起作用的,各位大侠可否帮小弟看看为啥?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2012-9-24 13:39:06 | 只看该作者
你为什么要分开写呢?Sub Defects_Bug_FieldChange(FieldName)是一个过程
也就是像一个容器一样,意思是表示,当缺陷详情页面中字段值出现改变时,触发这个过程中
{}内的代码执行,也就是你添加的代码,你把你两段{}内的代码合在一个Sub Defects_Bug_FieldChange(FieldName)中就可以了!
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2012-9-24 13:43:53 | 只看该作者
嗯呐,是因为我之前在网上看拿到说可以有多个这样的函数,所以就分开写了,谢谢了哈
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2012-9-24 14:53:54 | 只看该作者
同名过程,后面的会覆盖前面的,相当于只写了最后一个。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-16 08:36 , Processed in 0.073987 second(s), 29 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表