Brak opisu
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 19KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236
  1. Option Strict Off
  2. Public Class 營運成本收支單申請
  3. ReadOnly ds As New DataSet : ReadOnly ds1 As New DataSet
  4. Dim 新項次 As String : Dim NUM1 As Integer
  5. Private Sub Set_清單1()
  6. DataGridView2.DataSource = Nothing : ds1.Clear()
  7. DataGridView2.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  8. DataGridView2.ColumnHeadersHeight = 25
  9. DataGridView2.AllowUserToAddRows = False
  10. SQL_營運成本收支單申請清單()
  11. da.Fill(ds1) : DataGridView2.DataSource = ds1.Tables(0) : conn.Close()
  12. DataGridView2.Columns(0).FillWeight = 160 : DataGridView2.Columns(1).FillWeight = 100 : DataGridView2.Columns(2).FillWeight = 100 : DataGridView2.Columns(3).Visible = False
  13. End Sub
  14. Private Sub Set_費用清單()
  15. DataGridView1.DataSource = Nothing : ds.Clear()
  16. DataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  17. DataGridView1.ColumnHeadersHeight = 25
  18. DataGridView1.AllowUserToAddRows = False
  19. DataGridView1.RowTemplate.Height = 35
  20. SQL_營運成本收支單申請費用清單()
  21. da.Fill(ds) : DataGridView1.DataSource = ds.Tables(0) : conn.Close()
  22. DataGridView1.Columns(0).Visible = False : DataGridView1.Columns(1).FillWeight = 80 : DataGridView1.Columns(2).FillWeight = 300 : DataGridView1.Columns(3).FillWeight = 500
  23. DataGridView1.Columns(4).FillWeight = 140 : DataGridView1.Columns(5).FillWeight = 140 : DataGridView1.Columns(6).FillWeight = 140 : DataGridView1.Columns(7).FillWeight = 140
  24. DataGridView1.Columns(8).FillWeight = 140 : DataGridView1.Columns(9).Visible = False
  25. DataGridView1.Columns(1).ReadOnly = True : DataGridView1.Columns(2).ReadOnly = True
  26. DataGridView1.Columns(4).DefaultCellStyle.Format = "#,##0" : DataGridView1.Columns(5).DefaultCellStyle.Format = "#,##0" : DataGridView1.Columns(6).DefaultCellStyle.Format = "#,##0"
  27. DataGridView1.Columns(7).DefaultCellStyle.Format = "#,##0"
  28. DataGridView1.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : DataGridView1.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  29. DataGridView1.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : DataGridView1.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  30. DataGridView1.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : DataGridView1.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  31. DataGridView1.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : DataGridView1.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  32. DataGridView1.EditMode = DataGridViewEditMode.EditOnEnter
  33. TextBox5.Text = "0" : TextBox2.Text = "0" : TextBox6.Text = "0" : TextBox7.Text = "0" : TextBox8.Text = "0"
  34. For i As Integer = 0 To DataGridView1.Rows.Count - 1
  35. TextBox5.Text = Val(TextBox5.Text) + DataGridView1.Rows(i).Cells("現金").Value : TextBox2.Text = Val(TextBox2.Text) + DataGridView1.Rows(i).Cells("支出").Value
  36. TextBox7.Text = Val(TextBox7.Text) + DataGridView1.Rows(i).Cells("零用金").Value : TextBox8.Text = Val(TextBox8.Text) + DataGridView1.Rows(i).Cells("支票").Value
  37. Next i
  38. TextBox6.Text = Val(TextBox7.Text) + Val(TextBox5.Text) - Val(TextBox2.Text)
  39. If Val(TextBox6.Text) > 0 Then : TextBox6.ForeColor = Color.Blue : Else : TextBox6.ForeColor = Color.Red : End If
  40. TextBox5.Text = Format(Val(TextBox5.Text), "#,##0") : TextBox2.Text = Format(Val(TextBox2.Text), "#,##0") : TextBox6.Text = Format(Val(TextBox6.Text), "#,##0")
  41. TextBox7.Text = Format(Val(TextBox7.Text), "#,##0") : TextBox8.Text = Format(Val(TextBox8.Text), "#,##0")
  42. End Sub
  43. Private Sub ComboBox1下拉表單資料載入()
  44. PA = ComboBox4.Text : SQL_會計科目_第三階()
  45. ComboBox1.Items.Clear() : ComboBox6.Items.Clear() : While (dr.Read()) : ComboBox1.Items.Add(dr("會計科目")) : ComboBox6.Items.Add(dr("編號")) : End While : conn.Close()
  46. If ComboBox1.Items.Count <> 0 Then : ComboBox1.SelectedIndex = 0 : End If
  47. End Sub
  48. Private Sub ComboBox2下拉表單資料載入()
  49. SQL_會計科目_第一階()
  50. ComboBox5.Items.Clear() : ComboBox2.Items.Clear() : While (dr.Read()) : ComboBox5.Items.Add(dr("第一階")) : ComboBox2.Items.Add(dr("編號")) : End While : conn.Close()
  51. End Sub
  52. Private Sub ComboBox3下拉表單資料載入()
  53. PA = ComboBox2.Text : SQL_會計科目_第二階()
  54. ComboBox3.Items.Clear() : ComboBox4.Items.Clear() : While (dr.Read()) : ComboBox3.Items.Add(dr("第二階")) : ComboBox4.Items.Add(dr("編號")) : End While : conn.Close() : PA = ""
  55. End Sub
  56. Private Sub 營運成本支付申請_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  57. Me.MdiParent = MAOJI_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  58. RadioButton1.Checked = True : DateTimePicker2.Visible = False : 複製單據開單ToolStripMenuItem.Enabled = False : ComboBox6.Visible = False
  59. DataGridView2.Visible = True : Set_清單1() : ComboBox2下拉表單資料載入()
  60. End Sub
  61. Private Sub ComboBox5_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox5.TextChanged
  62. ComboBox2.SelectedIndex = ComboBox5.SelectedIndex : TextBox9.Text = "" : ComboBox3下拉表單資料載入() : ComboBox1下拉表單資料載入()
  63. End Sub
  64. Private Sub ComboBox2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox2.TextChanged
  65. ComboBox5.SelectedIndex = ComboBox2.SelectedIndex : ComboBox3下拉表單資料載入() : ComboBox1下拉表單資料載入()
  66. End Sub
  67. Private Sub ComboBox3_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox3.TextChanged
  68. ComboBox4.SelectedIndex = ComboBox3.SelectedIndex : ComboBox1下拉表單資料載入()
  69. End Sub
  70. Private Sub ComboBox4_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox4.TextChanged
  71. ComboBox3.SelectedIndex = ComboBox4.SelectedIndex : ComboBox1下拉表單資料載入()
  72. End Sub
  73. Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
  74. ComboBox6.SelectedIndex = ComboBox1.SelectedIndex
  75. End Sub
  76. Private Sub ComboBox6_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox6.SelectedIndexChanged
  77. ComboBox1.SelectedIndex = ComboBox6.SelectedIndex
  78. End Sub
  79. Private Sub TextBox9_TextChanged(sender As Object, e As EventArgs) Handles TextBox9.TextChanged
  80. PA = TextBox9.Text : SQL_會計科目_關鍵字()
  81. ComboBox1.Items.Clear() : ComboBox6.Items.Clear() : While (dr.Read()) : ComboBox1.Items.Add(dr("會計科目")) : ComboBox6.Items.Add(dr("編號")) : End While : conn.Close()
  82. If ComboBox1.Items.Count <> 0 Then : ComboBox1.SelectedIndex = 0 : End If : PA = ""
  83. End Sub
  84. Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
  85. If Label62.Visible = True Then : Label62.Visible = False : Else : Label62.Visible = True : End If
  86. End Sub
  87. Private Sub DataGridView1_CellContentCl(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellEndEdit
  88. TextBox5.Text = "0" : TextBox2.Text = "0" : TextBox6.Text = "0" : TextBox7.Text = "0" : TextBox8.Text = "0"
  89. For i As Integer = 0 To DataGridView1.Rows.Count - 1
  90. TextBox5.Text = Val(TextBox5.Text) + DataGridView1.Rows(i).Cells("現金").Value : TextBox2.Text = Val(TextBox2.Text) + DataGridView1.Rows(i).Cells("支出").Value
  91. TextBox7.Text = Val(TextBox7.Text) + DataGridView1.Rows(i).Cells("零用金").Value : TextBox8.Text = Val(TextBox8.Text) + DataGridView1.Rows(i).Cells("支票").Value
  92. Next i
  93. TextBox6.Text = Val(TextBox7.Text) + Val(TextBox5.Text) - Val(TextBox2.Text)
  94. If Val(TextBox6.Text) > 0 Then : TextBox6.ForeColor = Color.Blue : Else : TextBox6.ForeColor = Color.Red : End If
  95. TextBox5.Text = Format(Val(TextBox5.Text), "#,##0") : TextBox2.Text = Format(Val(TextBox2.Text), "#,##0") : TextBox6.Text = Format(Val(TextBox6.Text), "#,##0")
  96. TextBox7.Text = Format(Val(TextBox7.Text), "#,##0") : TextBox8.Text = Format(Val(TextBox8.Text), "#,##0")
  97. Dim EU As String
  98. EU = DataGridView1("票期", e.RowIndex).Value.ToString
  99. If EU = "" Then
  100. Else
  101. DateTimePicker2.Text = EU : DataGridView1.Rows(e.RowIndex).Cells("票期").Value = Format(DateTimePicker2.Value, "yyyy/MM/dd")
  102. End If
  103. End Sub
  104. Private Sub DataGridView2_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView2.CellClick
  105. If e.RowIndex = -1 Then : Else
  106. TextBox1.Text = DataGridView2(0, e.RowIndex).Value.ToString : DateTimePicker1.Value = DataGridView2(1, e.RowIndex).Value.ToString : Set_費用清單()
  107. TextBox3.Text = DataGridView2(3, e.RowIndex).Value.ToString
  108. End If
  109. End Sub
  110. Private Sub DataGridView1_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellClick
  111. If e.RowIndex = -1 Then : Else
  112. TextBox4.Text = DataGridView1(1, e.RowIndex).Value.ToString
  113. End If
  114. End Sub
  115. Private Sub Set_切換格式()
  116. DataGridView1.DataSource = Nothing : ds.Clear() : TextBox1.Text = "" : TextBox3.Text = "" : TextBox4.Text = "" : TextBox5.Text = "" : TextBox2.Text = "" : TextBox6.Text = ""
  117. TextBox7.Text = "" : TextBox8.Text = "" : ComboBox1下拉表單資料載入() : Set_清單1()
  118. End Sub
  119. Private Sub RadioButton1_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton1.Click
  120. RadioButton1.Checked = True : RadioButton2.Checked = False : RadioButton3.Checked = False : 申請完成ToolStripMenuItem.Enabled = True : 複製單據開單ToolStripMenuItem.Enabled = False
  121. 開立零用金支付單ToolStripMenuItem.Enabled = True : Button2.Enabled = True : 新增一筆資料ToolStripMenuItem.Enabled = True
  122. 刪除支付單中選中的資料ToolStripMenuItem.Enabled = True : 刪除選中的零用金支付單ToolStripMenuItem.Enabled = True : Set_切換格式()
  123. End Sub
  124. Private Sub RadioButton2_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton2.Click
  125. RadioButton1.Checked = False : RadioButton2.Checked = True : RadioButton3.Checked = False : 申請完成ToolStripMenuItem.Enabled = False : 複製單據開單ToolStripMenuItem.Enabled = False
  126. 開立零用金支付單ToolStripMenuItem.Enabled = False : Button2.Enabled = False : 新增一筆資料ToolStripMenuItem.Enabled = False
  127. 刪除支付單中選中的資料ToolStripMenuItem.Enabled = False : 刪除選中的零用金支付單ToolStripMenuItem.Enabled = False : Set_切換格式()
  128. End Sub
  129. Private Sub RadioButton3_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton3.Click
  130. If CC(28) = False Then
  131. RadioButton1.Checked = False : RadioButton2.Checked = False : RadioButton3.Checked = True : 申請完成ToolStripMenuItem.Enabled = False : 複製單據開單ToolStripMenuItem.Enabled = True
  132. 開立零用金支付單ToolStripMenuItem.Enabled = False : Button2.Enabled = False : 新增一筆資料ToolStripMenuItem.Enabled = False
  133. 刪除支付單中選中的資料ToolStripMenuItem.Enabled = False : 刪除選中的零用金支付單ToolStripMenuItem.Enabled = False : Set_切換格式()
  134. Else
  135. RadioButton1.Checked = False : RadioButton2.Checked = False : RadioButton3.Checked = True : 申請完成ToolStripMenuItem.Enabled = True : 複製單據開單ToolStripMenuItem.Enabled = True
  136. 開立零用金支付單ToolStripMenuItem.Enabled = True : Button2.Enabled = True : 新增一筆資料ToolStripMenuItem.Enabled = True
  137. 刪除支付單中選中的資料ToolStripMenuItem.Enabled = True : 刪除選中的零用金支付單ToolStripMenuItem.Enabled = True : Set_切換格式()
  138. End If
  139. End Sub
  140. Private Sub 存檔()
  141. PA4 = TextBox1.Text
  142. For i As Integer = 0 To DataGridView1.Rows.Count - 1
  143. 資料數 = DataGridView1.Rows.Count : MyModule1.進度條()
  144. PA1 = DataGridView1.Rows(i).Cells("用途").Value : NU1 = DataGridView1.Rows(i).Cells("支出").Value : PA2 = DataGridView1.Rows(i).Cells("票期").Value
  145. PA3 = DataGridView1.Rows(i).Cells("科目編號").Value : NU2 = DataGridView1.Rows(i).Cells("現金").Value : NU3 = DataGridView1.Rows(i).Cells("零用金").Value
  146. NU4 = DataGridView1.Rows(i).Cells("支票").Value : PA5 = DataGridView1.Rows(i).Cells("項次").Value
  147. SQL_營運成本收支單申請修改() : conn.Close()
  148. Next : MAOJI_ERP_SYS.ToolStripProgressBar1.Value = 0 : 最終數 = 0
  149. End Sub
  150. Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
  151. Timer1.Enabled = False : Label62.Visible = False
  152. 開立零用金支付單ToolStripMenuItem.Enabled = True : RadioButton1.Enabled = True : RadioButton2.Enabled = True : DataGridView2.Enabled = True : RadioButton3.Enabled = True
  153. 存檔() : Set_清單1() : MsgBox("申請完成,請通知主管審核。")
  154. End Sub
  155. Private Sub Set_日期格式轉換()
  156. If CheckBox1.Checked = False Then : DTP = Format(Today(), "yyyy/MM/dd") : DTP1 = Format(Today(), "yyyyMMdd")
  157. Else : DTP1 = Format(DateTimePicker1.Value, "yyyyMMdd") : DTP = Format(DateTimePicker1.Value, "yyyy/MM/dd") : End If
  158. End Sub
  159. Private Sub 開立零用金支付單()
  160. Dim NUM1 As Integer : Timer1.Enabled = True
  161. Set_日期格式轉換()
  162. For i As Integer = 1 To 999
  163. NUM1 = 0 + i
  164. If NUM1 < 10 Then : TextBox1.Text = "OE-" & DTP1 & "-00" & NUM1
  165. ElseIf NUM1 > 9 And NUM1 < 100 Then : TextBox1.Text = "OE-" & DTP1 & "-0" & NUM1
  166. ElseIf NUM1 > 99 Then : TextBox1.Text = "OE-" & DTP1 & "-" & NUM1 : End If : PA = TextBox1.Text
  167. SQL_營運成本收支單申請_支付單號流水號()
  168. If dr.Read() Then : Else : i = 999 : conn.Close() : End If : conn.Close()
  169. Next
  170. SQL_營運成本控制表新增() : TextBox3.Text = gUserName
  171. End Sub
  172. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  173. 開立零用金支付單() : 開立零用金支付單ToolStripMenuItem.Enabled = False : RadioButton1.Enabled = False : RadioButton2.Enabled = False : RadioButton3.Enabled = False
  174. DataGridView2.Enabled = False : RadioButton1.Checked = True : RadioButton2.Checked = False : RadioButton3.Checked = False : 申請完成ToolStripMenuItem.Enabled = True
  175. 複製單據開單ToolStripMenuItem.Enabled = False : 開立零用金支付單ToolStripMenuItem.Enabled = True : Button2.Enabled = True : 新增一筆資料ToolStripMenuItem.Enabled = True
  176. 刪除支付單中選中的資料ToolStripMenuItem.Enabled = True : 刪除選中的零用金支付單ToolStripMenuItem.Enabled = True
  177. Set_清單1()
  178. For i As Integer = 0 To DataGridView1.Rows.Count - 1
  179. PA1 = TextBox1.Text : PA2 = DataGridView1.Rows(i).Cells("項次").Value : PA3 = DataGridView1.Rows(i).Cells("科目編號").Value : PA4 = DataGridView1.Rows(i).Cells("用途").Value
  180. NU1 = DataGridView1.Rows(i).Cells("支出").Value : PA5 = DataGridView1.Rows(i).Cells("票期").Value : NU2 = DataGridView1.Rows(i).Cells("現金").Value
  181. NU3 = DataGridView1.Rows(i).Cells("零用金").Value : NU4 = DataGridView1.Rows(i).Cells("支票").Value
  182. SQL_營運成本明細表新增()
  183. Next : Set_費用清單() : MsgBox("複製單據開立完成。")
  184. End Sub
  185. '----------------------滑鼠右鍵--------------------------------------------------------------------------------------------------------------------------------------------------------------------
  186. Private Sub 重新讀取ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 重新讀取ToolStripMenuItem.Click
  187. Set_清單1()
  188. End Sub
  189. Private Sub 開立零用金支付單ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 開立零用金支付單ToolStripMenuItem.Click
  190. 開立零用金支付單()
  191. 開立零用金支付單ToolStripMenuItem.Enabled = False : RadioButton1.Enabled = False : RadioButton2.Enabled = False : RadioButton3.Enabled = False : DataGridView2.Enabled = False
  192. DataGridView1.DataSource = Nothing : ds.Clear() : conn.Close() : Set_清單1()
  193. End Sub
  194. Private Sub 刪除選中的零用金支付單ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 刪除選中的零用金支付單ToolStripMenuItem.Click
  195. Dim aa As MsgBoxResult = MsgBox("確定要刪除該筆資料?", MsgBoxStyle.OkCancel)
  196. If aa = MsgBoxResult.Ok Then
  197. SQL_營運成本控制表刪除() : conn.Close() : SQL_營運成本明細表刪除() : conn.Close()
  198. TextBox1.Text = "" : TextBox3.Text = "" : TextBox4.Text = "" : DataGridView1.DataSource = Nothing : ds.Clear() : Set_清單1()
  199. End If
  200. End Sub
  201. Private Sub 刪除支付單中選中的資料ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 刪除支付單中選中的資料ToolStripMenuItem.Click
  202. If TextBox4.Text = "" Then : MsgBox("未選擇需要刪除的資料。")
  203. Else
  204. 存檔() : SQL_營運成本明細表刪除單筆() : conn.Close() : Set_費用清單() : Dim NUM1 As Integer = 0
  205. For i As Integer = 0 To DataGridView1.Rows.Count - 1
  206. NUM1 += 1 : If NUM1 < 10 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = NUM1 : End If
  207. PA1 = 新項次 : PA2 = TextBox1.Text : PA3 = DataGridView1.Rows(i).Cells("項次").Value
  208. SQL_營運成本明細表項次修改() : conn.Close()
  209. Next : Set_費用清單()
  210. End If
  211. End Sub
  212. Private Sub 新增一筆資料ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 新增一筆資料ToolStripMenuItem.Click
  213. If ComboBox6.Text = "" Then : MsgBox("沒有選擇會計科目。")
  214. Else
  215. If TextBox1.Text = "" Then : 開立零用金支付單() : End If
  216. Set_日期格式轉換() : 存檔() : PA = TextBox1.Text
  217. SQL_營運成本明細表項次新增查詢()
  218. If dr.Read() Then : 新項次 = dr("項次") : Else : 新項次 = "00" : End If : conn.Close() : NUM1 = Double.Parse(新項次) + 1
  219. If NUM1 < 10 Then : 新項次 = "0" & NUM1
  220. ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = NUM1 : End If
  221. PA1 = TextBox1.Text : PA2 = 新項次 : PA3 = ComboBox6.Text : PA4 = "" : NU1 = 0 : PA5 = "" : NU2 = 0 : NU3 = 0 : NU4 = 0
  222. SQL_營運成本明細表新增() : Set_費用清單()
  223. End If
  224. End Sub
  225. Private Sub 申請完成ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 申請完成ToolStripMenuItem.Click
  226. Me.Button2.PerformClick()
  227. End Sub
  228. Private Sub 複製單據開單ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 複製單據開單ToolStripMenuItem.Click
  229. Me.Button1.PerformClick()
  230. End Sub
  231. End Class