Foxtable(狐表)用户栏目专家坐堂 → [求助]录入结果Cancel


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

主题:[求助]录入结果Cancel

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


加好友 发短信
等级:九尾狐 帖子:2927 积分:20167 威望:0 精华:0 注册:2012/2/3 17:45:00
[求助]录入结果Cancel  发帖心情 Post By:2016/1/27 14:40:00 [只看该作者]

红袍老师,
  录入结果应被Cancel,但还是录入进去了,这是为什么呢?下图 01  已经被使用,不希望在增加出下级 


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


代码如下

Dim e As object=args(0)
Dim bm As String= e.DataTable.name
Dim dt1,dt2,dt3 As DataTable
dt1=Functions.Execute("loading","Z006配置列",0,"表名='"& bm &"'and 使用表 Is Not null")'已使用的判断
If dt1.DataRows.count>0 Then'                                                                                  判断是否被使用开始
    For Each dr4 As DataRow In dt1.DataRows
        If e.DataTable.DataCols.Contains(dr4("列名")) Then
            Dim nms() As String=dr4("使用表").Split(",")
            Dim lm() As String =dr4("使用表对应列名").Split(",")
            For i1 As Integer=0 To nms.Length-1
                cmd99.CommandText ="Select Count(*) F rom {"& nms(i1) &"} Where "& lm(i1) &"='"& e.DataRow(dr4("列名")) &"'"
                If cmd99.ExecuteScalar > 0 Then
                    PopMessage("上级编码已在""【" & nms(i1).SubString(5,nms(i1).Length-5) & "】""表中使用,不能增加!","错误", PopIconEnum.Error, 5)
MessageBox.Show(e.NewValue)
MessageBox.Show(e.oldValue)
                    e.Cancel=True
                    Return Nothing
                    Exit For
                Else
                    Continue For
                End If
            Next
        End If
    Next
End If


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/1/27 14:50:00 [只看该作者]

只有DataColChanging事件才能cancel,具体做例子测试。

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


加好友 发短信
等级:九尾狐 帖子:2927 积分:20167 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2016/1/27 15:25:00 [只看该作者]

老师,
  大概就是这个意思,例子我在做一会上传,下面的怎么写》

If E.DataCol.Name="编码规则" Then
    Dim dr As DataRow= DataTables("表B").Find("第一列='01'")
    If dr IsNot Nothing And e.NewValue Like "& 01* &" Then’老师这块应该怎么写?
        PopMessage("上级编码已在表B中使用,不能增加!","错误", PopIconEnum.Error, 5)
        e.Cancel=True
    End If
End If

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/1/27 15:32:00 [只看该作者]

If dr IsNot Nothing And e.NewValue Like  "01*" Then’老师这块应该怎么写?

 回到顶部