以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]查询表如何实现实时更新  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=125221)

--  作者:smardisk
--  发布时间:2018/9/22 16:49:00
--  [求助]查询表如何实现实时更新
这个查询表需要关闭之后才会更新出新的信息,能不能实现我添加条目后查询表自动更新
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:工程单.table


--  作者:smardisk
--  发布时间:2018/9/22 16:52:00
--  
或者是可以自动更新查询表的数据
--  作者:y2287958
--  发布时间:2018/9/22 16:56:00
--  
既然sql语句都合成了,就代码呗。例如:
Dim sql As String = "Selec t Top 5 工单号,开单日期,交货日期,订单数量,{订单}.产品名称,备注,{商品信息}.产品名称,产品规格,用料,客户名称,[拼版数_A面],[拼版尺寸_A面],[用料数量_A面],[裁切尺寸_A面],[裁切数量_A面],[印刷应交_A面],[印刷方式_A面],[拼版数_B面],{商品工艺}.产品名称,[用料数量_B面],[拼版尺寸_B面],[裁切尺寸_B面],[裁切数量_B面],[印刷方式_B面],[印刷应交_B面],是否AB面,[用料尺寸_A面],[用料尺寸_B面],样板,板房,排版,印刷,[印色_面],[印色_底],表面处理,[裱纸_瓦向],[裱纸_尺寸],[裱纸_坑类],[裱纸_数量],模切,成型,包装,{流程工艺}.产品名称 From (({订单} Inner JOIN {商品信息} ON {商品信息}.[_Identify] = {订单}.[_Identify]) Inner JOIN {商品工艺} ON {商品工艺}.[_Identify] = {订单}.[_Identify]) Inner JOIN {流程工艺} ON {流程工艺}.[_Identify] = {订单}.[_Identify] Group By 工单号,开单日期,交货日期,订单数量,{订单}.产品名称,备注,{商品信息}.产品名称,产品规格,用料,客户名称,[拼版数_A面],[拼版尺寸_A面],[用料数量_A面],[裁切尺寸_A面],[裁切数量_A面],[印刷应交_A面],[印刷方式_A面],[拼版数_B面],{商品工艺}.产品名称,[用料数量_B面],[拼版尺寸_B面],[裁切尺寸_B面],[裁切数量_B面],[印刷方式_B面],[印刷应交_B面],是否AB面,[用料尺寸_A面],[用料尺寸_B面],样板,板房,排版,印刷,[印色_面],[印色_底],表面处理,[裱纸_瓦向],[裱纸_尺寸],[裱纸_坑类],[裱纸_数量],模切,成型,包装,{流程工艺}.产品名称"
Dim q As new QueryBuilder
q.TableName = "报表数据0"
q.SelectString = sql
q.Build
MainTable = Tables("报表数据0")
[此贴子已经被作者于2018/9/22 16:56:47编辑过]

--  作者:smardisk
--  发布时间:2018/9/22 17:01:00
--  
这段代码写在表属性里还是写在查询表里
--  作者:y2287958
--  发布时间:2018/9/22 17:02:00
--  
放在按钮里,想什么时候更新都行
--  作者:有点蓝
--  发布时间:2018/9/22 17:09:00
--  
在商品工艺表添加“产品名称”列,然后“订单”表和其他3个表通过“产品名称”进行关联。不能使用_Identify进行关联,这个完全不靠谱。

查询表如果要刷新数据在需要的地方(比如窗口保存按钮、项目aftersaveproject事件...)调用下面代码

DataTables("报表数据").Load

--  作者:smardisk
--  发布时间:2018/9/22 17:20:00
--  
更新不了,需要将窗口关闭之后,重新打开查询窗口才会更新后面输入的信息
--  作者:有点蓝
--  发布时间:2018/9/22 17:58:00
--  
修改的内容要先保存,重新加载查询表才会更新