以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]狐爸紧急求助或者哪位帮忙看下错在哪里?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=17373)

--  作者:suifengshiqu
--  发布时间:2012/3/11 15:49:00
--  [求助]狐爸紧急求助或者哪位帮忙看下错在哪里?

If e.DataCol.Name = "DateTimePicker3" Then
    If e.DataRow.IsNull("DateTimePicker3") Then
        e.DataRow("TextBox2") = Nothing
    Else
        Dim bh As String = Format(e.DataRow("DateTimePicker3"),"yyyyMMdd") \'取得编号的8位前缀
        If e.DataRow("TextBox2").StartsWith(bh) = False \'如果编号的前8位不符
            Dim max As String
            Dim idx As Integer
            max = e.DataTable.Compute("Max("TextBox2")",""DateTimePicker3" = #" & e.DataRow("DateTimePicker3") & "#") \'取得该天的最大编号
            If max > "" Then \'如果存在最大编号
                idx = CInt(max.Substring(9,3)) + 1 \'获得最大编号的后三位顺序号,并加1
            Else
                idx = 1 \'否则顺序号等于1
            End If
            e.DataRow("TextBox2") = bh & "-" & Format(idx,"000")
        End If
    End If
End If

 

 

红色标记的代码在取得最大值的时候提示错误?

实在不知道错在哪里,请大家给予指点。谢谢!

 

:)已经找到错误,正确写法:max = e.DataTable.Compute("Max(TextBox2)","DateTimePicker3 = #" & e.DataRow("DateTimePicker3") & "#") \'取得该天的最大编号

[此贴子已经被作者于2012-3-11 15:59:11编辑过]

--  作者:suifengshiqu
--  发布时间:2012/3/12 9:17:00
--  

我承认我很白痴,但是也不至于连个回复都没有吧。

大家都是从开始什么都不会,慢慢学过来的。

对于初学者大家是不是可以更多的给予我们理解呢。


--  作者:lxl
--  发布时间:2012/3/12 10:57:00
--  

应该是周末上论坛的人比较少吧

平时回复的人挺多的


--  作者:程兴刚
--  发布时间:2012/3/12 11:28:00
--  
以下是引用suifengshiqu在2012-3-12 9:17:00的发言:

我承认我很白痴,但是也不至于连个回复都没有吧。

大家都是从开始什么都不会,慢慢学过来的。

对于初学者大家是不是可以更多的给予我们理解呢。

 

这话怎么听起来这么别扭?

可以说,周末这几天我一直开着论坛,而且还回复了不少论坛和群里面的回复,这几天就相当于在论坛义务值班,昨晚最晚到3点,楼主在发帖后没多一会儿就进行了重新编辑,说是已经找到错误,并且给出了正确写法,以为自己已经解决了问题,也就没有细看,况且,楼主有没有给文件,谁也没法调试其正确性。

 


图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看

呵呵,二楼所言极是,否则无从理解!图片点击可在新窗口打开查看

[此贴子已经被作者于2012-3-12 13:14:53编辑过]

--  作者:狐狸爸爸
--  发布时间:2012/3/12 12:27:00
--  

你一楼的最后一句话: 已经找到错误了。

所以大家都认为你不需要帮助了的,如果还有问题,应该重新整理发帖提问,否则大家怎么知道你有什么问题?