标题:如何由表文件T1.DBF生成表文件T2.DBF
只看楼主
王咸美
Rank: 1
等 级:新手上路
帖 子:569
专家分:0
注 册:2018-1-4
结帖率:96.99%
已结贴  问题点数:20 回复次数:11 
如何由表文件T1.DBF生成表文件T2.DBF
如何由表文件T1.DBF生成表文件T2.DBF,请各位高手赐教,万分感谢!!!
t1.rar (144.48 KB)



搜索更多相关主题的帖子: 生成 DBF 文件 
2021-03-13 08:33
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:18 

程序代码:
SELECT DISTINCT "   " xh,xm,SPACE(240) kmnr, 0000 zks FROM t1 INTO CURSOR t2 READWRITE 
SELECT t2
INDEX on xm TAG XM
SELECT t1
SET RELATION TO xm INTO "t2"
REPLACE ALL t2.xh   WITH PADL(RECNO("t2"),3,"0"),;
            t2.kmnr WITH t2.kmnr-t1.nj-t1.bj-t1.km-",",;
            t2.zks  WITH t2.zks+t1.ks
SET RELATION TO 
SELECT t2 
REPLACE ALL kmnr WITH kmnr-"计"-TRANSFORM(zks)-"节"
SELECT * FROM t2
2021-03-13 09:43
王咸美
Rank: 1
等 级:新手上路
帖 子:569
专家分:0
注 册:2018-1-4
得分:0 
@吹水佬 非常感谢!!!能否做到按T1.DBF表中xm出现的先后顺序生成T2.dbf,不按姓氏拼音顺序排列,望赐教!
2021-03-13 10:02
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:2 
回复 楼主 王咸美
也可以参考:https://bbs.bccn.net/thread-504858-1-2.html 10楼的代码

坚守VFP最后的阵地
2021-03-13 10:13
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
以下是引用王咸美在2021-3-13 10:02:40的发言:

@吹水佬 非常感谢!!!能否做到按T1.DBF表中xm出现的先后顺序生成T2.dbf,不按姓氏拼音顺序排列,望赐教!

那就按顺序逐个添加到T2


程序代码:
USE t1 IN 0
USE t2 IN 0
SELECT t2
ZAP
INDEX on xm TAG XM
SELECT t1
SET RELATION TO xm INTO "t2"
SCAN
    IF !FOUND("t2")
        INSERT INTO t2 (xm) VALUES (t1.xm)
    ENDIF
    REPLACE t2.xh   WITH PADL(RECNO("t2"),3,"0"),;
            t2.kmnr WITH t2.kmnr-t1.nj-t1.bj-t1.km-",",;
            t2.zks  WITH t2.zks+t1.ks
ENDSCAN
SET RELATION TO 
SELECT t2 
DELETE TAG ALL 
REPLACE ALL kmnr WITH kmnr-"计"-TRANSFORM(zks)-"节"
SELECT * FROM t2
2021-03-13 10:40
王咸美
Rank: 1
等 级:新手上路
帖 子:569
专家分:0
注 册:2018-1-4
得分:0 
@吹水佬 非常感谢!!!问题完美解决。
2021-03-13 12:48
schtg
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:https://t.me/pump_upp
等 级:贵宾
威 望:67
帖 子:1355
专家分:2534
注 册:2012-2-29
得分:0 
@吹水佬、sdta,感谢!学习啦!
2021-03-13 17:22
suseek
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2015-2-28
得分:0 
你好,程序里的短横线是用来连接字段的内容吗?
“REPLACE t2.kmnr WITH t2.kmnr-t1.nj-t1.bj-t1.km-","”
附原程序:
SELECT DISTINCT "   " xh,xm,SPACE(240) kmnr, 0000 zks FROM t1 INTO CURSOR t2 READWRITE
SELECT t2
INDEX on xm TAG XM
SELECT t1
SET RELATION TO xm INTO "t2"
REPLACE ALL t2.xh   WITH PADL(RECNO("t2"),3,"0"),;
        t2.kmnr WITH t2.kmnr-t1.nj-t1.bj-t1.km-",",;
            t2.zks  WITH t2.zks+t1.ks
SET RELATION TO
SELECT t2
REPLACE ALL kmnr WITH kmnr-"计"-TRANSFORM(zks)-"节"
SELECT * FROM t2
2021-11-26 11:38
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
回复 8楼 suseek
试试就清楚
? "ABCD   " + "EFGH"
? "ABCD   " - "EFGH"
2021-11-26 11:57
suseek
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2015-2-28
得分:0 
回复 9楼 吹水佬
老师,既然都是连接字符串,为什么替换为“+”得不到需要的结果,“-”在帮助文档查不到
2021-11-26 14:06



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-505104-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.402904 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved