以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- 时间段金额计算 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=87185)
|
-- 作者:jamhuton
-- 发布时间:2016/7/5 13:12:00
-- 时间段金额计算
2个日期计算出天数,然后根据这2个天数计算1、5天免费 2、6-10天,x元 3、10-15天,y元 4、15天以上,z元
例如天数等于18,计算公式:超期费=5*x+5*y+(18-5-5-5)*z
|
-- 作者:jamhuton
-- 发布时间:2016/7/5 13:13:00
--
此主题相关图片如下:1.png
|
-- 作者:jamhuton
-- 发布时间:2016/7/5 13:13:00
--
此主题相关图片如下:2.png
|
-- 作者:jamhuton
-- 发布时间:2016/7/5 13:19:00
--
我是想另外建一个费率表,然后选择箱型的时候导入(3楼)该箱型的费率,然后判断滞箱天数来计算滞箱天数>5 <10 公式为滞箱天数*(6-10天)列费率
|
-- 作者:jamhuton
-- 发布时间:2016/7/5 13:21:00
--
滞箱天数>10 <15 公式为5*(6-10天)列费率+(滞箱天数-10)*(10-15天)费率
|
-- 作者:jamhuton
-- 发布时间:2016/7/5 13:22:00
--
滞箱天数>15 公式为5*(6-10天)列费率+5*(10-15天)费率+(滞箱天数-15)*15天以上费率
|
-- 作者:大红袍
-- 发布时间:2016/7/5 14:40:00
--
参考代码
Dim n as integer = 18 Dim dr As DataRow = DataTables("表B").find("") Dim sum As Double = 0 If n > 15 Then sum = (n-15)*dr("费率3")+5*dr("费率2")+5*dr("费率1") ElseIf n >10 Then sum = (n-5)*dr("费率2")+5*dr("费率1") ElseIf n > 5 sum = 5*dr("费率1") End If
|
-- 作者:jamhuton
-- 发布时间:2016/7/5 15:03:00
--
Dim n As Integer = "滞箱天数" Dim drf As DataRow = DataTables("江运结算").find("") Dim sum As Double = 0 If n > 15 Then sum = (n-15)*drf("天15以上")+5*drf("天15内")+5*drf("天10") ElseIf n >10 Then sum = (n-5)*drf("天15内")+5*drf("天10") ElseIf n > 5 sum = 5*drf("天10") End If 写在datacolchanged报错
|
-- 作者:jamhuton
-- 发布时间:2016/7/5 15:04:00
--
.NET Framework 版本:2.0.50727.8689 Foxtable 版本:2016.6.13.1 错误所在事件:表,江运结算,DataColChanged 详细错误信息: 调用的目标发生了异常。 从字符串“滞箱天数”到类型“Integer”的转换无效。 输入字符串的格式不正确。
|
-- 作者:jamhuton
-- 发布时间:2016/7/5 15:05:00
--
我用到的数据全部是双精度小数
|