Dim cmd As New SQLCommand
cmd.C
cmd.CommandText = "sel ect a.报价,b.供应商编号,b.供应商名称 from 采购报价明细表 a left join 采购报价表 b on a.采购报价编号 = b.采购报价编号 where b.业务状态 = '2' and b.审核状态 = '2' and a.物料编号 = '" & tr1("物料编号") & "'"
Dim dtBJ As DataTable = cmd.ExecuteReader
If dtBJ.datarows.count = 0 Then '未找到有效报价,报错返回提示增加有效报价
msgbox("出现错误:以下物料未找到有效报价:" & vbcrlf & tr1("物料编号") & "|" & tr1("物料名称") & vbcrlf & vbcrlf & "原因可能是:" & vbcrlf & "1?原有报价过期失效;" & vbcrlf & "2?尚未进行报价." & vbcrlf & vbcrlf & "请检查清楚并处理后,再执行本操作.")
Return
ElseIf dtBJ.datarows.count = 1 Then '找到有效报价且唯一,直接采纳
Dim drBJ As DataRow = dtBJ.datarows(0)
dr1_1("供应商编号") = drBJ("供应商编号")
dr1_1("供应商名称") = drBJ("供应商名称")
dr1_1("报价") = drBJ("报价")
Else '找到有效报价且不唯一,则弹出窗体,提示选择其中一个供应商
vars("采购订单选择供应商") = tr1("物料编号") & "|" & tr1("物料名称")
forms("采购订单选择供应商").open '打开窗体选择供应商后返回供应商编号
Dim drBJ As DataRow = dtBJ.find("供应商编号 = '" & vars("采购订单选择供应商") & "'")
dr1_1("供应商编号") = drBJ("供应商编号")
dr1_1("供应商名称") = drBJ("供应商名称")
dr1_1("报价") = drBJ("报价")
End If
以上:
这样实际运行跟设计的不一样,看了先对事件暂停貌似也不对,有什么方法可以实现类似效果?