当前位置: 代码迷 >> VFP >> ,关于PACK命令的使用
  详细解决方案

,关于PACK命令的使用

热度:5405   发布时间:2013-02-26 00:00:00.0
求助,关于PACK命令的使用。
各位,求助关于PACK命名的使用。代码如下:

if   this.parent.parent.xiweilist.listcount <1
    messagebox( "没有可以删除的项 ",48, "TAMCC软件 ")
    this.parent.cmdnew.setfocus
    return
    endif

bsel=.f.
nsel=-1

for   ncnt=1   to   this.parent.parent.xiweilist.listcount
  if   this.parent.parent.xiweilist.selected(ncnt)
    bsel=.t.
    nsel=ncnt
    exit
  endif
endfor

if   bsel=.f.
  messagebox( "请选择要删除的列表项 ",48, "TAMCC软件 ")
  this.parent.parent.xiweilist.setfocus
  return
endif
itemname=this.parent.parent.xiweilist.list(nsel)

*rnum=-1
*select   shiti
*count   for   席位名称=itemname   to   rnum
*if   rnum> 0
*messagebox( "有试题使用该选项 ",48, "TAMCC软件 ")
*return
*endif

yn=messagebox( "是否要删除列表项 "+chr(13)+itemname,4+32, "TAMCC软件 ")
if   yn=6

delete   from   xiwei   where   席位名称=itemname
select   xiwei
pack

this.parent.parent.xiweilist.removeitem(nsel)
endif

thisform.refresh

问题是,当删除数据时,报错说“文件已经在另一个工作区使用”,如果把PACK命名去除,那么提示没有,不过不能实现物理删除!求助!

------解决方案--------------------------------------------------------
使用 PACK 命令之前,必须先以独占方式打开表。
------解决方案--------------------------------------------------------
试用以下方法:
close table all
use 表 excl
pack



THISFORM.DATAENVIRONMENT.CLOSETABLES()
use 表 excl
pack
use
THISFORM.DATAENVIRONMENT.OPENTABLES()
  相关解决方案