Foxtable(狐表)用户栏目专家坐堂 → 请帮忙查找问题


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

主题:请帮忙查找问题

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


加好友 发短信
等级:小狐 帖子:347 积分:2844 威望:0 精华:0 注册:2013/4/26 20:58:00
请帮忙查找问题  发帖心情 Post By:2013/11/14 17:58:00 [只看该作者]

项目已经投入使用了,但近来出了问题,点击按钮后,本应在将"DemandTable"的数据按照“Canlendar"表的周数添加到"FCST"表中,但报错,提示为system .argumentException: 列“”不属于表DemandTable,代码都没动,以前只变动了数据列的顺序,减少了部分数据列。请帮忙分析查找原因,谢谢!

 

按钮的代码如下:

 

DataTables("FCST").DataRows.Clear()
Dim wks As List (Of String) = DataTables("Calendar").GetUniqueValues("","Week")
For Each r As Row In Tables("DemandTable").Rows
    For Each wk As String In wks
        If r.IsNull(wk) = False Then
            Dim dr As DataRow = DataTables("Calendar").Find("Week = '" & wk & "'")
            Dim dr0 As DataRow = DataTables("FCST").AddNew()
            dr0("DemandDate") = dr("DemandDate")
            dr0("StokvisPN") = r("StokvisPN")
            dr0("CustomerPN") = r("CustomerPN")
            dr0("CustomerCode") = r("CustomerCode")
            dr0("PlanQuantity") = r(wk)
        End If
    Next
Next
Tables("FCST").Sort = "DemandDate"
Tables("DemandTable").Filter = ""
DataTables("FCST").Save()


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/14 18:00:00 [只看该作者]

代码没问题,不上例子是无法解决问题的.

你可以调试一下.每次弹出的WK的值是什么
是否出现空值现象

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


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

DataTables("FCST").DataRows.Clear()
Dim wks As List (Of String) = DataTables("Calendar").GetUniqueValues("","Week")
For Each r As Row In Tables("DemandTable").Rows
    For Each wk As String In wks
        If wk > "" Then
            If r.IsNull(wk) = False Then
                Dim dr As DataRow = DataTables("Calendar").Find("Week = '" & wk & "'")
                Dim dr0 As DataRow = DataTables("FCST").AddNew()
                dr0("DemandDate") = dr("DemandDate")
                dr0("StokvisPN") = r("StokvisPN")
                dr0("CustomerPN") = r("CustomerPN")
                dr0("CustomerCode") = r("CustomerCode")
                dr0("PlanQuantity") = r(wk)
            End If
        End If
    Next
Next
Tables("FCST").Sort = "DemandDate"
Tables("DemandTable").Filter = ""
DataTables("FCST").Save()

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


加好友 发短信
等级:小狐 帖子:347 积分:2844 威望:0 精华:0 注册:2013/4/26 20:58:00
  发帖心情 Post By:2013/11/15 10:18:00 [只看该作者]

谢谢!搞定了。增加 if wk>"" 的目的是?


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/15 10:19:00 [只看该作者]

只有WK不是空值才执行里面的代码,这样就不会因为WK是空值从而造成错误.

 回到顶部