Foxtable(狐表)用户栏目专家坐堂 → 不允许输入相同的任务单


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

主题:不允许输入相同的任务单

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106643 积分:542392 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/9/29 14:47:00 [显示全部帖子]

Dim ph As String = e.DataRow("列1")
Dim lx As String= e.DataRow("列2")
Dim soh As String= e.DataRow("列3")
Dim xh As String= e.DataRow("列4")
Dim sohh As String= e.DataRow("列5")
If e.DataCol.Name= "列1" Then
    xh = e.NewValue
ElseIf e.DataCol.Name= "列2" Then
    lx= e.NewValue
ElseIf.......

End If

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106643 积分:542392 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/9/29 17:31:00 [显示全部帖子]

If ph > "" AndAlso lx > "" AndAlso soh > "" AndAlso xh > "" AndAlso sohh > "" AndAlso cph > "" AndAlso sl > 0 Then 
            Dim dr As DataRow = e.DataRow
            If e.DataTable.SqlFind("装配piao号 = '" & ph & "' And 类型 = '" & lx & "' And SO号 = '" & soh & "' And 箱号 = '" & xh & "' And SO行号 = '" & sohh & "'And 制造产品号 = '" & cph & "'And 计划数量 = " & sl ) IsNot Nothing Then

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106643 积分:542392 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/9/30 11:02:00 [显示全部帖子]

If ph > "" AndAlso lx > "" AndAlso soh > "" AndAlso xh > "" AndAlso sohh > "" AndAlso cph > "" AndAlso e.DataRow.isnull("计划数量") = false Then 

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106643 积分:542392 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/9/30 11:30:00 [显示全部帖子]

请上传实例测试

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106643 积分:542392 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/9/30 14:39:00 [显示全部帖子]

无法防止。可以考虑单号自动生成,而不是手动输入:http://www.foxtable.com/webhelp/scr/3008.htm

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106643 积分:542392 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/9/30 15:40:00 [显示全部帖子]

ElseIf e.DataCol.Name= "计划数量" Then

 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106643 积分:542392 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/9/30 15:40:00 [显示全部帖子]

Select Case e.DataCol.name
    Case "装配piao号","类型","SO号","箱号","SO行号","制造产品号","计划数量"
        Dim ph As String = e.DataRow("装配piao号")
        Dim lx As String = e.DataRow("类型")
        Dim soh As String= e.DataRow("SO号")
        Dim xh As String= e.DataRow("箱号")
        Dim sohh As String= e.DataRow("SO行号")
        Dim cph As String= e.DataRow("制造产品号")
        Dim sl As Byte= e.DataRow("计划数量")
        If e.DataCol.Name= "装配piao号" Then
            ph = e.NewValue
        ElseIf e.DataCol.Name= "类型" Then
            lx = e.NewValue
        ElseIf e.DataCol.Name= "SO号" Then
            soh = e.NewValue
        ElseIf e.DataCol.Name= "箱号" Then
            xh = e.NewValue
        ElseIf e.DataCol.Name= "SO行号" Then
            sohh = e.NewValue
        ElseIf e.DataCol.Name= "制造产品号" Then
            cph = e.NewValue
        ElseIf e.DataCol.Name= "计划数量" Then
            sl = e.NewValue
        End If
        Dim dr As DataRow = e.DataRow
        Dim filter As String= "装配piao号 = '" & ph & "' And 类型 = '" & lx & "' And SO号 = '" & soh & "' And 箱号 = '" & xh & "' And SO行号 = '" & sohh & "'And 制造产品号 = '" & cph & "'And 计划数量 = " & sl
        If e.DataTable.SqlFind(filter) IsNot Nothing Then
            MessageBox.Show("已经存在相同piao号/类型/SO号/箱号/SO行号/产品号/数量的行!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
            e.Cancel = True
        End If
End Select

 回到顶部