| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 785 人关注过本帖
标题:如何编程(VFP)计算补缴利息以及本息和?
取消只看楼主 加入收藏
thomasou
Rank: 1
等 级:新手上路
帖 子:67
专家分:3
注 册:2010-8-15
结帖率:30%
收藏
已结贴  问题点数:20 回复次数:3 
如何编程(VFP)计算补缴利息以及本息和?
请教各位高手,如何按照以下的规定,编程(VFP)计算补缴利息以及本息和?谢谢。

欠缴基本养老保险费的补缴利息以及本息和计算办法(月积数法)
  一、 个人帐户补记入部分金额的补缴利息,(设为C),分为跨年度补缴利息(设为C1)和非跨年度补缴利息(设为C2)两种情况。
  1. 跨年度补缴利息由三部分利息组成。
  第一部分:补缴欠缴年度当年的利息组成。
  第一部分:补缴欠缴年度当年的利息(设为C11)
  C11=欠缴年度当年欠缴额月积数×欠缴年度当年记帐月利率
  其中:
  欠缴年度当年欠缴额月积数=∑[n月欠缴额×(12-n+1)]
  欠缴年度当年记帐月利率=欠缴年度当年记帐利率×1/12
  (n为欠缴欠缴月份顺序号,且1≤n≤12)
  第二部分:补缴欠缴年度后第一度起至补缴年度前一年度止的利息(设为C12)
  C12=欠缴年度后第一年度的补缴利息+欠缴年度后第二年度的补缴利息+……+补缴年度前一年度的补缴利息
  其中:
  欠缴年度的第一年度的补缴利息=(欠缴额本金+C11)×欠缴年度后第一年度记帐利率
  欠缴年度后第二年度的补缴利息=(欠缴额本金+C11)+欠缴年度后第一年度的补缴利)×欠缴年度后第二年度记帐利率
  ……
  补缴年度前一年度的补缴利息=(欠缴额本金+C11+欠缴年度后第一年度的补缴利息+欠缴年度后第二年度的补缴利息)×补缴年度前一年度记帐利率
  第三部分:
  补缴年度当年月日欠缴利息(设为C13)
  C13=(欠缴额本金+C11+C12)×(补缴时月份序号-1)×补缴年度前一睥度记帐利率×1/12
  2. 非跨年度的补缴利息(设为C2)
  C2=∑(n月欠缴额本金×欠缴月数)×上年度记帐利率×1/12
  其中:欠缴月数= m-n
  (n为本年度欠缴时月份顺序号,m为本年度补缴进月份顺序号)
  二、 个人帐户补记入部分本年度本息之和(设为D),由欠缴年度已缴部分(未足额)本息之和(设为D1)以及补缴部分至上年度未本息和(设为D2)组成,即D=D1+D2。
  D1的计算方法参照本办法第三条 第1、2项:
  D2的计算方法参照本办法第三条 第2项。
搜索更多相关主题的帖子: 利息 VFP 本息 补缴 
2010-10-14 20:46
thomasou
Rank: 1
等 级:新手上路
帖 子:67
专家分:3
注 册:2010-8-15
收藏
得分:0 
为了让老师们指导方便,现把有关的表格生成代码列举如下:    谢谢指导。
 CLOSE ALL
  clear
  set safe off
CREATE table sbjfb (自然年 n(4),缴费始年 n(4),始月 n(2),至 c(2), 缴费终年 n(4),终月 n(2),;缴费基数 n(6),缴费比例 n(6,3))
INSERT INTO sbjfb VALUES (1991,1992, 7,"",1993,6,201,0.215)
INSERT INTO sbjfb VALUES (1992,1993, 7,"",1994,6,242,0.245)
INSERT INTO sbjfb VALUES (1993,1994, 7,"",1995,6,314,0.245)
INSERT INTO sbjfb VALUES (1994,1995, 7,"",1996,6,431,0.24)
INSERT INTO sbjfb VALUES (1995,1996, 7,"",1997,6,508,0.24)
INSERT INTO sbjfb VALUES (1996,1997, 7,"",1998,6,583,0.23)
INSERT INTO sbjfb VALUES (1997,1998, 7,"",1999,6,656,0.23)
INSERT INTO sbjfb VALUES (1998,1999, 7,"",2000,6,716,0.22)
INSERT INTO sbjfb VALUES (1999,2000, 7,"",2001,6,810,0.21)
INSERT INTO sbjfb VALUES (2000,2001, 7,"",2002,6,949,0.20)
INSERT INTO sbjfb VALUES (2001,2002, 7,"",2003,6,1107,0.20)
INSERT INTO sbjfb VALUES (2002,2003, 7,"",2004,6,1255,0.20)
INSERT INTO sbjfb VALUES (2003,2004, 7,"",2005,6,1412,0.20)
INSERT INTO sbjfb VALUES (2004,2005, 7,"",2006,6,1551,0.20)
INSERT INTO sbjfb VALUES (2005,2006, 7,"",2007,6,1692,0.20)
INSERT INTO sbjfb VALUES (2006,2007, 7,"",2008,6,1816,0.20)
INSERT INTO sbjfb VALUES (2007,2008, 7,"",2009,6,1472,0.20)
INSERT INTO sbjfb VALUES (2008,2009, 7,"",2010,6,1654,0.20)
use sbjfb
brow

