以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]Format日期出错 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=70289) |
-- 作者:huangfanzi -- 发布时间:2015/6/18 14:23:00 -- [求助]Format日期出错 If e.DataCol.Name = "审核" Then If e.DataRow("审核") = True AndAlso e.DataRow("Log") ="" Then Dim cmd As New SQLCommand Dim dt As Date cmd.C cmd.CommandText = "Select GetDate()" dt = cmd.ExecuteScalar() dt = Format(dt, "yyyy-MM-dd HH:mm:ss") e.DataRow("log") = _UserName & " " & dt End If End If 通过以上代码在Log列得到的内容是:admin 2015-6-18 14:19:34,搞不明白了,为什么不是 admin 2015-06-18 14:19:34
|
-- 作者:Bin -- 发布时间:2015/6/18 14:25:00 -- 不可能的呀, 除非你少了一个M |
-- 作者:huangfanzi -- 发布时间:2015/6/18 14:51:00 -- 试了好几次,真的是这样啊,难道是BUG吗?参数中的HH:mm:ss做相应修改后能生效,就是这个MM不生效,无语。 |
-- 作者:Bin -- 发布时间:2015/6/18 14:53:00 -- 我测试都是没问题的啊. 怎么可能. |
-- 作者:大红袍 -- 发布时间:2015/6/18 15:00:00 -- 呃....你的dt本来就是date类型,要用字符类型
Dim zf As String = Format(dt, "yyyy-MM-dd HH:mm:ss") msgbox(zf) |
-- 作者:Bin -- 发布时间:2015/6/18 15:00:00 -- |
-- 作者:huangfanzi -- 发布时间:2015/6/18 15:14:00 -- 晕,想不到,真的想不到。 |
-- 作者:huangfanzi -- 发布时间:2015/6/18 15:21:00 -- 我现在把代码改成如下正常了,但还有个问题,一段时间不操作后再触发下面的代码时,系统会卡2秒左右,这是怎么回事。 If e.DataCol.Name = "审核" Then If e.DataRow("审核") = True AndAlso e.DataRow("Log") = Nothing Then Dim cmd As New SQLCommand Dim dt As Date Dim sj As String cmd.Connection Name = "ShcsErpSQL" cmd.CommandText = "Select GetDate()" dt = cmd.ExecuteScalar() sj = Format(dt, "yyyy-MM-dd HH:mm:ss") e.DataRow("log") = _UserName & " " & sj End If End If |
-- 作者:Bin -- 发布时间:2015/6/18 15:22:00 -- 服务器不通畅的原因吧 |
-- 作者:huangfanzi -- 发布时间:2015/6/18 15:44:00 -- 见鬼了,又遇到灵异事件了。 项目打开后触发代码后不出结果,我估计是" if e.DataRow("审核") = True AndAlso e.DataRow("Log") = Nothing Then "这句话出了问题,我只要先屏蔽掉这句话后触发下代码再启用这句话,整段代码就能运行了,关闭项目后再打开,又是这个样子,这是怎么回事啊? 问题找到了,但这个算不算BUG,老师参考下: 我项目打开时有代码不加载上述代码所在的表,项目进入后我通过在外部数据表中打开编辑窗口,然后直接再确认的方式加载了表,在这样的情况下,就会出现上面所说的问题,我做了测试,在项目打开时就直接加载这张表,表中上述的代码运行正常。
[此贴子已经被作者于2015/6/18 15:53:46编辑过]
|