1、vfp6下cursor 表是不可更新的
2、你的代码中有了:
seek getpname
if found()
为什么还要下面这句:
select * from personnel where pname=getpname into cursor ling
if found()
thisform.pageframe1.page3.enabled=.t.
thisform.pageframe1.page3.refresh
else
......
endif
更正
if thisform.pageframe1.page2.check3.value=1
exp1=" and pid=getpid"
endif
->
if thisform.pageframe1.page2.check3.value=1
exp1=" and pname=getpname"
endif
我幫你改一下
exp1=""
if thisform.pageframe1.page2.check1.value=1
exp1="pid=getpid"
endif
if thisform.pageframe1.page2.check3.value=1
exp1=" and pid=getpid"
endif
if left(exp1,5)=" and "
exp1=right(exp1,len(exp1)-5)
endif
if empty(exp1)
messagebox("请输入查询条件",48,"错误")
else
select * from personnel where &exp1 into cursor ling
if reccount()=0
messagebox("记录不存在",48,"注意")
else
thisform.pageframe1.page3.enabled=.t.
thisform.pageframe1.page3.refresh
endif
endif
我是在编译的时候VFP提示说不能更新临时表,我也不清楚那里错误,但是我的系统里只有这个查询用到了临时表,请问是不是要给这个表去掉只读属性呢?若是要,请问怎么样能办到?
getpid=allt(thisform.pageframe1.page2.text1.value)
getpname=allt(thisform.pageframe1.page2.text2.value)
flag1=thisform.pageframe1.page2.check1.value
flag2=thisform.pageframe1.page2.check3.value
if flag1=0 and flag2=0
messagebox("请输入查询条件",48,"错误")
endif
if flag1=1 and flag2=0
set order to pid
seek getpid
if found()
select * from personnel where pid=getpid into cursor ling
thisform.pageframe1.page3.enabled=.t.
thisform.pageframe1.page3.refresh
else
messagebox("记录不存在",48,"注意")
endif
endif
if flag1=0 and flag2=1
set order to pname
seek getpname
if found()
select * from personnel where pname=getpname into cursor ling
thisform.pageframe1.page3.enabled=.t.
thisform.pageframe1.page3.refresh
else
messagebox("记录不存在",48,"注意")
endif
endif
if flag1=1 and flag2=1
seek getpid
if personnel.pname=getpname
select * from personnel where pid=getpid and pname=getpname into cursor ling
thisform.pageframe1.page3.refresh
else
messagebox("记录不存在",48,"注意")
endif
endif