Foxtable(狐表)用户栏目专家坐堂 → 该字符串未被识别为有效的 DateTime


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

主题:该字符串未被识别为有效的 DateTime

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


加好友 发短信
等级:幼狐 帖子:171 积分:1392 威望:0 精华:0 注册:2013/2/1 10:00:00
该字符串未被识别为有效的 DateTime  发帖心情 Post By:2013/11/6 10:16:00 [只看该作者]

(自动编号)之前一直使用正常,今天新增行的时候弹出如下信息:



.NET Framework 版本:2.0.50727.5472
Foxtable 版本:2013.10.14.1
错误所在事件:表,订单表,DataColChanged
详细错误信息:
调用的目标发生了异常。
该字符串未被识别为有效的 DateTime。有一个从索引 10 处开始的未知字。


代码:

'**************************************自动编号*************************************
If e.DataCol.Name = "下单日期" Then
    If e.DataRow.IsNull("下单日期") Then
        e.DataRow("订单编号") = Nothing
    Else
        Dim bh As String = Format(e.DataRow("下单日期"),"yyyyMMdd") '取得编号的8位前缀
        If e.DataRow("订单编号").StartsWith(bh) = False '如果编号的前8位不符
            Dim max As String
            Dim idx As Integer
            max = e.DataTable.Compute("Max(订单编号)","下单日期 = #" & e.DataRow("下单日期") & "# And [_Identify] <> " & e.DataRow("_Identify")) '取得该天的最大编号
            If max > "" Then '如果存在最大编号
                idx = CInt(max.Substring(12,3)) + 1 '获得最大编号的后三位顺序号,并加1
            Else
                idx = 1 '否则顺序号等于1
            End If
            e.DataRow("订单编号") ="DD-" & bh & "-" & Format(idx,"000")
        End If
    End If
End If




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


加好友 发短信
等级:管理员 帖子:47497 积分:251397 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/11/6 10:19:00 [只看该作者]

难道你的订单日期这一列,是字符型,而不是日期时间型?

 

看看下面这一章的内容:

http://www.foxtable.com/help/topics/1485.htm

 

找出是哪一行代码出错,然后分析原因。

 

 


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


加好友 发短信
等级:幼狐 帖子:171 积分:1392 威望:0 精华:0 注册:2013/2/1 10:00:00
  发帖心情 Post By:2013/11/6 10:37:00 [只看该作者]

一直是date属性的,已经用了一个多月正常,今天才出现问题!


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


加好友 发短信
等级:管理员 帖子:47497 积分:251397 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/11/6 10:39:00 [只看该作者]

先用2楼的方法分析一下吧,搞不定就做个例子后者直接发文件上来测试,告诉如何操作出现这个错误提示


 回到顶部