以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]DataColChanged代码? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=119732) |
||||
-- 作者:老鼠 -- 发布时间:2018/5/30 22:07:00 -- [求助]DataColChanged代码? 计算[预计退休日期]列结果.条件1、性别=男,身份类别=工人,预计退休日期=出生日期+60年(也就是60周岁);条件2、性别=男,身份类别=干部,预计退休日期=出生日期+60年(也就是60周岁);条件3、性别=女,身份类别=工人,预计退休日期=出生日期+50年(也就是50周岁);条件4、性别=女,身份类别=干部,预计退休日期=出生日期+55年(也就是55周岁)。而且前面的性别、身份类别、出生日期只要有一项有变动或者修改预计退休日期列就会重新计算结果。这个代码应该如何编辑?请老师们指点。
|
||||
-- 作者:有点甜 -- 发布时间:2018/5/30 22:13:00 -- Select Case e.DataCol.name Case "性别","身份类别","出生日期" Dim d As Date = e.DataRow("出生日期") If d = Nothing Then e.DataRow("预计退休日期") = Nothing Else If e.DataRow("性别") = "男" Then e.DataRow("预计退休日期") = d.AddYears(60) ElseIf e.DataRow("性别") = "女" Then If e.DataRow("身份类别") = "工人" e.DataRow("预计退休日期") = d.AddYears(50) Else e.DataRow("预计退休日期") = d.AddYears(55) End If Else e.DataRow("预计退休日期") = Nothing End If End If End Select |
||||
-- 作者:老鼠 -- 发布时间:2018/5/30 23:02:00 -- 感谢有点甜老师的帮助!
如果我要同时计算:预计退休日期,工龄,党龄,
这里我又加了几个列,以下是单独党龄计算的代码。 Select Case e.DataCol.name 如果有多个列,这样的应该如何合并代码呢? |
||||
-- 作者:有点甜 -- 发布时间:2018/5/30 23:04:00 -- 不需要合并代码,每个计算单独写。 |
||||
-- 作者:老鼠 -- 发布时间:2018/5/30 23:11:00 -- 好的,谢谢! |