CREATE table zgb (工号 c(4),姓名 c(10), 入职日期 d(8), 起缴日期 d(8))
INSERT INTO zgb VALUES ("1304", "张容", {^1992-3-31}, {^1995-3-1})
INSERT INTO zgb VALUES ("1329", "赵星", {^2000-1-10},{^2002-2-15})
INSERT INTO zgb VALUES ("1332", "胡峰", {^1991-6-6}, {^1993-12-1})   
INSERT INTO zgb VALUES ("1352", "张容容", {^2003-5-1}, {^2006-7-1})   
INSERT INTO zgb VALUES ("1381", "陈丝丝", {^1992-10-20},{^1993-1-1})   
INSERT INTO zgb VALUES ("3002", "李容杏", {^1994-4-2}, {^1995-4-1})   
INSERT INTO zgb VALUES ("3003", "赵蓉", {^1993-1-4}, {^1997-5-1})   
INSERT INTO zgb VALUES ("3006", "李英", {^1996-5-3}, {^2000-7-1})
INSERT INTO zgb VALUES ("3010", "胡先锋 ",{^1998-3-23}, {^2004-10-1})
INSERT INTO zgb VALUES ("3080", "龚晓飞", {^1995-9-4}, {^1997-1-1})
INSERT INTO zgb VALUES ("4104", "黄可", {^1998-9-22}, {^2004-9-1})
INSERT INTO zgb VALUES ("4166", "邢锐", {^1992-4-15}, {^1996-7-1})
INSERT INTO zgb VALUES ("4230", "陈星恒", {^1995-7-16}, {^2008-12-1})
INSERT INTO zgb VALUES ("4303", "姚仪", {^1991-6-14}, {^1992-11-15})
INSERT INTO zgb VALUES ("4316", "莫峰锋", {^1992-12-9}, {^2000-4-1})
INSERT INTO zgb VALUES ("4320", "张如", {^1991-1-1}, {^1995-1-1})
INSERT INTO zgb VALUES ("6375", "苏妹妹", {^2000-5-27}, {^2002-7-1})
INSERT INTO zgb VALUES ("6376", "刘美香", {^1991-10-20},{^1995-8-1})
INSERT INTO zgb VALUES ("6384", "李益华", {^1991-1-6}, {^2002-1-1})
INSERT INTO zgb VALUES ("6387", "李融融", {^1995-2-8}, {^1996-5-1})
INSERT INTO zgb VALUES ("6388", "马致福", {^1994-11-23},{^1995-5-1})
INSERT INTO zgb VALUES ("6400", "陈美美", {^1994-7-2}, {^2004-12-1})
INSERT INTO zgb VALUES ("6407", "李华英", {^1992-6-2}, {^1995-8-1})
INSERT INTO zgb VALUES ("6425", "黄斯以", {^1993-7-12}, {^1996-7-1})
INSERT INTO zgb VALUES ("8430", "谢花花", {^2005-5-1}, {^2007-1-1})
INSERT INTO zgb VALUES ("8461", "鲁仪", {^1995-4-8}, {^1998-6-1})
INSERT INTO zgb VALUES ("8463", "车日鸿", {^1996-9-28}, {^2007-1-1})
INSERT INTO zgb VALUES ("8488", "金东明", {^1998-4-2}, {^1999-7-1})
INSERT INTO zgb VALUES ("8495", "吴玉", {^2000-1-9}, {^2002-2-1})  
INSERT INTO zgb VALUES ("8501", "陈珠珠", {^1992-9-9 }, {^2001-7-1})  
INSERT INTO zgb VALUES ("8508", "马书悦", {^2006-6-22}, {^2007-1-1})  
INSERT INTO zgb VALUES ("8505", "朱明丽", {^2005-2-24}, {^2006-2-1})  
INSERT INTO zgb VALUES ("8512", "王莉莉", {^2006-8-6}, {^2007-12-1})  
INSERT INTO zgb VALUES ("8539", "黎东玲", {^1994-10-9}, {^1999-12-15})  
INSERT INTO zgb VALUES ("8530", "成明", {^2000-7-14}, {^2003-9-1})  
INSERT INTO zgb VALUES ("8565", "万山", {^2000-11-29},{^ 2002-6-1})  
INSERT INTO zgb VALUES ("8573", "古莉", {^2006-8-15}, {^2007-11-1})  
use zgb
brow

