以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- [求助]窗口table动态增加的列写入时无法识别报错 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=46316)
|
-- 作者:lyq
-- 发布时间:2014/2/20 19:49:00
-- [求助]窗口table动态增加的列写入时无法识别报错
Tables("装配级码_table1").DataSource=dt For i As Integer=1 To jsmax DataTables("装配级码_table1").DataCols.Add("js" & i, Gettype(String),6,"",i & "级") Next Tables("装配级码_table1").AutoSizeCols For Each dc As DataCol In DataTables("装配级码_table1").datacols If dc.name.contains("js") Then For Each r1 As Row In Tables("装配级码_table1").Rows cmd.commandtext="select distinct 装配级码 from 装配 where 编号=\'" & r1("编号") & "\' and 物料=\'" & r1("物料") & "\' and 级数=\'" & dc.name.replace("js","") & "\'"
r1(dc.name)=cmd.executescalar() Next End If Next
此主题相关图片如下:1.jpg
此主题相关图片如下:2.jpg
|
-- 作者:有点甜
-- 发布时间:2014/2/20 19:56:00
--
试试这样
Tables("装配级码_table1").DataSource=dt For i As Integer=1 To jsmax Tables("装配级码_table1").DataTable.DataCols.Add("js" & i, Gettype(String),6,"",i & "级") Next Tables("装配级码_table1").AutoSizeCols For Each c As Col In Tables("装配级码_table1").Cols If c.name.contains("js") Then For Each r1 As Row In Tables("装配级码_table1").Rows cmd.commandtext="select distinct 装配级码 from 装配 where 编号=\'" & r1("编号") & "\' and 物料=\'" & r1("物料") & "\' and 级数=\'" & dc.name.replace("js","") & "\'" r1(dc.name)=cmd.executescalar() Next End If Next
|
-- 作者:lyq
-- 发布时间:2014/2/20 20:02:00
--
以下是引用有点甜在2014-2-20 19:56:00的发言: 试试这样
Tables("装配级码_table1").DataSource=dt For i As Integer=1 To jsmax Tables("装配级码_table1").DataTable.DataCols.Add("js" & i, Gettype(String),6,"",i & "级") Next Tables("装配级码_table1").AutoSizeCols For Each c As Col In Tables("装配级码_table1").Cols If c.name.contains("js") Then For Each r1 As Row In Tables("装配级码_table1").Rows cmd.commandtext="select distinct 装配级码 from 装配 where 编号=\'" & r1("编号") & "\' and 物料=\'" & r1("物料") & "\' and 级数=\'" & dc.name.replace("js","") & "\'" r1(dc.name)=cmd.executescalar() Next End If Next
将遍历集中的datacol改为col还是报同样的错误
|
-- 作者:lyq
-- 发布时间:2014/2/20 20:04:00
--
msgbox(dc.name) \'显示正确
r1(dc.name)=cmd.executescalar() ’运行此代码就会报错,取消此代码后没有报错
|
-- 作者:有点甜
-- 发布时间:2014/2/20 20:27:00
--
提示出错,也是xxx列不存在吗?
没理由,你这样试试.
Tables("装配级码_table1").DataSource=dt For i As Integer=1 To jsmax Tables("装配级码_table1").DataTable.DataCols.Add("js" & i, Gettype(String),6,"",i & "级") Next Tables("装配级码_table1").AutoSizeCols For Each dc As DataCol In Tables("装配级码_table1").DataTable.DataCols If dc.name.Contains("js") Then For Each r1 As Row In Tables("装配级码_table1").Rows cmd.commandtext="select distinct 装配级码 from 装配 where 编号=\'" & r1("编号") & "\' and 物料=\'" & r1("物料") & "\' and 级数=\'" & dc.name.replace("js","") & "\'" r1(dc.name)=cmd.executescalar() Next End If Next
|
-- 作者:lyq
-- 发布时间:2014/2/20 20:46:00
--
以下是引用有点甜在2014-2-20 20:27:00的发言: 提示出错,也是xxx列不存在吗?
没理由,你这样试试.
Tables("装配级码_table1").DataSource=dt
For i As Integer=1 To jsmax
Tables("装配级码_table1").DataTable.DataCols.Add("js" & i, Gettype(String),6,"",i & "级")
Next
Tables("装配级码_table1").AutoSizeCols
For Each dc As DataCol In Tables("装配级码_table1").DataTable.DataCols
If dc.name.Contains("js") Then
For Each r1 As Row In Tables("装配级码_table1").Rows
cmd.commandtext="select distinct 装配级码 from 装配 where 编号=\'" & r1("编号") & "\' and 物料=\'" & r1("物料") & "\' and 级数=\'" & dc.name.replace("js","") & "\'"
r1(dc.name)=cmd.executescalar()
Next
End If
Next
报同样的错误,按道理不应该报错呀,郁闷!!!
|
-- 作者:lyq
-- 发布时间:2014/2/20 20:48:00
--
郁闷!!!
狐狸爸爸出来解决下,
是程bug吗
|
-- 作者:逛逛
-- 发布时间:2014/2/20 20:59:00
--
试试这样
For i As Integer=1 To jsmax dt.DataCols.Add("js" & i, Gettype(String),6,"",i & "级") Next
Tables("装配级码_table1").DataSource=dt
|
-- 作者:有点甜
-- 发布时间:2014/2/20 21:01:00
--
不会是这段代码的错,你请检测其他代码,或者做一个例子发上来。
我测试代码没有错
|
-- 作者:逛逛
-- 发布时间:2014/2/20 21:03:00
--
以下是引用有点甜在2014-2-20 21:01:00的发言: 不会是这段代码的错,你请检测其他代码,或者做一个例子发上来。
我测试代码没有错
他的dt如果是SQL查询得来的,要绑定前增加列。
|