以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [原创]请高手帮忙分析一下以下语句  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=98994)

--  作者:hnguang
--  发布时间:2017/4/10 19:57:00
--  [原创]请高手帮忙分析一下以下语句
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:新建文本文档 (2).txt

发不了这么多字,只好上传一个文本文件


--  作者:有点蓝
--  发布时间:2017/4/10 20:45:00
--  
If Tables("询价记录_Table1").Cols.Contains("厂商编号") Then
    If Tables("询价记录_Table1").Current IsNot Nothing
        Dim bh=Tables("询价记录_Table1").Current("厂商编号")
        
        If bh<>"" Then
            
            Dim b = e.DataRow("厂商编号")
            
            Dim conn As String="ljc_new"
            Dim cmd As New SQLCommand
            cmd=new SQLCommand
            cmd.ConnectionName=conn
            cmd.CommandText="select * from m客戶廠商資料 where 編號=\'" & bh & "\' and 旗標=\'2\'"
            Dim dt As DataTable
            Dim dr As DataRow
            dt=cmd.ExecuteReader
            dr = dt.DataRows(0)
            
            If dt.DataRows.Count<=0 Then
                MessageBox.Show("你所输入的厂商不存在,请重新输入!")
                Return
            End If
            
            
            If dt.DataRows.Count > 0 Then
                Tables("询价记录_Table1").Current("厂商名称")=dr("名稱")
                Tables("询价记录_Table1").Current("币别编号")=dr("付款幣別")
                Tables("询价记录_Table1").Current("询价日期")=Today
            End If
        End If
    End If
End If

--  作者:hnguang
--  发布时间:2017/4/10 22:18:00
--  
可是在数据返回为空时,提示超出数组范围
--  作者:有点蓝
--  发布时间:2017/4/10 22:23:00
--  
If Tables("询价记录_Table1").Cols.Contains("厂商编号") Then
    If Tables("询价记录_Table1").Current IsNot Nothing
        Dim bh=Tables("询价记录_Table1").Current("厂商编号")
        
        If bh >"" Then
            
            Dim b = e.DataRow("厂商编号")
            
            Dim conn As String="ljc_new"
            Dim cmd As New SQLCommand
            cmd.ConnectionName=conn
            cmd.CommandText="select * from m客戶廠商資料 where 編號=\'" & bh & "\' and 旗標=\'2\'"
            Dim dt As DataTable
            Dim dr As DataRow
            dt=cmd.ExecuteReader
            
            
            If dt.DataRows.Count=0 Then
                MessageBox.Show("你所输入的厂商不存在,请重新输入!")
                Return
            End If
            dr = dt.DataRows(0)
            
            Tables("询价记录_Table1").Current("厂商名称")=dr("名稱")
            Tables("询价记录_Table1").Current("币别编号")=dr("付款幣別")
            Tables("询价记录_Table1").Current("询价日期")=Today
        End If
    End If
End If