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

📄 salereduceform.vb

📁 一个商品销售管理系统
💻 VB
📖 第 1 页 / 共 2 页
字号:
        Dim My实际退货价 As Double = Convert.ToDouble(Me.实际退货价TextBox.Text)
        Dim My数量 As Double = Convert.ToDouble(Me.数量TextBox.Text)
        Dim My金额 As Double = My实际退货价 * My数量
        Me.金额TextBox.Text = My金额.ToString()
    End Sub
    Private Sub 添加商品Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 添加商品Button.Click
        If (Me.金额TextBox.Text.Length < 1) Then
            Return
        End If
        MyID = MyID + 1
        Dim MyRow As DataRow = MyTable.NewRow()
        MyRow(0) = MyID
        MyRow("商品编号") = Me.商品编号TextBox.Text
        MyRow("商品名称") = Me.商品名称TextBox.Text
        MyRow("规格型号") = Me.规格型号TextBox.Text
        MyRow("单位") = Me.单位TextBox.Text
        MyRow("实际销售价") = Me.实际销售价TextBox.Text
        MyRow("实际退货价") = Me.实际退货价TextBox.Text
        MyRow("数量") = Me.数量TextBox.Text
        MyRow("金额") = Me.金额TextBox.Text
        MyTable.Rows.Add(MyRow)
        Dim My退货金额 As Double = Convert.ToDouble(Me.退货金额TextBox.Text)
        My退货金额 += Convert.ToDouble(Me.金额TextBox.Text)
        Me.退货金额TextBox.Text = My退货金额.ToString()
        Me.金额TextBox.Text = ""
    End Sub
    Private Sub 减少商品Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 减少商品Button.Click
        Dim My退货金额 As Double = Convert.ToDouble(Me.退货金额TextBox.Text)
        My退货金额 -= Convert.ToDouble(Me.退货明细DataGridView.CurrentRow.Cells(8).Value.ToString())
        Me.退货金额TextBox.Text = My退货金额.ToString()
        Dim MyIndex As Integer = Me.退货明细DataGridView.CurrentRow.Index
        MyTable.Rows.RemoveAt(MyIndex)
    End Sub
    Private Sub 打印退货单Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 打印退货单Button.Click
        Me.printPreviewDialog1.Document = Me.printDocument1
        Me.printPreviewDialog1.ShowDialog()
    End Sub
    Private Sub printDocument1_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles printDocument1.PrintPage
        '打印退货明细单
        e.Graphics.DrawString(Me.MyCompany + "商品销售退货单", New Font("宋体", 20), Brushes.Black, 140, 80)
        e.Graphics.DrawString("退货单号:" + Me.退货单号TextBox.Text.ToUpper(), New Font("宋体", 12), Brushes.Black, 100, 150)
        e.Graphics.DrawString("记帐本位币:人民币(元)", New Font("宋体", 12), Brushes.Black, 530, 150)
        e.Graphics.DrawLine(New Pen(Color.Black, 3.0), 100, 170, 720, 170)
        e.Graphics.DrawString("客户名称:" + Me.客户名称TextBox.Text, New Font("宋体", 12), Brushes.Black, 110, 175)
        e.Graphics.DrawString("退货金额:" + Me.退货金额TextBox.Text, New Font("宋体", 12), Brushes.Black, 400, 175)
        e.Graphics.DrawString("支付金额:" + Me.实付金额TextBox.Text, New Font("宋体", 12), Brushes.Black, 550, 175)
        e.Graphics.DrawLine(New Pen(Color.Black), 100, 195, 720, 195)
        e.Graphics.DrawString("付款方式:" + Me.付款方式ComboBox.Text, New Font("宋体", 12), Brushes.Black, 110, 200)
        e.Graphics.DrawString("经办人:" + Me.经办人TextBox.Text, New Font("宋体", 12), Brushes.Black, 400, 200)
        e.Graphics.DrawString("入库日期:" + Me.入库日期DateTimePicker.Value.ToShortDateString(), New Font("宋体", 12), Brushes.Black, 530, 200)
        e.Graphics.DrawLine(New Pen(Color.Black), 100, 220, 720, 220)
        e.Graphics.DrawString("说明:" + Me.说明TextBox.Text, New Font("宋体", 12), Brushes.Black, 110, 225)
        e.Graphics.DrawLine(New Pen(Color.Black, 3.0), 100, 245, 720, 245)
        e.Graphics.DrawString("商品名称", New Font("宋体", 12), Brushes.Black, 160, 250)
        e.Graphics.DrawString("规格型号", New Font("宋体", 12), Brushes.Black, 350, 250)
        e.Graphics.DrawString("单位", New Font("宋体", 12), Brushes.Black, 450, 250)
        e.Graphics.DrawString("单价", New Font("宋体", 12), Brushes.Black, 510, 250)
        e.Graphics.DrawString("数量", New Font("宋体", 12), Brushes.Black, 570, 250)
        e.Graphics.DrawString("金额", New Font("宋体", 12), Brushes.Black, 650, 250)
        Dim MyPosY As Integer = 270
        Dim MyAmount As Integer = 0
        For i As Integer = 0 To MyTable.Rows.Count - 1 Step 1
            e.Graphics.DrawLine(New Pen(Color.Black), 100, MyPosY, 720, MyPosY)
            e.Graphics.DrawString(MyTable.Rows(i)(2).ToString(), New Font("宋体", 12), Brushes.Black, 110, MyPosY + 5)
            e.Graphics.DrawString(MyTable.Rows(i)(3).ToString(), New Font("宋体", 12), Brushes.Black, 330, MyPosY + 5)
            e.Graphics.DrawString(MyTable.Rows(i)(4).ToString(), New Font("宋体", 12), Brushes.Black, 450, MyPosY + 5)
            e.Graphics.DrawString(MyTable.Rows(i)(6).ToString(), New Font("宋体", 12), Brushes.Black, 500, MyPosY + 5)
            e.Graphics.DrawString(MyTable.Rows(i)(7).ToString(), New Font("宋体", 12), Brushes.Black, 570, MyPosY + 5)
            e.Graphics.DrawString(MyTable.Rows(i)(8).ToString(), New Font("宋体", 12), Brushes.Black, 630, MyPosY + 5)
            MyAmount = MyAmount + MyTable.Rows(i)(5)
            MyPosY = MyPosY + 25
        Next
        e.Graphics.DrawLine(New Pen(Color.Black, 3.0), 100, MyPosY, 720, MyPosY)
        e.Graphics.DrawString("打印日期:" + DateTime.Now.ToShortDateString(), New Font("宋体", 12), Brushes.Black, 530, MyPosY + 5)
    End Sub
    Private Sub 保存退货单Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 保存退货单Button.Click
        If (Me.退货金额TextBox.Text.Length < 2) Then
            Return
        End If
        If (MessageBox.Show("请检查退货商品信息是否正确,一旦保存就无法修改,是否继续?", "信息提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = DialogResult.No) Then
            Return
        End If
        Dim MySQLConnectionString As String = My.Settings.MySaleConnectionString
        Dim MySQL As String = "INSERT INTO 销售信息(自编号,销售单号,客户名称,应收金额,实收金额,收款方式,经办人,出库日期,说明)VALUES('"
        MySQL += Me.自编号TextBox.Text + "','"
        MySQL += Me.退货单号TextBox.Text + "','"
        MySQL += Me.客户名称TextBox.Text + "',"
        MySQL += Me.退货金额TextBox.Text + ","
        MySQL += "-" + Me.实付金额TextBox.Text + ",'"
        MySQL += Me.付款方式ComboBox.Text + "','"
        MySQL += Me.经办人TextBox.Text + "','"
        MySQL += Me.入库日期DateTimePicker.Value.ToString() + "','"
        MySQL += Me.说明TextBox.Text + "');"
        Dim MyConnection As New SqlConnection(MySQLConnectionString)
        MyConnection.Open()
        Dim MyCommand As SqlCommand = MyConnection.CreateCommand()
        MyCommand.CommandText = MySQL
        MyCommand.ExecuteNonQuery()
        For Each MyRow As DataRow In MyTable.Rows
            MySQL = "INSERT INTO 销售明细(自编号,销售单号,商品编号,数量,单价,金额) VALUES('"
            MySQL += Me.GetNewID() + "','"
            MySQL += Me.退货单号TextBox.Text + "','"
            MySQL += MyRow(1).ToString() + "',"
            MySQL += MyRow(7).ToString() + ","
            MySQL += MyRow(6).ToString() + ","
            MySQL += MyRow(8).ToString() + ");"
            MySQL += "Update 商品信息 SET 累计销售量=累计销售量+" + MyRow(7).ToString() + " WHERE 商品编号='" + MyRow(1).ToString() + "';"
            MyCommand.CommandText = MySQL
            MyCommand.ExecuteNonQuery()
        Next
        If (MyConnection.State = ConnectionState.Open) Then
            MyConnection.Close()
        End If
        MyTable.Rows.Clear()
        新增退货单Button_Click(Nothing, Nothing)
    End Sub
    Private Function GetNewID() As String
        '自动计算自编号
        Dim MySQLConnectionString As String = My.Settings.MySaleConnectionString
        Dim MyConnection As New SqlConnection(MySQLConnectionString)
        MyConnection.Open()
        Dim MyCommand As SqlCommand = MyConnection.CreateCommand()
        MyCommand.CommandText = "Select max(自编号) 最大编号 From 销售明细"
        Dim MyResult As Object = MyCommand.ExecuteScalar()
        Dim MyID As System.Int64 = 1
        If (Not (MyResult Is System.DBNull.Value)) Then
            Dim MyMaxID As String = MyResult.ToString().Trim()
            MyMaxID = MyMaxID.Substring(2, MyMaxID.Length - 2)
            MyID = Convert.ToInt64(MyMaxID) + 1
        End If
        Dim MyLength As Integer = MyID.ToString().Length
        Dim MyNewID As String = ""
        Select Case (MyLength)
            Case 1
                    MyNewID = "MX0000000" + MyID.ToString()
            Case 2
                    MyNewID = "MX000000" + MyID.ToString()
            Case 3
                    MyNewID = "MX00000" + MyID.ToString()
            Case 4
                    MyNewID = "MX0000" + MyID.ToString()
            Case 5
                    MyNewID = "MX000" + MyID.ToString()
            Case 6
                    MyNewID = "MX00" + MyID.ToString()
            Case 7
                    MyNewID = "MX0" + MyID.ToString()
        End Select
        If (MyConnection.State = ConnectionState.Open) Then
            MyConnection.Close()
        End If
        Return MyNewID
    End Function
End Class

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -