以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何用代码生成关联表  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=59649)

--  作者:rjh4078
--  发布时间:2014/11/7 16:29:00
--  如何用代码生成关联表
有2个表是通过SQL生成的动态表 现在想将2个表关联 生成EXCEL报表 查阅帮助好像没有方法可以通过代码生成临时的表间关联关系
--  作者:有点甜
--  发布时间:2014/11/7 16:30:00
--  

http://www.foxtable.com/help/topics/1942.htm

 


--  作者:Bin
--  发布时间:2014/11/7 16:30:00
--  
可以用代码添加关联 http://www.foxtable.com/help/topics/1942.htm
--  作者:rjh4078
--  发布时间:2014/11/7 16:36:00
--  
谢谢二位
--  作者:rjh4078
--  发布时间:2014/11/7 17:13:00
--  

Dim dtf As DataTable
Dim dtz As DataTable
Dim day As String
day=format(e.Form.Controls("DateTimePicker1").value,"yyyy-MM-dd")

Dim cmd1 As new SQLCommand
cmd1.C
cmd1.CommandText="select 客户名称, 销售时间 from {赊账明细} where 销账=0 and 销售时间>=\'" & day & " 00:00:00" & "\' and 销售时间<=\'" & day & " 23:59:59" &"\'"
dtf=cmd1.ExecuteReader

Dim cmd2 As new SQLCommand
cmd2.C
cmd2.CommandText="select 名称,数量,单位,零售价,零售金额,销售时间,客户名称 from {赊账明细} where 销账=0 and 销售时间>=\'" & day & " 00:00:00" &  "\' and 销售时间<=\'" & day & " 23:59:59" &"\'"
dtz=cmd2.ExecuteReader

Dim DataCols1(1) As DataCol
Dim DataCols2(1) As DataCol
DataCols1(0) = dtf.DataCols("客户名称")
DataCols1(1) = dtf.DataCols("销售时间")
DataCols2(0) = dtz.DataCols("客户名称")
DataCols2(1) = dtz.DataCols("销售时间")
Relations.Add("po", DataCols1, DataCols2,RelationPathEnum.one)

 

 

 出现如下错误

 

.NET Framework 版本:2.0.50727.6421
Foxtable 版本:2014.10.23.1
错误所在事件:窗口,销售单,Button1,Click
详细错误信息:
如果父列或子列不在 DataSet 中,则无法创建 DataRelation。


--  作者:Bin
--  发布时间:2014/11/7 17:19:00
--  
关联列不能是表达式列,也不要重复设置哦.
--  作者:有点甜
--  发布时间:2014/11/7 17:19:00
--  

 这种不能建立关联。

 

 必须用窗口表才行啊


--  作者:Bin
--  发布时间:2014/11/7 17:19:00
--  
另外你这种Datattable 变量也是不可以的

要实际存在在狐表中的表

--  作者:rjh4078
--  发布时间:2014/11/7 17:19:00
--  

另外 如何从窗口表绑定该关联的子表 类似于 订单.订单明细?

 


--  作者:有点甜
--  发布时间:2014/11/7 17:21:00
--  

 关联表不能绑定,你可以模拟做一个关联表

 

 其余看楼上