用vfp向excel写数据,采用了临时表,为什么在select时,找不到该表

calljia 2003-04-22 02:13:32
我用select ... into curs tempf
现遍历该所得记录,写入excel,这步成功
接着对别的表操作,同样也用了into curs 产生临时表,成功
但当我想对tempf进行第二次遍历时,出错,提示找不到该表,请各位老大解惑,谢谢。
...全文
90 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
marki 2003-04-22
  • 打赏
  • 举报
回复
拜托在打開每個表時加上這一句,
SELECT 0
或者
USE 表 IN 0
你打開別的表時把tempitem關閉了

還 有,
gtfile是唋東東~
calljia 2003-04-22
  • 打赏
  • 举报
回复
谢谢各位
zhongyj 2003-04-22
  • 打赏
  • 举报
回复
執行use命令之前加上
Select 0
xiolig 2003-04-22
  • 打赏
  • 举报
回复
问题可能出在此句:
use >file alias tempf
在当前工作区中打开另一个表
原临时表自动关闭并自动删除
calljia 2003-04-22
  • 打赏
  • 举报
回复
if smonth<>1 and smonth<>7 then
select * from hz_w_c where ... into curs tempitem
else
select * from hz_w_c into curs tempitem
itemnum=28
endif

SELECT tempitem
R=2
C=5
GOTO TOP
MYEXCEL.ACTIVEWORKBOOK.SHEETS(1).CELLS(2,1).VALUE='***'
MYEXCEL.ACTIVEWORKBOOK.SHEETS(1).CELLS(2,2).VALUE='***'
MYEXCEL.ACTIVEWORKBOOK.SHEETS(1).CELLS(2,3).VALUE='***'
MYEXCEL.ACTIVEWORKBOOK.SHEETS(1).CELLS(2,4).VALUE='***'
FOR I=1 TO itemnum
MYEXCEL.ACTIVEWORKBOOK.SHEETS(1).CELLS(R,C).VALUE= tempitem.citem
if C<=w_num+5 then
MYEXCEL.ACTIVEWORKBOOK.SHEETS(1).CELLS(C-3,1).VALUE='*****'
MYEXCEL.ACTIVEWORKBOOK.SHEETS(1).CELLS(C-3,3).VALUE='*****'
endif
C=C+1
ENDFOR

thisform.text3.value= "正在转换:"+gtfile
use >file alias tempf
select tempf.* from tempf,hz_w where tempf.ye=syear and tempf.mon=smonth and tempf.rsname=hz_w.rsname into curs temp1

sele hz_w
select rsname from hz_w into curs tempn
go top
for K=1 to w_num
select temp1
select tempitem
*到了这一步,出错,提示找不到别名'tempitem'
......
zhongyj 2003-04-22
  • 打赏
  • 举报
回复
把代碼貼出來
calljia 2003-04-22
  • 打赏
  • 举报
回复
zhongyj():yanghuanji(yanghuanji):
谢谢两位,可是我看来看去都没有关闭表的语句,难道新产生临时表会关闭原临时表么?

---我很菜,清多多包涵。

yanghuanji 2003-04-22
  • 打赏
  • 举报
回复
这种情况应该是关闭了这个表
zhongyj 2003-04-22
  • 打赏
  • 举报
回复
可能是你在對其它表進行操作時,關閉了tempf

2,749

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