Foxtable(狐表)用户栏目专家坐堂 → [原创]请教滞纳金计算代码


  共有14479人关注过本帖树形打印复制链接

主题:[原创]请教滞纳金计算代码

帅哥哟,离线,有人找我吗?
czy
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/11/17 9:35:00 [只看该作者]

楼上肯定是不对的,因为第二行数据没有加上第一次交款到第二次交款之间的第一次欠缴的滞纳金,第三行也同样没有加上。

我的也不对,我第三次交款中没有加上第一次少交款的(第一次的滞纳金只交到第二次交款日期)滞纳金。


 回到顶部
帅哥哟,离线,有人找我吗?
czy
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/11/17 10:12:00 [只看该作者]

我改了一下,还是按自己的理解,不一定对。

 

Dim dr As DataRow = e.DataRow
Dim t,t1 As TimeSpan
Dim Val As Double
Dim pr As DataRow = dr.GetParentrow("宗地合同信息")
If pr IsNot Nothing Then
    If e.DataCol.Name = "缴款次数" AndAlso dr.IsNull("缴款次数") = False And dr("缴款次数") < 5 Then
        dr("滞纳金比例") = pr("滞纳金比例")
        dr("约定日期") = pr("缴款日期" & dr("缴款次数"))
        dr("本次应缴") = pr("缴款金额" & dr("缴款次数"))
    End If
    If e.DataCol.Name = "缴款日期" OrElse e.DataCol.Name = "缴款金额" And dr("缴款次数") < 5 Then
        If dr.IsNull("缴款日期") OrElse dr.IsNull("缴款金额") Then
            dr("应交滞纳金") = 0
        Else
            If dr("缴款次数") > 1 Then
                Dim dr1 As DataRow = e.DataTable.Find("宗地编号 = '" & dr("宗地编号") & "' And 缴款次数 = '" & dr("缴款次数")-1 & "'")
                Dim n As Double = e.DataTable.Compute("Sum(本次应缴)","[_Identify] < " & dr("_Identify"))
                Dim n1 As Double = e.DataTable.Compute("Sum(缴款金额)","[_Identify] < " & dr("_Identify"))
                If dr1 IsNot Nothing
                    t1 = dr("缴款日期") - dr1("缴款日期")
                    If dr1("本次应缴") - dr1("缴款金额") > 0 Then
                        Val = (n- n1) * dr("滞纳金比例")*t1.Days
                    End If
                End If
            End If
            t = dr("缴款日期") - dr("约定日期")
            If t.Days > 0 OrElse t1.Days > 0 Then
                If dr("本次应缴") > dr("缴款金额") Then
                    dr("应交滞纳金") = ((dr("本次应缴") - dr("缴款金额"))*dr("滞纳金比例")*t.Days) + Val
                Else
                    dr("应交滞纳金") = Val
                End If
            Else
                dr("应交滞纳金") = Val
            End If
        End If
    End If
End If

 

结果图

 

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图未命名.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2010-11-17 10:32:32编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
mr725
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/11/18 17:44:00 [只看该作者]

下图中的结果对否? 代码可是够写了···

  


图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
czy
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/11/18 18:17:00 [只看该作者]

呵呵,剃头挑子一头热。

 回到顶部
帅哥哟,离线,有人找我吗?
mr725
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/11/18 19:08:00 [只看该作者]

以下是引用czy在2010-11-18 18:17:00的发言:
呵呵,剃头挑子一头热。

是的,挺难的,楼主无影无踪了···

 

我13楼手工计算的结果还合理吗? 其中个位的数字代表天数: 即  剩余的金额×天数×滞纳金比率

[此贴子已经被作者于2010-11-18 19:10:47编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
czy
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/11/18 19:19:00 [只看该作者]

以下是引用mr725在2010-11-18 19:08:00的发言:

是的,挺难的,楼主无影无踪了···

 

我13楼手工计算的结果还合理吗? 其中个位的数字代表天数: 即  剩余的金额×天数×滞纳金比率

[此贴子已经被作者于2010-11-18 19:10:47编辑过]

 

哈,我也说不上到底是正确还是不正确,等楼主来回答吧。


 回到顶部
帅哥哟,离线,有人找我吗?
KK2010
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:5 积分:96 威望:0 精华:0 注册:2010/11/14 15:08:00
  发帖心情 Post By:2010/11/19 8:47:00 [只看该作者]

谢谢大家,这两天忙没上网。基本上是按13楼所列的计算方法计算的。明天再测试。再次谢谢。

 


 回到顶部
总数 17 上一页 1 2