Foxtable(狐表)用户栏目专家坐堂 → 代码简化,麻烦老师们看看,有没有更加简便的写法。


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

主题:代码简化,麻烦老师们看看,有没有更加简便的写法。

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
代码简化,麻烦老师们看看,有没有更加简便的写法。  发帖心情 Post By:2019/3/30 12:44:00 [只看该作者]

Dim tb1 As WinForm.Table = e.Form.Controls("table1")
Dim tb2 As WinForm.Table = e.Form.Controls("table2")
For Each r1 As Row In tb1.Table.Rows
    Dim drs As List(of DataRow) = DataTables("职务").SQLSelect("制单人='" & r1("承办人") & "'")
    Dim drs1 As List(of DataRow) = DataTables("人员关联表").SQLSelect("部门受案号='" & r1("部门受案号") & "'")
    For Each dr As DataRow In drs
        
        If  r1.IsNull("审结日期") Then
            Dim dr21 As DataRow = DataTables("告知内容").sqlfind("姓名 = '" & dr("职务人员") & "' and  部门受案号 = '" & r1("部门受案号") & "' and 受理日期 = #" & r1("受理日期") & "# ")
            If dr21 Is Nothing Then '如果不存在同编号的订单
                Dim r2 As Row =tb2.Table.AddNew
                r2("姓名") = dr("职务人员")
                r2("部门受案号")=r1("部门受案号")
                r2("嫌疑人姓名")=r1("嫌疑人姓名")
                r2("是否告知")="否"
                r2("告知方式_邮件")="否"
                r2("告知方式_短信")="否"
                r2("告知方式_QQ")="否"
                r2("告知方式_微信")="否"
                r2("事项理由")="请注意"
                r2("人员类型")=dr("职务类型")
                r2("涉嫌案由")=r1("涉嫌案由")
                r2("受理日期")=r1("受理日期")
                r2("案件类别")=r1("案件类别")
                r2("审结日期")= r1("审结日期")
                r2("承办人") = dr("职务人员")
                r2("案件状态")= "审理中"
                r2("序号")= r1("_identify")
                r2.save
            End If
            For Each dr23 As DataRow In drs1
                Dim dr22 As DataRow = DataTables("告知内容").Find("部门受案号 = '" & r1("部门受案号") & "'  and 姓名 ='" & dr23("姓名") & "'and 受理日期 = #" & r1("受理日期") & "# ")
                If  r1("是否关联")="是" Then
                    
                    If dr22 Is Nothing Then '如果不存在同编号的订单
                        MessageBox.Show("1")
                        Dim r3 As Row =tb2.Table.AddNew
                        MessageBox.Show(r1("部门受案号"))
                        r3("部门受案号")=r1("部门受案号")
                        r3("嫌疑人姓名")=r1("嫌疑人姓名")
                        r3("是否告知")="否"
                        r3("事项理由")="请注意"
                        r3("案件状态")="审理中"
                        r3("人员类型")="案件关联人"
                        r3("涉嫌案由")=r1("涉嫌案由")
                        r3("案件类别")=r1("案件类别")
                        r3("受理日期")= r1("受理日期")
                        r3("审结日期")= r1("审结日期")
                        r3("姓名")=dr23("姓名")
                        r3("告知方式_邮件")="否"
                        r3("告知方式_短信")="否"
                        r3("告知方式_QQ")="否"
                        r3("告知方式_微信")="否"
                        r3("承办人")=r1("承办人")
                        r3("案件状态")= "审理中"
                        r3("序号")= r1("_identify")
                        r3.save
                    End If
                    
                End If
            Next
        Else
            Dim dr21 As DataRow = DataTables("告知内容").sqlfind("姓名 = '" & dr("职务人员") & "' and  部门受案号 = '" & r1("部门受案号") & "' and 审结日期 = #" & r1("审结日期") & "# " )
            
            If dr21 Is Nothing Then '如果不存在同编号的订单
                Dim r2 As Row =tb2.Table.AddNew
                r2("姓名") = dr("职务人员")
                r2("部门受案号")=r1("部门受案号")
                r2("嫌疑人姓名")=r1("嫌疑人姓名")
                r2("是否告知")="否"
                r2("告知方式_邮件")="否"
                r2("告知方式_短信")="否"
                r2("告知方式_QQ")="否"
                r2("告知方式_微信")="否"
                r2("事项理由")="请注意"
                r2("人员类型")=dr("职务类型")
                r2("涉嫌案由")=r1("涉嫌案由")
                r2("受理日期")=r1("受理日期")
                r2("案件类别")=r1("案件类别")
                r2("审结日期")= r1("审结日期")
                r2("承办人") = dr("职务人员")
                r2("案件状态")="已审结"
                r2("序号")= r1("_identify")
                r2.save
            End If
            If  r1("是否关联")="是" Then
                    For Each dr23 As DataRow In drs1
                        Dim dr221 As DataRow = DataTables("告知内容").Find("部门受案号 = '" & r1("部门受案号") & "'  and 姓名 ='" & dr23("姓名") & "'and 审结日期 = #" & r1("审结日期") & "# ")
                        If dr221 Is Nothing Then '如果不存在同编号的订单
                            If dr23("人员类型")="案件关联人" Then
                                Dim r3 As Row =tb2.Table.AddNew
                                r3("部门受案号")=r1("部门受案号")
                                r3("嫌疑人姓名")=r1("嫌疑人姓名")
                                r3("是否告知")="否"
                                r3("事项理由")="请注意"
                                r3("案件状态")="审理中"
                                r3("人员类型")="案件关联人"
                                r3("涉嫌案由")=r1("涉嫌案由")
                                r3("案件类别")=r1("案件类别")
                                r3("受理日期")= r1("受理日期")
                                r3("审结日期")= r1("审结日期")
                                r3("姓名")=dr23("姓名")
                                r3("告知方式_邮件")="否"
                                r3("告知方式_短信")="否"
                                r3("告知方式_QQ")="否"
                                r3("告知方式_微信")="否"
                                r3("承办人")=r1("承办人")
                                r3("案件状态")="已审结"
                                r3("序号")= r1("_identify")
                                r3.save
                            End If
                        End If
                    Next
                End If
            End If
        
    Next
