关于计算滞纳金的问题

xietianci 2015-10-17 11:12:03
我想写个计算滞纳金的小程序并把结果存到Access表里面。我是新手不知道用什么方式计算求大神们给帮忙发个代码,谢谢
...全文
180 1 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
回复
导弹炸航母 2015-10-22
为什么不用excel自带的公式呢
回复
ajianchina 2015-10-18
忙活完了,怎么发现你是发在非技术区啊。
回复
ajianchina 2015-10-18

'payable=应缴金额,todate=应缴日期
Public Sub Project_InsertInfo(payable As Decimal, todate As DateTime)
	Dim fine As Decimal = 0D '滞纳金
	For i As Integer = 1 To DateTime.Now.Date.Subtract(todate.Date).Days
		fine += payable * i * 0.005D '每日滞纳金
	Next

	Dim conn As New OleDbConnection("Provider='Microsoft.Jet.OLEDB.4.0';Data Source='" + Application.StartupPath & "\data.mdb'")
	Try
		Dim comm As New OleDbCommand("insert into [表] ([应缴金额],[应缴日期],[实缴日期],[滞纳金]) values (" & payable & ",'" & todate.ToString("yyyy-MM-dd") & "','" & DateTime.Now.ToString("yyyy-MM-dd") & "'," & fine & ")", conn)
		conn.Open()
		comm.ExecuteNonQuery()
	Catch
		MessageBox.Show("本次计算结果保存失败");
	Finally
		conn.Close()
	End Try
End Sub
回复
xietianci 2015-10-18
公式是(当前日期-到期日期)*0.005,这个数要每天都变化。 注:我用的是vb.net 2013加Access谢谢
回复
xietianci 2015-10-18
不是,是版主把我移过来的。我去试试,谢谢
回复
ajianchina 2015-10-17
这么计算,你没给条件跟公式,我就写了两个入参,进入后相乘,并将结果存入access,你就根据你的情况,看是什么已知条件传入进去,按你的公式计算,结果保存的代码已经写好了。

public void Project_InsertInfo(int x,int y)
{
	int v = x * y;
	string s = "x乘以y等于" + v.ToString();
	//我定义了两个变量,数字跟字符串插入数据库的时候字符串要加引号。
	OleDbConnection conn = new OleDbConnection(@"Provider='Microsoft.Jet.OLEDB.4.0';Data Source='" + Application.StartupPath + @"\data.mdb'");
	try
	{
		OleDbCommand comm = new OleDbCommand("insert into [表] ([字段1],[字段2]) values (" + v + ",'" + s + "')", conn);
		conn.Open();
		comm.ExecuteNonQuery();
	}
	catch
	{
		//MessageBox.Show("本次计算结果保存失败");
	}
	finally
	{
		conn.Close();
	}
}
回复
相关推荐
发帖
非技术区
创建于2007-09-28

7710

社区成员

.NET技术 非技术区
申请成为版主
帖子事件
创建了帖子
2015-10-17 11:12
社区公告
暂无公告