a.dbf结构是一样的,如何用程序自动搜索aaa文件夹下的子文件夹(如上面的zjk,td,dh,tr等)下的a.dbf库记录都合并到aaa\a.dbf里

xwt799023 2009-12-16 12:25:58
a.dbf结构是一样的,如何用程序自动搜索aaa文件夹下的子文件夹(如上面的zjk,td,dh,tr等)下的a.dbf库记录都合并到aaa目录下的a.dbf(aaa\a.dbf)里
aaa\zjk\a.dbf ,
aaa\td\a.dbf,
aaa\dh\a.dbf,
aaa\tr\a.dbf,

aaa\a.dbf合并后的库存放目录

...全文
245 点赞 收藏 41
写回复
41 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
xuzuning 2009-12-17
USE aaa\a.dbf
p = 'aaa\'
ADIR(ar, p + '*.*', 'D')
FOR i=1 TO ALEN(ar, 1)
IF 'D' $ ar[i, 5]
ADIR(tmp, p + ar[i,1] + '\a.dbf')
FOR j=1 TO ALEN(tmp, 1)
APPEND FROM (p + ar[i,1] + '\a.dbf')
NEXT
ENDIF
NEXT
回复
xwt799023 2009-12-17
好的,多谢
回复
WWWWA 2009-12-17
下班了,下午再看看,你也可以测试一下
是存在DD。DBF中了
你可以修改一下

FF1='SELECT *'+LEFT(FF,LEN(FF)-19)+' into curs dd
use d:\temp\2009srtz.dbf
zap
appe from dbf('dd')

or

sele dd
copy to d:\temp\2009srtz.dbf
回复
xwt799023 2009-12-17
是c:\dtgj 要不把结存入到c:\dtgj\dbf\下的2009srtz.dbf里也行,如何做呢
回复
WWWWA 2009-12-17
wait wind SYS(5)+SYS(2003)
结果是什么
回复
xwt799023 2009-12-17
不写死也行,关键是要存在名字为2009srtz.dbf,而运行你说的存成了.dbf了,并没有存在2009srtz.dbf名
回复
WWWWA 2009-12-17
[Quote=引用 29 楼 xwt799023 的回复:]
我想存到d:\temp\2009srtz.dbf里
[/Quote]
是绝对目录即将路径写死?
回复
xwt799023 2009-12-17
我想存到d:\temp\2009srtz.dbf里
回复
WWWWA 2009-12-17
当前目录?
FF1='SELECT *'+LEFT(FF,LEN(FF)-19)+' into dbf '+SYS(5)+SYS(2003)+ '\dd '
回复
xwt799023 2009-12-17
可以运行了,能查出来,但没有存到目录下的文件里??下面该如何做呢?多谢~~
回复
WWWWA 2009-12-17
[Quote=引用 24 楼 xwt799023 的回复:]
版主,是运行不了吧
[/Quote]
NO,是有一个问题,要用objFolder.path,非objFolder.name
回复
WWWWA 2009-12-17
测试通过
CLICK:
SET PROCEDURE TO R:\TEMP\vfp\form\ddd
PUBLIC FF AS Character
FF=""
DO MyProc1 WITH "r:\"
FF1='SELECT *'+LEFT(FF,LEN(FF)-19)+' into curs dd'
_CLIPTEXT =FF1
&FF1
brow

DDD:
PROCEDURE MyProc1
LPARAMETERS Folder
fso=CREATEOBJECT("Scripting.FileSystemObject")
objFolder = fso.GetFolder(Folder)
For Each objFile In objFolder.Files
IF RIGHT(UPPER(objFile.NAME),3)='DBF'
FF = FF + ' FROM "'+objFolder.path+'\'+objFile.NAME+'" UNION ALL SELECT * '
ENDIF
Next
For Each objFolder In objFolder.SubFolders
DO MyProc1 WITH objFolder
NEXT
ENDPROC

呵呵,纠正了一个错误
回复
xwt799023 2009-12-17
版主,是运行不了吧
回复
xwt799023 2009-12-17
老兄,你有msn号吗?可否提供一下,多谢
回复
xwt799023 2009-12-17
上传了
行 文件名 体积 日期 上传人 描述
1 vfp.rar 6.07 KB 2009-12-17 9:45:00 未知
回复
WWWWA 2009-12-17
上传你的表单、DBF到www.access911.net/csdn
,用WINRAR压缩
回复
xwt799023 2009-12-17
运行到&FF1 时报一个错command is missing required clause
回复
WWWWA 2009-12-17
modi comm ddd
复制
PROCEDURE MyProc1
LPARAMETERS Folder
fso=CREATEOBJECT("Scripting.FileSystemObject")
objFolder = fso.GetFolder(Folder)
*k = k + objFolder.Files.Count
For Each objFile In objFolder.Files
IF RIGHT(objFile.NAME,3)='DBF'
FF = FF + ' FROM "R:\TEMP\'+objFolder.NAME+'\'+objFile.NAME+'" UNION ALL SELECT * '
ENDIF
Next
For Each objFolder In objFolder.SubFolders
DO MyProc1 WITH objFolder
NEXT
ENDPROC

然后存盘
回复
xwt799023 2009-12-17
傲,那没有,怎么生成呀,我还不会呢,见笑了
回复
WWWWA 2009-12-17
dddd.PRG是个单独的PRG文件,你生成没有?
回复
加载更多回复
相关推荐
发帖
VFP
创建于2007-09-28

2478

社区成员

VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
申请成为版主
帖子事件
创建了帖子
2009-12-16 12:25
社区公告
暂无公告