以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]怎么计算工龄 自动转换  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=10557)

--  作者:zhenshenbo
--  发布时间:2011/6/11 20:36:00
--  [求助]怎么计算工龄 自动转换

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3_0611.zip


图片点击可在新窗口打开查看此主题相关图片如下:问题.png
图片点击可在新窗口打开查看

帮忙看下怎么实现 谢谢!

月份 可以 以30天为基准..

[此贴子已经被作者于2011-6-11 20:39:09编辑过]

--  作者:czy
--  发布时间:2011/6/11 20:50:00
--  
\'DataColChanged事件代码
If e.DataCol.Name = "入职日期" AndAlso e.DataRow.IsNull("入职日期") = False Then
    e.DataRow("工龄") = DateDiff("yyyy",e.DataRow("入职日期"),Today())
End If

--  作者:zhenshenbo
--  发布时间:2011/6/11 21:01:00
--  

这是计算年? 

知道怎么算月了。  yyyy 年 q 季 m 月 y 一年的日数 d 日 w 一周的日数 ww 周 h 时 n 分钟 s 秒

 

那怎么变成 文字版的呢? 如果函数 怎么写?  用表达式可以么?

[此贴子已经被作者于2011-6-11 21:10:43编辑过]

--  作者:zhenshenbo
--  发布时间:2011/6/11 21:21:00
--  
以下是引用czy在2011-6-11 20:50:00的发言:
\'DataColChanged事件代码
If e.DataCol.Name = "入职日期" AndAlso e.DataRow.IsNull("入职日期") = False Then
    e.DataRow("工龄") = DateDiff("yyyy",e.DataRow("入职日期"),Today())
End If

 

If e.DataRow("工龄") > 0 And e.DataRow("工龄") <= 3 Then
      e.DataRow("工龄") = "0-3个月"
           Else If  e.DataRow("工龄") > 3 And e.DataRow("工龄") <= 6 Then
                 e.DataRow("工龄") = "3个月到半年"
End If

 

这样写会报错。

 


图片点击可在新窗口打开查看此主题相关图片如下:cuo.jpg
图片点击可在新窗口打开查看

--  作者:AMWGWG
--  发布时间:2011/6/11 21:54:00
--  
请问:在表A中订单号列要做成是必填写记录。不能空记录,这样的话怎么才能做好呀?
--  作者:zhenshenbo
--  发布时间:2011/6/11 22:04:00
--  
呵呵 我设置是数据库 不为空 ...
--  作者:hhbb
--  发布时间:2011/6/11 23:22:00
--  
If e.DataCol.Name = "入职日期"  Then
    Dim dr As DataRow = e.DataRow
    If  dr.IsNull("入职日期") Then
        dr("工龄") = Nothing
    Else
        Dim n As Integer
        n = DateDiff("d",dr("入职日期"),Today)
        dr("工龄") = iif(n<89,"0-3个月",iif(n<180,"3个月到半年",iif(n<365,"半年到一年", "一年以上")))
    End If
End If

--  作者:AMWGWG
--  发布时间:2011/6/12 18:35:00
--  
请问:在表A中订单号列要做成是必填写记录。不能空记录,这样的话怎么才能做好呀?

--  作者:blackzhu
--  发布时间:2011/6/12 19:36:00
--  

if e.datacol.name="xxxx" then

   if e.datarow.isnull("订单号") then

    MessageBox.Show("订单号列不许为空")

    e.Cancel = True

end if

end if