| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1782 人关注过本帖
标题:Sele生成临时表后自动跳出来,却不能在表格里正常显示。
只看楼主 加入收藏
风_1969
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2011-10-8
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:14 
Sele生成临时表后自动跳出来,却不能在表格里正常显示。
想生成临时表后在绑定的表格里显示。可是程序运行时生成临时表后就自动跳出,我并没有Borw,一按主菜单就消失,可是表格里什么也没有,只有我设计的表头。我是新手,请高手老师指教。谢谢先。
具体一点:是一个校产管理的程序,从源表xcglk生成临时表lsxcglk.

select * from xcglk where 种类="&xclb" into cursor lsxcglk
thisform.grid1.recordsourcetype=4
thisform.grid1.recordsource="lsxcglk"
thisform.grid1.columncount=10
thisform.grid1.Column1.Header1.caption="类别"
thisform.grid1.Column1.Controlsource="类别"
thisform.grid1.Column2.Header1.caption="编号"
thisform.grid1.Column2.Controlsource="编号"
if xclb="图书"
thisform.grid1.Column3.Header1.caption="书名"
thisform.grid1.Column4.Header1.caption="作者"
else
thisform.grid1.Column3.Header1.caption="名称"
thisform.grid1.Column4.Header1.caption="制造商"
endif
thisform.grid1.Column3.Controlsource="名称"
thisform.grid1.Column4.Controlsource="制造商"
thisform.grid1.Column5.Header1.caption="来源"
thisform.grid1.Column5.Controlsource="来源"
thisform.grid1.Column6.Header1.caption="价格"
thisform.grid1.Column6.Controlsource="价格"
thisform.grid1.Column7.Header1.caption="入校日期"
thisform.grid1.Column7.Controlsource="入校日期"
thisform.grid1.Column8.Header1.caption="存放科室"
thisform.grid1.Column8.Controlsource="存放科室"
thisform.grid1.Column9.Header1.caption="橱柜号"
thisform.grid1.Column9.Controlsource="橱柜号"
thisform.grid1.Column10.Header1.caption="是否借出"
thisform.grid1.Column10.Controlsource="是否借出"
thisform.refresh
thisform.grid1.refresh

怎样调试还是那样,在vfp6和vfp9中的效果一样。

[ 本帖最后由 风_1969 于 2011-10-8 16:14 编辑 ]
搜索更多相关主题的帖子: 设计 cursor where 
2011-10-08 16:04
xmlz
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:5
帖 子:294
专家分:1392
注 册:2010-8-29
收藏
得分:10 
thisform.grid1.RecordSourceType= 4
thisform.grid1.recordsource="select * from xcglk where 种类='&xclb' into cursor lsxcglk"
thisform.Refresh
2011-10-08 16:30
风_1969
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2011-10-8
收藏
得分:0 
谢谢您。
grid1的RecordSourceType属性0——4都试过啦。结果一样,总是自动跳出。
2011-10-08 17:21
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:10 
你1楼的写法是不能设置RecordSourceType=4的,应设为1。而且每栏的数据绑定ControlSource也不对,应写上别名引用。检查一下:你的当前工作区不在那个视图上,而是在原来的表上,Column绑定的数据被认为来自当前工作区,而不是你希望指定的视图,栏数据源与表格数据源不匹配,因此跳出。

授人以渔,不授人以鱼。
2011-10-08 17:30
风_1969
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2011-10-8
收藏
得分:0 
谢谢,我试下。
2011-10-08 17:32
风_1969
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2011-10-8
收藏
得分:0 
select * from xcglk where 种类="&xclb" into cursor lsxcglk

disp all  &&此处可以在表单上正常显示
wait
*wait以后还是自动跳出视图。不管以后是怎么执行的,目前已经跳出来啦。我怀疑VFP就是这样的?
*在另一个工作区生成临时表情况一样。就是不知道临时表怎样命名别名。

SELECT * FROM lsxcglk ORDER BY 名称
thisform.grid1.recordsourcetype=1         &&不管有没有上面的索引,总提示没有排序索引。设成0或其他则不提示。
thisform.grid1.recordsource="lsxcglk"
thisform.refresh
thisform.grid1.refresh

wait  &&后面的属性先不管,上面的问题已经出来啦。高手啊,耐心给看看呗。


[ 本帖最后由 风_1969 于 2011-10-8 18:12 编辑 ]
2011-10-08 18:10
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
临时表的别名就是你指定的视图名,lsxcglk
绑定的数据源,是.Columns(1).ControlSource = "lsxcglk.类别"
不是“是这样的”,你没弄对而已。
视图表ORDERBY是生成的数据物理排序,不是用索引的INDEX类排序,两个不同的概念,当然提示没有排序索引。

授人以渔,不授人以鱼。
2011-10-08 18:15
风_1969
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2011-10-8
收藏
得分:0 
嗯。我这里的问题是:还没有执行后面的语句,他已经自己跳出来啦啊?
2011-10-08 18:17
风_1969
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2011-10-8
收藏
得分:0 
Columns(1).ControlSource = "lsxcglk.类别"也有试过,还是不在表格上显示任何东西。不定义表头,把grid1.columncount设为-1还是不在表格上显示。
2011-10-08 18:20
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
你执行下面那个SELECT命令没指定INTO参数,当然自动跳出查询结果啦。

授人以渔,不授人以鱼。
2011-10-08 18:20
快速回复:Sele生成临时表后自动跳出来,却不能在表格里正常显示。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028764 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved