⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qg_zongjingli_shenpi.vb

📁 本软件设计为在"采购部""工程部""财务部""总经理"等部门之间的采购审核流转等事宜
💻 VB
📖 第 1 页 / 共 4 页
字号:
            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 + -