Foxtable(狐表)用户栏目专家坐堂 → [求助]fill 生成的SQLtable为何显示为锁定,isQuery已设置为false


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

主题:[求助]fill 生成的SQLtable为何显示为锁定,isQuery已设置为false

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2014/3/17 9:55:00 [显示全部帖子]

因为一开始没有设置select语句,所以打开之后,这是一个临时表,默认就是不能编辑的,你在fill,也不能改变不能编辑的状态。

 

.Fill()

.AllowEdit = True


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2014/3/17 10:44:00 [显示全部帖子]

纠正一下

 

1、Select语句只能查询后台数据,所以下面的语句一般都会出错:

 

Select 父料编号,子料编号,物料名称 from {" & tables(窗口名_table1).DataTable.name & "}"

 

2、如果数据不是来自单一的表,那么不能作为SQLQuery,使用Fill的时候,必须将第三个参数设置为True

 

3、Union All组合两个查询结果时,前后两个查询返回的表结构一直,显然你一个查询是三列(父料编号,子料编号,物料名称),一个是两列(子料编号,物料名称)

 

4、还有:

& “Select 子料编号,物料名称 from (Select [_Identify],物料编号 As 子料编号,物料名称,库存单位 As 单位 from {物料编号表} where 物料编号 In (" & 一级子料 & ")",pubssys2,False)"

 

后面的pubssys2,False是什么意思,你在写Select语句,不是在Fill.

 

 

5、建议你先不要写代码,先直接在SQL执行窗口调试好SQL语句,得到正确的SQL语句再编写代码合成,这样有参照。

 

6、你可以用MessageBox.show显示一下自己合并生成的Select语句,看看合成是什么东东,是否正确:

 

在MessaageBox显示的对话框中,按"Ctrl+C"键,可以复制其显示的内容:

 

图片点击可在新窗口打开查看

 

这在动态合成一些复杂的SQL语句或表达式时的时候很实用,例如我们可以从MessageBox中复制合成好的SQL语句,粘贴到SQL执行窗口进行执行调试,找出此SQL语句的问题后,再回头调整代码。

[此贴子已经被作者于2014-3-17 10:47:44编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2014/3/17 10:55:00 [显示全部帖子]

先学一下select语句:

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

 

然后理清楚自己的思路,再写代码,再提问,看你在6楼写的,想帮你也无从下手。

搞不定再用小例子说话。

 


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2014/3/17 11:30:00 [显示全部帖子]

没有办法处理,查询必须是后台的列,改变自己的设计思路

 回到顶部