Foxtable(狐表)用户栏目专家坐堂 → 帮我看看哪里错了?


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

主题:帮我看看哪里错了?

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


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2020/3/14 1:55:00 [显示全部帖子]

  Dim drs = dt.Select("款号 = '" & kss & "'and 样衣号 like '%" & yks & "%'","_sortkey")     
这一句没有指明定义drs变量的类型!应为  Dim drs As Iist(Of datarow) = ……
[此贴子已经被作者于2020/3/14 1:55:45编辑过]

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


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2020/3/14 2:04:00 [显示全部帖子]

       For Each dc As DataCol In dt.DataCols
            If dc.Name = "规格" Then
                r("规格") = dr("规格")
            Else
                r("规格") = Nothing
            End If
        Next   
您这个循环不但脱了裤子放屁,还会导致系统逻辑错误,如果遍历的最后一列不是规格列,会导致规格列永远为空!只需这一句即可:
         r("规格") = dr("规格")

[此贴子已经被作者于2020/3/14 2:04:39编辑过]

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


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2020/3/14 7:13:00 [显示全部帖子]

按理,作为开发者,您在设计时应该很清楚地知道又没有“规格”这一列,您应该不会让用户手动删除吧?如果确实需要判断,这样即可:

if dt.dataCols.Contains("规格") = true
    r("规格") = dr("规格")
end if

 回到顶部