CREATE table 利率表 (调整日期 d(8), 利率 n(8,4))
INSERT INTO 利率表 VALUES ({^1990-4-15}, 0.1008)
INSERT INTO 利率表 VALUES ({^1990-8-21}, 0.0864)
INSERT INTO 利率表 VALUES ({^1991-4-21}, 0.0756)
INSERT INTO 利率表 VALUES ({^1993-5-15}, 0.0918)
INSERT INTO 利率表 VALUES ({^1993-7-11}, 0.1008)
INSERT INTO 利率表 VALUES ({^1993-5-15}, 0.0918)
INSERT INTO 利率表 VALUES ({^1996-5-01}, 0.0918)
INSERT INTO 利率表 VALUES ({^1996-8-23}, 0.0747)
INSERT INTO 利率表 VALUES ({^1997-10-23}, 0.0567)
INSERT INTO 利率表 VALUES ({^1998-3-25}, 0.0522)
INSERT INTO 利率表 VALUES ({^1998-7-1}, 0.0477)
INSERT INTO 利率表 VALUES ({^1998-12-7}, 0.0378)
INSERT INTO 利率表 VALUES ({^1999-6-10}, 0.0225)
INSERT INTO 利率表 VALUES ({^2002-2-21}, 0.0198)
INSERT INTO 利率表 VALUES ({^2004-10-29}, 0.0225)
INSERT INTO 利率表 VALUES ({^2006-8-19}, 0.0252)
INSERT INTO 利率表 VALUES ({^2007-3-18}, 0.0279)
INSERT INTO 利率表 VALUES ({^2007-5-19}, 0.0306)
INSERT INTO 利率表 VALUES ({^2007-7-21}, 0.0333)
INSERT INTO 利率表 VALUES ({^2007-8-22}, 0.0360)
INSERT INTO 利率表 VALUES ({^2007-9-15}, 0.0387)
INSERT INTO 利率表 VALUES ({^2007-12-21}, 0.0414)
INSERT INTO 利率表 VALUES ({^2008-10-9}, 0.0387)
INSERT INTO 利率表 VALUES ({^2008-10-31}, 0.0360)
INSERT INTO 利率表 VALUES ({^2008-11-27}, 0.0252)
INSERT INTO 利率表 VALUES ({^2008-12-23}, 0.0225)
use 利率表
brow
set safe on
2010-10-14 20:48
thomasou
Rank: 1
等 级:新手上路
帖 子:67
专家分:3
注 册:2010-8-15
收藏
得分:0 
谢谢关注,请问楼上,有好的编程方案吗?
2010-10-17 14:27
thomasou
Rank: 1
等 级:新手上路
帖 子:67
专家分:3
注 册:2010-8-15
收藏
得分:0 
下面是对于一楼的方案的解释和计算过程的例子,看来编成程序,很不容易!

欠缴基本养老保险费的补缴利息以及本息和计算办法(月积数法)
一、个人帐户补记入部分金额的补缴利息(设为C),
分为跨年度补缴利息(设为C1) 和  
非跨年度补缴利息(设为C2) 两种情况。
即:C=C1+C2  
例子:从zgb中挑李益华为例,他的入职时间:01/06/1991 起缴时间是:01/01/2002.
  那么他的补缴时段应该是:从01/02/1991至31/12/2001
1.跨年度补缴利息由三部分利息组成。
第一部分:补缴欠缴年度当年的利息(设为C11)?  
 C11=欠缴年度当年欠缴额月积数×欠缴年度当年记帐月利率  
  其中:  
