以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求大神帮忙写个代码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=49973)

--  作者:zhouwei2
--  发布时间:2014/4/26 21:35:00
--  求大神帮忙写个代码
项目密码123
这个是我以前的代码   现在新增加了一个运输方式条件 求大神帮我改下这个代码
在费用表里 省份、运输方式 等于数据输入表省份、运输方式 就用这个价格计算
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:算费用软件.rar

Dim s,gs As String
Dim 首重重量,首重价格,续重重量,续重价格 As Double
If e.DataRow.isnull("新结算重量") = False And e.DataRow.isnull("揽件人名称") = False And e.DataRow.isnull("省份") = False And e.DataRow.isnull("新结算重量") = False  Then
    dr = DataTables("客户信息").find("揽件人名称 =\'" & e.DataRow("揽件人名称") & "\'")
    If dr IsNot Nothing Then
        s = dr("价格组")
        dr = DataTables("费用").find("省份 =\'" & e.DataRow("省份") & "\'")
        If dr IsNot Nothing Then
            首重重量 = dr("首重重量_" & s)
            续重重量 = dr("续重重量_" & s)
            首重价格 = dr("首重价格_" & s)
            续重价格 = dr("续重价格_" & s)
            gs = dr("公式_" & s)
            Select Case gs
                Case "公式1"
                    e.DataRow("中转费") = e.DataRow("新结算重量") * 首重价格
                Case "公式2"
                    If e.DataRow("新结算重量")<= 首重重量 Then
                        e.DataRow("中转费") = e.DataRow("新结算重量") * 首重价格
                    Else
                        e.DataRow("中转费") = 首重重量 * 首重价格 + (e.DataRow("新结算重量") - 首重重量) * 续重价格
                    End If
                Case "公式3"
                    If e.DataRow("新结算重量") <= 首重重量 Then
                        e.DataRow("中转费") = 首重价格
                    Else
                        e.DataRow("中转费") = 首重价格+(e.DataRow("新结算重量")-首重重量)* 续重价格
                    End If
                Case "公式4"
                    If e.DataRow("新结算重量")<= 首重重量 Then
                        e.DataRow("中转费") = 首重价格
                    Else
                      e.DataRow("中转费") =Math.Ceiling( Math.round(( e.DataRow("新结算重量") - 首重重量)/ 续重重量,6)) * 续重价格 +  首重价格
                    End If
               Case "公式5" 
                     e.DataRow("中转费") = 首重价格
                Case Else
                    e.DataRow("中转费") = Nothing
            End Select
        Else
            e.DataRow("中转费") = Nothing
        End If
    Else
        e.DataRow("中转费") = Nothing
    End If
Else
    e.DataRow("中转费") = Nothing
End If


--  作者:有点甜
--  发布时间:2014/4/27 10:40:00
--  

 楼主,请把帮助文档看几遍吧。很基础的问题

 

dr = DataTables("费用").find("省份 =\'" & e.DataRow("省份") & "\' and 运输方式 = \'" & e.Datarow("运输方式") & "\'")


--  作者:zhouwei2
--  发布时间:2014/4/27 20:07:00
--  
就这样简单吗?