Foxtable(狐表)用户栏目专家坐堂 → 自动增加行及同步更新


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

主题:自动增加行及同步更新

美女呀,离线,留言给我吧!
13775189031
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:840 积分:5828 威望:0 精华:0 注册:2017/12/19 14:46:00
自动增加行及同步更新  发帖心情 Post By:2019/1/7 9:21:00 [只看该作者]

按下列代码实现自动增加行并同步更新,请教加黑部分如何实现同步更新

 

Select Case e.DataCol.name
    Case "编号"
        If e.DataRow.IsNull("编号") = True Then
            DataTables("公司不符合项管理表").DeleteFor("不符合项编号 ='" & e.DataRow("编号") & "'")
        Else
            Dim ndr1 As DataRow = DataTables("公司不符合项管理表").Find("不符合项编号 = '" & e.DataRow("编号") & "'")
            If ndr1 Is Nothing Then
                Dim ndr As Row = Tables("公司不符合项管理表").AddNew
                ndr("不符合项编号") = e.DataRow("编号")
                ndr("年度") = e.DataRow("年度")
                ndr("产品属性") = e.DataRow("产品属性")
                ndr("不符合类别") = "核电不符合项" & "" & e.DataRow("不符合项类别")
                ndr("部门") = e.DataRow("部门")
                ndr("开启日期") = e.DataRow("开启日期")
                ndr("不符合项描述") = e.DataRow("缺陷部件_不符合项描述")
                ndr("原因分析") = e.DataRow("拟定方案_原因分析_内容")
                ndr("处理方案") = e.DataRow("拟定方案_纠正措施_内容")
                ndr("项目或检查名称") = e.DataRow("项目名称") & "" & e.DataRow("机组号") & "" & e.DataRow("设备名称")
                ndr("处理结果") = e.DataRow("关闭决定_SPEC决定")
                ndr("关闭日期") = e.DataRow("关闭决定_日期")
                ndr("质量损失金额") = e.DataRow("合计损失金额")
                ndr("质量考核金额") = e.DataRow("质量考核金额")
                ndr.Move(0)
            End If
        End If
End Select

If e.DataCol.Name = "年度"
    Dim Filter As String = "[不符合项编号] = '" & e.DataRow("编号") & "'"
    Dim drs As List(Of DataRow) = DataTables("公司不符合项管理表").Select(Filter)
    For Each dr4 As DataRow In drs
        dr4("年度") = e.DataRow("年度")
    Next
End If

If e.DataCol.Name = "产品属性"
    Dim Filter As String = "[不符合项编号] = '" & e.DataRow("编号") & "'"
    Dim drs As List(Of DataRow) = DataTables("公司不符合项管理表").Select(Filter)
    For Each dr4 As DataRow In drs
        dr4("产品属性") = e.DataRow("产品属性")
    Next
End If

If e.DataCol.Name = "开启日期"
    Dim Filter As String = "[不符合项编号] = '" & e.DataRow("编号") & "'"
    Dim drs As List(Of DataRow) = DataTables("公司不符合项管理表").Select(Filter)
    For Each dr4 As DataRow In drs
        dr4("开启日期") = e.DataRow("开启日期")
    Next
End If

If e.DataCol.Name = "缺陷部件_不符合项描述"
    Dim Filter As String = "[不符合项编号] = '" & e.DataRow("编号") & "'"
    Dim drs As List(Of DataRow) = DataTables("公司不符合项管理表").Select(Filter)
    For Each dr4 As DataRow In drs
        dr4("不符合项描述") = e.DataRow("缺陷部件_不符合项描述")
    Next
End If

If e.DataCol.Name = "拟定方案_原因分析_内容"
    Dim Filter As String = "[不符合项编号] = '" & e.DataRow("编号") & "'"
    Dim drs As List(Of DataRow) = DataTables("公司不符合项管理表").Select(Filter)
    For Each dr4 As DataRow In drs
        dr4("原因分析") = e.DataRow("拟定方案_原因分析_内容")
    Next
End If