Next

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


加好友 发短信
等级:超级版主 帖子:107521 积分:546890 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/30 14:27:00 [只看该作者]

Dim tb1 As WinForm.Table = e.Form.Controls("table1")
Dim tb2 As WinForm.Table = e.Form.Controls("table2")
For Each r1 As Row In tb1.Table.Rows
    Dim drs As List(of DataRow) = DataTables("职务").SQLSelect("制单人='" & r1("承办人") & "'")
    Dim drs1 As List(of DataRow) = DataTables("人员关联表").SQLSelect("部门受案号='" & r1("部门受案号") & "'")
    Dim d As Date
    Dim name As String
    Dim 状态 As String
    
    If  r1.IsNull("审结日期") Then
        d = r1("受理日期")
        name = "受理日期"
        状态 = "审理中"
    Else
        d = r1("审结日期")
        name = "审结日期"
        状态 = "已审结"
    End If
    For Each dr As DataRow In drs
        
        Dim dr21 As DataRow = DataTables("告知内容").sqlfind("姓名 = '" & dr("职务人员") & "' and  部门受案号 = '" & r1("部门受案号") & "' and " & name & " = #" & d & "# ")
        If dr21 Is Nothing Then '如果不存在同编号的订单
            Dim r2 As Row =tb2.Table.AddNew
            r2("姓名") = dr("职务人员")
            r2("部门受案号")=r1("部门受案号")
            r2("嫌疑人姓名")=r1("嫌疑人姓名")
            r2("是否告知")="否"
            r2("告知方式_邮件")="否"
            r2("告知方式_短信")="否"
            r2("告知方式_QQ")="否"
            r2("告知方式_微信")="否"
            r2("事项理由")="请注意"
            r2("人员类型")=dr("职务类型")
            r2("涉嫌案由")=r1("涉嫌案由")
            r2("受理日期")=r1("受理日期")
            r2("案件类别")=r1("案件类别")
            r2("审结日期")= r1("审结日期")
            r2("承办人") = dr("职务人员")
            r2("案件状态")= 状态
            r2("序号")= r1("_identify")
            r2.save
        End If
        For Each dr23 As DataRow In drs1
            Dim dr22 As DataRow = DataTables("告知内容").Find("部门受案号 = '" & r1("部门受案号") & "'  and 姓名 ='" & dr23("姓名") & "'and 受理日期 = #" & r1("受理日期") & "# ")
            If  r1("是否关联")="是" Then
                
                If dr22 Is Nothing Then '如果不存在同编号的订单
                    MessageBox.Show("1")
                    Dim r3 As Row =tb2.Table.AddNew
                    MessageBox.Show(r1("部门受案号"))
                    r3("部门受案号")=r1("部门受案号")
                    r3("嫌疑人姓名")=r1("嫌疑人姓名")
                    r3("是否告知")="否"
                    r3("事项理由")="请注意"
                    r3("案件状态")="审理中"
                    r3("人员类型")="案件关联人"
                    r3("涉嫌案由")=r1("涉嫌案由")
                    r3("案件类别")=r1("案件类别")
                    r3("受理日期")= r1("受理日期")
                    r3("审结日期")= r1("审结日期")
                    r3("姓名")=dr23("姓名")
                    r3("告知方式_邮件")="否"
                    r3("告知方式_短信")="否"
                    r3("告知方式_QQ")="否"
                    r3("告知方式_微信")="否"
                    r3("承办人")=r1("承办人")
                    r3("案件状态")= 状态
                    r3("序号")= r1("_identify")
                    r3.save
                End If
                
            End If
        Next
        
    Next
Next

 回到顶部