因为补缴时段是:从01/02/1991至31/12/2001
所以补缴欠缴年度当年为1991年2至6月,其月积数是:
欠缴年度当年欠缴额月积数=∑[n月欠缴额×(12-n+1)]  
  =180×5×0.215×(11+10+9+8+7)
  =8712.00
因此, 欠缴年度当年欠缴额月积数为:8712.00
欠缴年度当年记帐月利率=欠缴年度当年记帐利率×1/12   
(n为欠缴年度欠缴月份顺序号,且1≤n≤12)?  
C11=∑[n月欠缴额×(12-n+1)]×欠缴年度当年记帐利率×1/12
  =8712.00×0.0756×1/12=54.89
也就是说补缴欠缴年度当年的利息为:54.89(元)
第二部分:补缴欠缴年度后第一年度起至补缴年度前一年度止的利息(设为C12)?  
由于补缴时段为01/02/1991至31/12/2001
因此补缴欠费年度后第一年度为1991年7至1992年6月
  第二年度为1992年7至1993年6月
  第三年度为1993年7至1994年6月
  第四年度为1994年7至1995年6月
  第五年度为1995年7至1996年6月
  第六年度为1996年7至1997年6月
  第七年度为1997年7至1998年6月
  第八年度为1998年7至1999年6月
  第九年度为1999年7至2000年6月
  第十年度为2000年7至2001年6月
  第十一年度为2001年7至2002年6月
  第十二年度为2002年7至2003年6月
  第十三年度为2003年7至2004年6月
  第十四年度为2004年7至2005年6月
  第十五年度为2005年7至2006年6月
  第十六年度为2006年7至2007年6月
  第十七年度为2007年7至2008年6月
  第十八年度为2008年7至2009年6月
补缴年度前一年度为2009年7至2010年6月  
C12=欠缴年度后第一年度的补缴利息+欠缴年度后第二年度的补缴利息+……+补缴年度前一年度的补缴利息  
其中:?补缴欠费年度后第一年度为1991年7至1992年6月
欠缴年度后第一年度的补缴利息=(欠缴额本金+C11)×欠缴年度后第一年度记帐利率  
而C11=∑[n月欠缴额×(12-n+1)]×欠缴年度当年记帐利率×1/12
=[{180×6×0.215×(6+5+4+3+2+1)×0.0756}+{180×6×0.215×(12+11+10+9+8+7)×0.0756}] ×1/12
=(367.2+1004.4)×1/12
=114.3

即:1991年7至1992年6月的利息
=(180×0.215×12+114.3)×0.0756=43.75(元)
欠缴年度后第二年度的补缴利息=(欠缴额本金+C11+欠缴年度后第一年度的补缴利息)×欠缴年度后第二年度记帐利率  
第二年度为1992年7至1993年6月
那么C11=∑[n月欠缴额×(12-n+1)]×欠缴年度当年记帐利率×1/12
  =201×0.215×12×(12+11+10+9+8+7+6+5+4+3+2+1)×0.0918×1/12
  =309.47
欠缴年度后第二年度1992年7至1993年6月的补缴利息=(201×0.215×12+309.47+43.75)×0.0918=80.04(元)
如此类推计算往后的年度利息。
?……  
补缴年度前一年度的补缴利息=(欠缴额本金+C11+欠缴年度后第一年度的补缴利息+欠缴年度后第二年度的补缴利息)×补缴年度前一年度记帐利率  
第三部分:补缴年度当年的欠缴利息(设为C13)?  
C13=(欠缴额本金+C11+C12)×(补缴时月份序号-1)×补缴年度前一年度记帐利率×1/12  

2.非跨年度的补缴利息(设为C2)?  
C2=∑(n月欠缴额本金×欠缴月数)×上年度记帐利率×1/12 其中:欠缴月数=m-n?  
(n为本年度欠缴时月份顺序号,m为本年度补缴时月份顺序号)  
二、个人帐户补记入部分本年度本息之和(设为D),由欠缴年度已缴部分(未足额)本息之和(设为D1)以及补缴部分至上年度末本息和(设为D2)组成,即D=D1+D2。?  
D1的计算方法参照本办法第三条第1、2项;?  
D2的计算方法参照本办法第三条第2项。  

2010-10-21 23:53
快速回复:如何编程(VFP)计算补缴利息以及本息和?
数据加载中...
 
   



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

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