以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- [求助] 代码有问题,帮忙看一下? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=74015)
|
-- 作者:liuxianjie1980
-- 发布时间:2015/8/31 16:23:00
-- [求助] 代码有问题,帮忙看一下?
With e.DataRow("客户名称") IsNot Nothing Dim d As Date =Date.now e.DataRow("本期年度")=d.year End With Select Case e.DataCol.name Case "客户名称","本期年度" If e.DataRow("客户名称") IsNot Nothing AndAlso e.DataRow("本期年度") IsNot Nothing Then Dim filter As String filter = "客户名称 = \'" & e.DataRow("客户名称") & "\' and 年度= \'" & e.DataRow("本期年度")-1 &"\'" Dim dr As DataRow=DataTables("结余历史数据").Find(filter) If dr Is Nothing Then messagebox.show("未找到该客户的结余数据,请手动填写或核实!","提示") Return Else e.DataRow("上期结转_货款金额")= dr("账款结余") e.DataRow("上期结转_货物数量")= dr("货物数量结余") End If End If End Select
为何当年度自动输完后,没有找到相应数据,msgbox弹出来两次??
|
-- 作者:有点蓝
-- 发布时间:2015/8/31 16:30:00
--
年度是整型的吗?整型的把filter中单引号去掉。
|
-- 作者:大红袍
-- 发布时间:2015/8/31 16:35:00
--
Select Case e.DataCol.name Case "客户名称","本期年度" If e.DataRow.Isnull("客户名称") = False Then systemready = False e.DataRow("本期年度") = Date.today.Year systemready = True Dim filter As String filter = "客户名称 = \'" & e.DataRow("客户名称") & "\' and 年度= \'" & e.DataRow("本期年度")-1 &"\'" Dim dr As DataRow=DataTables("结余历史数据").Find(filter) If dr Is Nothing Then messagebox.show("未找到该客户的结余数据,请手动填写或核实!","提示") Return Else e.DataRow("上期结转_货款金额")= dr("账款结余") e.DataRow("上期结转_货物数量")= dr("货物数量结余") End If End If End Select
|
-- 作者:liuxianjie1980
-- 发布时间:2015/8/31 16:48:00
--
谢谢红袍兄,你的代码可以!加入一个状态判断吧
|
-- 作者:大红袍
-- 发布时间:2015/8/31 16:53:00
--
你要做的逻辑,直接这样写也行
Select Case e.DataCol.name Case "客户名称" If e.DataRow.Isnull("客户名称") = False Then e.DataRow("本期年度") = Date.today.Year Dim filter As String filter = "客户名称 = \'" & e.DataRow("客户名称") & "\' and 年度= \'" & e.DataRow("本期年度")-1 &"\'" Dim dr As DataRow=DataTables("结余历史数据").Find(filter) If dr Is Nothing Then messagebox.show("未找到该客户的结余数据,请手动填写或核实!","提示") Return Else e.DataRow("上期结转_货款金额")= dr("账款结余") e.DataRow("上期结转_货物数量")= dr("货物数量结余") End If End If End Select
|