以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  代码不执行  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=117917)

--  作者:铜豌豆之首
--  发布时间:2018/4/20 19:05:00
--  代码不执行
   
Select Case e.DataCol.Name
 Case "姓名"
        Dim Products As List(Of String)
        Products = DataTables("有效信息分摊").GetValues("广告费不分摊名单")
            If Products.Contains("& e.NewValue &") Then
                e.DataRow("费用分摊")= Nothing
            Else
                e.DataRow("费用分摊")= 1
            End If
End Select

--  作者:wyz20130512
--  发布时间:2018/4/20 19:13:00
--  
   
Select Case e.DataCol.Name
 Case "姓名"
        Dim Products As List(Of String)
        Products = DataTables("有效信息分摊").GetValues("广告费不分摊名单")
            If Products.Contains(e.NewValue) Then
                e.DataRow("费用分摊")= Nothing
            Else
                e.DataRow("费用分摊")= 1
            End If
End Select

--  作者:铜豌豆之首
--  发布时间:2018/4/20 19:23:00
--  
非常感谢你的帮助,但是还是不执行
--  作者:wyz20130512
--  发布时间:2018/4/20 19:30:00
--  
   
Select Case e.DataCol.Name
 Case "姓名","广告费不分摊名单"
        Dim Products As List(Of String)
        Products = DataTables("有效信息分摊").GetValues("广告费不分摊名单")
            If Products.Contains(e.NewValue) Then
                e.DataRow("费用分摊")= Nothing
            Else
                e.DataRow("费用分摊")= 1
            End If
End Select

--  作者:铜豌豆之首
--  发布时间:2018/4/20 19:40:00
--  
还是很感谢你,我通过测试后发现一个问题,换个表能执行,在哪个表就不能执行,是不是列有什么问题
--  作者:铜豌豆之首
--  发布时间:2018/4/20 19:47:00
--  
非常感谢你的帮助图片点击可在新窗口打开查看,通过进一步测试,和其它流程语句混合无法执行,另外从新做个流程就可以,很是奇怪,无法理解,你遇到个这种情况吗?再次感谢
--  作者:有点蓝
--  发布时间:2018/4/20 20:27:00
--  
贴出这这个问题有关的所有代码,或者上传实例说明。

"姓名","广告费不分摊名单"列是不是表达式列来的

--  作者:铜豌豆之首
--  发布时间:2018/4/20 21:14:00
--  
Select Case e.DataCol.Name
    Case "日期"
        Dim d As Date =e.DataRow("日期")
        If e.NewValue Is Nothing Then
            e.DataRow("周") =Nothing
        Else
            e.DataRow("周") = System.Globalization.CultureInfo.CurrentCulture.Calendar.GetWeekOfYear(d, Globalization.CalendarWeekRule.FirstDay, DayOfWeek.Monday).ToString
        End If
    Case "年","周","姓名"
        If e.NewValue IsNot Nothing Then
            e.DataRow("编码") = e.DataRow("年") & e.DataRow("周")& e.DataRow("姓名")
        Else
            e.DataRow("编码") = Nothing
        End If
    Case "编码"
        If e.NewValue Is Nothing Then
            e.DataRow("有效分摊") =Nothing
        Else
            e.DataRow("有效分摊") = DataTables("有效信息分摊").Compute("Count([编码])", "编码 = \'" & e.NewValue & "\'")
        End If
如果放在这里是无法执行的
End Select
单独放在下面是可以执行的
Select Case e.DataCol.Name
    Case "姓名"
        Dim Products As List(Of String)
        Products = DataTables("有效信息分摊").GetValues("广告费不分摊名单")
        If Products.Contains(e.NewValue) Then
            e.DataRow("费用分摊")= Nothing
        Else
            e.DataRow("费用分摊")= 1
        End If
End Select

--  作者:有点蓝
--  发布时间:2018/4/20 21:35:00
--  
只能分开,原因:http://www.foxtable.com/webhelp/scr/2242.htm
--  作者:铜豌豆之首
--  发布时间:2018/4/20 23:35:00
--  
图片点击可在新窗口打开查看谢谢