Foxtable(狐表)用户栏目专家坐堂 → datacolchanged 疑问


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

主题:datacolchanged 疑问

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


加好友 发短信
等级:七尾狐 帖子:1551 积分:10061 威望:0 精华:0 注册:2014/12/18 16:12:00
datacolchanged 疑问  发帖心情 Post By:2018/5/19 16:07:00 [显示全部帖子]

我在datacolchanged里面设置了如下代码:

If e.Datarow("下料长") = 0 
    If e.DataCol.Name = "下料宽" 
         If e.newvalue = 0 
             e.DataRow("类型") = "侧板" '
         End If
    End If
end if

我要达成的目标是:如果“下料长” = 0, 而且如果"下料宽"输入数据“0”时,“类型”才会自动输入“侧板”,也就是说,要“下料长”和"下料宽"都为0时,“类型”才会自动输入“侧板”。但是,实际结果是,如果“下料长” 是空值,如果"下料宽"输入数据“0”时,“类型”也会自动输入“侧板”。这是不符合我当初的要求的。怎么修改才行?谢谢。

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


加好友 发短信
等级:七尾狐 帖子:1551 积分:10061 威望:0 精华:0 注册:2014/12/18 16:12:00
  发帖心情 Post By:2018/5/19 16:39:00 [显示全部帖子]

你这个代码,运行之后发现, "下料长" 和"下料宽"只要有一个是0,就会("类型") = "侧板"。而我要的结果是,“下料长”和"下料宽"同时为0时,“类型”才会自动输入“侧板”

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


加好友 发短信
等级:七尾狐 帖子:1551 积分:10061 威望:0 精华:0 注册:2014/12/18 16:12:00
  发帖心情 Post By:2019/8/27 17:04:00 [显示全部帖子]

If e.DataCol.Name = "录入日期"
    If e.DataRow.IsNull("录入日期") Then
        e.DataRow("确认") = False
    Else
        Dim tp As TimeSpan = Date.today - CDate(e.DataRow("录入日期"))
        If Math.Round(tp.TotalDays/1,0) > 1
            e.DataRow("确认") = True
        End If 
    End If
End If

我在datacolchanged里面有上述代码,希望录入日期超过当天日期1天以上的,就将“确认”那栏设为true。但是实际运行时(即重新登录之后),却起不了作用。请教为什么?


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


加好友 发短信
等级:七尾狐 帖子:1551 积分:10061 威望:0 精华:0 注册:2014/12/18 16:12:00
  发帖心情 Post By:2019/8/28 12:45:00 [显示全部帖子]

以上代码放在 datacolchanged 里面,每次登陆系统是时,其实“录入日期”是不会改变的,变动的只是今天日期。我希望的是,重新登录系统时,昨天以前的数据行,其“确认”一栏都要自动变动为“true”。但是实际上达不到这个要求。

 回到顶部