VFP中“文件正在使用”错误
我建了一个表"药品明细",其中有个字段是日期型的想通过在一个组合框中输入日期来查询整行记录代码如下thisform.combo1.setfocus()isempty=al...
我建了一个表"药品明细",其中有个字段是日期型的
想通过在一个组合框中输入日期来查询整行记录 代码如下
thisform.combo1.setfocus()
isempty=allt(thisform.combo1.value)
if isempty==''
=messagebox("请输入您要查询的日期!",64,"提示窗口")
else
use 动态报表设计\药品明细.dbf
locate for 药品明细.日期=isempty
if found()
select 药品明细.日期,药品明细.型号,;
药品明细.药品名称,药品明细.类别 from 青海明胶公司药品数据库!药品明细 药品明细;
where(药品明细.日期=isempty);
order by 药品明细.日期
go top
thisform.combo1.value=''
thisform.combo1.setfocus()
isempty=allt(thisform.combo1.value)
else
=messagebox("查询不到结果!",64,"提示窗口")
thisform.combo1.value=''
thisform.combo1.setfocus()
isempty=allt(thisform.combo1.value)
endif
endif
但每当输入日期按确定后,输出指定内容,但是想查询第二次的时候就会弹出“文件正在使用”的告警框, 好迷茫啊....
小女这是第一次用VFP作毕业设计,急需大家的帮助!!小女在此谢谢各位大侠拉:)
很感谢你!不过我试了一下,在表单的load事件中写入:use 动态报表设计\药品明细.dbf in 0 alias 药品明细 语句后表单不能运行了,直接弹出“文件正在使用”的告警框,还是很迷茫。。。。求教进一步解答:) 展开
想通过在一个组合框中输入日期来查询整行记录 代码如下
thisform.combo1.setfocus()
isempty=allt(thisform.combo1.value)
if isempty==''
=messagebox("请输入您要查询的日期!",64,"提示窗口")
else
use 动态报表设计\药品明细.dbf
locate for 药品明细.日期=isempty
if found()
select 药品明细.日期,药品明细.型号,;
药品明细.药品名称,药品明细.类别 from 青海明胶公司药品数据库!药品明细 药品明细;
where(药品明细.日期=isempty);
order by 药品明细.日期
go top
thisform.combo1.value=''
thisform.combo1.setfocus()
isempty=allt(thisform.combo1.value)
else
=messagebox("查询不到结果!",64,"提示窗口")
thisform.combo1.value=''
thisform.combo1.setfocus()
isempty=allt(thisform.combo1.value)
endif
endif
但每当输入日期按确定后,输出指定内容,但是想查询第二次的时候就会弹出“文件正在使用”的告警框, 好迷茫啊....
小女这是第一次用VFP作毕业设计,急需大家的帮助!!小女在此谢谢各位大侠拉:)
很感谢你!不过我试了一下,在表单的load事件中写入:use 动态报表设计\药品明细.dbf in 0 alias 药品明细 语句后表单不能运行了,直接弹出“文件正在使用”的告警框,还是很迷茫。。。。求教进一步解答:) 展开
5个回答
展开全部
问题很简单:use 动态报表设计\药品明细.dbf之前要判断药品明细.dbf是否已经打开。
如未打开,则利用USE命令打开,如已经打开,利用SELECT命令选择即可。
if !used("药品明细")
use 药品明细 in 0
endif
select 药品明细
locate for 药品明细.日期=isempty
if found()
......以下代码略。
load事件就不用改了。
如未打开,则利用USE命令打开,如已经打开,利用SELECT命令选择即可。
if !used("药品明细")
use 药品明细 in 0
endif
select 药品明细
locate for 药品明细.日期=isempty
if found()
......以下代码略。
load事件就不用改了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把:use 动态报表设计\药品明细.dbf :这句拿到最前边。即应该在在表单的load事件中写入:use 动态报表设计\药品明细.dbf in 0 alias 药品明细
在你写use 动态报表设计\药品明细.dbf 的地方改为 sele 药品明细
在你写use 动态报表设计\药品明细.dbf 的地方改为 sele 药品明细
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
将use 动态报表设计\药品明细.dbf
改为:
if not used('药品明细')
use 动态报表设计\药品明细.dbf in 0
endif
select 药品明细
改为:
if not used('药品明细')
use 动态报表设计\药品明细.dbf in 0
endif
select 药品明细
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sort
to
表2
on
z
/d
这命令的执行会建立表2,所以,如果表2之前已经建立并已被打开,则执行该命令时就会出现“文件正在使用”
如果你非要把排序结果放到已建好的表2中,你可以这样:
sele
表1
sort
to
表3
on
z
/d
sele
表2
appe
from
表3
to
表2
on
z
/d
这命令的执行会建立表2,所以,如果表2之前已经建立并已被打开,则执行该命令时就会出现“文件正在使用”
如果你非要把排序结果放到已建好的表2中,你可以这样:
sele
表1
sort
to
表3
on
z
/d
sele
表2
appe
from
表3
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询