| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2466 人关注过本帖
标题:请教紧挨着二行比较问题
只看楼主 加入收藏
fdxxhjc
Rank: 1
等 级:新手上路
帖 子:305
专家分:0
注 册:2014-4-10
结帖率:73.44%
收藏
已结贴  问题点数:10 回复次数:15 
请教紧挨着二行比较问题
先生下午好,请教一个问题,我有一个很多行4列的原表.DBF,现要求从第一行开始与它下面紧挨着一行的第2、3、4列作比较(1、2二行作比较,2、3二行作比较,3、4二行作比较,直到文件末),若三列各同列相等,则在检查结果.DBF中写入这二行的第一列的内容,写了段代码,但没通过,请先生指点,谢谢,代码如下

CLEAR
SET SAFETY OFF
USE 检查结果 ALIAS 检查结果 IN 0
ZAP
USE 原表 ALIAS 原表 IN 0
SELECT 原表
GO 1
i = 0
DO WHILE !EOF("原表")   
    DIMENSION a原表[2, 4]
    COPY TO ARRAY a原表 FIELDS LIKE 列* NEXT 2
    i = i + 1   
    If a原表(i,2)=a原表(i+1,2) AND  a原表(i,3)=a原表(i+1,3) AND  a原表(i,4)=a原表(i+1,4) and LEFT(a原表(i,1),2) <> LEFT(a原表(i+1,1),2)   
     INSERT INTO 检查结果 VALUES ( a原表(i, 1),a原表(i+1, 1))
       ELSE
     ENDIF
ENDDO
SELECT 检查结果
GO TOP
BROWSE
CLOSE DATABASES ALL
RETURN
MESSAGEBOX('检验已结束!',64,'信息提示')
请教包.rar (1.75 MB)


[此贴子已经被作者于2016-3-15 15:47编辑过]

2016-03-15 15:25
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:0 
有没数据,有数据的话,比较好测试。
2016-03-15 15:32
fdxxhjc
Rank: 1
等 级:新手上路
帖 子:305
专家分:0
注 册:2014-4-10
收藏
得分:0 
回复 2楼 mywisdom88
有的
2016-03-15 15:42
fdxxhjc
Rank: 1
等 级:新手上路
帖 子:305
专家分:0
注 册:2014-4-10
收藏
得分:0 
回复 2楼 mywisdom88
先生已发附件了
2016-03-15 15:47
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
COPY TO ARRAY 会移动记录指针,要控制好。
2016-03-15 15:53
fdxxhjc
Rank: 1
等 级:新手上路
帖 子:305
专家分:0
注 册:2014-4-10
收藏
得分:0 
回复 5楼 吹水佬
我运行时这一行代码提示说下标超界
 If a原表(i,2)=a原表(i+1,2) AND  a原表(i,3)=a原表(i+1,3) AND  a原表(i,4)=a原表(i+1,4) and LEFT(a原表(i,1),2) <> LEFT(a原表(i+1,1),2)
2016-03-15 16:00
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
是不是这个样:
程序代码:
CREATE CURSOR tt (f1 I, f2 I, f3 I, f4 I)
FOR i = 1 TO 5
    INSERT INTO tt VALUES (i, i*2, i*3, i*4)
ENDFOR
SCAN
    COPY TO ARRAY aa NEXT 2
    ?aa[1, 1], aa[1, 2], aa[1, 3], aa[1, 4]
    ?aa[2, 1], aa[2, 2], aa[2, 3], aa[2, 4]
    ?
    IF RECNO() < RECCOUNT()
        SKIP -1
    ENDIF
ENDSCAN
2016-03-15 16:08
fdxxhjc
Rank: 1
等 级:新手上路
帖 子:305
专家分:0
注 册:2014-4-10
收藏
得分:0 
回复 7楼 吹水佬
先生不好意思,我看不懂您的指点,可否在我提问的代码中帮我修改,谢谢
2016-03-15 16:16
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
相邻两行是任意三列相同,还是后三列相同,楼主没有说清楚。

坚守VFP最后的阵地
2016-03-15 16:28
fdxxhjc
Rank: 1
等 级:新手上路
帖 子:305
专家分:0
注 册:2014-4-10
收藏
得分:0 
回复 9楼 sdta
是后三列(各自)上下比较相同并且第一列上下不同的则写入到检验结果表中否则不写入继续比对
2016-03-15 16:31
快速回复:请教紧挨着二行比较问题
数据加载中...
 
   



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

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