Foxtable(狐表)用户栏目专家坐堂 → 简单问题(求月份)


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

主题:简单问题(求月份)

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


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2008/10/29 16:38:00 [显示全部帖子]

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


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


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2008/10/29 17:19:00 [显示全部帖子]

哈哈,还说不难,我看得头晕了。
你这个是香港日期吧,不适合大陆日期。


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


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2008/10/29 19:12:00 [显示全部帖子]

以下是引用表之狂在2008-10-29 18:22:00的发言:
老六,以上的解决方法都复杂,你还是尽快解决到像易表那样,不太复杂的功能用表达式解决不是更好吗。


下面的代码,难道不比易表清晰易懂多了吗?

If e.DataCol.Name = "日期" Then
    If e.NewValue Is Nothing Then
        e.Datarow("月份") = Nothing 
    Else
        Dim d As Date = e.NewValue
        Dim m As Integer = d.Month
        If d.Day > 25 Then
            m = m + 1
        End If
        If m = 13 Then
           m = 1   
        End If
        e.DataRow("月份") = m
    End If
End If



 

[此贴子已经被作者于2008-10-29 19:12:39编辑过]

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


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2008/10/29 21:22:00 [显示全部帖子]

呵呵,那我以简单点:

If e.DataCol.Name = "日期" Then
    Dim d As Date = e.NewValue
    e.DataRow("月份") = iif(e.NewValue Is Nothing,Nothing, iif(d.day<= 25,d.month,(d.month + 1) mod 12))
End If

不过我还是喜欢之前那种方式,虽然长一点,但是可读性强多了。
[此贴子已经被作者于2008-10-29 21:25:33编辑过]

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


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2008/10/29 22:07:00 [显示全部帖子]

以下是引用don在2008-10-29 21:49:00的发言:

请教这里为何可以是表达式?
iif(e.NewValue Is Nothing,Nothing, iif(d.day<= 25,d.month,(d.month + 1) mod 12))

[此贴子已经被作者于2008-10-29 21:57:41编辑过]


这是不是表达式,是代码,代码里头也有iif函数的。


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


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2008/10/29 22:10:00 [显示全部帖子]

不过我从来不用iif函数的,我习惯
if then
else
end if
[此贴子已经被作者于2008-10-29 22:26:20编辑过]

 回到顶部