回 帖 发 新 帖 刷新版面

主题:如何在VFP的一个表中查找有无重号和漏号

[em1][em1][em1]跪求各位高手:现有一个表,表中有序列号,现要找出序列号有无重号和漏号,这个怎么编程啊?

回复列表 (共2个回复)

沙发

SELECT tmpRMB1
INDEX on 收据号 TAG ind收
GOTO TOP 
T_7=VAL(tmpRMB1.收据号)
DO WHILE !EOF()
    T_8=tmpRMB1.收据号
    T_9=VAL(T_8)-T_7
    DO CASE 
    CASE T_9=-1
        replace 备注 WITH "收据号重复"
        T_7=VAL(T_8)
    CASE T_9>5
            T_11=RECNO()
            INSERT INTO tmpRMB1 (收据号,备注);
            VALUES (RIGHT("0000000"+ALLTRIM(STR(T_7)),7),"缺号"+ALLTRIM(STR(T_9))+"份")
            GOTO T_11
            T_7=VAL(T_8)
    CASE T_9<=0
    OTHERWISE 
        T_11=RECNO()
        FOR T_10=0 TO T_9-1
            INSERT INTO tmpRMB1 (收据号,备注);
            VALUES (RIGHT("0000000"+ALLTRIM(STR(T_7+T_10)),7),"缺号")
        ENDFOR 
        GOTO T_11
        T_7=VAL(T_8)
    ENDCASE 
    T_7=T_7+1
    SKIP 1
ENDDO         

板凳

先按序列号排序 sort on (命令可能写错了常时间不用了)
a=序列号
skip
b=序列号
b-a>1漏号 
b-a=0重号

我来回复

您尚未登录,请登录后再回复。点此登录或注册