설명 없음
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.

財務_收支單申請.vb 33KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440
  1. Public Class 財務_收支單申請
  2. ReadOnly ds As New DataSet : ReadOnly ds1 As New DataSet
  3. Dim 新項次 As String : Dim 新流水1 As String : Dim 新流水2 As String
  4. Dim NUM1, NUM2 As Integer : Dim 匯率1 As Double
  5. Private Sub Set_清單1()
  6. 營運收支單_dgv.DataSource = Nothing : ds1.Clear()
  7. 營運收支單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  8. 營運收支單_dgv.ColumnHeadersHeight = 25
  9. 營運收支單_dgv.AllowUserToAddRows = False
  10. 營運收支單_dgv.RowTemplate.Height = 30
  11. If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
  12. If 未核准的營運成本收支單_rb.Checked = True And 作廢的營運成本收支單_rb.Checked = False And 已核准的營運成本收支單_rb.Checked = False Then
  13. SQL_營運成本收支單申請_審核人1()
  14. ElseIf 未核准的營運成本收支單_rb.Checked = False And 作廢的營運成本收支單_rb.Checked = True And 已核准的營運成本收支單_rb.Checked = False Then
  15. SQL_營運成本收支單申請_審核人2()
  16. ElseIf 未核准的營運成本收支單_rb.Checked = False And 作廢的營運成本收支單_rb.Checked = False And 已核准的營運成本收支單_rb.Checked = True Then
  17. SQL_營運成本收支單申請_審核人3()
  18. End If
  19. SQL_營運成本收支單申請_查詢公帳控制表()
  20. da.Fill(ds1) : 營運收支單_dgv.DataSource = ds1.Tables(0) : conn.Close()
  21. 營運收支單_dgv.Columns(0).FillWeight = 160 : 營運收支單_dgv.Columns(1).FillWeight = 100 : 營運收支單_dgv.Columns(4).FillWeight = 100
  22. 營運收支單_dgv.Columns(2).Visible = False : 營運收支單_dgv.Columns(3).Visible = False : 營運收支單_dgv.Columns(5).Visible = False
  23. End Sub
  24. Private Sub Set_費用清單()
  25. 明細表_dgv.DataSource = Nothing : ds.Clear()
  26. 明細表_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  27. 明細表_dgv.ColumnHeadersHeight = 25
  28. 明細表_dgv.AllowUserToAddRows = False
  29. 明細表_dgv.RowTemplate.Height = 35
  30. SQL_營運成本收支單申請_查詢費用清單(營運成本收支單號_tb.Text) : da.Fill(ds) : 明細表_dgv.DataSource = ds.Tables(0) : conn.Close()
  31. 明細表_dgv.Columns(0).Visible = False : 明細表_dgv.Columns(1).FillWeight = 80 : 明細表_dgv.Columns(2).FillWeight = 300 : 明細表_dgv.Columns(3).FillWeight = 500
  32. 明細表_dgv.Columns(4).FillWeight = 140 : 明細表_dgv.Columns(5).Visible = False : 明細表_dgv.Columns(6).Visible = False : 明細表_dgv.Columns(7).FillWeight = 140
  33. 明細表_dgv.Columns(8).FillWeight = 140 : 明細表_dgv.Columns(9).Visible = False : 明細表_dgv.Columns(10).Visible = False : 明細表_dgv.Columns(11).Visible = False
  34. 明細表_dgv.Columns(12).Visible = False : 明細表_dgv.Columns(13).FillWeight = 80
  35. 明細表_dgv.Columns(1).ReadOnly = True : 明細表_dgv.Columns(2).ReadOnly = True '明細表_dgv.Columns(9).ReadOnly = True : 明細表_dgv.Columns(10).ReadOnly = True
  36. '明細表_dgv.Columns(4).ReadOnly = True : 明細表_dgv.Columns(5).ReadOnly = True
  37. 明細表_dgv.Columns(4).DefaultCellStyle.Format = "#,##0" : 明細表_dgv.Columns(5).DefaultCellStyle.Format = "#,##0"
  38. 明細表_dgv.Columns(6).DefaultCellStyle.Format = "#,##0"
  39. 明細表_dgv.Columns(7).DefaultCellStyle.Format = "#,##0" : 明細表_dgv.Columns(8).DefaultCellStyle.Format = "#,##0"
  40. 明細表_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  41. 明細表_dgv.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  42. 明細表_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  43. 明細表_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  44. 明細表_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  45. 明細表_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  46. 明細表_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  47. 明細表_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  48. 明細表_dgv.Columns(9).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  49. 明細表_dgv.Columns(9).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  50. 明細表_dgv.Columns(10).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  51. 明細表_dgv.Columns(10).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  52. 明細表_dgv.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  53. 明細表_dgv.Columns(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  54. 明細表_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  55. 現金_tb.Text = "0" : 支出_tb.Text = "0" : 現金餘額_tb.Text = "0" : 零用金_tb.Text = "0" : 支票_tb.Text = "0" : 憑證_tb.Text = "0"
  56. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  57. 現金_tb.Text = Val(現金_tb.Text) + Val(明細表_dgv.Rows(i).Cells("收入").Value) : 支出_tb.Text = Val(支出_tb.Text) + Val(明細表_dgv.Rows(i).Cells("支出").Value)
  58. 零用金_tb.Text = Val(零用金_tb.Text) + 明細表_dgv.Rows(i).Cells("零用金").Value : 支票_tb.Text = Val(支票_tb.Text) + 明細表_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") : 支出_tb.Text = Format(Val(支出_tb.Text), "#,##0") : 現金餘額_tb.Text = Format(Val(現金餘額_tb.Text), "#,##0")
  63. 零用金_tb.Text = Format(Val(零用金_tb.Text), "#,##0") : 支票_tb.Text = Format(Val(支票_tb.Text), "#,##0")
  64. End Sub
  65. Private Sub ComboBox1下拉表單資料載入()
  66. conn.Close()
  67. SQL_營運成本收支單申請_查詢公帳控制表會計科目() : ComboBox1.Items.Clear() : ComboBox6.Items.Clear()
  68. While (dr.Read()) : ComboBox1.Items.Add(dr("會計科目")) : ComboBox6.Items.Add(dr("編號")) : End While : conn.Close()
  69. If ComboBox1.Items.Count <> 0 Then : ComboBox1.SelectedIndex = 0 : End If
  70. End Sub
  71. Private Sub ComboBox2下拉表單資料載入()
  72. conn.Close()
  73. SQL_營運成本收支單申請_查詢最後一筆公帳控制表會計科目() : ComboBox5.Items.Clear() : ComboBox2.Items.Clear() : ComboBox5.Text = "" : ComboBox2.Text = ""
  74. While (dr.Read()) : ComboBox5.Items.Add(dr("第一階")) : ComboBox2.Items.Add(dr("編號")) : End While : conn.Close()
  75. End Sub
  76. Private Sub ComboBox3下拉表單資料載入()
  77. conn.Close()
  78. SQL_營運成本收支單申請_查詢最左邊公帳控制表會計科目() : ComboBox3.Items.Clear() : ComboBox4.Items.Clear() : ComboBox3.Text = "" : ComboBox4.Text = ""
  79. While (dr.Read()) : ComboBox3.Items.Add(dr("第二階")) : ComboBox4.Items.Add(dr("編號")) : End While : conn.Close()
  80. End Sub
  81. Private Sub 匯率()
  82. PA1 = Strings.Left(Format(申請日期_dtp.Value, "yyyyMMdd"), 4)
  83. PA2 = Strings.Mid(Format(申請日期_dtp.Value, "yyyyMMdd"), 5, 2)
  84. SQL_營運成本收支單申請_查詢匯率()
  85. If dr.Read() Then
  86. 人民幣匯率_tb.Text = dr("中心匯率").ToString : 美金匯率_tb.Text = dr("美金匯率").ToString : conn.Close() : dr.Close()
  87. Else
  88. conn.Close() : dr.Close() : 匯率管理.Close() : 匯率管理.Show() : 匯率管理.BringToFront()
  89. End If
  90. End Sub
  91. Private Sub Set_切換格式()
  92. 明細表_dgv.DataSource = Nothing : ds.Clear() : 營運成本收支單號_tb.Text = "" : 申請人_tb.Text = ""
  93. 選擇項次_tb.Text = "" : 現金_tb.Text = "" : 支出_tb.Text = "" : 現金餘額_tb.Text = ""
  94. 零用金_tb.Text = "" : 支票_tb.Text = "" : ComboBox1下拉表單資料載入() : Set_清單1()
  95. End Sub
  96. Private Sub 載入公司編號cb()
  97. SQL_公司編號_下拉清單() : 公司編號_cb.Items.Clear()
  98. While (dr.Read()) : 公司編號_cb.Items.Add(dr("公司編號")) : End While : conn.Close()
  99. End Sub
  100. Private Sub 財務_收支單申請_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  101. Me.MdiParent = ICS_ASMS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  102. 未核准的營運成本收支單_rb.Checked = True : 日期_dtp.Visible = False : 複製歷史單據重新開立_bt.Enabled = False : ComboBox6.Visible = False : 視窗1_pl.Visible = False
  103. 營運收支單_dgv.Visible = True : Set_清單1() : ComboBox2下拉表單資料載入() : 幣別_cb.SelectedIndex = 0
  104. 匯率() : 載入公司編號cb()
  105. If ICS_ASMS_ERP_SYS.Size.Width > 1440 And ICS_ASMS_ERP_SYS.Size.Height > 900 Then
  106. 字體_NUD.Value = 9
  107. ElseIf ICS_ASMS_ERP_SYS.Size.Width <= 1440 And ICS_ASMS_ERP_SYS.Size.Height <= 900 Then
  108. 字體_NUD.Value = 7.6
  109. End If
  110. End Sub
  111. Private Sub 營運成本收支單申請_SizeChanged(sender As Object, e As EventArgs) Handles MyBase.SizeChanged
  112. If ICS_ASMS_ERP_SYS.Size.Width > 1440 And ICS_ASMS_ERP_SYS.Size.Height > 900 Then
  113. 字體_NUD.Value = 9
  114. ElseIf ICS_ASMS_ERP_SYS.Size.Width <= 1440 And ICS_ASMS_ERP_SYS.Size.Height <= 900 Then
  115. 字體_NUD.Value = 8
  116. End If
  117. End Sub
  118. Private Sub ComboBox5_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox5.TextChanged
  119. ComboBox2.SelectedIndex = ComboBox5.SelectedIndex : 關鍵字查詢會計科目_tb.Text = "" : ComboBox3下拉表單資料載入() : ComboBox1下拉表單資料載入()
  120. End Sub
  121. Private Sub ComboBox2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox2.TextChanged
  122. ComboBox5.SelectedIndex = ComboBox2.SelectedIndex : ComboBox3下拉表單資料載入() : ComboBox1下拉表單資料載入()
  123. End Sub
  124. Private Sub ComboBox3_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox3.TextChanged
  125. ComboBox4.SelectedIndex = ComboBox3.SelectedIndex : ComboBox1下拉表單資料載入()
  126. End Sub
  127. Private Sub ComboBox4_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox4.TextChanged
  128. ComboBox3.SelectedIndex = ComboBox4.SelectedIndex : ComboBox1下拉表單資料載入()
  129. End Sub
  130. Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
  131. ComboBox6.SelectedIndex = ComboBox1.SelectedIndex
  132. End Sub
  133. Private Sub ComboBox6_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox6.SelectedIndexChanged
  134. ComboBox1.SelectedIndex = ComboBox6.SelectedIndex
  135. End Sub
  136. Private Sub 關鍵字查詢會計科目_tb_TextChanged(sender As Object, e As EventArgs) Handles 關鍵字查詢會計科目_tb.TextChanged
  137. conn.Close()
  138. SQL_營運成本收支單申請_營運成本會計科目查詢() : conn.Close()
  139. If ComboBox1.Items.Count <> 0 Then : ComboBox1.SelectedIndex = 0 : End If
  140. End Sub
  141. Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
  142. If 資料尚未存檔_lb.Visible = True Then : 資料尚未存檔_lb.Visible = False : Else : 資料尚未存檔_lb.Visible = True : End If
  143. End Sub
  144. Private Sub 單一筆收支單_dgv_CellContentCl(sender As Object, e As DataGridViewCellEventArgs) Handles 明細表_dgv.CellEndEdit
  145. 現金_tb.Text = "0" : 支出_tb.Text = "0" : 現金餘額_tb.Text = "0" : 零用金_tb.Text = "0" : 支票_tb.Text = "0" : 憑證_tb.Text = "0"
  146. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  147. If 明細表_dgv.Rows(i).Cells("收入").Value.ToString = "" Then : 明細表_dgv.Rows(i).Cells("收入").Value = 0 : End If
  148. If 明細表_dgv.Rows(i).Cells("支出").Value.ToString = "" Then : 明細表_dgv.Rows(i).Cells("支出").Value = 0 : End If
  149. 現金_tb.Text = Val(現金_tb.Text) + 明細表_dgv.Rows(i).Cells("收入").Value : 支出_tb.Text = Val(支出_tb.Text) + 明細表_dgv.Rows(i).Cells("支出").Value
  150. 零用金_tb.Text = Val(零用金_tb.Text) + 明細表_dgv.Rows(i).Cells("零用金").Value : 支票_tb.Text = Val(支票_tb.Text) + 明細表_dgv.Rows(i).Cells("支票").Value
  151. Next i
  152. 現金餘額_tb.Text = Val(零用金_tb.Text) + Val(現金_tb.Text) - Val(支出_tb.Text)
  153. If Val(現金餘額_tb.Text) > 0 Then : 現金餘額_tb.ForeColor = Color.Blue : Else : 現金餘額_tb.ForeColor = Color.Red : End If
  154. 現金_tb.Text = Format(Val(現金_tb.Text), "#,##0") : 支出_tb.Text = Format(Val(支出_tb.Text), "#,##0") : 現金餘額_tb.Text = Format(Val(現金餘額_tb.Text), "#,##0")
  155. 零用金_tb.Text = Format(Val(零用金_tb.Text), "#,##0") : 支票_tb.Text = Format(Val(支票_tb.Text), "#,##0")
  156. End Sub
  157. Private Sub 營運收支單_dgv_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 營運收支單_dgv.CellClick
  158. If e.RowIndex = -1 Then : Else
  159. 營運成本收支單號_tb.Text = 營運收支單_dgv(0, e.RowIndex).Value.ToString
  160. If 營運收支單_dgv(1, e.RowIndex).Value.ToString <> "" Then : 申請日期_dtp.Value = 營運收支單_dgv(1, e.RowIndex).Value.ToString : End If
  161. Set_費用清單()
  162. 申請人_tb.Text = 營運收支單_dgv(3, e.RowIndex).Value.ToString : 公司編號_cb.Text = 營運收支單_dgv(4, e.RowIndex).Value.ToString
  163. 憑證_tb.Text = 營運收支單_dgv(5, e.RowIndex).Value.ToString
  164. ComboBox2下拉表單資料載入()
  165. Dim NUM1 As Integer = 0
  166. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  167. PA17 = 明細表_dgv.Rows(i).Cells("項次").Value
  168. NUM1 += 1 : If NUM1 < 10 Then : 新項次 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 99 Then : 新項次 = NUM1 : End If
  169. 明細表_dgv.Rows(i).Cells("項次").Value = 新項次
  170. Next
  171. End If
  172. End Sub
  173. Private Sub 明細表_dgv_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 明細表_dgv.CellClick
  174. If e.RowIndex = -1 Then : Else
  175. 'If 明細表_dgv.SelectedCells.Count = 1 Then
  176. ' If 明細表_dgv.SelectedCells(0).ColumnIndex = 4 Then
  177. ' 窗口表頭_lb.Text = "零用金-編輯指定" : 窗口說明1_lb.Text = "零用金" : NUM2 = 明細表_dgv.SelectedCells(0).RowIndex
  178. ' If 視窗1_pl.Visible = False Then : 視窗1_pl.Visible = True : 視窗1_pl.BringToFront() : Else : 視窗1_pl.Visible = False : End If
  179. ' ElseIf 明細表_dgv.SelectedCells(0).ColumnIndex = 5 Then
  180. ' 窗口表頭_lb.Text = "支票-編輯指定" : 窗口說明1_lb.Text = "支票" : NUM2 = 明細表_dgv.SelectedCells(0).RowIndex
  181. ' If 視窗1_pl.Visible = False Then : 視窗1_pl.Visible = True : 視窗1_pl.BringToFront() : Else : 視窗1_pl.Visible = False : End If
  182. ' End If
  183. 'End If
  184. 選擇項次_tb.Text = 明細表_dgv(1, e.RowIndex).Value.ToString
  185. 幣別_cb.Text = 明細表_dgv("幣別", e.RowIndex).Value.ToString
  186. ComboBox2.Text = Strings.Left(明細表_dgv("類別", e.RowIndex).Value.ToString, 4) : ComboBox4.Text = Strings.Left(明細表_dgv("類別", e.RowIndex).Value.ToString, 7)
  187. ComboBox6.Text = 明細表_dgv("類別", e.RowIndex).Value.ToString
  188. End If
  189. End Sub
  190. Private Sub 未核准的營運成本收支單_rb_CheckedChanged(sender As Object, e As EventArgs) Handles 未核准的營運成本收支單_rb.Click
  191. 未核准的營運成本收支單_rb.Checked = True : 作廢的營運成本收支單_rb.Checked = False : 已核准的營運成本收支單_rb.Checked = False
  192. 申請_bt.Enabled = True : 複製歷史單據重新開立_bt.Enabled = False : 存檔_bt.Enabled = True
  193. 開立營運成本收支單_bt.Enabled = True : 收支單中新增一筆空白資料_bt.Enabled = True
  194. 刪除選中的一筆資料_bt.Enabled = True : 刪除選中的營運成本收支單_bt.Enabled = True : Set_切換格式()
  195. End Sub
  196. Private Sub 作廢的營運成本收支單_rb_CheckedChanged(sender As Object, e As EventArgs) Handles 作廢的營運成本收支單_rb.Click
  197. 未核准的營運成本收支單_rb.Checked = False : 作廢的營運成本收支單_rb.Checked = True : 已核准的營運成本收支單_rb.Checked = False
  198. 申請_bt.Enabled = False : 複製歷史單據重新開立_bt.Enabled = False : 存檔_bt.Enabled = False
  199. 開立營運成本收支單_bt.Enabled = False : 收支單中新增一筆空白資料_bt.Enabled = False
  200. 刪除選中的一筆資料_bt.Enabled = False : 刪除選中的營運成本收支單_bt.Enabled = False : Set_切換格式()
  201. End Sub
  202. Private Sub 已核准的營運成本收支單_rb_CheckedChanged(sender As Object, e As EventArgs) Handles 已核准的營運成本收支單_rb.Click
  203. If CC(28) = False Then
  204. 未核准的營運成本收支單_rb.Checked = False : 作廢的營運成本收支單_rb.Checked = False : 已核准的營運成本收支單_rb.Checked = True
  205. 申請_bt.Enabled = False : 複製歷史單據重新開立_bt.Enabled = True : 存檔_bt.Enabled = False
  206. 開立營運成本收支單_bt.Enabled = False : 收支單中新增一筆空白資料_bt.Enabled = False
  207. 刪除選中的一筆資料_bt.Enabled = False : 刪除選中的營運成本收支單_bt.Enabled = False : Set_切換格式()
  208. Else
  209. 未核准的營運成本收支單_rb.Checked = False : 作廢的營運成本收支單_rb.Checked = False : 已核准的營運成本收支單_rb.Checked = True
  210. 申請_bt.Enabled = True : 複製歷史單據重新開立_bt.Enabled = True : 存檔_bt.Enabled = False
  211. 開立營運成本收支單_bt.Enabled = True : 收支單中新增一筆空白資料_bt.Enabled = True
  212. 刪除選中的一筆資料_bt.Enabled = True : 刪除選中的營運成本收支單_bt.Enabled = True : Set_切換格式()
  213. End If
  214. End Sub
  215. Private Sub 存檔()
  216. PA = 營運成本收支單號_tb.Text
  217. SQL_營運成本收支單申請_修改公帳控制表憑證()
  218. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  219. 資料數 = 明細表_dgv.Rows.Count : MyModule1.進度條()
  220. PA1 = 明細表_dgv.Rows(i).Cells("用途").Value.ToString : PA2 = 明細表_dgv.Rows(i).Cells("支出").Value.ToString : PA3 = 明細表_dgv.Rows(i).Cells("單據編號").Value.ToString
  221. PA4 = 明細表_dgv.Rows(i).Cells("類別").Value.ToString : PA5 = 明細表_dgv.Rows(i).Cells("收入").Value.ToString : PA6 = 明細表_dgv.Rows(i).Cells("零用金").Value.ToString
  222. PA7 = 明細表_dgv.Rows(i).Cells("支票").Value.ToString : PA8 = 明細表_dgv.Rows(i).Cells("匯率").Value.ToString : PA9 = 明細表_dgv.Rows(i).Cells("項次").Value.ToString
  223. BL1 = 明細表_dgv.Rows(i).Cells("含稅").Value.ToString : PA10 = 明細表_dgv.Rows(i).Cells("流水號").Value.ToString
  224. Dim 日期 As String = DTP4
  225. SQL_會計科目管理_修改收支單申請表(日期) : conn.Close()
  226. Next : ICS_ASMS_ERP_SYS.ToolStripProgressBar1.Value = 0 : 最終數 = 0
  227. PA = ""
  228. End Sub
  229. Private Sub Set_流水號()
  230. conn.Close() : dr.Close()
  231. DTP1 = Format(申請日期_dtp.Value, "yyyyMMdd") : PA19 = DTP1.Substring(DTP1.Length - 6) : SQL_點燈_支付明細流水號查詢()
  232. If dr.Read() Then
  233. Dim 流水 As String = dr("流水號").ToString() ' 將流水號轉換為字串
  234. Dim parts As String = 流水.Substring(流水.Length - 4)
  235. Dim 流水號數字部分 As Integer = Integer.Parse(parts)
  236. Dim 新流水號數字部分 As Integer = 流水號數字部分 + 1
  237. Dim 新流水號數字部分字串 As String = 新流水號數字部分.ToString().PadLeft(4, "0"c)
  238. 新流水1 = "B" & PA19 & 新流水號數字部分字串
  239. Else : 新流水1 = "B" & PA19 & "0000" : End If : PA19 = 新流水1
  240. End Sub
  241. Private Sub 複製歷史單據重新開立_bt_Click(sender As Object, e As EventArgs) Handles 複製歷史單據重新開立_bt.Click
  242. 開立零用金支付單()
  243. 開立營運成本收支單_bt.Enabled = False : 未核准的營運成本收支單_rb.Enabled = False : 作廢的營運成本收支單_rb.Enabled = False : 已核准的營運成本收支單_rb.Enabled = False
  244. 營運收支單_dgv.Enabled = False : 未核准的營運成本收支單_rb.Checked = True : 作廢的營運成本收支單_rb.Checked = False : 已核准的營運成本收支單_rb.Checked = False : 申請_bt.Enabled = True
  245. 複製歷史單據重新開立_bt.Enabled = False : 開立營運成本收支單_bt.Enabled = True : 收支單中新增一筆空白資料_bt.Enabled = True
  246. 刪除選中的一筆資料_bt.Enabled = True : 刪除選中的營運成本收支單_bt.Enabled = True
  247. Set_清單1() : Set_日期格式轉換()
  248. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  249. Set_流水號()
  250. SQL_會計科目管理_開立零用金支付單()
  251. Next
  252. Set_費用清單() : MsgBox("複製單據開立完成。")
  253. End Sub
  254. Private Sub 申請日期_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 申請日期_dtp.ValueChanged
  255. 匯率()
  256. End Sub
  257. Private Sub 存檔流程()
  258. Timer1.Enabled = False : 資料尚未存檔_lb.Visible = False
  259. 開立營運成本收支單_bt.Enabled = True : 未核准的營運成本收支單_rb.Enabled = True : 作廢的營運成本收支單_rb.Enabled = True
  260. 營運收支單_dgv.Enabled = True : 已核准的營運成本收支單_rb.Enabled = True
  261. 存檔() : Set_清單1()
  262. MsgBox("申請完成,請通知主管審核。")
  263. 明細表_dgv.DataSource = Nothing : ds.Clear()
  264. End Sub
  265. Private Sub 申請_bt_Click(sender As Object, e As EventArgs) Handles 申請_bt.Click
  266. If 未核准的營運成本收支單_rb.Checked = True Then
  267. Set_日期格式轉換() : 存檔流程()
  268. ElseIf 已核准的營運成本收支單_rb.Checked = True Then
  269. If CC(56) = True Then : 存檔流程() : Else : MsgBox("已核准的資料不可以再修改。") : End If
  270. ElseIf 作廢的營運成本收支單_rb.Checked = True Then
  271. MsgBox("已作廢的資料不可以再修改。")
  272. End If
  273. End Sub
  274. Private Sub 收支單中新增一筆空白資料_bt_Click(sender As Object, e As EventArgs) Handles 收支單中新增一筆空白資料_bt.Click
  275. If ComboBox6.Text = "" Or 幣別_cb.Text = "" Then
  276. MsgBox("沒有選擇會計科目或幣別。")
  277. Else
  278. If 營運成本收支單號_tb.Text = "" Then
  279. 開立零用金支付單()
  280. End If
  281. Set_日期格式轉換() : Set_流水號()
  282. 存檔() : PA = 營運成本收支單號_tb.Text
  283. SQL_營運成本收支單申請_查詢最後一筆公帳支付單號() : PA = ""
  284. If dr.Read() Then : 新項次 = dr("項次") : Else : 新項次 = "00" : End If : conn.Close() : NUM1 = Double.Parse(新項次) + 1
  285. If NUM1 < 10 Then : 新項次 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 99 Then : 新項次 = NUM1 : End If
  286. If 幣別_cb.Text = "台幣現金" Then : 匯率1 = 1 : ElseIf 幣別_cb.Text = "人民幣現金" Then : 匯率1 = 人民幣匯率_tb.Text
  287. ElseIf 幣別_cb.Text = "美金" Then : 匯率1 = 美金匯率_tb.Text : End If
  288. PA16 = 匯率1 : PA15 = 新項次 : SQL_營運成本收支單申請_新增公帳流水帳資料() : conn.Close()
  289. Set_費用清單()
  290. End If
  291. End Sub
  292. Private Sub 刪除選中的一筆資料_bt_Click(sender As Object, e As EventArgs) Handles 刪除選中的一筆資料_bt.Click
  293. If 選擇項次_tb.Text = "" Then
  294. MsgBox("未選擇需要刪除的資料。")
  295. Else
  296. 存檔()
  297. SQL_營運成本收支單申請_刪除公帳流水帳支付單號() : conn.Close()
  298. Set_費用清單()
  299. Dim NUM1 As Integer = 0
  300. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  301. PA17 = 明細表_dgv.Rows(i).Cells("項次").Value
  302. NUM1 += 1 : If NUM1 < 10 Then : 新項次 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 99 Then : 新項次 = NUM1 : End If
  303. PA18 = 新項次
  304. SQL_營運成本收支單申請_修改公帳流水帳支付單號() : conn.Close()
  305. Next
  306. Set_費用清單()
  307. End If
  308. End Sub
  309. Private Sub 字體_NUD_ValueChanged(sender As Object, e As EventArgs) Handles 字體_NUD.ValueChanged
  310. 明細表_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 字體_NUD.Value)
  311. 營運收支單_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 字體_NUD.Value)
  312. End Sub
  313. Private Sub Set_日期格式轉換()
  314. If 補單_cb.Checked = False Then
  315. DTP4 = Format(Today(), "yyyy/MM/dd") : DTP1 = Format(Today(), "yyyyMMdd")
  316. Else
  317. DTP1 = Format(申請日期_dtp.Value, "yyyyMMdd") : DTP4 = Format(申請日期_dtp.Value, "yyyy/MM/dd")
  318. End If
  319. End Sub
  320. Private Sub 開立零用金支付單()
  321. Dim NUM1 As Integer : Timer1.Enabled = True
  322. Set_日期格式轉換()
  323. For i As Integer = 1 To 999
  324. NUM1 = 0 + i
  325. If NUM1 < 10 Then : 營運成本收支單號_tb.Text = "OE-" & DTP1 & "-00" & NUM1
  326. ElseIf NUM1 > 9 And NUM1 < 100 Then : 營運成本收支單號_tb.Text = "OE-" & DTP1 & "-0" & NUM1
  327. ElseIf NUM1 > 99 Then : 營運成本收支單號_tb.Text = "OE-" & DTP1 & "-" & NUM1
  328. End If
  329. conn.Close()
  330. PA = 營運成本收支單號_tb.Text
  331. SQL_營運成本收支單申請_查詢第一筆公帳支付單號()
  332. If dr.Read() Then : Else : i = 999 : conn.Close() : End If : conn.Close()
  333. Next
  334. PA = 營運成本收支單號_tb.Text
  335. PA50 = 公司編號_cb.Text
  336. SQL_營運成本收支單申請_新增一筆公帳控制表() : conn.Close()
  337. 申請人_tb.Text = gUserName
  338. Set_清單1() : PA = ""
  339. End Sub
  340. Private Sub 開立營運成本收支單_bt_Click(sender As Object, e As EventArgs) Handles 開立營運成本收支單_bt.Click
  341. CB選擇清單(公司編號_cb, 公司編號_cb.Text)
  342. ComboBox2下拉表單資料載入()
  343. 開立零用金支付單()
  344. 開立營運成本收支單_bt.Enabled = False : 未核准的營運成本收支單_rb.Enabled = False
  345. 作廢的營運成本收支單_rb.Enabled = False : 已核准的營運成本收支單_rb.Enabled = False
  346. 營運收支單_dgv.Enabled = False
  347. 明細表_dgv.DataSource = Nothing : ds.Clear() : conn.Close()
  348. 現金_tb.Text = "" : 現金餘額_tb.Text = ""
  349. Set_清單1()
  350. End Sub
  351. Private Sub 刪除選中的營運成本收支單_bt_Click(sender As Object, e As EventArgs) Handles 刪除選中的營運成本收支單_bt.Click
  352. Dim aa As MsgBoxResult
  353. aa = MsgBox("確定要刪除該筆資料?", MsgBoxStyle.OkCancel)
  354. If aa = MsgBoxResult.Ok Then
  355. Dim SSA As String
  356. SSA = InputBox("確定刪除資料請輸入 [YES] !")
  357. If SSA = "YES" Then
  358. SQL_營運成本收支單申請_刪除公帳控制表() : conn.Close()
  359. SQL_營運成本收支單申請_刪除公帳流水帳() : conn.Close()
  360. 營運成本收支單號_tb.Text = "" : 申請人_tb.Text = "" : 選擇項次_tb.Text = ""
  361. 明細表_dgv.DataSource = Nothing : ds.Clear()
  362. Set_清單1() : 開立營運成本收支單_bt.Enabled = True : 未核准的營運成本收支單_rb.Enabled = True
  363. 作廢的營運成本收支單_rb.Enabled = True : 已核准的營運成本收支單_rb.Enabled = True
  364. 營運收支單_dgv.Enabled = True
  365. End If
  366. End If
  367. End Sub
  368. '----------------------滑鼠右鍵--------------------------------------------------------------------------------------------------------------------------------------------------------------------
  369. Private Sub 重新讀取ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 重新讀取ToolStripMenuItem.Click
  370. Set_清單1()
  371. End Sub
  372. '----------------------自創視窗滑鼠拖曳功能---------------------------------------------------------------------------------------------------------
  373. Dim OldX, OldY As Long : Dim drag As Boolean
  374. Private Sub 收入_cb_CheckedChanged(sender As Object, e As EventArgs) Handles 收入_cb.Click
  375. If 收入_cb.Checked = True Then
  376. 收入_cb.Checked = True : 支出_cb.Checked = False
  377. Else
  378. 收入_cb.Checked = False : 支出_cb.Checked = True
  379. End If
  380. End Sub
  381. Private Sub 支出_cb_CheckedChanged(sender As Object, e As EventArgs) Handles 支出_cb.Click
  382. If 支出_cb.Checked = True Then
  383. 收入_cb.Checked = False : 支出_cb.Checked = True
  384. Else
  385. 收入_cb.Checked = True : 支出_cb.Checked = False
  386. End If
  387. End Sub
  388. Private Sub 確定_bt_Click(sender As Object, e As EventArgs) Handles 確定_bt.Click
  389. If 收入_cb.Checked = False And 支出_cb.Checked = False Then
  390. MsgBox("請先選擇這筆資料是收入還是支出!!!")
  391. Else
  392. If 收入_cb.Checked = True Then
  393. 明細表_dgv.Rows(NUM2).Cells("收入").Value = 指定_ndp.Value
  394. If 窗口說明1_lb.Text = "支票" Then
  395. 明細表_dgv.Rows(NUM2).Cells("支票").Value = 指定_ndp.Value
  396. ElseIf 窗口說明1_lb.Text = "零用金" Then
  397. 明細表_dgv.Rows(NUM2).Cells("零用金").Value = 指定_ndp.Value
  398. End If
  399. Else
  400. 明細表_dgv.Rows(NUM2).Cells("支出").Value = 指定_ndp.Value
  401. If 窗口說明1_lb.Text = "支票" Then
  402. 明細表_dgv.Rows(NUM2).Cells("支票").Value = 指定_ndp.Value
  403. ElseIf 窗口說明1_lb.Text = "零用金" Then
  404. 明細表_dgv.Rows(NUM2).Cells("零用金").Value = 指定_ndp.Value
  405. End If
  406. End If : 指定_ndp.Value = 0 : 收入_cb.Checked = False : 支出_cb.Checked = False : Cancel_bt.PerformClick()
  407. End If
  408. End Sub
  409. Private Sub Cancel_bt_Click(sender As Object, e As EventArgs) Handles Cancel_bt.Click
  410. If 視窗1_pl.Visible = False Then : 視窗1_pl.Visible = True : 視窗1_pl.BringToFront() : Else : 視窗1_pl.Visible = False : End If
  411. End Sub
  412. Private Sub 物料群組1_Panel_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗1_pl.MouseDown
  413. If e.Button = MouseButtons.Left Then : OldX = e.X : OldY = e.Y : drag = True : End If
  414. End Sub
  415. Private Sub 全區域_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 全區域_ch.CheckedChanged
  416. 載入公司編號cb()
  417. End Sub
  418. Private Sub 存檔_bt_Click(sender As Object, e As EventArgs) Handles 存檔_bt.Click
  419. Timer1.Enabled = False : 資料尚未存檔_lb.Visible = False : Set_日期格式轉換()
  420. 開立營運成本收支單_bt.Enabled = True : 未核准的營運成本收支單_rb.Enabled = True : 作廢的營運成本收支單_rb.Enabled = True
  421. 營運收支單_dgv.Enabled = True : 已核准的營運成本收支單_rb.Enabled = True : 存檔() : MsgBox("存檔完成!") : Set_清單1()
  422. End Sub
  423. Private Sub 物料群組1_Panel_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗1_pl.MouseMove
  424. If drag Then : 視窗1_pl.Left = 視窗1_pl.Left + e.X - OldX : 視窗1_pl.Top = 視窗1_pl.Top + e.Y - OldY : End If
  425. End Sub
  426. Private Sub 物料群組1_Panel_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗1_pl.MouseUp
  427. drag = False
  428. End Sub
  429. End Class