설명 없음
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

財務_收支單審核_ICS.vb 21KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  1. Option Strict Off
  2. Imports System.IO
  3. Public Class 財務_收支單審核_ICS
  4. ReadOnly ds As New DataSet : ReadOnly ds1 As New DataSet : ReadOnly ds2 As New DataSet
  5. Private ReadOnly QQW(11) As String
  6. Dim DTP As String : Dim WWEE As String : Private II As Integer : Dim 匯率1 As Double
  7. Private Sub Set_清單1()
  8. 收支單_dgv.DataSource = Nothing : ds1.Clear()
  9. 收支單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  10. 收支單_dgv.ColumnHeadersHeight = 25
  11. 收支單_dgv.AllowUserToAddRows = False
  12. ConnOpen()
  13. If 未核准的收支單_rb.Checked = True And 作廢的收支單_rb.Checked = False Then
  14. WWEE = "WHERE (審核人 LIKE '') "
  15. ElseIf 未核准的收支單_rb.Checked = False And 作廢的收支單_rb.Checked = True Then
  16. WWEE = "WHERE (審核人 LIKE '作廢%') "
  17. End If
  18. SQL1 = "SELECT 支付單號 AS 收支單號, 申請日期, 審核日期, 申請人 FROM 財務控制表_ICS " & WWEE & " ORDER BY 支付單號 DESC"
  19. CmdSet_For_DGV() : da.Fill(ds1) : 收支單_dgv.DataSource = ds1.Tables(0) : conn.Close()
  20. 收支單_dgv.Columns(0).FillWeight = 160 : 收支單_dgv.Columns(1).FillWeight = 100 : 收支單_dgv.Columns(2).FillWeight = 100 : 收支單_dgv.Columns(3).Visible = False
  21. End Sub
  22. Private Sub Set_費用清單()
  23. 明細_dgv.DataSource = Nothing : ds.Clear()
  24. 明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  25. 明細_dgv.ColumnHeadersHeight = 25
  26. 明細_dgv.AllowUserToAddRows = False
  27. 明細_dgv.RowTemplate.Height = 35
  28. ConnOpen()
  29. SQL1 = "SELECT 財務流水帳_ICS.支付單號, 財務流水帳_ICS.項次, 會計科目.會計科目, 財務流水帳_ICS.明細 AS 用途,
  30. Cast(財務流水帳_ICS.零用金 AS money) AS 零用金, Cast(財務流水帳_ICS.支票數 AS money) AS 支票, Cast(財務流水帳_ICS.收入 AS money) AS 收入,
  31. Cast(財務流水帳_ICS.支出 AS money) AS 支出, 財務流水帳_ICS.備註 AS 票期, 財務流水帳_ICS.匯率, 財務流水帳_ICS.銀行 AS 幣別, 財務流水帳_ICS.類別,
  32. 財務流水帳_ICS.流水號, 財務流水帳_ICS.含稅
  33. FROM 財務流水帳_ICS INNER JOIN
  34. 會計科目 ON 財務流水帳_ICS.類別 = 會計科目.編號
  35. WHERE (財務流水帳_ICS.支付單號 LIKE '" & 收支單號_tb.Text & "')
  36. ORDER BY 財務流水帳_ICS.項次"
  37. CmdSet_For_DGV() : da.Fill(ds) : 明細_dgv.DataSource = ds.Tables(0) : conn.Close()
  38. 明細_dgv.Columns(0).Visible = False : 明細_dgv.Columns(1).FillWeight = 80 : 明細_dgv.Columns(2).FillWeight = 250 : 明細_dgv.Columns(3).FillWeight = 400
  39. 明細_dgv.Columns(4).Visible = False : 明細_dgv.Columns(5).FillWeight = 120 : 明細_dgv.Columns(6).FillWeight = 165 : 明細_dgv.Columns(7).FillWeight = 165
  40. 明細_dgv.Columns(8).FillWeight = 150 : 明細_dgv.Columns(9).FillWeight = 130 : 明細_dgv.Columns(10).FillWeight = 140 : 明細_dgv.Columns(11).Visible = False
  41. 明細_dgv.Columns(12).Visible = False : 明細_dgv.Columns(13).FillWeight = 80
  42. 明細_dgv.Columns(1).ReadOnly = True : 明細_dgv.Columns(2).ReadOnly = True : 明細_dgv.Columns(9).ReadOnly = True : 明細_dgv.Columns(10).ReadOnly = True
  43. 明細_dgv.Columns(4).DefaultCellStyle.Format = "#,##0.00" : 明細_dgv.Columns(5).DefaultCellStyle.Format = "#,##0.00" : 明細_dgv.Columns(6).DefaultCellStyle.Format = "#,##0.00"
  44. 明細_dgv.Columns(7).DefaultCellStyle.Format = "#,##0.00" : 明細_dgv.Columns(8).DefaultCellStyle.Format = "#,##0.00"
  45. 明細_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  46. 明細_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  47. 明細_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  48. 明細_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  49. 明細_dgv.Columns(9).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(9).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  50. 明細_dgv.Columns(10).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(10).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  51. 明細_dgv.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  52. 明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  53. 收入_tb.Text = "0" : 支出_tb.Text = "0" : 餘額_tb.Text = "0" : 零用金_tb.Text = "0" : 支票_tb.Text = "0"
  54. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  55. 收入_tb.Text = Val(收入_tb.Text) + 明細_dgv.Rows(i).Cells("收入").Value * 明細_dgv.Rows(i).Cells("匯率").Value
  56. 支出_tb.Text = Val(支出_tb.Text) + 明細_dgv.Rows(i).Cells("支出").Value * 明細_dgv.Rows(i).Cells("匯率").Value
  57. 零用金_tb.Text = Val(零用金_tb.Text) + 明細_dgv.Rows(i).Cells("零用金").Value * 明細_dgv.Rows(i).Cells("匯率").Value
  58. 支票_tb.Text = Val(支票_tb.Text) + 明細_dgv.Rows(i).Cells("支票").Value * 明細_dgv.Rows(i).Cells("匯率").Value
  59. Next i
  60. 餘額_tb.Text = Val(零用金_tb.Text) + Val(收入_tb.Text) - Val(支出_tb.Text)
  61. If Val(餘額_tb.Text) > 0 Then : 餘額_tb.ForeColor = Color.Blue : Else : 餘額_tb.ForeColor = Color.Red : End If
  62. 收入_tb.Text = Format(Val(收入_tb.Text), "#,##0.00") : 支出_tb.Text = Format(Val(支出_tb.Text), "#,##0.00") : 餘額_tb.Text = Format(Val(餘額_tb.Text), "#,##0.00")
  63. 零用金_tb.Text = Format(Val(零用金_tb.Text), "#,##0.00") : 支票_tb.Text = Format(Val(支票_tb.Text), "#,##0.00")
  64. End Sub
  65. Private Sub Set_清單()
  66. 簽名檔_dgv.DataSource = Nothing : ds2.Clear()
  67. 簽名檔_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  68. 簽名檔_dgv.ColumnHeadersHeight = 25
  69. 簽名檔_dgv.AllowUserToAddRows = False
  70. ConnOpen()
  71. SQL1 = "SELECT 圖片流水號 AS 圖檔編碼, 簽名檔人名 FROM GCM主管簽名檔管理 ORDER BY 圖片流水號 DESC"
  72. CmdSet_For_DGV() : da.Fill(ds2) : 簽名檔_dgv.DataSource = ds2.Tables(0) : conn.Close()
  73. 簽名檔_dgv.Columns(0).FillWeight = 173 : 簽名檔_dgv.Columns(1).Visible = False
  74. If 簽名檔_dgv.Rows.Count = 0 Then : Else
  75. TextBox14.Text = 簽名檔_dgv(0, 0).Value.ToString
  76. ConnOpen()
  77. SQL1 = "SELECT 簽名檔圖片 FROM GCM主管簽名檔管理 WHERE 圖片流水號 LIKE '" & TextBox14.Text & "'"
  78. cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader
  79. While dr.Read() = True
  80. Dim unused As Byte() = New Byte(-1) {}
  81. Dim bytes As Byte() = DirectCast(dr.Item("簽名檔圖片"), Byte())
  82. Dim oStream As New MemoryStream(bytes)
  83. PictureBox1.Image = Bitmap.FromStream(oStream)
  84. End While
  85. conn.Close()
  86. PictureBox1.SizeMode = 4
  87. For QAZ = 0 To 999
  88. QQW(0) = Strings.Right(簽名檔_dgv(0, 0).Value.ToString, 2) : QQW(1) = Strings.Right(Year(Today), 2) : QQW(2) = Strings.Left(Year(Today), 2) : QQW(3) = Month(Today) + 9
  89. QQW(4) = Strings.Right(QQW(0), 1) : QQW(5) = Strings.Left(QQW(0), 1) : QQW(6) = Strings.Right(QQW(1), 1) : QQW(7) = Strings.Left(QQW(1), 1) : QQW(8) = Strings.Right(QQW(2), 1)
  90. QQW(9) = Strings.Left(QQW(2), 1) : QQW(10) = Strings.Right(QQW(3), 1) : QQW(11) = Strings.Left(QQW(3), 1)
  91. For RT = 4 To 11
  92. Delay(3)
  93. Dim ran = New Random(DateTime.Now.Millisecond) : Dim NUM1 As Integer = ran.Next(1, 4096)
  94. For I = 0 To 4096 : If NUM1 > 9 Then : NUM1 -= 9 : ElseIf NUM1 < 9 Then : I = 4096 : End If : Next
  95. If NUM1 = 1 Then : II = RT : 轉換() : ElseIf NUM1 = 2 Then : II = RT : 轉換() : ElseIf NUM1 = 3 Then : ElseIf NUM1 = 4 Then : II = RT : 轉換() : ElseIf NUM1 = 5 Then
  96. ElseIf NUM1 = 6 Then : II = RT : 轉換() : ElseIf NUM1 = 7 Then : ElseIf NUM1 = 8 Then : II = RT : 轉換() : ElseIf NUM1 = 9 Then : II = RT : 轉換() : End If
  97. Next
  98. Dim ran1 = New Random(DateTime.Now.Millisecond) : Dim NUM2 As Integer = ran1.Next(1, 4096)
  99. For I = 0 To 4096 : If NUM2 > 99 Then : NUM2 -= 49 : ElseIf NUM2 < 99 Then : I = 4096 : End If : Next
  100. TextBox13.Text = QQW(11) & "2" & QQW(9) & "7" & QQW(7) & "0" & QQW(5) & QQW(4) & "1" & QQW(6) & "3" & QQW(8) & "9" & QQW(10) & NUM2
  101. ConnOpen()
  102. SQL1 = "SELECT 簽名編碼 FROM 財務控制表_ICS WHERE 簽名編碼 LIKE '" & TextBox13.Text & "'"
  103. cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader
  104. If dr.Read() = True Then : Else : QAZ = 999 : End If : conn.Close()
  105. Next
  106. End If
  107. End Sub
  108. Private Sub 轉換()
  109. If QQW(II) = "1" Then : QQW(II) = "A" : ElseIf QQW(II) = "2" Then : QQW(II) = "B" : ElseIf QQW(II) = "3" Then : QQW(II) = "C" : ElseIf QQW(II) = "4" Then : QQW(II) = "D"
  110. ElseIf QQW(II) = "5" Then : QQW(II) = "E" : ElseIf QQW(II) = "6" Then : QQW(II) = "F" : ElseIf QQW(II) = "7" Then : QQW(II) = "G" : ElseIf QQW(II) = "8" Then : QQW(II) = "H"
  111. ElseIf QQW(II) = "9" Then : QQW(II) = "I" : ElseIf QQW(II) = "0" Then : QQW(II) = "J"
  112. End If
  113. End Sub
  114. Public Sub Delay(ByRef Interval As Double) 'Interval单位为毫秒
  115. Dim time As DateTime = DateTime.Now : Dim Span As Double = Interval * 1234 : While ((DateTime.Now.Ticks - time.Ticks) < Span) : Application.DoEvents() : End While
  116. End Sub
  117. Private Sub 匯率()
  118. ConnOpen()
  119. SQL1 = "SELECT 中心匯率, 美金匯率, 印尼匯率 FROM 歷史匯率表
  120. WHERE (年 LIKE '" & Strings.Left(Format(日期_dtp.Value, "yyyyMMdd"), 4) & "%') AND (月 LIKE '" & Strings.Mid(Format(日期_dtp.Value, "yyyyMMdd"), 5, 2) & "%')"
  121. cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader
  122. If dr.Read() Then
  123. 人民幣匯率_tb.Text = dr("中心匯率").ToString : 美金匯率_tb.Text = dr("美金匯率").ToString : 印尼匯率_tb.Text = dr("印尼匯率").ToString : conn.Close() : dr.Close()
  124. Else
  125. conn.Close() : dr.Close() : 匯率修改.Close() : 匯率修改.Show() : 匯率修改.BringToFront()
  126. End If
  127. End Sub
  128. Private Sub 財務_收支單審核_ICS_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  129. Me.MdiParent = GCM_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  130. 未核准的收支單_rb.Checked = True : 收支單_dgv.Visible = True
  131. 匯率() : Set_清單1() : Set_清單()
  132. End Sub
  133. Private Sub 收支單_dgv_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 收支單_dgv.CellClick
  134. If e.RowIndex = -1 Then : Else
  135. 收支單號_tb.Text = 收支單_dgv(0, e.RowIndex).Value.ToString : 日期_dtp.Value = 收支單_dgv(1, e.RowIndex).Value.ToString : Set_費用清單()
  136. 申請人_tb.Text = 收支單_dgv(3, e.RowIndex).Value.ToString
  137. End If
  138. End Sub
  139. Private Sub 簽名檔_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 簽名檔_dgv.CellClick
  140. If e.RowIndex = -1 Then : Else
  141. TextBox14.Text = 簽名檔_dgv(0, e.RowIndex).Value.ToString
  142. ConnOpen()
  143. SQL1 = "SELECT 簽名檔圖片 FROM GCM主管簽名檔管理 WHERE 圖片流水號 LIKE '" & TextBox14.Text & "'"
  144. cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader
  145. While dr.Read() = True
  146. Dim unused As Byte() = New Byte(-1) {}
  147. Dim bytes As Byte() = DirectCast(dr.Item("簽名檔圖片"), Byte())
  148. Dim oStream As New MemoryStream(bytes)
  149. PictureBox1.Image = Bitmap.FromStream(oStream)
  150. End While
  151. conn.Close()
  152. PictureBox1.SizeMode = 4
  153. For QAZ = 0 To 999
  154. QQW(0) = Strings.Right(簽名檔_dgv(0, e.RowIndex).Value.ToString, 2) : QQW(1) = Strings.Right(Year(Today), 2) : QQW(2) = Strings.Left(Year(Today), 2) : QQW(3) = Month(Today) + 9
  155. QQW(4) = Strings.Right(QQW(0), 1) : QQW(5) = Strings.Left(QQW(0), 1) : QQW(6) = Strings.Right(QQW(1), 1) : QQW(7) = Strings.Left(QQW(1), 1) : QQW(8) = Strings.Right(QQW(2), 1)
  156. QQW(9) = Strings.Left(QQW(2), 1) : QQW(10) = Strings.Right(QQW(3), 1) : QQW(11) = Strings.Left(QQW(3), 1)
  157. For RT = 4 To 11
  158. Delay(3)
  159. Dim ran = New Random(DateTime.Now.Millisecond) : Dim NUM1 As Integer = ran.Next(1, 4096)
  160. For I = 0 To 4096 : If NUM1 > 9 Then : NUM1 -= 9 : ElseIf NUM1 < 9 Then : I = 4096 : End If : Next
  161. If NUM1 = 1 Then : II = RT : 轉換() : ElseIf NUM1 = 2 Then : II = RT : 轉換() : ElseIf NUM1 = 3 Then : ElseIf NUM1 = 4 Then : II = RT : 轉換() : ElseIf NUM1 = 5 Then
  162. ElseIf NUM1 = 6 Then : II = RT : 轉換() : ElseIf NUM1 = 7 Then : ElseIf NUM1 = 8 Then : II = RT : 轉換() : ElseIf NUM1 = 9 Then : II = RT : 轉換() : End If
  163. Next
  164. Dim ran1 = New Random(DateTime.Now.Millisecond) : Dim NUM2 As Integer = ran1.Next(1, 4096)
  165. For I = 0 To 4096 : If NUM2 > 99 Then : NUM2 -= 49 : ElseIf NUM2 < 99 Then : I = 4096 : End If : Next
  166. TextBox13.Text = QQW(11) & "2" & QQW(9) & "7" & QQW(7) & "0" & QQW(5) & QQW(4) & "1" & QQW(6) & "3" & QQW(8) & "9" & QQW(10) & NUM2
  167. ConnOpen()
  168. SQL1 = "SELECT 簽名編碼 FROM 財務控制表_ICS WHERE 簽名編碼 LIKE '" & TextBox13.Text & "'"
  169. cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader
  170. If dr.Read() = True Then : Else : QAZ = 999 : End If : conn.Close()
  171. Next
  172. End If
  173. End Sub
  174. Private Sub Set_切換格式()
  175. 明細_dgv.DataSource = Nothing : ds.Clear() : 收支單號_tb.Text = "" : 申請人_tb.Text = "" : 收入_tb.Text = "" : 支出_tb.Text = "" : 餘額_tb.Text = ""
  176. 零用金_tb.Text = "" : 支票_tb.Text = "" : Set_清單1()
  177. End Sub
  178. Private Sub 未核准的收支單_rb_CheckedChanged(sender As Object, e As EventArgs) Handles 未核准的收支單_rb.Click
  179. 未核准的收支單_rb.Checked = True : 作廢的收支單_rb.Checked = False
  180. 明細_dgv.DataSource = Nothing : ds.Clear() : 收支單號_tb.Text = "" : 申請人_tb.Text = "" : 收入_tb.Text = "" : 支出_tb.Text = "" : 餘額_tb.Text = ""
  181. 審核通過_bt.Enabled = True : 單據作廢_bt.Enabled = True : 審核通過ToolStripMenuItem.Enabled = True : 單據作廢ToolStripMenuItem.Enabled = True : Set_切換格式()
  182. End Sub
  183. Private Sub 作廢的收支單_rb_CheckedChanged(sender As Object, e As EventArgs) Handles 作廢的收支單_rb.Click
  184. 未核准的收支單_rb.Checked = False : 作廢的收支單_rb.Checked = True
  185. 明細_dgv.DataSource = Nothing : ds.Clear() : 收支單號_tb.Text = "" : 申請人_tb.Text = "" : 收入_tb.Text = "" : 支出_tb.Text = "" : 餘額_tb.Text = ""
  186. 審核通過_bt.Enabled = False : 單據作廢_bt.Enabled = False : 審核通過ToolStripMenuItem.Enabled = False : 單據作廢ToolStripMenuItem.Enabled = False : Set_切換格式()
  187. End Sub
  188. Private Sub Set_日期格式轉換()
  189. DTP = Format(Today(), "yyyy/MM/dd")
  190. End Sub
  191. Private Sub 審核通過_bt_Click(sender As Object, e As EventArgs) Handles 審核通過_bt.Click
  192. If 收支單號_tb.Text = "" Then
  193. MsgBox("請選擇需要審核的單據。")
  194. Else
  195. If 補單_ch.Checked = False Then
  196. Set_日期格式轉換()
  197. Else
  198. DTP = Format(日期_dtp.Value, "yyyy/MM/dd")
  199. End If
  200. conn.Close()
  201. ConnOpen()
  202. SQL1 = "UPDATE 財務控制表_ICS SET 審核人 = N'" & gUserName & "', 審核日期 = N'" & DTP & "', 核准圖檔 = N'" & TextBox14.Text & "', 簽名編碼 = N'" & TextBox13.Text &
  203. "', 出納 = '" & gUserName & "', 出納日期 = N'" & DTP & "'
  204. WHERE (支付單號 = N'" & 收支單號_tb.Text & "')"
  205. CmdSet_For_dr() : conn.Close()
  206. ConnOpen()
  207. SQL1 = "UPDATE 財務流水帳_ICS SET 出納 = '1', 出納日期 = N'" & DTP & "'
  208. WHERE (支付單號 LIKE '" & 收支單號_tb.Text & "')"
  209. CmdSet_For_dr() : conn.Close()
  210. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  211. If 明細_dgv.Rows(i).Cells("零用金").Value <> 0 Then
  212. ConnOpen()
  213. SQL1 = "UPDATE 財務流水帳_ICS SET 備用金 = N'1' WHERE (支付單號 LIKE '" & 收支單號_tb.Text & "' AND 項次 LIKE '" & 明細_dgv.Rows(i).Cells("項次").Value & "')"
  214. CmdSet_For_dr() : conn.Close()
  215. ElseIf 明細_dgv.Rows(i).Cells("收入").Value <> 0 Then
  216. ConnOpen()
  217. SQL1 = "UPDATE 財務流水帳_ICS SET 現金 = N'1' WHERE (支付單號 LIKE '" & 收支單號_tb.Text & "' AND 項次 LIKE '" & 明細_dgv.Rows(i).Cells("項次").Value & "')"
  218. CmdSet_For_dr() : conn.Close()
  219. ElseIf 明細_dgv.Rows(i).Cells("支出").Value <> 0 Then
  220. ConnOpen()
  221. SQL1 = "UPDATE 財務流水帳_ICS SET 公帳 = N'1' WHERE (支付單號 LIKE '" & 收支單號_tb.Text & "' AND 項次 LIKE '" & 明細_dgv.Rows(i).Cells("項次").Value & "')"
  222. CmdSet_For_dr() : conn.Close()
  223. End If
  224. Next
  225. MsgBox("審核完畢。")
  226. 收支單號_tb.Text = "" : 申請人_tb.Text = ""
  227. 明細_dgv.DataSource = Nothing : ds.Clear()
  228. Set_清單1() : Set_清單()
  229. End If
  230. End Sub
  231. Private Sub 單據作廢_bt_Click(sender As Object, e As EventArgs) Handles 單據作廢_bt.Click
  232. If 收支單號_tb.Text = "" Then
  233. MsgBox("請選擇需要審核的單據。")
  234. Else
  235. PA = InputBox("請輸入作廢原因。")
  236. If PA = "" Then
  237. MsgBox("請輸入作廢原因,不可空白。")
  238. Else
  239. If 補單_ch.Checked = False Then
  240. Set_日期格式轉換()
  241. Else
  242. DTP = Format(日期_dtp.Value, "yyyy/MM/dd")
  243. End If
  244. conn.Close()
  245. ConnOpen()
  246. SQL1 = "UPDATE 財務控制表_ICS SET 審核人 = N'作廢-" & gUserName & "', 審核日期 = N'" & DTP & "', 備註 = N'" & PA & "' WHERE (支付單號 = N'" & 收支單號_tb.Text & "')"
  247. CmdSet_For_dr()
  248. conn.Close()
  249. MsgBox("審核完畢。") : PA = ""
  250. 收支單號_tb.Text = "" : 申請人_tb.Text = ""
  251. 明細_dgv.DataSource = Nothing : ds.Clear()
  252. Set_清單1()
  253. End If
  254. End If
  255. End Sub
  256. '----------------------滑鼠右鍵--------------------------------------------------------------------------------------------------------------------------------------------------------------------
  257. Private Sub 重新讀取ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 重新讀取ToolStripMenuItem.Click
  258. Set_清單1()
  259. End Sub
  260. Private Sub 審核通過ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 審核通過ToolStripMenuItem.Click
  261. Me.審核通過_bt.PerformClick()
  262. End Sub
  263. Private Sub 單據作廢ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 單據作廢ToolStripMenuItem.Click
  264. Me.單據作廢_bt.PerformClick()
  265. End Sub
  266. End Class