Foxtable(狐表)用户栏目专家坐堂 → [求助]如果通过其他表列的状态来更改另外一个表行的颜色?


  共有4376人关注过本帖树形打印复制链接

主题:[求助]如果通过其他表列的状态来更改另外一个表行的颜色?

帅哥哟,离线,有人找我吗?
有点甜
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/13 16:44:00 [显示全部帖子]

 楼主,你可以加入一列,把其他表的值写到本表来,这样你就只需要判断本表的数据。

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/13 17:38:00 [显示全部帖子]

For Each cdr As DataRow In r.DataRow.GetChildRows("需求明细表")
    cdr("状态") = r("审核通过")
End If

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/14 11:24:00 [显示全部帖子]

If e.DataCol.name="状态" Then
    If e.DataRow("状态") = "Published" Then
        If r.IsNull("临时版本编号") = True OrElse r.isnull("软件环境") = True OrElse r.isnull("show_version") = True Then
            MessageBox.show("请检查,临时版本编号列,软件环境列,show version列不能为空","提示",MessageBoxButtons.OK,MessageBoxIcon.Question)
            e.DataRow("状态") = ""
        Else
            If MessageBox.show("请确认此需求的状态要变更为已发布?","请确认",MessageBoxButtons.OKCancel,MessageBoxIcon.Question)=DialogResult.OK Then
                Dim m As New MailSender
                m.Host = "mail.bdcom.com.cn"
                m.Account = "version@bdcom.com.cn"
                m.Password = "version"
                m.From = "version@bdcom.com.cn"
                If r.IsNull("邮件通知") = False Then
                    m.AddReceiver(r("邮件通知"))
                End If
                If r.IsNull("研发邮箱") = False Then
                    m.AddReceiver(r("研发邮箱"))
                End If
                If r.IsNull("技术支持邮箱") = False Then
                    m.AddReceiver(r("技术支持邮箱"))
                End If
                m.Title = "博达软件管理系统= = = = = = =" & "需求编号:" & r("需求编号") &"------>临时版本编号:" & r("临时版本编号") & "+" & r("软件环境") & "已发布"
                m.C & r("需求编号") &"------>临时版本编号:" & r("临时版本编号") & "+" & r("软件环境") & "已发布"
                m.Send
                msgbox("临时版本编号:" & r("临时版本编号") & "+" & r("软件环境") & "已发布并mail通知了相关邮件接收者!")
               
                r.locked = True
            Else e.DataRow("状态") = ""
            End If
        End If
    End If
    For Each cdr As DataRow In r.DataRow.GetChildRows("需求明细表")
        cdr("状态") = r("状态")
    Next
End If

 


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/14 14:02:00 [显示全部帖子]

改成

 

For Each cdr As DataRow In r.DataRow.GetChildRows("需求明细表")
        cdr("状态") = e.DataRow("状态")
Next


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/14 16:23:00 [显示全部帖子]

以下是引用liujywwy在2014-8-14 14:50:00的发言:

改为这样还是不行。状态列的值仍然是true,没有变为Published。

 

你的这个例子发上来看看。


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/14 16:51:00 [显示全部帖子]

代码

 

    For Each cdr As DataRow In DataTables("需求明细表").Select("需求编号 = '" & e.DataRow("需求编号") & "'")
        cdr("状态") = e.DataRow("状态")
    Next


 回到顶部