Foxtable(狐表)用户栏目专家坐堂 → 天数计算


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

主题:天数计算

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


加好友 发短信
等级:一尾狐 帖子:410 积分:3670 威望:0 精华:0 注册:2017/4/8 8:59:00
天数计算  发帖心情 Post By:2017/9/6 12:47:00 [显示全部帖子]

Select Case e.DataCol.name
    Case "起日期","止日期"
        If e.DataRow.IsNull("起日期") OrElse e.DataRow.IsNull("止日期") Then
            e.DataRow("天数") = Nothing
        Else
            Dim y,m,d As Integer
            Dim dt1 As Date = e.DataRow("起日期")
            Dim dt2 As Date = e.DataRow("止日期")
            DateYMD(dt1,dt2,y,m,d)
            dt1 = dt1.AddYears(y)
            d= (dt2- dt1).TotalDays()
            e.DataRow("天数") =  d
            
        End If
End Select

以上代码为什么在计算几个月内天数时正确,一年以上数字不动了呢或者是天数不正确了,有什么问题吗


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


加好友 发短信
等级:一尾狐 帖子:410 积分:3670 威望:0 精华:0 注册:2017/4/8 8:59:00
  发帖心情 Post By:2017/9/7 10:26:00 [显示全部帖子]

不是这样的,起止日期是变动的,因为每一行起止日期不一样,天数列是动态的,所以要写代码

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


加好友 发短信
等级:一尾狐 帖子:410 积分:3670 威望:0 精华:0 注册:2017/4/8 8:59:00
  发帖心情 Post By:2017/9/7 13:13:00 [显示全部帖子]

Select Case e.DataCol.name
    Case "起日期","止日期"
        If e.DataRow.IsNull("起日期") OrElse e.DataRow.IsNull("止日期") Then
            e.DataRow("天数") = Nothing
        Else
       Dim t As TimeSpan
       t = CDate(CurrentTable.Current("止日期"))- CDate(CurrentTable.Current("起日期"))
       e.DataRow("天数") =t.TotalDays
            
        End If
End Select

修改成以上代码成功了,但是我不知道问题出在哪里。

 回到顶部