问计算机二级关于vf表单的问题
发布网友
发布时间:2024-10-13 18:11
我来回答
共1个回答
热心网友
时间:2024-11-23 20:37
这说明你的查询语句没有查到任何数据,数组没有生成,这时系统把TMP(1)当作引用名叫TMP的函数参数是1,没有定义这程序就报错了。
改为:
SELECT P_t.姓名, P_t.年龄, P_t.性别, P_t.家庭地址;
FROM frdb!p_t;
where P_t.户主编号=alltrim(ThisForm.Text1.value);
into array tmp
if _tally=0
messagebox('没有找到用户。',48,'错误')
else
ThisForm.Text2.value=tmp(1)
ThisForm.Text3.value=tmp(2)
ThisForm.Text4.value=tmp(3)
ThisForm.Text5.value=tmp(4)
endif
说明:_tally是系统内存变量,包含最近执行的表命令处理过的记录数目。就是最近的这个查询得到记录数,如果是0没有符合条件的数据就提示,有结果才显示到文本框
****************
你先打开表看一下有什么数据,按照现有数据查询一下看,注意字段是字符型的,如果有前导零也要填上。或者直接把ThisForm.Text1.value替换成现有值,在命令窗口运行一下,看能有结果吗?如果有就是Text1的属性设置有问题
****************
这样找问题太难了,要不你把相关文件发过来我看看。