主题:有关表单的制作问题
lqhgxl
[专家分:0] 发布于 2010-06-15 12:23:00
本人用vfp9.0制作一个带有文本框和复选框的表单,主要用于记录的查询,用SELECT...FROM...WHERE语句,但WHERE子句的筛选条件只能是一个要不文本框、要不是复选框,不能实现两个条件同时查询,不知哪里有问题,请老师们帮帮忙 谢谢!!!
回复列表 (共9个回复)
沙发
sywzs [专家分:5650] 发布于 2010-06-15 15:01:00
不把你的命令语句贴出来,怎知道是哪里错了?
板凳
lqhgxl [专家分:0] 发布于 2010-06-15 16:02:00
THISFORM.表格1.RecordSource ='select jldj1.djbh as"电机编号",jldj1.sbmc as"设备名称",jldj1.djxh as"电机型号",jldj1.rl_kw as"功率KW",jldj1.zs_rm as"转速",jldj1.dl_a as"电流A" from jldj1 ;
where jldj1.djbh=ALLTRIM(UPPER(thisform.文本框1.Value)) AND jldj1.rl_kw=VAL(ALLTRIM(thisform.组合框1.Value)) into cursor temptable1'
3 楼
lqhgxl [专家分:0] 发布于 2010-06-15 16:08:00
本人在表单中设了一个表格,利用文本框和复选框的查询条件在表格中显示查询结果。
4 楼
sywzs [专家分:5650] 发布于 2010-06-16 05:19:00
1、 AS 后面要有空格,或者可以不写 AS
2、 "电机编号"等不要加引号
3、 thisform.组合框1.Value 改为 thisform.组合框1.DisplayValue
5 楼
lqhgxl [专家分:0] 发布于 2010-06-16 10:27:00
THISFORM.表格1.RecordSource ='select jldj1.djbh as 电机编号,jldj1.sbmc as 设备名称,jldj1.djxh as 电机型号,jldj1.rl_kw as 功率KW,jldj1.zs_rm as 转速,jldj1.dl_a as 电流A from jldj1 where jldj1.djbh=ALLTRIM(UPPER(thisform.文本框1.displayValue)) AND jldj1.rl_kw=VAL(ALLTRIM(thisform.组合框1.displayValue)) into cursor temptable1' 不知怎么还有“命令中含有不能识别的短语或关键字”的提示框,请楼上的老师帮帮忙!!
6 楼
lqhgxl [专家分:0] 发布于 2010-06-16 10:38:00
修改后的语句仍有提示框,但是如果把AND和后面的条件语句去掉就不会有提示框,也就是说查询语句的筛选条件只能有一个否则就会有提示框。下面是修改后的语句
THISFORM.表格1.RecordSource ='select jldj1.djbh as 电机编号,jldj1.sbmc as 设备名称,jldj1.djxh as 电机型号,jldj1.rl_kw as 功率KW,jldj1.zs_rm as 转速,jldj1.dl_a as 电流A from jldj11 where jldj1.djbh=ALLTRIM(UPPER(thisform.文本框1.displayValue)) AND jldj1.rl_kw=VAL(ALLTRIM(thisform.组合框1.displayValue)) into cursor temptable1'
7 楼
sywzs [专家分:5650] 发布于 2010-06-17 04:16:00
select djbh 电机编号,sbmc 设备名称,djxh 电机型号,rl_kw 功率KW,zs_rm 转速,dl_a 电流A from jldj1 where djbh=ALLTRIM(UPPER(thisform.文本框1.text)) AND rl_kw=VAL(ALLTRIM(thisform.组合框1.displayValue)) into cursor temptable1
THISFORM.表格1.RecordSource = temptable1
djbh 字段必须是字符型,rl_kw 字段必须是数值型。
8 楼
lqhgxl [专家分:0] 发布于 2010-06-17 07:05:00
谢谢楼上的老师!!昨晚我在做其它程序时偶尔发现可能是语句太长造成的,用n=val(alltrim(thisform.组合框1.value)) , m=alltrim(uuper(thisform.文本框1.text)) 改写上面的
jldj1.djbh=m jldj1.rl_kw=n 语句后就没有提示框程序运行正常。
9 楼
moke9 [专家分:30] 发布于 2010-09-02 10:06:00
你好.我是全职网赚工作者.
如果你有时间有电脑.
想在网络上创业.请联系我..
项目绝对真实.详情QQ空间资料
加盟请联系 QQ908889846
2010年,中国网民突破了4亿,网络游戏玩家超过了3亿,
互联网即将进入全民网游的时代
我来回复