If e.DataCol.Name = "拟定方案_纠正措施_内容"
    Dim Filter As String = "[不符合项编号] = '" & e.DataRow("编号") & "'"
    Dim drs As List(Of DataRow) = DataTables("公司不符合项管理表").Select(Filter)
    For Each dr4 As DataRow In drs
        dr4("处理方案") = e.DataRow("拟定方案_纠正措施_内容")
    Next
End If

If e.DataCol.Name = "项目名称"
    Dim Filter As String = "[不符合项编号] = '" & e.DataRow("编号") & "'"
    Dim drs As List(Of DataRow) = DataTables("公司不符合项管理表").Select(Filter)
    For Each dr4 As DataRow In drs
        dr4("项目或检查名称") = e.DataRow("项目名称") & "" & e.DataRow("机组号") & "" & e.DataRow("设备名称")
    Next
End If

If e.DataCol.Name = "关闭决定_SPEC决定"
    Dim Filter As String = "[不符合项编号] = '" & e.DataRow("编号") & "'"
    Dim drs As List(Of DataRow) = DataTables("公司不符合项管理表").Select(Filter)
    For Each dr4 As DataRow In drs
        dr4("处理结果") = e.DataRow("关闭决定_SPEC决定")
    Next
End If

If e.DataCol.Name = "关闭决定_日期"
    Dim Filter As String = "[不符合项编号] = '" & e.DataRow("编号") & "'"
    Dim drs As List(Of DataRow) = DataTables("公司不符合项管理表").Select(Filter)
    For Each dr4 As DataRow In drs
        dr4("关闭日期") = e.DataRow("关闭决定_日期")
    Next
End If

If e.DataCol.Name = "合计损失金额"
    Dim Filter As String = "[不符合项编号] = '" & e.DataRow("编号") & "'"
    Dim drs As List(Of DataRow) = DataTables("公司不符合项管理表").Select(Filter)
    For Each dr4 As DataRow In drs
        dr4("质量损失金额") = e.DataRow("合计损失金额")
    Next
End If


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/7 10:50:00 [只看该作者]

改成

 

Select Case e.DataCol.name
    Case "编号","不符合项类别","项目名称","机组号","设备名称"
        If e.DataRow.IsNull("编号") = True Then
            DataTables("公司不符合项管理表").DeleteFor("不符合项编号 ='" & e.DataRow("编号") & "'")
        Else
            Dim ndr1 As DataRow = DataTables("公司不符合项管理表").Find("不符合项编号 = '" & e.DataRow("编号") & "'")
            If ndr1 Is Nothing Then
                Dim ndr As Row = Tables("公司不符合项管理表").AddNew
                ndr("不符合项编号") = e.DataRow("编号")
                ndr("年度") = e.DataRow("年度")
                ndr("产品属性") = e.DataRow("产品属性")
                ndr("不符合类别") = "核电不符合项" & "" & e.DataRow("不符合项类别")
                ndr("部门") = e.DataRow("部门")
                ndr("开启日期") = e.DataRow("开启日期")
                ndr("不符合项描述") = e.DataRow("缺陷部件_不符合项描述")
                ndr("原因分析") = e.DataRow("拟定方案_原因分析_内容")
                ndr("处理方案") = e.DataRow("拟定方案_纠正措施_内容")
                ndr("项目或检查名称") = e.DataRow("项目名称") & "" & e.DataRow("机组号") & "" & e.DataRow("设备名称")
                ndr("处理结果") = e.DataRow("关闭决定_SPEC决定")
                ndr("关闭日期") = e.DataRow("关闭决定_日期")
                ndr("质量损失金额") = e.DataRow("合计损失金额")
                ndr("质量考核金额") = e.DataRow("质量考核金额")
                ndr.Move(0)
            Else
                ndr1("不符合类别") = "核电不符合项" & "" & e.DataRow("不符合项类别")
                ndr1("项目或检查名称") = e.DataRow("项目名称") & "" & e.DataRow("机组号") & "" & e.DataRow("设备名称")
            End If
        End If
End Select


 回到顶部
美女呀,离线,留言给我吧!
13775189031
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:840 积分:5828 威望:0 精华:0 注册:2017/12/19 14:46:00
  发帖心情 Post By:2019/1/21 17:19:00 [只看该作者]

谢谢!


 回到顶部