Foxtable(狐表)用户栏目专家坐堂 → 怎样撤销代码建立的关联?


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

主题:怎样撤销代码建立的关联?

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


加好友 发短信
等级:幼狐 帖子:67 积分:750 威望:0 精华:0 注册:2015/9/5 18:02:00
怎样撤销代码建立的关联?  发帖心情 Post By:2017/9/14 21:11:00 [只看该作者]

我窗体上有两个临时表,之间没有关联,但实际是可以建立关联的(有一个列是对应的关系),因为输入Excel报表时无法同时显示两个表的内容,所以在调用报表文件时,我用
Relations.Add("关联1",DataTables("应收应付").DataCols("单位ID"),DataTables("收付查询_Table2").DataCols("客户ID"))
建立了一个关联,如果程序是刚启动的,就没有问题,执行过一次该代码后,就开始出问题了,提示的内容多种多样,我用
Relations.Delete("关联1")
删除这个关联,也是同样的各种报错,基本上要退出程序重新启动。
请教,如何正确在调用报表后撤销这个关联,恢复到没有建立关联前的状态?

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/14 21:15:00 [只看该作者]

生成报表代码

 

Relations.Add("关联1",DataTables("应收应付").DataCols("单位ID"),DataTables("收付查询_Table2").DataCols("客户ID"))

'生成报表代码

Relations.Delete("关联1")

 

如果还有问题,做个例子发上来。


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


加好友 发短信
等级:幼狐 帖子:67 积分:750 威望:0 精华:0 注册:2015/9/5 18:02:00
  发帖心情 Post By:2017/9/14 22:06:00 [只看该作者]

感谢版主的帮助!
因为是在服务器中调用的数据,所以一时不知如何做个例子。
我的“应收应付”表是一个客户名称的列表,选择相应的记录后,通过按钮调出该客户的历史来往记录,显示在“收付查询_Table2”中。两个表都是设置为SQLQuery。
照版主的方式试了几次(我原来是把删除关联的那一句“Relations.Delete("关联1")”放在其他事件中了),还是有问题。主要是:
1.如果调用了一次报表,回到程序后,选择其他的客户,再想通过按钮调出该客户的历史记录时,显示错误:无法访问属性,因为“列必须属于某个表。”。
而且这个提示在关闭这个“应收应付”窗口后,点击其他功能按钮时还会出现(显示错误就在这个功能按钮中),而且无法启动别的窗口。
2.如果调用了一次报表,然后直接关闭这个窗口(我设置为主窗口),然后点击菜单上别的功能按钮时,显示错误:无法访问属性,因为“在不同 DataSet 中的表之间不能建立关系。”。
同样无法启动其他功能(显示错误也是在这个按钮上)。
3.我只能退出再启动,因为设置了退出程序时提醒,所以问我是否退出,然后又问我是否保存,但我只进行了上述查询和报表操作,没有更改数据的行为。
不知以上三点能不能说明什么问题。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/14 22:09:00 [只看该作者]

 单独做一个项目导入对应的表,做一个类似的例子发上来。

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


加好友 发短信
等级:幼狐 帖子:67 积分:750 威望:0 精华:0 注册:2015/9/5 18:02:00
  发帖心情 Post By:2017/9/14 22:16:00 [只看该作者]

嗯嗯,感谢版主及时回复,因为这个程序赶着尽快启用,报表这块不是必须的功能,所以只能暂时搁置,过两天我做个例子上传请教。再次感谢!再次感谢!

 回到顶部