Foxtable(狐表)用户栏目专家坐堂 → 分段连续输入一段时间怎么设置代码


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

主题:分段连续输入一段时间怎么设置代码

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


加好友 发短信
等级:幼狐 帖子:135 积分:946 威望:0 精华:0 注册:2012/8/26 23:34:00
分段连续输入一段时间怎么设置代码  发帖心情 Post By:2012/12/22 15:01:00 [只看该作者]

如图01所示,我在开始那里输入2012-12-03,在结束那里输入2012-12-08,点确认,一段时间就出现在婚假明细那里,然后我想继续输入一段时间,从2012-12-12到2012-12-19,点确定,之后一段时间就继续跟着之前的一段时候的后面,输入到婚假明细的那里,效果如图02所示。
不知道怎么设置代码呢?请教一下高手!

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

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


[此贴子已经被作者于2012-12-22 15:04:26编辑过]

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/22 15:17:00 [只看该作者]

 把你datacolchanged事件里的第一段替换成。

Select Case e.DataCol.name
    Case "婚假_开始","婚假_结束"
        Dim dr As DataRow = e.DataRow
        If dr.IsNull("婚假_开始") = False And dr.IsNull("婚假_结束") = False
            dr("婚假") += DateDiff("d",dr("婚假_开始"),dr("婚假_结束"))
            Dim s As String
            For i As Integer = 0 To dr("婚假")
                s = s & "," & Format(dr("婚假_开始").AddDays(i),"MM-dd")
            Next
            dr("婚假明细") += s.Trim(",")
        End If
End Select

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


加好友 发短信
等级:幼狐 帖子:135 积分:946 威望:0 精华:0 注册:2012/8/26 23:34:00
  发帖心情 Post By:2012/12/22 15:27:00 [只看该作者]

我试了一下,已经可以跟着后面添加了,但是,后加一段时间多出了4天

[此贴子已经被作者于2012-12-22 15:33:20编辑过]

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


加好友 发短信
等级:幼狐 帖子:135 积分:946 威望:0 精华:0 注册:2012/8/26 23:34:00
回复:(lin_hailun)?把你datacolchanged事件里...  发帖心情 Post By:2012/12/22 15:31:00 [只看该作者]

我输入了1号到3号,又输入了11号到13号,结果后面多出了14号到17号的,你看一下,怎么回事?
图片点击可在新窗口打开查看此主题相关图片如下:03.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2012-12-22 15:32:58编辑过]

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/22 15:43:00 [只看该作者]

 好的,再改一下

Select Case e.DataCol.name
    Case "婚假_开始","婚假_结束"
        Dim dr As DataRow = e.DataRow
        If dr.IsNull("婚假_开始") = False And dr.IsNull("婚假_结束") = False
            dr("婚假") += DateDiff("d",dr("婚假_开始"),dr("婚假_结束"))
            Dim s As String
            For i As Integer = 0 To DateDiff("d",dr("婚假_开始"),dr("婚假_结束"))
                s = s & "," & Format(dr("婚假_开始").AddDays(i),"MM-dd")
            Next
            dr("婚假明细") += s.Trim(",")
        End If
End Select

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


加好友 发短信
等级:幼狐 帖子:135 积分:946 威望:0 精华:0 注册:2012/8/26 23:34:00
  发帖心情 Post By:2012/12/22 16:03:00 [只看该作者]

ok啦,谢谢!真是博大精深啊,这样都可以!

 回到顶部