📄 saleaddform.vb
字号:
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 保存出库单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.客户名称ComboBox.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()
Me.应收金额TextBox.Text = ""
SetMerchandise()
新增出库单Button_Click(Nothing, Nothing)
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.客户名称ComboBox.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, 570, 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 Double = 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 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 Integer = 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 + -