📄 qg_zongjingli_shenpi.vb
字号:
mydataset.Dispose()
End If
End Sub
'由工程编号得到工程名称
Private Sub ComboBox2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox2.SelectedIndexChanged
Dim str As String = "select 工程名称 from technologyInf where 工程编号 = " + Chr(39) + ComboBox2.Text.Trim + Chr(39)
Dim mydataset As New DataSet
mydataset = GetDataFromDB(str)
TextBox2.Text = Trim(mydataset.Tables(0).Rows(0)("工程名称"))
mydataset.Dispose()
End Sub
'改变已提交请购编号,显示详细的请购信息
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
If ComboBox1.Text.Trim = "已提交采购单" Then
Exit Sub
End If
xianshigongyingshang_mingcheng() '显示每个采购单的所有已经填写的供应商名称
xianzhiqinggoudanzhudanneirong() '显示请购单主单内容
End Sub
'根据供应商的名称显示具体的采购信息,包含单价,金额等等
Private Sub ComboBox4_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox4.SelectedIndexChanged
TextBox7.Text = ComboBox4.Text.Trim
Dim ssstr As String
If RadioButton2.Checked = True Then
ssstr = ComboBox3.Text.Trim
ElseIf RadioButton1.Checked = True Then
ssstr = ComboBox1.Text.Trim
End If
Dim str As String = "select * from dinggou_cailiao_baojiadan where 采购单编号 = " + Chr(39) + ssstr + Chr(39) + " and 供应商名称 =" + Chr(39) + ComboBox4.Text.Trim + Chr(39)
Dim mydataset As New DataSet
mydataset = GetDataFromDB(str)
DataGrid1.DataSource = mydataset
Dim i As Integer
Dim mystr As String
Dim int1 As Decimal = 0
Dim int As Decimal = 0
Dim y, yyy As Integer
y = mydataset.Tables(0).Rows.Count
yyy = mydataset.Tables(0).Rows.Count
'判断每项的使用总值是否大于预算值
For yyy = 0 To y - 1
Dim aa As String
aa = Trim(mydataset.Tables(0).Rows(i)("CD3+4编码"))
lirong = Trim(mydataset.Tables(0).Rows(i)("物品名称"))
jiancha_yusuan(aa) '报警(当使用值大于预算值的时候)
Next
If y = 0 Then
TextBox6.Text = "0"
Else
For i = 0 To y - 1
mystr = mydataset.Tables(0).Rows(i)("供应商金额")
int1 = Convert.ToDecimal(mystr)
int = int1 + int
TextBox6.Text = int.ToString
Next
End If
mydataset.Dispose()
'显示优惠后总金额
Dim sstr As String = "select * from dg_gongyingshang_youhuijia where 订购单编号 = " + Chr(39) + ssstr + Chr(39) + " and 供应商名称 =" + Chr(39) + ComboBox4.Text.Trim + Chr(39)
Dim myddataset As New DataSet
myddataset = GetDataFromDB(sstr)
Dim yy As Integer = myddataset.Tables(0).Rows.Count
If yy = 0 Then
MsgBox("您还没有填写该供应商的优惠总价!", MsgBoxStyle.Information, "提示")
TextBox8.Text = ""
Exit Sub
Else
TextBox8.Text = myddataset.Tables(0).Rows(0)("优惠后金额")
myddataset.Dispose()
End If
End Sub
'本窗体的load事件
Private Sub qg_caigoujingli_shenpi_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
gongchengbianhao() '得到待填写的工程编号
End Sub
'提交给下面一级操作,或者退回
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
'判断用户提交的合法性
Dim mystr As String = TextBox100.Text.Trim
Dim str As String = "select user_pwd from UserInfo where user_id =" + Chr(39) + user_id_yj.Trim + Chr(39) + " and user_pwd =" + Chr(39) + mystr + Chr(39)
If GetDataFromDB(str).Tables(0).Rows.Count = 0 Then
MsgBox("您的密码错误,请重新输入!", MsgBoxStyle.Information, "提示")
TextBox100.Text = ""
TextBox100.Focus()
Exit Sub
End If
If RadioButton2.Checked = False Or ComboBox3.Text.Trim = "待审批订购单" Then
MsgBox("现在不能提交,请选择要提交的订购单编号!", MsgBoxStyle.Information, "提示")
Exit Sub
End If
'提交过程或者退回操作
If ComboBox8.Text.Trim = "同意" Then
If MsgBox("注意:请再好好复查一下,如果确定无误后再提交,提交后您将不能再进行修改了。你确定要提交吗?", MsgBoxStyle.OKCancel, "提示") = MsgBoxResult.OK Then
Dim sqlstr As String
Dim mysqlstr As String
Dim ssqlstr As String
sqlstr = "UPDATE dinggou_zongbiao SET 总经理审批时间=" + Chr(39) + Now.Date.ToString + Chr(39) + " , 总经理 =" + Chr(39) + UserName + Chr(39) + ",总经理审批意见=" + Chr(39) + TextBox200.Text.Trim + Chr(39) + ",总经理审批结果=" + Chr(39) + ComboBox8.Text.Trim + Chr(39) + ",流程=" + Chr(39) + "3" + Chr(39) + ",是否为退回=" + Chr(39) + "0" + Chr(39) + ",选择的供应商名称=" + Chr(39) + TextBox7.Text.Trim + Chr(39) + "where 采购单编号=" + Chr(39) + ComboBox3.Text.Trim + Chr(39)
ssqlstr = "UPDATE dinggou_cailiao_baojiadan SET 是否订购=" + Chr(39) + "是" + Chr(39) + "where 供应商名称=" + Chr(39) + TextBox7.Text.Trim + Chr(39) + " and 采购单编号 = " + Chr(39) + ComboBox3.Text.Trim + Chr(39)
If UpdateData(sqlstr) = True And UpdateData(ssqlstr) = True Then
MsgBox("已经成功提交了该订购资料,并且请在报警管理设置报警提醒采购经理和采购文员已经审批完成!", MsgBoxStyle.OKOnly + _
MsgBoxStyle.Exclamation, "提示")
Me.RadioButton2.Checked = True
Else
MsgBox("没能成功提交该订购资料,请与管理员联系", MsgBoxStyle.OKOnly + _
MsgBoxStyle.Exclamation, "提示")
Exit Sub
End If
Else
Exit Sub
End If
Else
If MsgBox("您确定不同意该订购单要退回重新处理吗?", MsgBoxStyle.OKCancel, "提示") = MsgBoxResult.OK Then
Dim sqlstr As String
sqlstr = "UPDATE dinggou_zongbiao SET 总经理审批时间=" + Chr(39) + Now.Date.ToString + Chr(39) + " , 总经理 =" + Chr(39) + UserName + Chr(39) + ",总经理审批意见=" + Chr(39) + TextBox200.Text.Trim + Chr(39) + ",总经理审批结果=" + Chr(39) + ComboBox8.Text.Trim + Chr(39) + ",流程=" + Chr(39) + "1" + Chr(39) + ", 是否为退回=" + Chr(39) + "1" + Chr(39) + "where 采购单编号=" + Chr(39) + ComboBox3.Text.Trim + Chr(39)
If UpdateData(sqlstr) = True Then
MsgBox("您已经退回了该订购单!", MsgBoxStyle.Information, "提示")
Exit Sub
End If
Else
MsgBox("请确认后重新提交该订购单!", MsgBoxStyle.Information, "提示")
Exit Sub
End If
End If
End Sub
Private Sub ComboBox8_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox8.SelectedIndexChanged
If ComboBox8.Text.Trim = "同意" Then
Button3.Text = "提 交"
Else
Button3.Text = "退 回"
End If
End Sub
Private Sub RadioButton3_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton3.CheckedChanged
If RadioButton3.Checked = True Then
xianyouqinggoudan() '得到现有请购单
ComboBox3.Text = "现有订购单"
End If
End Sub
'得到现有请购单
Private Sub xianyouqinggoudan()
Dim str As String = "select 采购单编号 from dinggou_zongbiao where 流程 <> " + Chr(39) + "4" + Chr(39)
Dim mydataset As New DataSet
mydataset = GetDataFromDB(str)
Dim i As Integer = 0
Dim y As Integer = mydataset.Tables(0).Rows.Count
Me.ComboBox6.Items.Clear()
For i = 0 To (y - 1)
Dim sstr As String = Trim(mydataset.Tables(0).Rows(i)("采购单编号"))
ComboBox6.Items.Add(sstr)
Next
mydataset.Dispose()
End Sub
Private Sub ComboBox6_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox6.SelectedIndexChanged
If ComboBox6.Text.Trim = "现有订购单" Then
Exit Sub
End If
xianshigongyingshang_mingcheng() '显示每个采购单的所有已经填写的供应商名称
xianzhiqinggoudanzhudanneirong() '显示请购单主单内容
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If RadioButton2.Checked = False Or ComboBox3.Text.Trim = "现有订购单" Then
MsgBox("你还没有选择订购单号!", MsgBoxStyle.Information, "提示")
Exit Sub
ElseIf ComboBox4.Text.Trim = "供应商信息" Then
MsgBox("你还没有选择供应商名称!", MsgBoxStyle.Information, "提示")
Exit Sub
End If
baobiao_str = ComboBox3.Text.Trim '现有订购单信息
baobiao_str1 = ComboBox4.Text.Trim '现有供应商信息
Dim myform As New frm_dg_baobiao
myform.Show()
End Sub
'综合检查采购物品的总金额是否已经超过预算金额
Private Function jiancha_yusuan(ByVal a As String) 'a是[CD3+4编码]
Dim str, str1 As String
Dim str2, str3 As String
Dim shuzi1, shuzi2 As Decimal
Dim mydataset As New DataSet
Dim mymydataset As New DataSet
'得到已经采购的总值
str1 = "select sum(供应商金额) from dinggou_cailiao_baojiadan where 采购单编号 =" + Chr(39) + ComboBox3.Text.Trim + Chr(39) + " and [CD3+4编码] =" + Chr(39) + a.Trim + Chr(39) + " and 是否订购 = " + Chr(39) + "是" + Chr(39)
mydataset = GetDataFromDB(str1)
str2 = Microsoft.VisualBasic.IsDBNull(mydataset.Tables(0).Rows(0).Item(0))
If str2 = "True" Then
str2 = "0"
Else
str2 = Trim(mydataset.Tables(0).Rows(0).Item(0))
End If
shuzi1 = Convert.ToDecimal(str2) '已经使用掉的预算值
str = "select [预算支出(人民币-元)] from yusuan_xiangxiqingkuangbiao where 工程编码 = " + Chr(39) + ComboBox2.Text.Trim + Chr(39) + " and [CD3+4编码] = " + Chr(39) + a + Chr(39)
mymydataset = GetDataFromDB(str)
If mymydataset.Tables(0).Rows.Count < 1 Then
MsgBox("物品:" + lirong + "; 该预算不存在;且已经超额使用的金额为:" + str2, MsgBoxStyle.OKOnly, "提示")
Else
str3 = mymydataset.Tables(0).Rows(0).Item(0)
shuzi2 = Convert.ToDecimal(str3) '预算值
If shuzi2 < shuzi1 Then
If MsgBox("物品:" + lirong + "该项目预算总值为:" + str3 + ",该项目已经使用的预算为:" + str2 + ",已经超过预算了!", MsgBoxStyle.OKOnly, "提示!") = MsgBoxResult.OK Then
End If
End If
End If
mydataset.Dispose()
mymydataset.Dispose()
End Function
'当前项改变时候
Private Sub DataGrid1_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged
lirong = Trim(DataGrid1.Item(DataGrid1.CurrentCell.RowNumber, 3)) '物品名称
lirong2 = Trim(DataGrid1.Item(DataGrid1.CurrentCell.RowNumber, 2)) 'CD3+4编码
End Sub
'单项检查物品的预算和实际支出的关系
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
If lirong2 Is Nothing Then
MsgBox("请选择要单项检查项!", MsgBoxStyle.Information, "提示")
Exit Sub
End If
jiancha_yusuan(lirong2)
End Sub
'综合检查
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
MsgBox("选择供应商就是在综合检查!", MsgBoxStyle.Information, "提示")
End Sub
End Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -