标题:程序出错,illegal redefinition of variable ***,求助大家!
取消只看楼主
oogami
Rank: 2
等 级:论坛游民
帖 子:62
专家分:16
注 册:2013-1-29
结帖率:75%
已结贴  问题点数:20 回复次数:6 
程序出错,illegal redefinition of variable ***,求助大家!
本人菜鸟,请教大家下,程序跑到下面一段就会出错,错的地方用红色标出了,能不能请大家帮忙看看怎么错了?

另外,这个程序我每个月都要跑,跑了好几个月了都没事,就今天出错了,程序也没改过,是不是哪里出毛病了,求大家帮着看看,谢谢!!!


 CASE 产品状态="G"        &&退保终止
            SEEK ALLTRIM(个险长险再保信息.保单编号)+SPACE(1)+ALLTRIM(个险长险再保信息.产品代码) ORDER tag 保单 IN 个险长险再保保全变更记录
            IF 个险长险再保保全变更记录.产品状态="D"
                REPLACE 再保险费退费 WITH 0
                REPLACE 再保佣金退费 WITH 0
            ELSE
                DO p1_date
                REPLACE 再保险费退费 WITH 再保险费*(1-LapsedYear)
                REPLACE 再保佣金退费 WITH 再保佣金*(1-LapsedYear)
            ENDIF
        CASE 产品状态="I"                        &&犹豫期退保
            REPLACE 再保险费退费 WITH 再保险费
            REPLACE 再保佣金退费 WITH 再保佣金
        CASE 产品状态="H"                        &&复效
            PUBLIC PolYear   !!!!!!!!!!!!!!!!!!!!!!跑到这里出错!!!!!!!!
            SEEK ALLTRIM(个险长险再保信息.保单编号)+SPACE(1)+ALLTRIM(个险长险再保信息.产品代码) ORDER tag 保单 IN 个险长险再保保全变更记录
               
            DO CASE
                CASE 保单年度 - 个险长险再保保全变更记录.保单年度 = 0
                    REPLACE 再保险费退费 WITH -个险长险再保保全变更记录.再保险费退费
                    REPLACE 再保佣金退费 WITH -个险长险再保保全变更记录.再保佣金退费
                CASE 保单年度 - 个险长险再保保全变更记录.保单年度 = 1
                    IF 再保日期=GOMONTH(生效日,(保单年度-1)*12)            &&在评估当月且再保日期前复效
                        REPLACE 再保险费退费 WITH -个险长险再保保全变更记录.再保险费退费
                        REPLACE 再保佣金退费 WITH -个险长险再保保全变更记录.再保佣金退费
                    ELSE
                        PolYear=保单年度
                        DO p2_复效
                        REPLACE 再保险费退费 WITH -个险长险再保保全变更记录.再保险费退费-再保险费
                        REPLACE 再保佣金退费 WITH -个险长险再保保全变更记录.再保佣金退费-再保佣金
                    ENDIF
搜索更多相关主题的帖子: 保险费 产品 记录 信息 
2013-03-04 20:19
oogami
Rank: 2
等 级:论坛游民
帖 子:62
专家分:16
注 册:2013-1-29
得分:0 
回复 2楼 TonyDeng
请问应该在哪里声明?请指点下不好意思。
偶属于赶鸭子上架,没学过vfp就来调试程序了,之前同事走了……杯具
2013-03-04 20:35
oogami
Rank: 2
等 级:论坛游民
帖 子:62
专家分:16
注 册:2013-1-29
得分:0 
回复 5楼 TonyDeng
我刚刚试过把这句剪切掉放到了程序几乎最开始的地方,还是会出同样的错误。
您的意思是不是,这个变量不是针对一个prg文件而言的,只要在其中某一个prg声明过,以后的prg都可以用了?
我每个月要跑差不多70个程序,是不是之前的prg里面声明过了,而这里就像您所说进入了某一个分支,所以报错了?

另外,请您帮忙看看,如果要改正,能不能像4楼兄弟那样说的改,谢谢啦!
2013-03-04 20:46
oogami
Rank: 2
等 级:论坛游民
帖 子:62
专家分:16
注 册:2013-1-29
得分:0 
回复 5楼 TonyDeng
?"6.05个险长险保全变更"
??TIME()
****************6.05个险长险保全变更****************
SET TALK OFF
SET DELETED ON
CLOSE TABLES ALL

RESTORE FROM  f:\评估\VFP\MyVar.MEM ADDITIVE
PUBLIC PolYear


USE f:\评估\VFP\个险长险再保信息.dbf IN 0 ALIAS 个险长险再保信息
USE f:\评估\VFP\个险长险再保保全变更记录.dbf IN 0 ALIAS 个险长险再保保全变更记录
USE f:\评估\VFP\准备金因子.dbf IN 0 ALIAS 准备金因子
USE f:\评估\VFP\生存金因子.dbf IN 0 ALIAS 生存金因子
USE f:\评估\VFP\个险长险重疾费率_25种提前给付.dbf IN 0 ALIAS 个险长险重疾费率_25种提前给付
USE f:\评估\VFP\个险长险重疾费率_25种提前给付2012.dbf IN 0 ALIAS 个险长险重疾费率_25种提前给付2012
USE f:\评估\VFP\个险长险重疾费率_25种额外给付.dbf IN 0 ALIAS 个险长险重疾费率_25种额外给付
USE f:\评估\VFP\个险长险重疾费率_25种额外给付2012.dbf IN 0 ALIAS 个险长险重疾费率_25种额外给付2012
USE f:\评估\VFP\个险长险寿险费率.dbf IN 0 ALIAS 个险长险寿险费率
USE f:\评估\VFP\个险长险寿险费率2012.dbf IN 0 ALIAS 个险长险寿险费率2012
USE f:\评估\VFP\账户型.dbf IN 0 ALIAS 账户型
USE f:\评估\VFP\个险长险寿险新费率.dbf IN 0 ALIAS 个险长险寿险新费率
USE f:\评估\VFP\产品信息表.dbf IN 0 ALIAS 产品信息表





您看下,我就是放到这里,它还会报错,也是那个错误
2013-03-04 20:49
oogami
Rank: 2
等 级:论坛游民
帖 子:62
专家分:16
注 册:2013-1-29
得分:0 
回复 11楼 TonyDeng
老师,我又看了下程序,您前面说过“这是在整个系统中存在的,不要在多个PRG中同时有这种语句”
刚才的那个变量只是全局变量的一个,在程序的其他地方,也有一些这样的变量,但是其他的都没有报错(不是case语句,是一定要运行的)
那么我想了一下是不是vfp自身设置的问题,比如我操作的时候无意间哪个选项勾上了什么的。
2013-03-04 21:05
oogami
Rank: 2
等 级:论坛游民
帖 子:62
专家分:16
注 册:2013-1-29
得分:0 
回复 12楼 tlliqi
注释掉会出现其他的错误,杯具啊
2013-03-04 21:09
oogami
Rank: 2
等 级:论坛游民
帖 子:62
专家分:16
注 册:2013-1-29
得分:0 
回复 16楼 TonyDeng
好的,谢谢。
我就是比较担心如果赋值以后会不会错掉。
我打算今天先去掉跑着(已经测试过可以跑),明天重跑一遍上个月与之前的对照下有没有不一样,如果都一样就这样干了。


谢谢大家陪我到这么晚,以后VFP有地方问了,哈哈哈!
2013-03-04 21:32



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




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

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