Foxtable(狐表)用户栏目专家坐堂 → 如何从日期列字段截取年,月,日和如何查找列的扩展


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

主题:如何从日期列字段截取年,月,日和如何查找列的扩展

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


加好友 发短信
等级:五尾狐 帖子:1152 积分:7712 威望:0 精华:0 注册:2019/6/13 9:57:00
如何从日期列字段截取年,月,日和如何查找列的扩展  发帖心情 Post By:2020/4/29 8:58:00 [只看该作者]

如何从日期列字段截取年,月,日和如何查找列的扩展
1.年,月,日字段列的值,如何从日期列字段截取?
2,列属性,找不到“扩展功能”,如何解决?谢谢

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107677 积分:547706 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/29 9:18:00 [只看该作者]

到datacolchanged事件写代码处理


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


加好友 发短信
等级:五尾狐 帖子:1152 积分:7712 威望:0 精华:0 注册:2019/6/13 9:57:00
  发帖心情 Post By:2020/4/29 12:19:00 [只看该作者]

Dim d1 As Date = Date.Today
Dim year As Integer = d1.Year
Dim month As Integer = d1.Month
Dim day as Integer = d1.Day

没执行

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107677 积分:547706 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/29 13:51:00 [只看该作者]


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


加好友 发短信
等级:五尾狐 帖子:1152 积分:7712 威望:0 精华:0 注册:2019/6/13 9:57:00
  发帖心情 Post By:2020/4/29 14:39:00 [只看该作者]

If e.DataCol.Name = "日期" Then 
    If e.DataRow.IsNull("日期") Then 
        e.DataRow("年") = Nothing 
        e.DataRow("月") = Nothing 
        e.DataRow("日") = Nothing '
    Else
       
                e.DataRow("年") = ReadBirthday(e.DataRow("日期"))
        e.DataRow("月") = ReadBirthday(e.DataRow("日期"))
        e.DataRow("日") = ReadBirthday(e.DataRow("日期"))
    End If
End If

也没执行

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107677 积分:547706 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/29 15:03:00 [只看该作者]

建议不要急着做项目先学好基础:http://www.foxtable.com/webhelp/topics/1592.htm

If e.DataCol.Name = "日期" Then 
    If e.DataRow.IsNull("日期") Then 
        e.DataRow("年") = Nothing 
        e.DataRow("月") = Nothing 
        e.DataRow("日") = Nothing '
    Else
        e.DataRow("年") = e.DataRow("日期").year
        e.DataRow("月") = e.DataRow("日期").month
        e.DataRow("日") = e.DataRow("日期").day
    End If
End If


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


加好友 发短信
等级:五尾狐 帖子:1152 积分:7712 威望:0 精华:0 注册:2019/6/13 9:57:00
  发帖心情 Post By:2020/4/29 15:39:00 [只看该作者]

.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2019.12.17.18
错误所在事件:表,日记帐明细, DataColChanged
详细错误信息:
调用的目标发生了异常。
从类型“Integer”到类型“Date”的转换无效。

报错,

日期,年,月,日都是“日期时间”

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107677 积分:547706 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/29 15:45:00 [只看该作者]

改为整数。如果还是使用日期型没有必要再分开年,月,日,直接取日期列计算就可以了

 回到顶部