以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  like属性  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=137226)

--  作者:jamhuton
--  发布时间:2019/7/1 12:52:00
--  like属性
从字符串“&txt2&”到类型“Boolean”的转换无效。



ElseIf "出发地" Like "&txt1&" And "&txt2&" And "&txt3&" And "&txt4&" 

这个代码报第行的错,请老师修改,谢谢





--  作者:jamhuton
--  发布时间:2019/7/1 13:05:00
--  
Select Case e.DataCol.name
    Case "日期"
        If e.NewValue Is Nothing Then
            e.DataRow("结算日期") = Nothing
        ElseIf "出发地" = "txt1"
            Dim dt As Date = e.NewValue
            If dt.Day > 20 Then \'如果为25日以后的日期
                dt = new Date(dt.year,dt.month,1) \'改为下个月的第一天
                dt= dt.AddMonths(1)
            End If
        ElseIf "出发地" = "txt2" 
            Dim dt As Date = e.NewValue
            If dt.Day > 15 Then \'如果为25日以后的日期
                dt = new Date(dt.year,dt.month,1) \'改为下个月的第一天
                dt= dt.AddMonths(1)
            End If
            e.DataRow("结算日期") = dt
        ElseIf "出发地" Like "txt3" And "txt4" And "txt5" And "txt6" 
            Dim dt As Date = e.NewValue
            If dt.Day > 31 Then \'如果为25日以后的日期
                dt = new Date(dt.year,dt.month,1) \'改为下个月的第一天
                dt= dt.AddMonths(1)
            End If
            e.DataRow("结算日期") = dt
        End If
End Select

--  作者:jamhuton
--  发布时间:2019/7/1 13:07:00
--  
不同的出发地,结算日期根据情况,分为15日、20日、月底,3种截至日期。


--  作者:有点甜
--  发布时间:2019/7/1 14:36:00
--  

请单独做一个实例发上来测试。


--  作者:jamhuton
--  发布时间:2019/7/1 15:24:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3.foxdb



图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看


--  作者:有点甜
--  发布时间:2019/7/1 15:29:00
--  
Select Case e.DataCol.name
    Case "日期"
        If e.NewValue Is Nothing Then
            e.DataRow("结算日期") = Nothing
        ElseIf e.DataRow("出发地") = "上海"
            Dim dt As Date = e.NewValue
            If dt.Day > 20 Then \'如果为25日以后的日期
                dt = new Date(dt.year,dt.month,1) \'改为下个月的第一天
                dt= dt.AddMonths(1)
            End If
        ElseIf e.DataRow("出发地") = "天津"
            Dim dt As Date = e.NewValue
            If dt.Day > 15 Then \'如果为25日以后的日期
                dt = new Date(dt.year,dt.month,1) \'改为下个月的第一天
                dt= dt.AddMonths(1)
            End If
            e.DataRow("结算日期") = dt
        ElseIf e.DataRow("出发地") Like "*苏州*" OrElse e.DataRow("出发地") Like "*无锡*" OrElse e.DataRow("出发地") Like "*常州*" OrElse e.DataRow("出发地") Like "*扬州*"
            Dim dt As Date = e.NewValue
            If dt.Day > 31 Then \'如果为25日以后的日期
                dt = new Date(dt.year,dt.month,1) \'改为下个月的第一天
                dt= dt.AddMonths(1)
            End If
            e.DataRow("结算日期") = dt
        End If
End Select

--  作者:jamhuton
--  发布时间:2019/7/1 15:40:00
--  
谢谢甜老师