以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  调用储存过程结果返回表格出错  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=42897)

--  作者:migold
--  发布时间:2013/11/25 16:03:00
--  调用储存过程结果返回表格出错
Tables("ksoa_采购综合应用_Table2").fill("exec mg_qry_cg_1 1,\'\',\'2013-09-01\',\'2013-09-31\',\'\',\'2013-10-01\',\'2013-10-31\',\'\',\'2013-11-01\',\'2013-11-31\'","sys1",False)
出错提示:对于多个基表不支持动态 SQL 生成。


但是使用这个,能够试出语句是没有问题如:
Dim dt As DataTable
Dim cmd As New SQLCommand
cmd.C
cmd.CommandText = "exec mg_qry_cg_1 1,\'\',\'2013-09-01\',\'2013-09-31\',\'\',\'2013-10-01\',\'2013-10-31\',\'\',\'2013-11-01\',\'2013-11-31\'"
dt  = cmd.ExecuteReader
output.show(dt.DataCols.Count) \'显示565
output.show(dt.DataRows.Count) \'显示10426

--  作者:Bin
--  发布时间:2013/11/25 16:06:00
--  
Dim dt As DataTable
Dim cmd As New SQLCommand
cmd.C
cmd.CommandText = "exec mg_qry_cg_1 1,\'\',\'2013-09-01\',\'2013-09-31\',\'\',\'2013-10-01\',\'2013-10-31\',\'\',\'2013-11-01\',\'2013-11-31\'"
dt  = cmd.ExecuteReader
Tables("ksoa_采购综合应用_Table2").DataSource =dt

看看这样

--  作者:migold
--  发布时间:2013/11/25 16:07:00
--  
好的,谢谢,我试试看,

我试过这样就可以:Tables("ksoa_采购综合应用_Table2").fill("exec mg_qry_cg_1 1,\'\',\'2013-09-01\',\'2013-09-31\',\'\',\'2013-10-01\',\'2013-10-31\',\'\',\'2013-11-01\',\'2013-11-31\'","sys1",True)

--  作者:Bin
--  发布时间:2013/11/25 16:08:00
--  
对是的,我大意了.没看到.   必须是SQLQUERY类型才可以正常执行.
--  作者:migold
--  发布时间:2013/11/25 16:12:00
--  
以下是引用Bin在2013-11-25 16:06:00的发言:
Dim dt As DataTable
Dim cmd As New SQLCommand
cmd.C
cmd.CommandText = "exec mg_qry_cg_1 1,\'\',\'2013-09-01\',\'2013-09-31\',\'\',\'2013-10-01\',\'2013-10-31\',\'\',\'2013-11-01\',\'2013-11-31\'"
dt  = cmd.ExecuteReader
Tables("ksoa_采购综合应用_Table2").DataSource =dt
楼主:你的这个,试过OK通过了,谢谢