关于vfp的计算所得税代码 请高手帮我看看问题出在哪
yse=固定工资+浮动工资ifyse>0ifyse<=500sds=yse*0.05-0endififyse>500.and.yse<=2000sds=yse*0.10-...
yse=固定工资+浮动工资
if yse>0
if yse<=500
sds=yse*0.05-0
endif
if yse>500 .and. yse<=2000
sds=yse*0.10-25
endif
if yse>2000 .and. yse<=5000
sds=yse*0.15-125
endif
if yse>5000 .and. yse<=20000
sds=yse*0.20-375
endif
if yse>20000 .and. yse<=40000
sds=yse*0.25-1375
endif
if yse>40000 .and. yse<=60000
sds=yse*0.30-3375
endif
if yse>60000 .and. yse<=80000
sds=yse*0.35-6375
endif
if yse>80000 .and. yse<=100000
sds=yse*0.40-10375
endif
if yse>100000
sds=yse*0.45-15375
endif
skip
repl all 扣缴工资 with sds
repl all 实发工资总额 with 固定工资+浮动工资-扣缴工资
else
repl 扣缴工资 with 0
endif
thisform.refresh
以上是我写的一个代码 这是放在一个表单的按钮上的 一点这个按钮就会自动计算
但是现在的问题是 计算之后所有人的所得税显示的数字都是第一个人的 就是不能自动将指针跳转 也不知道skip命令怎么用 请懂行的朋友指点一二~~ 展开
if yse>0
if yse<=500
sds=yse*0.05-0
endif
if yse>500 .and. yse<=2000
sds=yse*0.10-25
endif
if yse>2000 .and. yse<=5000
sds=yse*0.15-125
endif
if yse>5000 .and. yse<=20000
sds=yse*0.20-375
endif
if yse>20000 .and. yse<=40000
sds=yse*0.25-1375
endif
if yse>40000 .and. yse<=60000
sds=yse*0.30-3375
endif
if yse>60000 .and. yse<=80000
sds=yse*0.35-6375
endif
if yse>80000 .and. yse<=100000
sds=yse*0.40-10375
endif
if yse>100000
sds=yse*0.45-15375
endif
skip
repl all 扣缴工资 with sds
repl all 实发工资总额 with 固定工资+浮动工资-扣缴工资
else
repl 扣缴工资 with 0
endif
thisform.refresh
以上是我写的一个代码 这是放在一个表单的按钮上的 一点这个按钮就会自动计算
但是现在的问题是 计算之后所有人的所得税显示的数字都是第一个人的 就是不能自动将指针跳转 也不知道skip命令怎么用 请懂行的朋友指点一二~~ 展开
1个回答
展开全部
go top
scan
yse=固定工资+浮动工资
if yse>0
if yse<=500
sds=yse*0.05-0
endif
if yse>500 .and. yse<=2000
sds=yse*0.10-25
endif
if yse>2000 .and. yse<=5000
sds=yse*0.15-125
endif
if yse>5000 .and. yse<=20000
sds=yse*0.20-375
endif
if yse>20000 .and. yse<=40000
sds=yse*0.25-1375
endif
if yse>40000 .and. yse<=60000
sds=yse*0.30-3375
endif
if yse>60000 .and. yse<=80000
sds=yse*0.35-6375
endif
if yse>80000 .and. yse<=100000
sds=yse*0.40-10375
endif
if yse>100000
sds=yse*0.45-15375
endif
repl 扣缴工资 with sds
repl 实发工资总额 with 固定工资+浮动工资-扣缴工资
else
repl 扣缴工资 with 0
endif
endscan
thisform.refresh
用SCAN...ENDSCAN循环,自动历遍所有数据。就不用skip了
你的repl代码错了
repl all 扣缴工资 with sds
就是把所有数据替换成一样的了。
把all去了,替换但前记录。
scan
yse=固定工资+浮动工资
if yse>0
if yse<=500
sds=yse*0.05-0
endif
if yse>500 .and. yse<=2000
sds=yse*0.10-25
endif
if yse>2000 .and. yse<=5000
sds=yse*0.15-125
endif
if yse>5000 .and. yse<=20000
sds=yse*0.20-375
endif
if yse>20000 .and. yse<=40000
sds=yse*0.25-1375
endif
if yse>40000 .and. yse<=60000
sds=yse*0.30-3375
endif
if yse>60000 .and. yse<=80000
sds=yse*0.35-6375
endif
if yse>80000 .and. yse<=100000
sds=yse*0.40-10375
endif
if yse>100000
sds=yse*0.45-15375
endif
repl 扣缴工资 with sds
repl 实发工资总额 with 固定工资+浮动工资-扣缴工资
else
repl 扣缴工资 with 0
endif
endscan
thisform.refresh
用SCAN...ENDSCAN循环,自动历遍所有数据。就不用skip了
你的repl代码错了
repl all 扣缴工资 with sds
就是把所有数据替换成一样的了。
把all去了,替换但前记录。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询