123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374 |
- Option Strict Off
- Imports System.Data.SqlClient
- Public Class 營運成本收支單申請
- ReadOnly conn As New SqlConnection
- ReadOnly da As New SqlDataAdapter
- ReadOnly cmd As New SqlCommand
- ReadOnly ds As New DataSet : ReadOnly ds1 As New DataSet
- Dim dr As SqlDataReader
- Dim DTP As String : Dim DTP1 As String : Dim 新項次 As String : Dim WWEE As String : Dim 新流水1 As String : Dim 新流水2 As String
- Dim NUM1 As Integer : Dim 匯率1 As Double
- Private Sub Set_清單1()
- DataGridView2.DataSource = Nothing : ds1.Clear()
- DataGridView2.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
- DataGridView2.ColumnHeadersHeight = 25
- DataGridView2.AllowUserToAddRows = False
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- If RadioButton1.Checked = True And RadioButton2.Checked = False And RadioButton3.Checked = False Then
- WWEE = "WHERE (審核人 LIKE '') "
- ElseIf RadioButton1.Checked = False And RadioButton2.Checked = True And RadioButton3.Checked = False Then
- WWEE = "WHERE (審核人 LIKE '作廢%') "
- ElseIf RadioButton1.Checked = False And RadioButton2.Checked = False And RadioButton3.Checked = True Then
- WWEE = "WHERE (審核人 NOT LIKE '作廢%') AND (審核人 NOT LIKE '') "
- End If
- SQL1 = "SELECT 支付單號 AS 收支單號, 申請日期, 審核日期, 申請人 FROM 公帳控制表 " & WWEE & " ORDER BY 申請日期 DESC"
- cmd.Connection = conn : cmd.CommandText = SQL1 : da.SelectCommand = cmd : da.Fill(ds1) : DataGridView2.DataSource = ds1.Tables(0) : conn.Close()
-
- DataGridView2.Columns(0).FillWeight = 160 : DataGridView2.Columns(1).FillWeight = 100 : DataGridView2.Columns(2).FillWeight = 100 : DataGridView2.Columns(3).Visible = False
- End Sub
- Private Sub Set_費用清單()
- DataGridView1.DataSource = Nothing : ds.Clear()
- DataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
- DataGridView1.ColumnHeadersHeight = 25
- DataGridView1.AllowUserToAddRows = False
- DataGridView1.RowTemplate.Height = 35
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "SELECT 公帳流水帳.支付單號, 公帳流水帳.項次, 會計科目.會計科目, 公帳流水帳.明細 AS 用途,
- 公帳流水帳.零用金, 公帳流水帳.支票數 AS 支票, Cast(公帳流水帳.收入 AS money) AS 現金,
- Cast(公帳流水帳.支出 AS money) AS 支出, 公帳流水帳.備註 AS 票期, 公帳流水帳.匯率, 公帳流水帳.銀行 AS 幣別, 公帳流水帳.類別, 公帳流水帳.流水號
- FROM 公帳流水帳 INNER JOIN
- 會計科目 ON 公帳流水帳.類別 = 會計科目.編號
- WHERE (公帳流水帳.支付單號 LIKE '" & TextBox1.Text & "')
- ORDER BY 公帳流水帳.項次"
- cmd.Connection = conn : cmd.CommandText = SQL1 : da.SelectCommand = cmd : da.Fill(ds) : DataGridView1.DataSource = ds.Tables(0) : conn.Close()
-
- DataGridView1.Columns(0).Visible = False : DataGridView1.Columns(1).FillWeight = 80 : DataGridView1.Columns(2).FillWeight = 300 : DataGridView1.Columns(3).FillWeight = 500
- DataGridView1.Columns(4).FillWeight = 140 : DataGridView1.Columns(5).FillWeight = 140 : DataGridView1.Columns(6).FillWeight = 140 : DataGridView1.Columns(7).FillWeight = 140
- DataGridView1.Columns(8).FillWeight = 140 : DataGridView1.Columns(9).FillWeight = 140 : DataGridView1.Columns(10).FillWeight = 140 : DataGridView1.Columns(11).Visible = False
- DataGridView1.Columns(12).Visible = False
-
- DataGridView1.Columns(1).ReadOnly = True : DataGridView1.Columns(2).ReadOnly = True : DataGridView1.Columns(9).ReadOnly = True : DataGridView1.Columns(10).ReadOnly = True
-
- DataGridView1.Columns(4).DefaultCellStyle.Format = "#,##0.00" : DataGridView1.Columns(5).DefaultCellStyle.Format = "#,##0.00" : DataGridView1.Columns(6).DefaultCellStyle.Format = "#,##0.00"
- DataGridView1.Columns(7).DefaultCellStyle.Format = "#,##0.00" : DataGridView1.Columns(8).DefaultCellStyle.Format = "#,##0.00"
- DataGridView1.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : DataGridView1.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
- DataGridView1.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : DataGridView1.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
- DataGridView1.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : DataGridView1.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
- DataGridView1.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : DataGridView1.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
- DataGridView1.Columns(9).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : DataGridView1.Columns(9).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- DataGridView1.Columns(10).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : DataGridView1.Columns(10).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- DataGridView1.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : DataGridView1.Columns(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
- DataGridView1.EditMode = DataGridViewEditMode.EditOnEnter
-
- TextBox5.Text = "0.00" : TextBox2.Text = "0.00" : TextBox6.Text = "0.00" : TextBox7.Text = "0" : TextBox8.Text = "0.00"
- For i As Integer = 0 To DataGridView1.Rows.Count - 1
- TextBox5.Text = Val(TextBox5.Text) + Val(DataGridView1.Rows(i).Cells("現金").Value) : TextBox2.Text = Val(TextBox2.Text) + Val(DataGridView1.Rows(i).Cells("支出").Value)
- TextBox7.Text = Val(TextBox7.Text) + DataGridView1.Rows(i).Cells("零用金").Value : TextBox8.Text = Val(TextBox8.Text) + DataGridView1.Rows(i).Cells("支票").Value
- Next i
- TextBox6.Text = Val(TextBox7.Text) + Val(TextBox5.Text) - Val(TextBox2.Text)
- If Val(TextBox6.Text) > 0 Then : TextBox6.ForeColor = Color.Blue : Else : TextBox6.ForeColor = Color.Red : End If
- TextBox5.Text = Format(Val(TextBox5.Text), "#,##0.00") : TextBox2.Text = Format(Val(TextBox2.Text), "#,##0.00") : TextBox6.Text = Format(Val(TextBox6.Text), "#,##0.00")
- TextBox7.Text = Format(Val(TextBox7.Text), "#,##0.00") : TextBox8.Text = Format(Val(TextBox8.Text), "#,##0.00")
- End Sub
- Private Sub ComboBox1下拉表單資料載入()
- conn.Close()
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "SELECT 會計科目, 編號 FROM 會計科目 WHERE (LEFT(編號, 7) LIKE N'" & ComboBox4.Text & "') AND (停用 = 0) AND (統制科目 = 0) ORDER BY 編號"
- cmd.CommandText = SQL1 : cmd.Connection = conn : dr = cmd.ExecuteReader : ComboBox1.Items.Clear() : ComboBox6.Items.Clear()
- While (dr.Read()) : ComboBox1.Items.Add(dr("會計科目")) : ComboBox6.Items.Add(dr("編號")) : End While : conn.Close()
- If ComboBox1.Items.Count <> 0 Then : ComboBox1.SelectedIndex = 0 : End If
- End Sub
- Private Sub ComboBox2下拉表單資料載入()
- conn.Close()
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "SELECT 第一階, LEFT(編號, 4) AS 編號 FROM 會計科目 WHERE (停用 = 0) GROUP BY 第一階, LEFT(編號, 4) ORDER BY 編號"
- cmd.CommandText = SQL1 : cmd.Connection = conn : dr = cmd.ExecuteReader : ComboBox5.Items.Clear() : ComboBox2.Items.Clear() : ComboBox5.Text = "" : ComboBox2.Text = ""
- While (dr.Read()) : ComboBox5.Items.Add(dr("第一階")) : ComboBox2.Items.Add(dr("編號")) : End While : conn.Close()
- End Sub
- Private Sub ComboBox3下拉表單資料載入()
- conn.Close()
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "SELECT LEFT(編號, 7) AS 編號, 第二階, 層級 FROM 會計科目 WHERE (LEFT(編號, 4) LIKE N'" & ComboBox2.Text & "') AND (層級 NOT LIKE '3') AND (停用 = 0)
- GROUP BY LEFT(編號, 7), 第二階, 層級 ORDER BY 編號"
- cmd.CommandText = SQL1 : cmd.Connection = conn : dr = cmd.ExecuteReader : ComboBox3.Items.Clear() : ComboBox4.Items.Clear() : ComboBox3.Text = "" : ComboBox4.Text = ""
- While (dr.Read()) : ComboBox3.Items.Add(dr("第二階")) : ComboBox4.Items.Add(dr("編號")) : End While : conn.Close()
- End Sub
- Private Sub 匯率()
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "SELECT 中心匯率, 美金匯率 FROM 歷史匯率表
- WHERE (年 LIKE '" & Strings.Left(Format(DateTimePicker1.Value, "yyyyMMdd"), 4) & "%') AND (月 LIKE '" & Strings.Mid(Format(DateTimePicker1.Value, "yyyyMMdd"), 5, 2) & "%')"
- cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader
- If dr.Read() Then
- 人民幣匯率_tb.Text = dr("中心匯率").ToString : 美金匯率_tb.Text = dr("美金匯率").ToString : conn.Close() : dr.Close()
- Else
- conn.Close() : dr.Close() : 匯率修改.Close() : 匯率修改.Show() : 匯率修改.BringToFront()
- End If
- End Sub
- Private Sub 營運成本支付申請_Load(sender As Object, e As EventArgs) Handles MyBase.Load
- Me.MdiParent = GCM_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
- RadioButton1.Checked = True : DateTimePicker2.Visible = False : 複製單據開單ToolStripMenuItem.Enabled = False : ComboBox6.Visible = False
- DataGridView2.Visible = True : Set_清單1() : ComboBox2下拉表單資料載入()
- 匯率()
- End Sub
- Private Sub ComboBox5_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox5.TextChanged
- ComboBox2.SelectedIndex = ComboBox5.SelectedIndex : TextBox9.Text = "" : ComboBox3下拉表單資料載入() : ComboBox1下拉表單資料載入()
- End Sub
- Private Sub ComboBox2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox2.TextChanged
- ComboBox5.SelectedIndex = ComboBox2.SelectedIndex : ComboBox3下拉表單資料載入() : ComboBox1下拉表單資料載入()
- End Sub
- Private Sub ComboBox3_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox3.TextChanged
- ComboBox4.SelectedIndex = ComboBox3.SelectedIndex : ComboBox1下拉表單資料載入()
- End Sub
- Private Sub ComboBox4_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox4.TextChanged
- ComboBox3.SelectedIndex = ComboBox4.SelectedIndex : ComboBox1下拉表單資料載入()
- End Sub
- Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
- ComboBox6.SelectedIndex = ComboBox1.SelectedIndex
- End Sub
- Private Sub ComboBox6_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox6.SelectedIndexChanged
- ComboBox1.SelectedIndex = ComboBox6.SelectedIndex
- End Sub
- Private Sub TextBox9_TextChanged(sender As Object, e As EventArgs) Handles TextBox9.TextChanged
- conn.Close()
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "SELECT 會計科目, 編號 FROM 會計科目 WHERE (會計科目 LIKE N'%" & TextBox9.Text & "%') AND (停用 = 0) AND (統制科目 = 0) ORDER BY 編號"
- cmd.CommandText = SQL1 : cmd.Connection = conn : dr = cmd.ExecuteReader : ComboBox1.Items.Clear() : ComboBox6.Items.Clear()
- While (dr.Read()) : ComboBox1.Items.Add(dr("會計科目")) : ComboBox6.Items.Add(dr("編號")) : End While : conn.Close()
- If ComboBox1.Items.Count <> 0 Then : ComboBox1.SelectedIndex = 0 : End If
- End Sub
- Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
- If Label62.Visible = True Then : Label62.Visible = False : Else : Label62.Visible = True : End If
- End Sub
- Private Sub DataGridView1_CellContentCl(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellEndEdit
- TextBox5.Text = "0" : TextBox2.Text = "0" : TextBox6.Text = "0" : TextBox7.Text = "0" : TextBox8.Text = "0"
- For i As Integer = 0 To DataGridView1.Rows.Count - 1
- TextBox5.Text = Val(TextBox5.Text) + DataGridView1.Rows(i).Cells("現金").Value : TextBox2.Text = Val(TextBox2.Text) + DataGridView1.Rows(i).Cells("支出").Value
- TextBox7.Text = Val(TextBox7.Text) + DataGridView1.Rows(i).Cells("零用金").Value : TextBox8.Text = Val(TextBox8.Text) + DataGridView1.Rows(i).Cells("支票").Value
- Next i
- TextBox6.Text = Val(TextBox7.Text) + Val(TextBox5.Text) - Val(TextBox2.Text)
- If Val(TextBox6.Text) > 0 Then : TextBox6.ForeColor = Color.Blue : Else : TextBox6.ForeColor = Color.Red : End If
- TextBox5.Text = Format(Val(TextBox5.Text), "#,##0") : TextBox2.Text = Format(Val(TextBox2.Text), "#,##0") : TextBox6.Text = Format(Val(TextBox6.Text), "#,##0")
- TextBox7.Text = Format(Val(TextBox7.Text), "#,##0") : TextBox8.Text = Format(Val(TextBox8.Text), "#,##0")
- Dim EU As String
- EU = DataGridView1("票期", e.RowIndex).Value.ToString
- If EU = "" Then
- Else
- DateTimePicker2.Text = EU
- DataGridView1.Rows(e.RowIndex).Cells("票期").Value = Format(DateTimePicker2.Value, "yyyy/MM/dd")
- End If
- End Sub
- Private Sub DataGridView2_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView2.CellClick
- If e.RowIndex = -1 Then : Else
- TextBox1.Text = DataGridView2(0, e.RowIndex).Value.ToString : DateTimePicker1.Value = DataGridView2(1, e.RowIndex).Value.ToString : Set_費用清單()
- TextBox3.Text = DataGridView2(3, e.RowIndex).Value.ToString
- End If
- End Sub
- Private Sub DataGridView1_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellClick
- If e.RowIndex = -1 Then : Else
- TextBox4.Text = DataGridView1(1, e.RowIndex).Value.ToString
- End If
- End Sub
- Private Sub Set_切換格式()
- DataGridView1.DataSource = Nothing : ds.Clear() : TextBox1.Text = "" : TextBox3.Text = "" : TextBox4.Text = "" : TextBox5.Text = "" : TextBox2.Text = "" : TextBox6.Text = ""
- TextBox7.Text = "" : TextBox8.Text = "" : ComboBox1下拉表單資料載入() : Set_清單1()
- End Sub
- Private Sub RadioButton1_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton1.Click
- RadioButton1.Checked = True : RadioButton2.Checked = False : RadioButton3.Checked = False : 申請完成ToolStripMenuItem.Enabled = True : 複製單據開單ToolStripMenuItem.Enabled = False
- 開立零用金支付單ToolStripMenuItem.Enabled = True : Button2.Enabled = True : 新增一筆資料ToolStripMenuItem.Enabled = True
- 刪除支付單中選中的資料ToolStripMenuItem.Enabled = True : 刪除選中的零用金支付單ToolStripMenuItem.Enabled = True : Set_切換格式()
- End Sub
- Private Sub RadioButton2_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton2.Click
- RadioButton1.Checked = False : RadioButton2.Checked = True : RadioButton3.Checked = False : 申請完成ToolStripMenuItem.Enabled = False : 複製單據開單ToolStripMenuItem.Enabled = False
- 開立零用金支付單ToolStripMenuItem.Enabled = False : Button2.Enabled = False : 新增一筆資料ToolStripMenuItem.Enabled = False
- 刪除支付單中選中的資料ToolStripMenuItem.Enabled = False : 刪除選中的零用金支付單ToolStripMenuItem.Enabled = False : Set_切換格式()
- End Sub
- Private Sub RadioButton3_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton3.Click
- If CC(28) = False Then
- RadioButton1.Checked = False : RadioButton2.Checked = False : RadioButton3.Checked = True : 申請完成ToolStripMenuItem.Enabled = False : 複製單據開單ToolStripMenuItem.Enabled = True
- 開立零用金支付單ToolStripMenuItem.Enabled = False : Button2.Enabled = False : 新增一筆資料ToolStripMenuItem.Enabled = False
- 刪除支付單中選中的資料ToolStripMenuItem.Enabled = False : 刪除選中的零用金支付單ToolStripMenuItem.Enabled = False : Set_切換格式()
- Else
- RadioButton1.Checked = False : RadioButton2.Checked = False : RadioButton3.Checked = True : 申請完成ToolStripMenuItem.Enabled = True : 複製單據開單ToolStripMenuItem.Enabled = True
- 開立零用金支付單ToolStripMenuItem.Enabled = True : Button2.Enabled = True : 新增一筆資料ToolStripMenuItem.Enabled = True
- 刪除支付單中選中的資料ToolStripMenuItem.Enabled = True : 刪除選中的零用金支付單ToolStripMenuItem.Enabled = True : Set_切換格式()
- End If
- End Sub
- Private Sub 存檔()
- For i As Integer = 0 To DataGridView1.Rows.Count - 1
- 資料數 = DataGridView1.Rows.Count : MyMoule.進度條()
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "UPDATE 公帳流水帳 SET 明細 = N'" & DataGridView1.Rows(i).Cells("用途").Value & "', 支出 = N'" & DataGridView1.Rows(i).Cells("支出").Value &
- "', 備註 = N'" & DataGridView1.Rows(i).Cells("票期").Value & "' , 類別 = N'" & DataGridView1.Rows(i).Cells("類別").Value &
- "', 收入 = N'" & DataGridView1.Rows(i).Cells("現金").Value & "', 零用金 = N'" & DataGridView1.Rows(i).Cells("零用金").Value &
- "', 支票數 = N'" & DataGridView1.Rows(i).Cells("支票").Value & "', 匯率 = N'" & DataGridView1.Rows(i).Cells("匯率").Value & "'
- WHERE (支付單號 LIKE '" & TextBox1.Text & "' AND 項次 LIKE '" & DataGridView1.Rows(i).Cells("項次").Value & "')"
- cmd.CommandText = SQL1 : cmd.ExecuteNonQuery() : conn.Close()
- Next
- ProgressBar1.Value = 0 : 最終數 = 0
- End Sub
- Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
- Timer1.Enabled = False : Label62.Visible = False
- 開立零用金支付單ToolStripMenuItem.Enabled = True : RadioButton1.Enabled = True : RadioButton2.Enabled = True : DataGridView2.Enabled = True : RadioButton3.Enabled = True
- 存檔() : Set_清單1()
- MsgBox("申請完成,請通知主管審核。")
- End Sub
- Private Sub Set_日期格式轉換()
- If CheckBox1.Checked = False Then
- DTP = Format(Today(), "yyyy/MM/dd") : DTP1 = Format(Today(), "yyyyMMdd")
- Else
- DTP1 = Format(DateTimePicker1.Value, "yyyyMMdd") : DTP = Format(DateTimePicker1.Value, "yyyy/MM/dd")
- End If
- End Sub
- Private Sub Set_流水號()
- conn.Close() : dr.Close()
- Dim NUM1 As Integer
- For NUM1 = 0 To 99
- Dim d As String : Dim f As String : Dim g As Integer = 1
- If Month(Now) < 10 Then : d = "0" & CStr(Month(Now))
- Else : d = CStr(Month(Now))
- End If
- If Now.Day() < 10 Then : f = "0" & CStr(Now.Day())
- Else : f = CStr(Now.Day())
- End If
- If NUM1 < 10 Then : 新流水1 = "B" & Microsoft.VisualBasic.Right(CStr(Year(Now)), 2) & d & f & "0" & NUM1
- Else : 新流水1 = "B" & Microsoft.VisualBasic.Right(CStr(Year(Now)), 2) & d & f & NUM1
- End If
-
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "SELECT 流水號 FROM 公帳流水帳 WHERE (流水號 ='" & 新流水1 & "')"
- cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader
- If dr.Read() Then : conn.Close() : Else : conn.Close() : NUM1 = 99 : End If
- Next
- End Sub
- Private Sub 開立零用金支付單()
- Dim NUM1 As Integer : Timer1.Enabled = True
- Set_日期格式轉換()
- For i As Integer = 1 To 999
- NUM1 = 0 + i
- If NUM1 < 10 Then : TextBox1.Text = "OE-" & DTP1 & "-00" & NUM1
- ElseIf NUM1 > 9 And NUM1 < 100 Then : TextBox1.Text = "OE-" & DTP1 & "-0" & NUM1
- ElseIf NUM1 > 99 Then : TextBox1.Text = "OE-" & DTP1 & "-" & NUM1
- End If
- conn.Close()
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "SELECT TOP (1) 支付單號 FROM 公帳控制表 WHERE ( 支付單號 LIKE '" & TextBox1.Text & "')"
- cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader
- If dr.Read() Then : Else : i = 999 : conn.Close() : End If : conn.Close()
- Next
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "INSERT INTO 公帳控制表 (支付單號, 申請人, 申請日期, 審核人, 審核日期, 會計, 作帳日期, 出納, 出納日期, 備註, 公司編號) " &
- "VALUES (N'" & TextBox1.Text & "', N'" & gUserName & "', N'" & DTP & "', N'', N'', N'', N'', N'', N'', N'', N'工巧明')"
- cmd.Connection = conn : cmd.CommandText = SQL1 : cmd.ExecuteNonQuery()
- TextBox3.Text = gUserName
- End Sub
- Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
- 開立零用金支付單() : 開立零用金支付單ToolStripMenuItem.Enabled = False : RadioButton1.Enabled = False : RadioButton2.Enabled = False : RadioButton3.Enabled = False
- DataGridView2.Enabled = False : RadioButton1.Checked = True : RadioButton2.Checked = False : RadioButton3.Checked = False : 申請完成ToolStripMenuItem.Enabled = True
- 複製單據開單ToolStripMenuItem.Enabled = False : 開立零用金支付單ToolStripMenuItem.Enabled = True : Button2.Enabled = True : 新增一筆資料ToolStripMenuItem.Enabled = True
- 刪除支付單中選中的資料ToolStripMenuItem.Enabled = True : 刪除選中的零用金支付單ToolStripMenuItem.Enabled = True
- Set_清單1()
- For i As Integer = 0 To DataGridView1.Rows.Count - 1
- Set_流水號()
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "INSERT INTO 公帳流水帳 (流水號, 銀行, 日期, 類別, 收入, 支出, 明細, 人員, 支付單號, 項次, 會計, 出納, 現金, 備用金, 公帳, 支票,
- 出納日期, 零用金, 支票數, 匯率, 備註)
- VALUES (N'" & 新流水1 & "', N'" & DataGridView1.Rows(i).Cells("幣別").Value & "'', N'" & DTP & "', N'" & DataGridView1.Rows(i).Cells("類別").Value &
- "', N'" & DataGridView1.Rows(i).Cells("現金").Value & "', N'" & DataGridView1.Rows(i).Cells("支出").Value & "', N'" & DataGridView1.Rows(i).Cells("用途").Value &
- "', N'', N'" & gUserName & "', N'" & TextBox1.Text & "', N'" & DataGridView1.Rows(i).Cells("項次").Value & "', N'1', N'0', N'0', N'0', N'0', N'0', N'" & DTP &
- "', N'" & DataGridView1.Rows(i).Cells("零用金").Value & "', N'" & DataGridView1.Rows(i).Cells("支票").Value & "', N'" & DataGridView1.Rows(i).Cells("匯率").Value &
- "', N'" & DataGridView1.Rows(i).Cells("票期").Value & "')"
- cmd.Connection = conn : cmd.CommandText = SQL1 : cmd.ExecuteNonQuery()
- Next
- Set_費用清單() : MsgBox("複製單據開立完成。")
- End Sub
- Private Sub DateTimePicker1_ValueChanged(sender As Object, e As EventArgs) Handles DateTimePicker1.ValueChanged
- 匯率()
- End Sub
- '----------------------滑鼠右鍵--------------------------------------------------------------------------------------------------------------------------------------------------------------------
- Private Sub 重新讀取ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 重新讀取ToolStripMenuItem.Click
- Set_清單1()
- End Sub
- Private Sub 開立零用金支付單ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 開立零用金支付單ToolStripMenuItem.Click
- 開立零用金支付單() : 開立零用金支付單ToolStripMenuItem.Enabled = False : RadioButton1.Enabled = False : RadioButton2.Enabled = False : RadioButton3.Enabled = False : DataGridView2.Enabled = False
- DataGridView1.DataSource = Nothing : ds.Clear() : conn.Close()
- Set_清單1()
- End Sub
- Private Sub 刪除選中的零用金支付單ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 刪除選中的零用金支付單ToolStripMenuItem.Click
- Dim aa As MsgBoxResult
- aa = MsgBox("確定要刪除該筆資料?", MsgBoxStyle.OkCancel)
- If aa = MsgBoxResult.Ok Then
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "DELETE FROM 公帳控制表 WHERE (支付單號 LIKE '" & TextBox1.Text & "')"
- cmd.CommandText = SQL1 : cmd.Connection = conn : cmd.ExecuteNonQuery() : conn.Close()
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "DELETE FROM 公帳流水帳 WHERE (支付單號 LIKE '" & TextBox1.Text & "')"
- cmd.CommandText = SQL1 : cmd.Connection = conn : cmd.ExecuteNonQuery() : conn.Close()
- TextBox1.Text = "" : TextBox3.Text = "" : TextBox4.Text = ""
- DataGridView1.DataSource = Nothing : ds.Clear()
- Set_清單1()
- End If
- End Sub
- Private Sub 刪除支付單中選中的資料ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 刪除支付單中選中的資料ToolStripMenuItem.Click
- If TextBox4.Text = "" Then
- MsgBox("未選擇需要刪除的資料。")
- Else
- 存檔()
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "DELETE FROM 公帳流水帳 WHERE (支付單號 LIKE '" & TextBox1.Text & "' AND 項次 LIKE '" & TextBox4.Text & "')"
- cmd.CommandText = SQL1 : cmd.Connection = conn : cmd.ExecuteNonQuery() : conn.Close()
- Set_費用清單()
- Dim NUM1 As Integer = 0
- For i As Integer = 0 To DataGridView1.Rows.Count - 1
- NUM1 += 1 : If NUM1 < 10 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = NUM1 : End If
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "UPDATE 公帳流水帳 SET 項次 = N'" & 新項次 & "' WHERE (支付單號 LIKE '" & TextBox1.Text & "' AND 項次 LIKE '" & DataGridView1.Rows(i).Cells("項次").Value & "')"
- cmd.CommandText = SQL1 : cmd.ExecuteNonQuery()
- conn.Close()
- Next
- Set_費用清單()
- End If
- End Sub
- Private Sub 新增一筆資料ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 新增一筆資料ToolStripMenuItem.Click
- If ComboBox6.Text = "" Or 幣別_cb.Text = "" Then
- MsgBox("沒有選擇會計科目或幣別。")
- Else
- If TextBox1.Text = "" Then
- 開立零用金支付單()
- End If
- Set_日期格式轉換() : Set_流水號()
- 存檔()
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
- SQL1 = "SELECT TOP(1) 項次 FROM 公帳流水帳 WHERE 支付單號 LIKE '" & TextBox1.Text & "' ORDER BY 項次 DESC"
- cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader
- If dr.Read() Then : 新項次 = dr("項次") : Else : 新項次 = "00" : End If : conn.Close()
- NUM1 = Double.Parse(新項次) + 1
- If NUM1 < 10 Then : 新項次 = "0" & NUM1
- ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = NUM1
- End If
- If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
-
- If 幣別_cb.Text = "台幣現金" Then
- 匯率1 = 1
- ElseIf 幣別_cb.Text = "人民幣現金" Then
- 匯率1 = 人民幣匯率_tb.Text
- ElseIf 幣別_cb.Text = "美金" Then
- 匯率1 = 美金匯率_tb.Text
- End If
-
- SQL1 = "INSERT INTO 公帳流水帳 (流水號, 銀行, 日期, 類別, 收入, 支出, 明細, 人員, 支付單號, 項次, 會計, 出納, 現金, 備用金, 公帳, 支票,
- 出納日期, 零用金, 支票數, 匯率, 備註) " &
- "VALUES (N'" & 新流水1 & "', N'" & 幣別_cb.Text & "', N'" & DTP & "', N'" & ComboBox6.Text & "', N'0', N'0', N'', N'" & gUserName & "', N'" & TextBox1.Text & "', N'" & 新項次 &
- "', N'0', N'0', N'0', N'0', N'0', N'0', N'" & DTP & "', N'0', N'0', N'" & 匯率1 & "', N'')"
- cmd.Connection = conn : cmd.CommandText = SQL1 : cmd.ExecuteNonQuery()
- Set_費用清單()
- End If
- End Sub
- Private Sub 申請完成ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 申請完成ToolStripMenuItem.Click
- Me.Button2.PerformClick()
- End Sub
- Private Sub 複製單據開單ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 複製單據開單ToolStripMenuItem.Click
- Me.Button1.PerformClick()
- End Sub
-
-
- End Class
|