暫無描述
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 45KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489
  1. Public Class 點燈系統
  2. Dim 新流水1, 新項次, 上次的流水號 As String
  3. Dim NUM1, NUM2, index As Integer
  4. Private Sub 點燈系統_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  5. Me.MdiParent = ICS_ASMS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  6. 載入公司編號cb()
  7. 明細表_dgv.BringToFront()
  8. 收款人_tb.Text = gUserName
  9. SQL_燈年份() : 年度_cb.Items.Clear() : While (dr.Read()) : 年度_cb.Items.Add(dr("年度")) : End While : conn.Close()
  10. Set_清單1() : Set_清單2() : 年度_cb.Text = Year(選擇日期_dtp.Value) - 1911 : PA = 年度_cb.Text : Set_清單7() : Set_清單3() : Set_清單4()
  11. 刪除_bt.Enabled = False : 收款_bt.Enabled = False : 收支單中新增一筆空白資料1_bt.Enabled = False
  12. 刪除選中的一筆資料1_bt.Enabled = False : 列印_bt.Enabled = False : 儲存_bt.Enabled = False : 點燈確認_bt.Enabled = False
  13. 客戶查詢_bt.Enabled = False
  14. End Sub
  15. Private Sub 點燈系統_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
  16. If 單號_tb.Text <> "" And 收款_bt.Enabled = True And 明細表_dgv.Rows.Count > 0 Then
  17. Dim aa As MsgBoxResult = MsgBox("單據沒有收款是否自動收款完成?", MsgBoxStyle.OkCancel)
  18. If aa = MsgBoxResult.Ok Then
  19. 收款_bt.PerformClick() : e.Cancel = False
  20. End If
  21. End If
  22. End Sub
  23. Private Sub 年度_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 年度_cb.SelectedIndexChanged
  24. PA = 年度_cb.Text : Set_清單7() : Set_清單3() : Set_清單4()
  25. End Sub
  26. Private Sub Set_清單1()
  27. Dim ds1 As New DataSet : 控制表_dgv.DataSource = Nothing : ds1.Clear()
  28. 控制表_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  29. 控制表_dgv.ColumnHeadersHeight = 30 : 控制表_dgv.AllowUserToAddRows = False : 控制表_dgv.RowTemplate.Height = 30
  30. SQL_點燈_控制表清單()
  31. da.Fill(ds1) : 控制表_dgv.DataSource = ds1.Tables(0) : conn.Close()
  32. Dim newFont As New System.Drawing.Font("微軟正黑體", 9) ' 創建一個新字體,Arial 12pt
  33. 控制表_dgv.RowsDefaultCellStyle.Font = newFont
  34. 控制表_dgv.Columns(0).FillWeight = 60 : 控制表_dgv.Columns(8).FillWeight = 40 : 控制表_dgv.Columns(11).Visible = False
  35. 控制表_dgv.Columns(1).Visible = False : 控制表_dgv.Columns(2).Visible = False : 控制表_dgv.Columns(10).Visible = False
  36. 控制表_dgv.Columns(3).Visible = False : 控制表_dgv.Columns(4).Visible = False : 控制表_dgv.Columns(5).Visible = False
  37. 控制表_dgv.Columns(6).Visible = False : 控制表_dgv.Columns(7).Visible = False : 控制表_dgv.Columns(9).Visible = False
  38. End Sub
  39. Private Sub Set_清單2()
  40. 明細表_dgv.Columns.Clear()
  41. Dim ds2 As New DataSet : 明細表_dgv.DataSource = Nothing : ds2.Clear()
  42. 明細表_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  43. 明細表_dgv.ColumnHeadersHeight = 30 : 明細表_dgv.AllowUserToAddRows = False : 明細表_dgv.RowTemplate.Height = 30
  44. PA = Year(選擇日期_dtp.Value) - 1911 : PA1 = 單號_tb.Text : Set_清單7() : Set_清單5() : Set_清單3() : Set_清單4() : SQL2 = ""
  45. For i As Integer = 0 To 明細表2_dgv.Rows.Count - 1 : SQL2 &= " AND (編號 NOT LIKE N'" & 明細表2_dgv("科目編號", i).Value.ToString & "')" : Next
  46. SQL_燈科目讀取1() : 科目_cb.Items.Clear() : 編號_cb.Items.Clear()
  47. While (dr.Read()) : 科目_cb.Items.Add(dr("會計科目")) : 編號_cb.Items.Add(dr("編號")) : End While : conn.Close()
  48. Dim CN00 As String = "姓名" : Dim NC00 As New DataGridViewTextBoxColumn With {.HeaderText = CN00, .Name = CN00, .FillWeight = 50} : 明細表_dgv.Columns.Add(NC00)
  49. Dim CN01 As String = "查" : Dim NC01 As New DataGridViewImageColumn With {.HeaderText = CN01, .Name = CN01, .FillWeight = 15} : 明細表_dgv.Columns.Add(NC01)
  50. Dim CN011 As String = "性別" : Dim NC011 As New DataGridViewTextBoxColumn With {.HeaderText = CN011, .Name = CN011, .FillWeight = 20} : 明細表_dgv.Columns.Add(NC011)
  51. Dim CN012 As String = "生肖" : Dim NC012 As New DataGridViewTextBoxColumn With {.HeaderText = CN012, .Name = CN012, .FillWeight = 20} : 明細表_dgv.Columns.Add(NC012)
  52. Dim CN02 As String = "會計科目" : Dim NC02 As New DataGridViewTextBoxColumn With {.HeaderText = CN02, .Name = CN02, .FillWeight = 40} : 明細表_dgv.Columns.Add(NC02)
  53. Dim CN03 As String = "課目編號" : Dim NC03 As New DataGridViewTextBoxColumn With {.HeaderText = CN03, .Name = CN03, .FillWeight = 40} : 明細表_dgv.Columns.Add(NC03)
  54. Dim CN04 As String = "內容" : Dim NC04 As New DataGridViewTextBoxColumn With {.HeaderText = CN04, .Name = CN04, .FillWeight = 130} : 明細表_dgv.Columns.Add(NC04)
  55. Dim CN05 As String = "非點燈收款" : Dim NC05 As New DataGridViewTextBoxColumn With {.HeaderText = CN05, .Name = CN05, .FillWeight = 50} : 明細表_dgv.Columns.Add(NC05)
  56. For i As Integer = 0 To 明細表1_dgv.Rows.Count - 1
  57. Dim columnName1 As String = 明細表1_dgv(0, i).Value.ToString
  58. Dim newColumn1 As New DataGridViewCheckBoxColumn With {
  59. .HeaderText = columnName1,
  60. .Name = columnName1,
  61. .FillWeight = 25 ' 設定欄位寬度為 30
  62. }
  63. 明細表_dgv.Columns.Add(newColumn1)
  64. Next
  65. Dim CN06 As String = "金額" : Dim NC06 As New DataGridViewTextBoxColumn With {.HeaderText = CN06, .Name = CN06, .FillWeight = 40} : 明細表_dgv.Columns.Add(NC06)
  66. Dim CN07 As String = "項" : Dim NC07 As New DataGridViewTextBoxColumn With {.HeaderText = CN07, .Name = CN07, .FillWeight = 40} : 明細表_dgv.Columns.Add(NC07)
  67. Dim newFont As New System.Drawing.Font("微軟正黑體", 9) ' 創建一個新字體,Arial 12pt
  68. 明細表_dgv.ColumnHeadersDefaultCellStyle.Font = newFont : 明細表_dgv.RowsDefaultCellStyle.Font = newFont
  69. 明細表_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  70. 明細表_dgv.Columns("金額").ReadOnly = True : 明細表_dgv.Columns("會計科目").ReadOnly = True
  71. 明細表_dgv.Columns("性別").ReadOnly = True : 明細表_dgv.Columns("生肖").ReadOnly = True
  72. 明細表_dgv.Columns("課目編號").Visible = False : 明細表_dgv.Columns("項").Visible = False
  73. 明細表_dgv.Columns("金額").DefaultCellStyle.Format = "#,##0" : 明細表_dgv.Columns("非點燈收款").DefaultCellStyle.Format = "#,##0"
  74. 明細表_dgv.Columns("非點燈收款").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  75. 明細表_dgv.Columns("非點燈收款").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  76. 明細表_dgv.Columns("金額").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  77. 明細表_dgv.Columns("金額").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  78. 明細表_dgv.Columns("姓名").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  79. 明細表_dgv.Columns("姓名").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  80. Dim mycol1 As DataGridViewImageColumn = 明細表_dgv.Columns("查") : mycol1.ImageLayout = DataGridViewImageCellLayout.Zoom
  81. 收支單中新增一筆空白資料1_bt.Enabled = True
  82. If 收款_dgv.Rows.Count > 0 Then
  83. Dim 數量 As Integer = 明細表1_dgv.Rows.Count + 5
  84. For i As Integer = 0 To 收款_dgv.Rows.Count - 1 : Set_明細()
  85. 明細表_dgv("姓名", 0).Value = 收款_dgv("姓名", i).Value.ToString : 明細表_dgv("會計科目", 0).Value = 收款_dgv("會計科目", i).Value.ToString
  86. 明細表_dgv("課目編號", 0).Value = 收款_dgv("科目編號", i).Value.ToString : 明細表_dgv("內容", 0).Value = 收款_dgv("內容", i).Value.ToString
  87. 明細表_dgv("非點燈收款", 0).Value = CInt(收款_dgv("非點燈收款", i).Value.ToString)
  88. 明細表_dgv("性別", 0).Value = 收款_dgv("性別", i).Value.ToString : 明細表_dgv("生肖", 0).Value = 收款_dgv("生肖", i).Value.ToString
  89. If 數量 >= 6 Then : If 收款_dgv("CH1", i).Value = True Then : 明細表_dgv(8, 0).Value = True : End If : End If
  90. If 數量 >= 7 Then : If 收款_dgv("CH2", i).Value = True Then : 明細表_dgv(9, 0).Value = True : End If : End If
  91. If 數量 >= 8 Then : If 收款_dgv("CH3", i).Value = True Then : 明細表_dgv(10, 0).Value = True : End If : End If
  92. If 數量 >= 9 Then : If 收款_dgv("CH4", i).Value = True Then : 明細表_dgv(11, 0).Value = True : End If : End If
  93. If 數量 >= 10 Then : If 收款_dgv("CH5", i).Value = True Then : 明細表_dgv(12, 0).Value = True : End If : End If
  94. If 數量 >= 11 Then : If 收款_dgv("CH6", i).Value = True Then : 明細表_dgv(13, 0).Value = True : End If : End If
  95. If 數量 >= 12 Then : If 收款_dgv("CH7", i).Value = True Then : 明細表_dgv(14, 0).Value = True : End If : End If
  96. If 數量 >= 13 Then : If 收款_dgv("CH8", i).Value = True Then : 明細表_dgv(15, 0).Value = True : End If : End If
  97. If 數量 >= 14 Then : If 收款_dgv("CH9", i).Value = True Then : 明細表_dgv(16, 0).Value = True : End If : End If
  98. If 數量 >= 15 Then : If 收款_dgv("CH10", i).Value = True Then : 明細表_dgv(17, 0).Value = True : End If : End If
  99. Next : 明細表計算()
  100. End If
  101. End Sub
  102. Private Sub Set_清單3()
  103. Dim ds2 As New DataSet : 明細表1_dgv.DataSource = Nothing : ds2.Clear()
  104. 明細表1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  105. 明細表1_dgv.ColumnHeadersHeight = 30 : 明細表1_dgv.AllowUserToAddRows = False : 明細表1_dgv.RowTemplate.Height = 30
  106. SQL_燈價格查詢()
  107. da.Fill(ds2) : 明細表1_dgv.DataSource = ds2.Tables(0) : conn.Close()
  108. End Sub
  109. Private Sub Set_清單4()
  110. Dim ds2 As New DataSet : 明細表2_dgv.DataSource = Nothing : ds2.Clear()
  111. 明細表2_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  112. 明細表2_dgv.ColumnHeadersHeight = 30 : 明細表2_dgv.AllowUserToAddRows = False : 明細表2_dgv.RowTemplate.Height = 30
  113. SQL_燈科目查詢()
  114. da.Fill(ds2) : 明細表2_dgv.DataSource = ds2.Tables(0) : conn.Close()
  115. End Sub
  116. Private Sub Set_清單5()
  117. Dim ds1 As New DataSet : 收款_dgv.DataSource = Nothing : ds1.Clear()
  118. 收款_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  119. 收款_dgv.ColumnHeadersHeight = 30 : 收款_dgv.AllowUserToAddRows = False : 收款_dgv.RowTemplate.Height = 30
  120. SQL_點燈_收款查詢()
  121. da.Fill(ds1) : 收款_dgv.DataSource = ds1.Tables(0) : conn.Close()
  122. End Sub
  123. Private Sub Set_清單6()
  124. Dim ds1 As New DataSet : 未安燈_dgv.DataSource = Nothing : ds1.Clear()
  125. 未安燈_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  126. 未安燈_dgv.ColumnHeadersHeight = 30 : 未安燈_dgv.AllowUserToAddRows = False : 未安燈_dgv.RowTemplate.Height = 30
  127. SQL_點燈_未安查詢()
  128. da.Fill(ds1) : 未安燈_dgv.DataSource = ds1.Tables(0) : conn.Close()
  129. End Sub
  130. Private Sub Set_清單7()
  131. Dim ds1 As New DataSet : 剩餘燈_dgv.DataSource = Nothing : ds1.Clear()
  132. 剩餘燈_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  133. 剩餘燈_dgv.ColumnHeadersHeight = 30 : 剩餘燈_dgv.AllowUserToAddRows = False : 剩餘燈_dgv.RowTemplate.Height = 30
  134. SQL_點燈_剩餘查詢()
  135. da.Fill(ds1) : 剩餘燈_dgv.DataSource = ds1.Tables(0) : conn.Close()
  136. 剩餘燈_lb.Text = PA & " 年燈種 剩餘數量 "
  137. For I As Integer = 0 To 剩餘燈_dgv.Rows.Count - 1
  138. 剩餘燈_lb.Text &= "- " & 剩餘燈_dgv(0, I).Value.ToString & " " & Strings.Format(CInt(剩餘燈_dgv(1, I).Value.ToString), "#,##0") & " "
  139. Next
  140. End Sub
  141. Private Sub 控制表_dgv_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 控制表_dgv.CellClick
  142. If e.RowIndex = -1 Then : Else
  143. 單號_tb.Text = 控制表_dgv(0, e.RowIndex).Value.ToString
  144. Dim dateString As String = 控制表_dgv(3, e.RowIndex).Value.ToString
  145. Dim dateParts() As String = dateString.Split("/"c) : Dim year As Integer = Integer.Parse(dateParts(0)) + 1911 ' 將民國年轉換為西元年
  146. Dim month As Integer = Integer.Parse(dateParts(1)) : Dim day As Integer = Integer.Parse(dateParts(2)) : Dim dateTime As New DateTime(year, month, day)
  147. 選擇日期_dtp.Value = dateTime : 選擇日期_dtp.CustomFormat = "yyyy/MM/dd" : 選擇日期_dtp.Format = DateTimePickerFormat.Custom
  148. 地址_tb.Text = 控制表_dgv(1, e.RowIndex).Value.ToString : 電話_tb.Text = 控制表_dgv(2, e.RowIndex).Value.ToString
  149. 總金額_tb.Text = Strings.Format(Val(控制表_dgv(5, e.RowIndex).Value), "#,##0")
  150. 內容_tb.Text = 控制表_dgv(4, e.RowIndex).Value.ToString : 委員_tb.Text = 控制表_dgv(6, e.RowIndex).Value.ToString
  151. 車主名稱_tb.Text = 控制表_dgv(8, e.RowIndex).Value.ToString : 群組編號_cb.Text = 控制表_dgv(10, e.RowIndex).Value.ToString
  152. If 控制表_dgv(7, e.RowIndex).Value.ToString = "" Then : 收款人_tb.Text = gUserName
  153. Else : 收款人_tb.Text = 控制表_dgv(7, e.RowIndex).Value.ToString : End If : Set_清單2()
  154. PA20 = 單號_tb.Text : SQL_點燈_單號年度查詢()
  155. If dr.Read() Then : 年度_cb.Text = dr("年度").ToString : Else : 年度_cb.Text = "" : End If : conn.Close()
  156. If 控制表_dgv(11, e.RowIndex).Value = True Then
  157. 明細表_dgv.Enabled = False
  158. 刪除_bt.Enabled = False : 收款_bt.Enabled = False : 收支單中新增一筆空白資料1_bt.Enabled = False
  159. 刪除選中的一筆資料1_bt.Enabled = False : 列印_bt.Enabled = True : 儲存_bt.Enabled = False : 點燈確認_bt.Enabled = True
  160. 客戶查詢_bt.Enabled = False
  161. SQL_點燈_單號收款日查詢() : If dr.Read() Then : 收款日期_dtp.Text = dr("日期").ToString : 收款日期_dtp.CustomFormat = "yyyy/MM/dd" : 收款日期_dtp.Format = DateTimePickerFormat.Custom : End If : conn.Close()
  162. Else
  163. 刪除_bt.Enabled = True : 收支單中新增一筆空白資料1_bt.Enabled = True
  164. 刪除選中的一筆資料1_bt.Enabled = True : 列印_bt.Enabled = False : 儲存_bt.Enabled = True
  165. 客戶查詢_bt.Enabled = True
  166. 明細表_dgv.Enabled = True
  167. If 明細表_dgv.Rows.Count > 0 Then
  168. 收款_bt.Enabled = True : 點燈確認_bt.Enabled = True
  169. End If
  170. End If
  171. End If
  172. End Sub
  173. Private Sub 明細表_dgv_CellContentCl(sender As Object, e As DataGridViewCellEventArgs) Handles 明細表_dgv.CellEndEdit
  174. 明細表計算()
  175. End Sub
  176. Private Sub 明細表計算()
  177. Dim 合計 As Integer : Dim 數量 As Integer = 明細表1_dgv.Rows.Count + 5 '----先設定10格------
  178. 總金額_tb.Text = "0"
  179. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1 : 合計 = 0
  180. If 數量 >= 6 Then : If 明細表_dgv(8, i).Value = True Then : 合計 += 明細表1_dgv(1, 0).Value : End If : End If
  181. If 數量 >= 7 Then : If 明細表_dgv(9, i).Value = True Then : 合計 += 明細表1_dgv(1, 1).Value : End If : End If
  182. If 數量 >= 8 Then : If 明細表_dgv(10, i).Value = True Then : 合計 += 明細表1_dgv(1, 2).Value : End If : End If
  183. If 數量 >= 9 Then : If 明細表_dgv(11, i).Value = True Then : 合計 += 明細表1_dgv(1, 3).Value : End If : End If
  184. If 數量 >= 10 Then : If 明細表_dgv(12, i).Value = True Then : 合計 += 明細表1_dgv(1, 4).Value : End If : End If
  185. If 數量 >= 11 Then : If 明細表_dgv(13, i).Value = True Then : 合計 += 明細表1_dgv(1, 5).Value : End If : End If
  186. If 數量 >= 12 Then : If 明細表_dgv(14, i).Value = True Then : 合計 += 明細表1_dgv(1, 6).Value : End If : End If
  187. If 數量 >= 13 Then : If 明細表_dgv(15, i).Value = True Then : 合計 += 明細表1_dgv(1, 7).Value : End If : End If
  188. If 數量 >= 14 Then : If 明細表_dgv(16, i).Value = True Then : 合計 += 明細表1_dgv(1, 8).Value : End If : End If
  189. If 數量 >= 15 Then : If 明細表_dgv(17, i).Value = True Then : 合計 += 明細表1_dgv(1, 9).Value : End If : End If
  190. 明細表_dgv("非點燈收款", i).Value = CInt(明細表_dgv("非點燈收款", i).Value)
  191. 明細表_dgv("金額", i).Value = CInt(明細表_dgv("非點燈收款", i).Value) + 合計
  192. 總金額_tb.Text = Strings.Format((CInt(總金額_tb.Text) + CInt(明細表_dgv("金額", i).Value.ToString)), "#,##0")
  193. Next
  194. End Sub
  195. Private Sub 明細表_dgv_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 明細表_dgv.MouseUp
  196. Dim 數量 As Integer = 明細表1_dgv.Rows.Count '----先設定10格------
  197. If 明細表_dgv.SelectedCells.Count > 0 Then
  198. If 明細表_dgv.SelectedCells(0).ColumnIndex = 1 Then
  199. SQL_點燈_人員下拉清單() : 群組人員_cb.Items.Clear() : 性別_cb.Items.Clear() : 生肖_cb.Items.Clear()
  200. While (dr.Read()) : 群組人員_cb.Items.Add(dr("客戶名稱")) : 性別_cb.Items.Add(dr("負責人")) : 生肖_cb.Items.Add(dr("負責人電話")) : End While : conn.Close()
  201. CB選擇清單(群組人員_cb, 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(0).Value.ToString)
  202. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(0).Value = 群組人員_cb.Text
  203. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(2).Value = 性別_cb.Text
  204. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(3).Value = 生肖_cb.Text
  205. ElseIf 明細表_dgv.SelectedCells(0).ColumnIndex = 4 Then
  206. CB選擇清單(科目_cb, 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(4).Value.ToString)
  207. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(4).Value = 科目_cb.Text
  208. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(5).Value = 編號_cb.Text
  209. ElseIf 明細表_dgv.SelectedCells(0).ColumnIndex = 8 And 明細表_dgv.SelectedCells(0).ColumnIndex <= 數量 + 7 Then
  210. If 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(8).Value = True Then
  211. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(8).Value = False
  212. Else : 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(8).Value = True
  213. End If : 明細表_dgv.CurrentCell = 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(0)
  214. ElseIf 明細表_dgv.SelectedCells(0).ColumnIndex = 9 And 明細表_dgv.SelectedCells(0).ColumnIndex <= 數量 + 7 Then
  215. If 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(9).Value = True Then
  216. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(9).Value = False
  217. Else : 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(9).Value = True
  218. End If : 明細表_dgv.CurrentCell = 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(0)
  219. ElseIf 明細表_dgv.SelectedCells(0).ColumnIndex = 10 And 明細表_dgv.SelectedCells(0).ColumnIndex <= 數量 + 7 Then
  220. If 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(10).Value = True Then
  221. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(10).Value = False
  222. Else : 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(10).Value = True
  223. End If : 明細表_dgv.CurrentCell = 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(0)
  224. ElseIf 明細表_dgv.SelectedCells(0).ColumnIndex = 11 And 明細表_dgv.SelectedCells(0).ColumnIndex <= 數量 + 7 Then
  225. If 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(11).Value = True Then
  226. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(11).Value = False
  227. Else : 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(11).Value = True
  228. End If : 明細表_dgv.CurrentCell = 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(0)
  229. ElseIf 明細表_dgv.SelectedCells(0).ColumnIndex = 12 And 明細表_dgv.SelectedCells(0).ColumnIndex <= 數量 + 7 Then
  230. If 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(12).Value = True Then
  231. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(12).Value = False
  232. Else : 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(12).Value = True
  233. End If : 明細表_dgv.CurrentCell = 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(0)
  234. ElseIf 明細表_dgv.SelectedCells(0).ColumnIndex = 13 And 明細表_dgv.SelectedCells(0).ColumnIndex <= 數量 + 7 Then
  235. If 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(13).Value = True Then
  236. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(13).Value = False
  237. Else : 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(13).Value = True
  238. End If : 明細表_dgv.CurrentCell = 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(0)
  239. ElseIf 明細表_dgv.SelectedCells(0).ColumnIndex = 14 And 明細表_dgv.SelectedCells(0).ColumnIndex <= 數量 + 7 Then
  240. If 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(14).Value = True Then
  241. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(14).Value = False
  242. Else : 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(14).Value = True
  243. End If : 明細表_dgv.CurrentCell = 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(0)
  244. ElseIf 明細表_dgv.SelectedCells(0).ColumnIndex = 15 And 明細表_dgv.SelectedCells(0).ColumnIndex <= 數量 + 7 Then
  245. If 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(15).Value = True Then
  246. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(15).Value = False
  247. Else : 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(15).Value = True
  248. End If : 明細表_dgv.CurrentCell = 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(0)
  249. ElseIf 明細表_dgv.SelectedCells(0).ColumnIndex = 16 And 明細表_dgv.SelectedCells(0).ColumnIndex <= 數量 + 7 Then
  250. If 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(16).Value = True Then
  251. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(16).Value = False
  252. Else : 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(16).Value = True
  253. End If : 明細表_dgv.CurrentCell = 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(0)
  254. ElseIf 明細表_dgv.SelectedCells(0).ColumnIndex = 17 And 明細表_dgv.SelectedCells(0).ColumnIndex <= 數量 + 7 Then
  255. If 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(17).Value = True Then
  256. 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(17).Value = False
  257. Else : 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(17).Value = True
  258. End If : 明細表_dgv.CurrentCell = 明細表_dgv.Rows(明細表_dgv.SelectedCells(0).RowIndex).Cells(0)
  259. End If
  260. End If
  261. End Sub
  262. Private Sub 客戶查詢_bt_Click(sender As Object, e As EventArgs) Handles 客戶查詢_bt.Click
  263. 連動模組.SetCallingPage("點燈系統") : 連動模組.ShowDialog() : 連動模組.BringToFront()
  264. End Sub
  265. Public Sub ReceiveDataFromPageB(ByVal data As String, ByVal data1 As String, ByVal data2 As String, ByVal data3 As String)
  266. If 群組編號_cb.Text <> "" And 群組編號_cb.Text <> data3 And 明細表_dgv.Rows.Count > 0 And 收款_bt.Enabled = True Then
  267. 單號_tb.Text = "" : 車主名稱_tb.Text = data : 電話_tb.Text = data1 : 地址_tb.Text = data2
  268. 總金額_tb.Text = "0" : 委員_tb.Text = "" : 控制表_dgv.Enabled = False : 查詢物_bt.Enabled = False : 新增_bt.Enabled = False
  269. 收款_bt.Enabled = False : 列印_bt.Enabled = False : 收支單中新增一筆空白資料1_bt.Enabled = True : 客戶查詢_bt.Enabled = True
  270. 刪除選中的一筆資料1_bt.Enabled = True : 儲存_bt.Enabled = True : 點燈確認_bt.Enabled = False
  271. Dim NUM1 As Integer
  272. Dim selectedDate As DateTime = 選擇日期_dtp.Value
  273. Dim taiwanYear As Integer = selectedDate.Year - 1911
  274. Dim str As String = String.Format("{0}{1:00}{2:00}", taiwanYear, selectedDate.Month, selectedDate.Day)
  275. PA1 = String.Format("{0}/{1:00}/{2:00}", taiwanYear, selectedDate.Month, selectedDate.Day)
  276. For i As Integer = 1 To 999
  277. NUM1 = 0 + i
  278. If NUM1 < 10 Then : 單號_tb.Text = "GF" & str & "00" & NUM1
  279. ElseIf NUM1 > 9 Then : 單號_tb.Text = "GF" & str & "0" & NUM1
  280. ElseIf NUM1 > 99 Then : 單號_tb.Text = "GF" & str & NUM1 : End If : conn.Close()
  281. PA = 單號_tb.Text : SQL_點燈_查詢第一筆單號() : If dr.Read() Then : Else : i = 999 : conn.Close() : End If : conn.Close()
  282. Next : PA = 單號_tb.Text : SQL_點燈_新增一筆點燈控制表() : conn.Close() : Set_清單2()
  283. Else : 車主名稱_tb.Text = data : 電話_tb.Text = data1 : 地址_tb.Text = data2 : 群組編號_cb.Text = data3 : End If
  284. End Sub
  285. Private Sub 新增_bt_Click(sender As Object, e As EventArgs) Handles 新增_bt.Click
  286. 單號_tb.Text = "" : 車主名稱_tb.Text = "" : 電話_tb.Text = "" : 地址_tb.Text = ""
  287. 總金額_tb.Text = "0" : 委員_tb.Text = "" : 控制表_dgv.Enabled = False : 查詢物_bt.Enabled = False : 新增_bt.Enabled = False
  288. 收款_bt.Enabled = False : 列印_bt.Enabled = False : 收支單中新增一筆空白資料1_bt.Enabled = True : 客戶查詢_bt.Enabled = True
  289. 刪除選中的一筆資料1_bt.Enabled = True : 儲存_bt.Enabled = True : 明細表_dgv.Enabled = True : 點燈確認_bt.Enabled = False
  290. Dim NUM1 As Integer
  291. Dim selectedDate As DateTime = 選擇日期_dtp.Value
  292. Dim taiwanYear As Integer = selectedDate.Year - 1911
  293. Dim str As String = String.Format("{0}{1:00}{2:00}", taiwanYear, selectedDate.Month, selectedDate.Day)
  294. PA1 = String.Format("{0}/{1:00}/{2:00}", taiwanYear, selectedDate.Month, selectedDate.Day)
  295. For i As Integer = 1 To 999
  296. NUM1 = 0 + i
  297. If NUM1 < 10 Then : 單號_tb.Text = "GF" & str & "00" & NUM1 : ElseIf NUM1 > 9 Then : 單號_tb.Text = "GF" & str & "0" & NUM1
  298. ElseIf NUM1 > 99 Then : 單號_tb.Text = "GF" & str & NUM1 : End If : conn.Close()
  299. PA = 單號_tb.Text : SQL_點燈_查詢第一筆單號() : If dr.Read() Then : Else : i = 999 : conn.Close() : End If : conn.Close()
  300. Next : PA = 單號_tb.Text : SQL_點燈_新增一筆點燈控制表() : conn.Close() : Set_清單2()
  301. End Sub
  302. Private Sub 刪除_bt_Click(sender As Object, e As EventArgs) Handles 刪除_bt.Click
  303. PA = 單號_tb.Text : SQL_點燈_控制表刪除() : SQL_點燈_明細表刪除() : SQL_點燈_收款刪除() : conn.Close() : MsgBox("刪除成功!!")
  304. 單號_tb.Text = "" : 車主名稱_tb.Text = "" : 電話_tb.Text = "" : 地址_tb.Text = ""
  305. 總金額_tb.Text = "0" : 委員_tb.Text = "" : Set_清單1() : 明細表_dgv.Columns.Clear()
  306. 控制表_dgv.Enabled = True : 查詢物_bt.Enabled = True : 新增_bt.Enabled = True
  307. 刪除_bt.Enabled = False : 收款_bt.Enabled = False : 收支單中新增一筆空白資料1_bt.Enabled = False
  308. 刪除選中的一筆資料1_bt.Enabled = False : 列印_bt.Enabled = False : 儲存_bt.Enabled = False
  309. 客戶查詢_bt.Enabled = False : 明細表_dgv.Enabled = True : 點燈確認_bt.Enabled = False
  310. End Sub
  311. Private Sub 群組編號_cb_TextChanged(sender As Object, e As EventArgs) Handles 群組編號_cb.TextChanged
  312. SQL_點燈_人員下拉清單() : 群組人員_cb.Items.Clear() : 性別_cb.Items.Clear() : 生肖_cb.Items.Clear()
  313. While (dr.Read()) : 群組人員_cb.Items.Add(dr("客戶名稱")) : 性別_cb.Items.Add(dr("負責人")) : 生肖_cb.Items.Add(dr("負責人電話")) : End While : conn.Close()
  314. End Sub
  315. Private Sub 群組人員_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 群組人員_cb.SelectedIndexChanged
  316. 性別_cb.SelectedIndex = 群組人員_cb.SelectedIndex : 生肖_cb.SelectedIndex = 群組人員_cb.SelectedIndex
  317. End Sub
  318. Private Sub 科目_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 科目_cb.SelectedIndexChanged
  319. 編號_cb.SelectedIndex = 科目_cb.SelectedIndex
  320. End Sub
  321. Private Sub Set_明細()
  322. Dim 流水 As Integer
  323. If 明細表_dgv.Rows.Count = 0 Then : 流水 = 1 : End If
  324. 明細表_dgv.Rows.Insert(0)
  325. If 明細表_dgv.Rows.Count > 1 Then : 流水 = CInt(明細表_dgv("項", 1).Value) + 1 : End If
  326. For i = 5 To 明細表1_dgv.Rows.Count + 4 : 明細表_dgv(i, 0).Value = False : Next
  327. 明細表_dgv("非點燈收款", 0).Value = 0 : 明細表_dgv("金額", 0).Value = 0 : 明細表_dgv("項", 0).Value = 流水 : 明細表_dgv("姓名", 0).Value = ""
  328. 明細表_dgv("會計科目", 0).Value = "" : 明細表_dgv("課目編號", 0).Value = "" : 明細表_dgv("內容", 0).Value = "" : 明細表_dgv("生肖", 0).Value = ""
  329. 明細表_dgv("性別", 0).Value = ""
  330. 明細表_dgv.Rows(0).Cells("查").Value = My.Resources.Search
  331. End Sub
  332. Private Sub 收支單中新增一筆空白資料1_bt_Click(sender As Object, e As EventArgs) Handles 收支單中新增一筆空白資料1_bt.Click
  333. If 車主名稱_tb.Text <> "" Then
  334. Dim 流水 As Integer
  335. If 明細表_dgv.Rows.Count = 0 Then : 流水 = 1 : End If
  336. 明細表_dgv.Rows.Insert(0)
  337. If 明細表_dgv.Rows.Count > 1 Then : 流水 = CInt(明細表_dgv("項", 1).Value) + 1 : End If
  338. For i = 5 To 明細表1_dgv.Rows.Count + 4 : 明細表_dgv(i, 0).Value = False : Next
  339. 明細表_dgv("非點燈收款", 0).Value = 0 : 明細表_dgv("金額", 0).Value = 0 : 明細表_dgv("項", 0).Value = 流水 : 明細表_dgv("姓名", 0).Value = ""
  340. 明細表_dgv("會計科目", 0).Value = "" : 明細表_dgv("課目編號", 0).Value = "" : 明細表_dgv("內容", 0).Value = "" : 明細表_dgv("生肖", 0).Value = ""
  341. 明細表_dgv("性別", 0).Value = ""
  342. 明細表_dgv.Rows(0).Cells("查").Value = My.Resources.Search
  343. Else : MsgBox("未選擇信眾名稱") : End If
  344. End Sub
  345. Private Sub 刪除選中的一筆資料1_bt_Click(sender As Object, e As EventArgs) Handles 刪除選中的一筆資料1_bt.Click
  346. Dim selectedRow As DataGridViewRow = 明細表_dgv.CurrentRow
  347. Dim 選擇 As Integer = selectedRow.Index
  348. 明細表_dgv.Rows.RemoveAt(選擇)
  349. End Sub
  350. Private Sub 儲存_bt_Click(sender As Object, e As EventArgs) Handles 儲存_bt.Click
  351. If 車主名稱_tb.Text <> "" Then : PA = 單號_tb.Text
  352. 控制表_dgv.Enabled = True : 查詢物_bt.Enabled = True : 新增_bt.Enabled = True : 列印_bt.Enabled = True
  353. If 明細表_dgv.Rows.Count > 0 Then : 收款_bt.Enabled = True : 點燈確認_bt.Enabled = True : End If
  354. SQL_點燈_控制表修改() : SQL_點燈_收款刪除()
  355. If 明細表1_dgv.Rows.Count = 1 Then : SQL2 = ", CH1" : End If
  356. If 明細表1_dgv.Rows.Count = 2 Then : SQL2 = ", CH1, CH2" : End If
  357. If 明細表1_dgv.Rows.Count = 3 Then : SQL2 = ", CH1, CH2, CH3" : End If
  358. If 明細表1_dgv.Rows.Count = 4 Then : SQL2 = ", CH1, CH2, CH3, CH4" : End If
  359. If 明細表1_dgv.Rows.Count = 5 Then : SQL2 = ", CH1, CH2, CH3, CH4, CH5" : End If
  360. If 明細表1_dgv.Rows.Count = 6 Then : SQL2 = ", CH1, CH2, CH3, CH4, CH5, CH6" : End If
  361. If 明細表1_dgv.Rows.Count = 7 Then : SQL2 = ", CH1, CH2, CH3, CH4, CH5, CH6, CH7" : End If
  362. If 明細表1_dgv.Rows.Count = 8 Then : SQL2 = ", CH1, CH2, CH3, CH4, CH5, CH6, CH7, CH8" : End If
  363. If 明細表1_dgv.Rows.Count = 9 Then : SQL2 = ", CH1, CH2, CH3, CH4, CH5, CH6, CH7, CH8, CH9" : End If
  364. If 明細表1_dgv.Rows.Count = 10 Then : SQL2 = ", CH1, CH2, CH3, CH4, CH5, CH6, CH7, CH8, CH9, CH10" : End If : SQL3 = ""
  365. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  366. If 明細表1_dgv.Rows.Count = 1 Then : SQL4 = ", N'" & 明細表_dgv(8, i).Value & "'" : End If
  367. If 明細表1_dgv.Rows.Count = 2 Then : SQL4 = ", N'" & 明細表_dgv(8, i).Value & "', N'" & 明細表_dgv(9, i).Value & "'" : End If
  368. If 明細表1_dgv.Rows.Count = 3 Then : SQL4 = ", N'" & 明細表_dgv(8, i).Value & "', N'" & 明細表_dgv(9, i).Value & "', N'" & 明細表_dgv(10, i).Value & "'" : End If
  369. If 明細表1_dgv.Rows.Count = 4 Then : SQL4 = ", N'" & 明細表_dgv(8, i).Value & "', N'" & 明細表_dgv(9, i).Value & "', N'" & 明細表_dgv(10, i).Value & "'
  370. , N'" & 明細表_dgv(11, i).Value & "'" : End If
  371. If 明細表1_dgv.Rows.Count = 5 Then : SQL4 = ", N'" & 明細表_dgv(8, i).Value & "', N'" & 明細表_dgv(9, i).Value & "', N'" & 明細表_dgv(10, i).Value & "'
  372. , N'" & 明細表_dgv(11, i).Value & "', N'" & 明細表_dgv(12, i).Value & "'" : End If
  373. If 明細表1_dgv.Rows.Count = 6 Then : SQL4 = ", N'" & 明細表_dgv(8, i).Value & "', N'" & 明細表_dgv(9, i).Value & "', N'" & 明細表_dgv(10, i).Value & "'
  374. , N'" & 明細表_dgv(11, i).Value & "', N'" & 明細表_dgv(12, i).Value & "', N'" & 明細表_dgv(13, i).Value & "'" : End If
  375. If 明細表1_dgv.Rows.Count = 7 Then : SQL4 = ", N'" & 明細表_dgv(8, i).Value & "', N'" & 明細表_dgv(9, i).Value & "', N'" & 明細表_dgv(10, i).Value & "'
  376. , N'" & 明細表_dgv(11, i).Value & "', N'" & 明細表_dgv(12, i).Value & "', N'" & 明細表_dgv(13, i).Value & "'
  377. , N'" & 明細表_dgv(14, i).Value & "'" : End If
  378. If 明細表1_dgv.Rows.Count = 8 Then : SQL4 = ", N'" & 明細表_dgv(8, i).Value & "', N'" & 明細表_dgv(9, i).Value & "', N'" & 明細表_dgv(10, i).Value & "'
  379. , N'" & 明細表_dgv(11, i).Value & "', N'" & 明細表_dgv(12, i).Value & "', N'" & 明細表_dgv(13, i).Value & "'
  380. , N'" & 明細表_dgv(14, i).Value & "', N'" & 明細表_dgv(15, i).Value & "'" : End If
  381. If 明細表1_dgv.Rows.Count = 9 Then : SQL4 = ", N'" & 明細表_dgv(8, i).Value & "', N'" & 明細表_dgv(9, i).Value & "', N'" & 明細表_dgv(10, i).Value & "'
  382. , N'" & 明細表_dgv(11, i).Value & "', N'" & 明細表_dgv(12, i).Value & "', N'" & 明細表_dgv(13, i).Value & "'
  383. , N'" & 明細表_dgv(14, i).Value & "', N'" & 明細表_dgv(15, i).Value & "', N'" & 明細表_dgv(16, i).Value & "'" : End If
  384. If 明細表1_dgv.Rows.Count = 10 Then : SQL4 = ", N'" & 明細表_dgv(8, i).Value & "', N'" & 明細表_dgv(9, i).Value & "', N'" & 明細表_dgv(10, i).Value & "'
  385. , N'" & 明細表_dgv(11, i).Value & "', N'" & 明細表_dgv(12, i).Value & "', N'" & 明細表_dgv(13, i).Value & "'
  386. , N'" & 明細表_dgv(14, i).Value & "', N'" & 明細表_dgv(15, i).Value & "', N'" & 明細表_dgv(16, i).Value & "'
  387. , N'" & 明細表_dgv(17, i).Value & "'" : End If
  388. If i <> 明細表_dgv.Rows.Count - 1 Then
  389. SQL3 &= "(N'" & 單號_tb.Text & "', N'" & 明細表_dgv("項", i).Value.ToString & "', N'" & 明細表_dgv("姓名", i).Value.ToString & "',
  390. N'" & 明細表_dgv("會計科目", i).Value.ToString & "', N'" & 明細表_dgv("課目編號", i).Value.ToString & "',
  391. N'" & 明細表_dgv("內容", i).Value.ToString & "', N'" & 明細表_dgv("非點燈收款", i).Value.ToString & "'" & SQL4 & ",
  392. N'" & 明細表_dgv("性別", i).Value.ToString & "', N'" & 明細表_dgv("生肖", i).Value.ToString & "'),"
  393. Else
  394. SQL3 &= "(N'" & 單號_tb.Text & "', N'" & 明細表_dgv("項", i).Value.ToString & "', N'" & 明細表_dgv("姓名", i).Value.ToString & "',
  395. N'" & 明細表_dgv("會計科目", i).Value.ToString & "', N'" & 明細表_dgv("課目編號", i).Value.ToString & "',
  396. N'" & 明細表_dgv("內容", i).Value.ToString & "', N'" & 明細表_dgv("非點燈收款", i).Value.ToString & "'" & SQL4 & ",
  397. N'" & 明細表_dgv("性別", i).Value.ToString & "', N'" & 明細表_dgv("生肖", i).Value.ToString & "')"
  398. End If
  399. Next
  400. If 明細表_dgv.Rows.Count > 0 Then : SQL_點燈_收款新增() : End If : MsgBox("儲存成功!!") : Set_清單1()
  401. Else : MsgBox("未選擇信眾名稱") : End If
  402. End Sub
  403. Private Sub 查詢物_bt_Click(sender As Object, e As EventArgs) Handles 查詢物_bt.Click
  404. 通知訊息 = "請輸入信眾的 [姓名]、[電話]、[住址] 的關鍵字來進行查詢!!" : 查詢視窗.ShowDialog() : PA56 = 訊息回應 : Set_清單1() : PA56 = ""
  405. End Sub
  406. Private Sub 收款_bt_Click(sender As Object, e As EventArgs) Handles 收款_bt.Click
  407. If 年度_cb.Text <> "" And 明細表_dgv.Rows.Count > 0 Then : 開立零用金支付單() : NUM2 = 1
  408. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  409. PA1 = 單號_tb.Text : PA2 = 明細表_dgv("姓名", i).Value.ToString : PA6 = 年度_cb.Text
  410. If 明細表_dgv("非點燈收款", i).Value <> 0 Then
  411. Set_流水號1()
  412. DTP = Format(收款日期_dtp.Value, "yyyy/MM/dd") : PA12 = 明細表_dgv("課目編號", i).Value.ToString : PA13 = 明細表_dgv("非點燈收款", i).Value
  413. PA14 = String.Format("{0:D3}", NUM2) : PA15 = 明細表_dgv("內容", i).Value.ToString : SQL_點燈_新增公帳流水帳資料() : conn.Close() : NUM2 += 1
  414. End If
  415. For ii As Integer = 8 To 7 + 明細表1_dgv.Rows.Count
  416. If 明細表_dgv(ii, i).Value = True Then : Set_流水號1()
  417. DTP = Format(收款日期_dtp.Value, "yyyy/MM/dd") : PA12 = 明細表1_dgv("科目編號", ii - 8).Value.ToString : PA13 = 明細表1_dgv("價格", ii - 8).Value.ToString
  418. PA14 = String.Format("{0:D3}", NUM2) : PA15 = 年度_cb.Text & "-" & 明細表1_dgv("燈種", ii - 8).Value.ToString : SQL_點燈_新增公帳流水帳資料() : NUM2 += 1
  419. End If
  420. Next
  421. Next : SQL_點燈_控制表已收款修改() : Set_清單1() : MsgBox("收款成功!!")
  422. 明細表_dgv.Enabled = False : 刪除_bt.Enabled = False : 收款_bt.Enabled = False : 收支單中新增一筆空白資料1_bt.Enabled = False
  423. 刪除選中的一筆資料1_bt.Enabled = False : 列印_bt.Enabled = True : 儲存_bt.Enabled = False : 客戶查詢_bt.Enabled = False : 點燈確認_bt.Enabled = True
  424. Else : MsgBox("年度未選擇或明細表無資料") : End If
  425. End Sub
  426. Private Sub 開立零用金支付單()
  427. CB選擇清單(公司編號_cb, 公司編號_cb.Text)
  428. Dim 單號 As String
  429. DTP1 = Format(選擇日期_dtp.Value, "yyyyMMdd") : DTP4 = Format(選擇日期_dtp.Value, "yyyy/MM/dd")
  430. SQL_點燈_支付單號查詢()
  431. If dr.Read() Then
  432. Dim 流水 As String = dr("支付單號").ToString() ' 將流水號轉換為字串
  433. Dim parts As String = 流水.Substring(流水.Length - 3)
  434. Dim 流水號數字部分 As Integer = Integer.Parse(parts)
  435. Dim 新流水號數字部分 As Integer = 流水號數字部分 + 1
  436. Dim 新流水號數字部分字串 As String = 新流水號數字部分.ToString().PadLeft(3, "0"c)
  437. 單號 = "OE-" & DTP1 & "-" & 新流水號數字部分字串
  438. Else : 單號 = "OE-" & DTP1 & "-001" : End If
  439. PA = 單號 : PA1 = 單號_tb.Text : PA50 = 公司編號_cb.Text
  440. SQL_點燈_新增一筆公帳控制表() : SQL_點燈_控制表財務單號修改() : conn.Close()
  441. End Sub
  442. Private Sub 點燈確認_bt_Click(sender As Object, e As EventArgs) Handles 點燈確認_bt.Click
  443. If 年度_cb.Text <> "" And 明細表_dgv.Rows.Count > 0 Then
  444. CB選擇清單(年度_cb, 年度_cb.Text)
  445. PA = 單號_tb.Text : SQL_點燈_控制表已點燈修改() : SQL_點燈_明細表刪除() : conn.Close()
  446. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  447. PA2 = 明細表_dgv("姓名", i).Value.ToString : PA6 = 年度_cb.Text
  448. For ii As Integer = 8 To 7 + 明細表1_dgv.Rows.Count
  449. If 明細表_dgv(ii, i).Value = True Then : Set_流水號()
  450. PA3 = 明細表1_dgv("燈種", ii - 8).Value.ToString : PA4 = 明細表1_dgv("價格", ii - 8).Value.ToString
  451. If 明細表1_dgv("排序", ii - 8).Value.ToString = "順排" Then : PA21 = "" : Else : PA21 = "DESC" : End If
  452. SQL_點燈自動搜尋位置() : If dr.Read() Then : PA5 = dr("編號").ToString() : End If : SQL_點燈明細新增() : conn.Close()
  453. End If
  454. Next
  455. Next : MsgBox("點燈成功!!")
  456. Else : MsgBox("年度未選擇或明細表無資料") : End If
  457. End Sub
  458. Private Sub 載入公司編號cb()
  459. SQL_公司編號_下拉清單() : 公司編號_cb.Items.Clear()
  460. While (dr.Read()) : 公司編號_cb.Items.Add(dr("公司編號")) : End While : conn.Close()
  461. End Sub
  462. Private Sub Set_流水號()
  463. SQL_點燈_明細表流水號查詢()
  464. If dr.Read() Then
  465. Dim 流水 As String = dr("流水號").ToString() ' 將流水號轉換為字串
  466. Dim 流水號數字部分 As Integer = Integer.Parse(流水.Substring(1))
  467. Dim 新流水號數字部分 As Integer = 流水號數字部分 + 1
  468. Dim 新流水號數字部分字串 As String = 新流水號數字部分.ToString().PadLeft(8, "0"c)
  469. 新流水1 = "D" & 新流水號數字部分字串
  470. Else : 新流水1 = "D00000000" : End If : PA7 = 新流水1 : conn.Close()
  471. End Sub
  472. Private Sub Set_流水號1()
  473. conn.Close() : dr.Close()
  474. DTP1 = Format(選擇日期_dtp.Value, "yyyyMMdd") : PA19 = DTP1.Substring(DTP1.Length - 6) : SQL_點燈_支付明細流水號查詢()
  475. If dr.Read() Then
  476. Dim 流水 As String = dr("流水號").ToString() ' 將流水號轉換為字串
  477. Dim parts As String = 流水.Substring(流水.Length - 4)
  478. Dim 流水號數字部分 As Integer = Integer.Parse(parts)
  479. Dim 新流水號數字部分 As Integer = 流水號數字部分 + 1
  480. Dim 新流水號數字部分字串 As String = 新流水號數字部分.ToString().PadLeft(4, "0"c)
  481. 新流水1 = "B" & PA19 & 新流水號數字部分字串
  482. Else : 新流水1 = "B" & PA19 & "0000" : End If : PA19 = 新流水1
  483. End Sub
  484. Private Sub 列印_bt_Click(sender As Object, e As EventArgs) Handles 列印_bt.Click
  485. MsgBox("列印功能需要客製,請聯繫系統開發工程師!!")
  486. End Sub
  487. End Class