Ingen beskrivning
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 31KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411
  1. Option Strict Off
  2. Imports System.IO
  3. Public Class 特支費申請
  4. Dim RI As Integer = -1 : Dim 不可編輯 As Boolean
  5. Dim SK As String = "要查找的 KEY"
  6. Dim Str As String = Application.StartupPath
  7. Dim 新項次 As String
  8. Dim NUM1 As Integer
  9. Dim 對話框(14) As String
  10. Private Sub Set_清單1()
  11. Dim ds1 As New DataSet : 清單_dgv.DataSource = Nothing : ds1.Clear()
  12. 清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  13. 清單_dgv.ColumnHeadersHeight = 50 : 清單_dgv.AllowUserToAddRows = False
  14. SQL_特支費與傭金清單() : da.Fill(ds1) : 清單_dgv.DataSource = ds1.Tables(0) : conn.Close()
  15. 清單_dgv.Columns(0).Visible = False : 清單_dgv.Columns(1).Visible = False : 清單_dgv.Columns(2).FillWeight = 170 : 清單_dgv.Columns(3).FillWeight = 80
  16. 清單_dgv.Columns(4).Visible = False : 清單_dgv.Columns(5).Visible = False : 清單_dgv.Columns(6).FillWeight = 50 : 清單_dgv.Columns(7).Visible = False
  17. For i As Integer = 0 To 清單_dgv.Rows.Count - 1
  18. If 清單_dgv("Approval", i).Value.ToString = "" Then
  19. 清單_dgv("Approval", i).Value = ""
  20. ElseIf strings.Left(清單_dgv("Approval", i).Value.ToString, 2) = "作廢" Then
  21. 清單_dgv("Approval", i).Value = "NO"
  22. Else
  23. 清單_dgv("Approval", i).Value = "YES"
  24. End If
  25. Next
  26. End Sub
  27. Private Sub Set_零用金清單()
  28. If 首次開啟 = True Then : Else
  29. Dim ds As New DataSet : 明細_dgv.DataSource = Nothing : ds.Clear()
  30. 明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  31. 明細_dgv.ColumnHeadersHeight = 25 : 明細_dgv.AllowUserToAddRows = False : 明細_dgv.RowTemplate.Height = 35
  32. If 小間距_ch.Checked = False And 中間距_ch.Checked = False And 大間距_ch.Checked = True Then : 明細_dgv.RowTemplate.Height = 65
  33. ElseIf 小間距_ch.Checked = False And 中間距_ch.Checked = True And 大間距_ch.Checked = False Then : 明細_dgv.RowTemplate.Height = 45
  34. ElseIf 小間距_ch.Checked = True And 中間距_ch.Checked = False And 大間距_ch.Checked = False Then : 明細_dgv.RowTemplate.Height = 25 : End If
  35. PA = 單據_tb.Text : 表頭(11) = "會" : 表頭(12) = "出" : SQL2 = "" : SQL_特支費與傭金明細() : da.Fill(ds) : 明細_dgv.DataSource = ds.Tables(0) : conn.Close()
  36. 明細_dgv.Columns(0).Visible = False : 明細_dgv.Columns(1).FillWeight = 80 : 明細_dgv.Columns(2).FillWeight = 120 : 明細_dgv.Columns(3).FillWeight = 400
  37. 明細_dgv.Columns(4).Visible = False : 明細_dgv.Columns(5).FillWeight = 140 : 明細_dgv.Columns(6).FillWeight = 400 : 明細_dgv.Columns(7).FillWeight = 70
  38. 明細_dgv.Columns(8).FillWeight = 70 : 明細_dgv.Columns(9).FillWeight = 45 : 明細_dgv.Columns(10).FillWeight = 45
  39. 明細_dgv.Columns(1).ReadOnly = True : 明細_dgv.Columns(2).ReadOnly = True : 明細_dgv.Columns(3).ReadOnly = True : 明細_dgv.Columns(7).ReadOnly = True
  40. 明細_dgv.Columns(8).ReadOnly = True
  41. If 不可編輯 = False Then
  42. 明細_dgv.Columns(5).ReadOnly = False : 明細_dgv.Columns(6).ReadOnly = False
  43. Else
  44. 明細_dgv.Columns(5).ReadOnly = True : 明細_dgv.Columns(6).ReadOnly = True
  45. End If
  46. 明細_dgv.Columns(5).DefaultCellStyle.Format = "#,##0"
  47. 明細_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  48. 明細_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  49. 明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  50. 總金額_tb.Text = "0"
  51. Dim mycol1 As DataGridViewImageColumn = 明細_dgv.Columns(表頭(7)) : mycol1.ImageLayout = DataGridViewImageCellLayout.Zoom
  52. Dim mycol2 As DataGridViewImageColumn = 明細_dgv.Columns(表頭(8)) : mycol2.ImageLayout = DataGridViewImageCellLayout.Zoom
  53. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  54. If IsDBNull(明細_dgv(9, i).Value) = True Then : 明細_dgv(9, i).Value = False : End If
  55. If IsDBNull(明細_dgv(10, i).Value) = True Then : 明細_dgv(10, i).Value = False : End If
  56. 明細_dgv.Rows(i).Cells(表頭(7)).Value = My.Resources.add_2 : 明細_dgv.Rows(i).Cells(表頭(8)).Value = My.Resources.Close
  57. 總金額_tb.Text = Val(總金額_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(5)).Value
  58. If 明細_dgv(9, i).Value = True Or 明細_dgv(10, i).Value = True Then : 明細_dgv(5, i).ReadOnly = True : End If
  59. Next i
  60. 總金額_tb.Text = Format(Val(總金額_tb.Text), "#,##0")
  61. End If
  62. End Sub
  63. Private Sub Set_日期格式轉換()
  64. DTP = Format(Today(), "yyyy/MM/dd") & "-" & Format(TimeOfDay(), "HH:mm:ss") : DTP1 = Format(Today(), "yyyyMMdd")
  65. End Sub
  66. Private Sub Set_語言()
  67. 語言_dgv.DataSource = Nothing
  68. 語言_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  69. 語言_dgv.ColumnHeadersHeight = 25 : 語言_dgv.AllowUserToAddRows = False
  70. For i As Integer = 0 To 語言_dgv.Rows.Count - 1 : 語言_dgv.Rows.RemoveAt(0) : Next
  71. If File.Exists(Str + "\LANGUAGE_FILE.csv") Then
  72. Dim filereader = My.Computer.FileSystem.OpenTextFileReader(Str + "\LANGUAGE_FILE.csv", System.Text.Encoding.Default)
  73. Dim line As String = filereader.ReadLine()
  74. While Not (line Is Nothing)
  75. line = filereader.ReadLine()
  76. If line <> Nothing Then
  77. line = line.Replace("""", "")
  78. If Strings.Left(line, 4) = "G000" Or Strings.Left(line, 8) = "H001-207" Or Strings.Left(line, 8) = "H904-103" Or Strings.Left(line, 8) = "H904-104" Or
  79. Strings.Left(line, 8) = "H204-125" Or Strings.Left(line, 8) = "H204-109" Or Strings.Left(line, 8) = "H204-123" Or Strings.Left(line, 8) = "H401-102" Or
  80. Strings.Left(line, 8) = "H704-121" Or Strings.Left(line, 8) = "H204-131" Or Strings.Left(line, 8) = "H305-106" Or Strings.Left(line, 4) = 介面 Then
  81. If 系統語言 = "繁體中文" Then
  82. If Strings.Mid(line, 10, 2) = "CH" Then : 語言_dgv.Rows.Insert(0)
  83. 語言_dgv.Rows(0).Cells(0).Value = Strings.Left(line, 11)
  84. If Strings.Mid(line, 13, 300).EndsWith(",") Then
  85. 語言_dgv.Rows(0).Cells(1).Value = Strings.Mid(line, 13, 300).Substring(0, Strings.Mid(line, 13, 300).Length - 1)
  86. Else : 語言_dgv.Rows(0).Cells(1).Value = Strings.Mid(line, 13, 300) : End If
  87. End If
  88. ElseIf 系統語言 = "English" Then
  89. If Strings.Mid(line, 10, 2) = "EN" Then : 語言_dgv.Rows.Insert(0)
  90. 語言_dgv.Rows(0).Cells(0).Value = Strings.Left(line, 11)
  91. If Strings.Mid(line, 13, 300).EndsWith(",") Then
  92. 語言_dgv.Rows(0).Cells(1).Value = Strings.Mid(line, 13, 300).Substring(0, Strings.Mid(line, 13, 300).Length - 1)
  93. Else : 語言_dgv.Rows(0).Cells(1).Value = Strings.Mid(line, 13, 300) : End If
  94. End If
  95. ElseIf 系統語言 = "Indonesian" Then
  96. If Strings.Mid(line, 10, 2) = "IN" Then : 語言_dgv.Rows.Insert(0)
  97. 語言_dgv.Rows(0).Cells(0).Value = Strings.Left(line, 11)
  98. If Strings.Mid(line, 13, 300).EndsWith(",") Then
  99. 語言_dgv.Rows(0).Cells(1).Value = Strings.Mid(line, 13, 300).Substring(0, Strings.Mid(line, 13, 300).Length - 1)
  100. Else : 語言_dgv.Rows(0).Cells(1).Value = Strings.Mid(line, 13, 300) : End If
  101. End If
  102. End If
  103. End If
  104. End If
  105. End While
  106. filereader.Close()
  107. End If
  108. End Sub
  109. Private Sub Set_語言查詢()
  110. RI = -1 : For Each row As DataGridViewRow In 語言_dgv.Rows
  111. If Strings.Left(row.Cells(0).Value.ToString(), 8) = SK Then
  112. RI = row.Index : Exit For
  113. End If
  114. Next
  115. End Sub
  116. Private Sub 語言轉換讀取()
  117. Set_語言()
  118. SK = "H001-207" : Set_語言查詢() : Me.Text = 語言_dgv(1, RI).Value.ToString : SK = "G000-108" : Set_語言查詢() : ToolTip1.ToolTipTitle = 語言_dgv(1, RI).Value.ToString
  119. SK = "H904-104" : Set_語言查詢() : 表頭(2) = 語言_dgv(1, RI).Value.ToString : SK = "H204-125" : Set_語言查詢() : 表頭(3) = 語言_dgv(1, RI).Value.ToString
  120. SK = "H304-100" : Set_語言查詢() : 表頭(4) = 語言_dgv(1, RI).Value.ToString : SK = "H204-109" : Set_語言查詢() : 表頭(5) = 語言_dgv(1, RI).Value.ToString
  121. SK = "H204-123" : Set_語言查詢() : 表頭(6) = 語言_dgv(1, RI).Value.ToString : SK = "H304-101" : Set_語言查詢() : 表頭(7) = 語言_dgv(1, RI).Value.ToString
  122. SK = "H304-102" : Set_語言查詢() : 表頭(8) = 語言_dgv(1, RI).Value.ToString : SK = "H304-103" : Set_語言查詢() : Label8.Text = 語言_dgv(1, RI).Value.ToString
  123. SK = "H304-104" : Set_語言查詢() : 對話框(0) = 語言_dgv(1, RI).Value.ToString : SK = "H304-105" : Set_語言查詢() : 對話框(1) = 語言_dgv(1, RI).Value.ToString
  124. SK = "H401-102" : Set_語言查詢() : 對話框(2) = 語言_dgv(1, RI).Value.ToString : SK = "G000-110" : Set_語言查詢() : 對話框(3) = 語言_dgv(1, RI).Value.ToString
  125. SK = "H704-121" : Set_語言查詢() : 對話框(4) = 語言_dgv(1, RI).Value.ToString : SK = "G000-218" : Set_語言查詢() : 對話框(5) = 語言_dgv(1, RI).Value.ToString
  126. SK = "G000-119" : Set_語言查詢() : 對話框(6) = 語言_dgv(1, RI).Value.ToString : SK = "H204-131" : Set_語言查詢() : 對話框(7) = 語言_dgv(1, RI).Value.ToString
  127. SK = "G000-120" : Set_語言查詢() : 對話框(8) = 語言_dgv(1, RI).Value.ToString : SK = "G000-124" : Set_語言查詢() : 對話框(9) = 語言_dgv(1, RI).Value.ToString
  128. SK = "H304-106" : Set_語言查詢() : 對話框(10) = 語言_dgv(1, RI).Value.ToString : SK = "H304-107" : Set_語言查詢() : 對話框(11) = 語言_dgv(1, RI).Value.ToString
  129. SK = "H305-106" : Set_語言查詢() : 表頭(13) = 語言_dgv(1, RI).Value.ToString : SK = "G000-221" : Set_語言查詢() : 對話框(12) = 語言_dgv(1, RI).Value.ToString
  130. SK = "G000-217" : Set_語言查詢() : 表頭(0) = 語言_dgv(1, RI).Value.ToString : Label1.Text = 語言_dgv(1, RI).Value.ToString
  131. SK = "H904-103" : Set_語言查詢() : 表頭(1) = 語言_dgv(1, RI).Value.ToString : Label3.Text = 語言_dgv(1, RI).Value.ToString
  132. SK = "G000-117" : Set_語言查詢() : 對話框(13) = 語言_dgv(1, RI).Value.ToString
  133. SK = "G000-234" : Set_語言查詢() : 對話框(14) = 語言_dgv(1, RI).Value.ToString
  134. End Sub
  135. Private Sub 開單_bt_MouseEnter(sender As Object, e As EventArgs) Handles 開單_bt.MouseEnter
  136. ToolTip1.SetToolTip(Me.開單_bt, 對話框(0))
  137. End Sub
  138. Private Sub 新增項目_bt_MouseEnter(sender As Object, e As EventArgs) Handles 新增項目_bt.MouseEnter
  139. ToolTip1.SetToolTip(Me.新增項目_bt, 對話框(1))
  140. End Sub
  141. Private Sub 刪除項目_bt_MouseEnter(sender As Object, e As EventArgs) Handles 刪除項目_bt.MouseEnter
  142. ToolTip1.SetToolTip(Me.刪除項目_bt, 對話框(2))
  143. End Sub
  144. Private Sub 存檔_bt_MouseEnter(sender As Object, e As EventArgs) Handles 存檔_bt.MouseEnter
  145. ToolTip1.SetToolTip(Me.存檔_bt, 對話框(3))
  146. End Sub
  147. Private Sub 重新讀取_bt_MouseEnter(sender As Object, e As EventArgs) Handles 重新讀取_bt.MouseEnter
  148. ToolTip1.SetToolTip(Me.重新讀取_bt, 對話框(4))
  149. End Sub
  150. Private Sub 刪除單據_bt_MouseEnter(sender As Object, e As EventArgs) Handles 刪除單據_bt.MouseEnter
  151. ToolTip1.SetToolTip(Me.刪除單據_bt, 對話框(5))
  152. End Sub
  153. Private Sub 發送_bt_MouseEnter(sender As Object, e As EventArgs) Handles 發送_bt.MouseEnter
  154. ToolTip1.SetToolTip(Me.發送_bt, 對話框(14))
  155. End Sub
  156. Private Sub 支付品項()
  157. SQL_支付品項()
  158. 選擇品項_cb.Items.Clear() : 選擇品項編號_cb.Items.Clear() : While (dr.Read()) : 選擇品項_cb.Items.Add(dr("品項")) : 選擇品項編號_cb.Items.Add(dr("編號")) : End While : conn.Close()
  159. End Sub
  160. Private Sub 甲方條件下拉清單讀取()
  161. SQL合約條件讀取() : 合約編號1_cb.Items.Clear() : 合約編號1_cb.Items.Add("") : While (dr.Read()) : 合約編號1_cb.Items.Add(dr("約號甲方")) : End While : conn.Close()
  162. End Sub
  163. Private Sub 特支費與傭金申請_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  164. Me.MdiParent = HX_PGS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  165. 風格() : H(304) = True : 介面 = "H304" : 語言轉換讀取() : 顯示說明(999, True)
  166. Panel1.SendToBack()
  167. MyMod.清單字體大小調整()
  168. 清單_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value)
  169. 明細_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value)
  170. End Sub
  171. Private Sub 特支費與傭金申請_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown
  172. 支付品項() : 甲方條件下拉清單讀取() : Set_清單1() : SQL_特支費與傭金申請明細預設() : 首次開啟 = False : WEB說明頁面.BringToFront()
  173. End Sub
  174. Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove
  175. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  176. End Sub
  177. Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress
  178. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  179. End Sub
  180. Private Sub 系統說明_bt_Click(sender As Object, e As EventArgs) Handles 系統說明_bt.Click
  181. 介面 = "H304" : WEB說明頁面.Show()
  182. End Sub
  183. Private Sub 語轉扭_bt_Click(sender As Object, e As EventArgs) Handles 語轉扭_bt.Click
  184. H(304) = True : 介面 = "H304" : 支付品項() : 語言轉換讀取() : Set_清單1() : Set_零用金清單()
  185. End Sub
  186. Private Sub 特支費與傭金申請_Closed(sender As Object, e As EventArgs) Handles MyBase.Closed
  187. If 清單_dgv.Enabled = False Then : 發送_bt.PerformClick() : End If
  188. H(304) = False : MyMod.虛擬桌面開啟()
  189. End Sub
  190. Private Sub 清單_dgv_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 清單_dgv.CellClick
  191. If e.RowIndex = -1 Then : Else
  192. If 清單_dgv("Approval", e.RowIndex).Value = "" Then : 不可編輯 = False : Else : 不可編輯 = True : End If
  193. PA = 清單_dgv(0, e.RowIndex).Value.ToString : PA1 = 清單_dgv(1, e.RowIndex).Value.ToString : PA2 = 清單_dgv(2, e.RowIndex).Value.ToString
  194. 單據_tb.Text = PA : TextBox2.Text = PA1 : 申請人_tb.Text = PA2 : 首次開啟 = False : Set_零用金清單()
  195. If 明細_dgv.Rows.Count = 0 Then
  196. For w As Integer = 0 To 9999
  197. If 合約編號1_cb.Items.Count > 2999 Then : MGB(對話框(12), 1) : Else
  198. For I As Integer = 0 To 3000 : PPBB(I) = "" : Next
  199. For I As Integer = 0 To 合約編號1_cb.Items.Count - 1 : PPBB(I) = 合約編號1_cb.Items(I).ToString : NN1 = I : Next
  200. 下拉清單_2.ShowDialog() : 合約編號1_cb.Text = PPAA
  201. End If
  202. If 合約編號1_cb.Text = "" Then : MGB(對話框(13), 1) : Else : Exit For : End If
  203. Next
  204. For w As Integer = 0 To 9999
  205. If 選擇品項_cb.Items.Count > 2999 Then : MGB(對話框(12), 1) : Else
  206. For I As Integer = 0 To 3000 : PPBB(I) = "" : Next
  207. For I As Integer = 0 To 選擇品項_cb.Items.Count - 1 : PPBB(I) = 選擇品項_cb.Items(I).ToString : NN1 = I : Next
  208. 下拉清單_2.ShowDialog() : 選擇品項_cb.Text = PPAA
  209. End If
  210. If 選擇品項_cb.Text = "" Then : MGB(對話框(13), 1) : Else : Exit For : End If
  211. Next
  212. 新增項目_bt.PerformClick()
  213. End If
  214. End If
  215. End Sub
  216. Private Sub 明細_dgv_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 明細_dgv.CellClick
  217. If e.RowIndex = -1 Then : Else
  218. 項次_tb.Text = 明細_dgv(1, e.RowIndex).Value.ToString : 合約編號1_cb.Text = 明細_dgv(2, e.RowIndex).Value.ToString : 選擇品項_cb.Text = 明細_dgv(3, e.RowIndex).Value.ToString
  219. End If
  220. End Sub
  221. Private Sub 明細_dgv_CellContentCl(sender As Object, e As DataGridViewCellEventArgs) Handles 明細_dgv.CellEndEdit
  222. If e.RowIndex = -1 Then : Else
  223. 總金額_tb.Text = "0"
  224. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  225. 總金額_tb.Text = Val(總金額_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(5)).Value
  226. Next i
  227. 總金額_tb.Text = Format(Val(總金額_tb.Text), "#,##0")
  228. End If
  229. End Sub
  230. Private Sub 明細_dgv_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 明細_dgv.MouseUp
  231. 'If 明細_dgv.SelectedCells.Count = 1 Then : MsgBox(明細_dgv.SelectedCells(0).ColumnIndex & " " & 明細_dgv.SelectedCells(0).RowIndex) : End If
  232. If 不可編輯 = False Then
  233. If 明細_dgv.SelectedCells.Count > 0 Then
  234. If 明細_dgv.SelectedCells(0).ColumnIndex = 7 Then : 新增項目_bt.PerformClick()
  235. ElseIf 明細_dgv.SelectedCells(0).ColumnIndex = 8 Then : 項次_tb.Text = 明細_dgv(1, 明細_dgv.SelectedCells(0).RowIndex).Value.ToString : 刪除項目_bt.PerformClick()
  236. ElseIf 明細_dgv.SelectedCells(0).ColumnIndex = 2 Then
  237. If 明細_dgv(9, 明細_dgv.SelectedCells(0).RowIndex).Value = True Or 明細_dgv(10, 明細_dgv.SelectedCells(0).RowIndex).Value = True Then : Else
  238. If 合約編號1_cb.Items.Count > 2999 Then : MGB(對話框(12), 1) : Else
  239. Dim 原來的 As String = 明細_dgv(2, 明細_dgv.SelectedCells(0).RowIndex).Value
  240. For I As Integer = 0 To 3000 : PPBB(I) = "" : Next
  241. For I As Integer = 0 To 合約編號1_cb.Items.Count - 1 : PPBB(I) = 合約編號1_cb.Items(I).ToString : NN1 = I : Next
  242. 下拉清單_2.ShowDialog()
  243. If PPAA = "" Then
  244. 明細_dgv(2, 明細_dgv.SelectedCells(0).RowIndex).Value = 原來的 : 合約編號1_cb.Text = 原來的
  245. Else
  246. 明細_dgv(2, 明細_dgv.SelectedCells(0).RowIndex).Value = PPAA : 合約編號1_cb.Text = PPAA
  247. End If
  248. End If
  249. End If
  250. ElseIf 明細_dgv.SelectedCells(0).ColumnIndex = 3 Then
  251. If 明細_dgv(9, 明細_dgv.SelectedCells(0).RowIndex).Value = True Or 明細_dgv(10, 明細_dgv.SelectedCells(0).RowIndex).Value = True Then : Else
  252. If 選擇品項_cb.Items.Count > 2999 Then : MGB(對話框(12), 1) : Else
  253. Dim 原來的 As String = 明細_dgv(3, 明細_dgv.SelectedCells(0).RowIndex).Value
  254. For I As Integer = 0 To 3000 : PPBB(I) = "" : Next
  255. For I As Integer = 0 To 選擇品項_cb.Items.Count - 1 : PPBB(I) = 選擇品項_cb.Items(I).ToString : NN1 = I : Next
  256. 下拉清單_2.ShowDialog()
  257. If PPAA = "" Then
  258. 明細_dgv(3, 明細_dgv.SelectedCells(0).RowIndex).Value = 原來的 : 合約編號1_cb.Text = 原來的
  259. 明細_dgv(4, 明細_dgv.SelectedCells(0).RowIndex).Value = 選擇品項編號_cb.Text
  260. Else
  261. 明細_dgv(3, 明細_dgv.SelectedCells(0).RowIndex).Value = PPAA : 選擇品項_cb.Text = PPAA
  262. 明細_dgv(4, 明細_dgv.SelectedCells(0).RowIndex).Value = 選擇品項編號_cb.Text
  263. End If
  264. End If
  265. End If
  266. End If
  267. End If
  268. End If
  269. End Sub
  270. Private Sub 選擇品項_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 選擇品項_cb.SelectedIndexChanged
  271. 選擇品項編號_cb.SelectedIndex = 選擇品項_cb.SelectedIndex
  272. End Sub
  273. Private Sub 存檔()
  274. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  275. 資料數 = 明細_dgv.Rows.Count : MyMod.進度條()
  276. PA = 單據_tb.Text : PA1 = 明細_dgv.Rows(i).Cells(表頭(3)).Value : PA2 = 明細_dgv.Rows(i).Cells(4).Value : PA3 = 明細_dgv.Rows(i).Cells(表頭(5)).Value
  277. PA4 = 明細_dgv.Rows(i).Cells(表頭(6)).Value : PA5 = 明細_dgv.Rows(i).Cells(2).Value.ToString : SQL_特支費與傭金存檔()
  278. Next : HX_PGS_ERP_SYS.ToolStripProgressBar1.Value = 0 : 最終數 = 0
  279. End Sub
  280. Private Sub 開單()
  281. Set_日期格式轉換() : Dim NUM1 As Integer
  282. SQL_特支費與傭金最後一筆()
  283. If dr.Read() Then : NUM1 = Strings.Right(dr("流水號").ToString, 3) : End If : NUM1 += 1
  284. If NUM1 < 10 Then : 單據_tb.Text = "PC-" & DTP1 & "-00" & NUM1
  285. ElseIf NUM1 > 9 And NUM1 < 100 Then : 單據_tb.Text = "PC-" & DTP1 & "-0" & NUM1
  286. ElseIf NUM1 > 99 Then : 單據_tb.Text = "PC-" & DTP1 & "-" & NUM1 : End If
  287. PA = 單據_tb.Text : 申請人_tb.Text = gUserName : SQL_特支費與傭金控制表新增()
  288. End Sub
  289. Private Sub 存檔_bt_Click(sender As Object, e As EventArgs) Handles 存檔_bt.Click
  290. 存檔() : Set_清單1() : MGB(對話框(6), 1) : 首次開啟 = False : 清單_dgv.Enabled = False
  291. End Sub
  292. Private Sub 發送_bt_Click(sender As Object, e As EventArgs) Handles 發送_bt.Click
  293. '---LINE_AUTO 部門主管------------------------------------------------------------------------------------------------------------------------------------------
  294. If 登入人IP = 測試IP Then : Else
  295. LIN訊息通知("CC206", "李協叡", gUserName, 單據_tb.Text) : LIN訊息通知("CC206", "LIN HSING HAO", gUserName, 單據_tb.Text)
  296. End If : 清單_dgv.Enabled = True
  297. End Sub
  298. Private Sub 開單_bt_Click(sender As Object, e As EventArgs) Handles 開單_bt.Click
  299. 首次開啟 = False : 不可編輯 = False : 開單() : 明細_dgv.DataSource = Nothing : conn.Close()
  300. For w As Integer = 0 To 9999
  301. If 合約編號1_cb.Items.Count > 2999 Then : MGB(對話框(12), 1) : Else
  302. For I As Integer = 0 To 3000 : PPBB(I) = "" : Next
  303. For I As Integer = 0 To 合約編號1_cb.Items.Count - 1 : PPBB(I) = 合約編號1_cb.Items(I).ToString : NN1 = I : Next
  304. 下拉清單_2.ShowDialog() : 合約編號1_cb.Text = PPAA
  305. End If
  306. If 合約編號1_cb.Text = "" Then : MGB(對話框(13), 1) : Else : Exit For : End If
  307. Next
  308. For w As Integer = 0 To 9999
  309. If 選擇品項_cb.Items.Count > 2999 Then : MGB(對話框(12), 1) : Else
  310. For I As Integer = 0 To 3000 : PPBB(I) = "" : Next
  311. For I As Integer = 0 To 選擇品項_cb.Items.Count - 1 : PPBB(I) = 選擇品項_cb.Items(I).ToString : NN1 = I : Next
  312. 下拉清單_2.ShowDialog() : 選擇品項_cb.Text = PPAA
  313. End If
  314. If 選擇品項_cb.Text = "" Then : MGB(對話框(13), 1) : Else : Exit For : End If
  315. Next
  316. 新增項目_bt.PerformClick() : 清單_dgv.Enabled = False
  317. End Sub
  318. Private Sub 新增項目_bt_Click(sender As Object, e As EventArgs) Handles 新增項目_bt.Click
  319. 首次開啟 = False
  320. If 選擇品項_cb.Text = "" Then : MGB(對話框(10), 1) : Else
  321. If 合約編號1_cb.Text = "" Then : MGB(對話框(11), 1) : Else
  322. If 單據_tb.Text = "" Then : 開單() : End If
  323. 存檔() : PA = 單據_tb.Text : SQL_特支費與傭金明細項次讀取()
  324. If dr.Read() Then : 新項次 = dr("項次") : Else : 新項次 = "00" : End If : NUM1 = Double.Parse(新項次) + 1
  325. If NUM1 < 10 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = NUM1 : End If
  326. PA35 = 選擇品項編號_cb.Text : PA36 = 合約編號1_cb.Text : PA45 = 新項次 : SQL_特支費與傭金明細新增() : Set_零用金清單()
  327. End If
  328. End If
  329. End Sub
  330. Private Sub 刪除項目_bt_Click(sender As Object, e As EventArgs) Handles 刪除項目_bt.Click
  331. 首次開啟 = False
  332. If 項次_tb.Text = "" Then : MGB(對話框(7), 1) : Else : 存檔() : PA = 單據_tb.Text : PA45 = 項次_tb.Text
  333. SQL_特支費與傭金明細指定刪除() : Set_零用金清單()
  334. Dim NUM1 As Integer = 0
  335. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  336. NUM1 += 1 : If NUM1 < 10 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = NUM1 : End If
  337. PA45 = 新項次 : PA44 = 明細_dgv.Rows(i).Cells(表頭(3)).Value : SQL_特支費與傭金明細項次更換()
  338. Next : Set_零用金清單() : MGB(對話框(8), 1)
  339. End If : conn.Close()
  340. End Sub
  341. Private Sub 重新讀取_bt_Click(sender As Object, e As EventArgs) Handles 重新讀取_bt.Click
  342. 首次開啟 = False : Set_清單1()
  343. End Sub
  344. Private Sub 刪除單據_bt_Click(sender As Object, e As EventArgs) Handles 刪除單據_bt.Click
  345. 首次開啟 = False : MGB(對話框(9), 2)
  346. If 訊息回應 = "YES" Then : PA = 單據_tb.Text
  347. SQL_特支費與傭金全單據刪除() : conn.Close() : 單據_tb.Text = "" : TextBox2.Text = "" : 申請人_tb.Text = "" : 項次_tb.Text = ""
  348. 明細_dgv.DataSource = Nothing : MGB(對話框(8), 1) : Set_清單1()
  349. End If
  350. End Sub
  351. Private Sub 小間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 小間距_ch.CheckedChanged
  352. Set_零用金清單()
  353. End Sub
  354. Private Sub 中間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 中間距_ch.CheckedChanged
  355. Set_零用金清單()
  356. End Sub
  357. Private Sub 大間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 大間距_ch.CheckedChanged
  358. Set_零用金清單()
  359. End Sub
  360. Private Sub 縮放1_bt_Click(sender As Object, e As EventArgs) Handles 縮放1_bt.Click
  361. If Panel2.Visible = True Then
  362. Panel2.Visible = False : Panel3.Location = New System.Drawing.Point(0, 0) : Panel3.Size = New System.Drawing.Point(Panel3.Size.Width + 334, Panel3.Size.Height)
  363. Else
  364. Panel2.Visible = True : Panel3.Location = New System.Drawing.Point(334, 0) : Panel3.Size = New System.Drawing.Point(Panel3.Size.Width - 334, Panel3.Size.Height)
  365. End If
  366. End Sub
  367. Private Sub 風格()
  368. If 深色風格 = False Then
  369. Me.BackColor = SystemColors.Control
  370. '----------------黑-------------------------------------------
  371. 小間距_ch.ForeColor = Color.Black : 中間距_ch.ForeColor = Color.Black : 大間距_ch.ForeColor = Color.Black : Label1.ForeColor = Color.Black
  372. Label3.ForeColor = Color.Black : Label8.ForeColor = Color.Black
  373. 單據_tb.BackColor = Color.White : 單據_tb.ForeColor = Color.Black : 總金額_tb.BackColor = Color.White : 總金額_tb.ForeColor = Color.Black
  374. 語轉扭_bt.BackColor = Color.White : 語轉扭_bt.ForeColor = Color.Black : 申請人_tb.BackColor = Color.White : 申請人_tb.ForeColor = Color.Black
  375. 合約編號1_cb.BackColor = Color.White : 合約編號1_cb.ForeColor = Color.Black : 選擇品項_cb.BackColor = Color.White : 選擇品項_cb.ForeColor = Color.Black
  376. 開單_bt.BackColor = Color.White : 新增項目_bt.BackColor = Color.White : 刪除項目_bt.BackColor = Color.White : 縮放1_bt.BackColor = Color.White
  377. 存檔_bt.BackColor = Color.White : 重新讀取_bt.BackColor = Color.White : 刪除單據_bt.BackColor = Color.White : 系統說明_bt.BackColor = Color.White
  378. 清單_dgv.EnableHeadersVisualStyles = True : 清單_dgv.BackgroundColor = Color.White : 清單_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  379. 清單_dgv.DefaultCellStyle.BackColor = Color.White : 清單_dgv.DefaultCellStyle.ForeColor = Color.Black
  380. 明細_dgv.EnableHeadersVisualStyles = True : 明細_dgv.BackgroundColor = Color.White : 明細_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  381. 明細_dgv.DefaultCellStyle.BackColor = Color.White : 明細_dgv.DefaultCellStyle.ForeColor = Color.Black
  382. Else
  383. Me.BackColor = Color.Black
  384. '----------------黑-------------------------------------------
  385. 小間距_ch.ForeColor = Color.White : 中間距_ch.ForeColor = Color.White : 大間距_ch.ForeColor = Color.White : Label1.ForeColor = Color.White
  386. Label3.ForeColor = Color.White : Label8.ForeColor = Color.White
  387. 單據_tb.BackColor = Color.DimGray : 單據_tb.ForeColor = Color.White : 總金額_tb.BackColor = Color.DimGray : 總金額_tb.ForeColor = Color.White
  388. 語轉扭_bt.BackColor = Color.DimGray : 語轉扭_bt.ForeColor = Color.White : 申請人_tb.BackColor = Color.DimGray : 申請人_tb.ForeColor = Color.White
  389. 合約編號1_cb.BackColor = Color.DimGray : 合約編號1_cb.ForeColor = Color.White : 選擇品項_cb.BackColor = Color.DimGray : 選擇品項_cb.ForeColor = Color.White
  390. 開單_bt.BackColor = Color.DimGray : 新增項目_bt.BackColor = Color.DimGray : 刪除項目_bt.BackColor = Color.DimGray : 縮放1_bt.BackColor = Color.DimGray
  391. 存檔_bt.BackColor = Color.DimGray : 重新讀取_bt.BackColor = Color.DimGray : 刪除單據_bt.BackColor = Color.DimGray : 系統說明_bt.BackColor = Color.DimGray
  392. 清單_dgv.EnableHeadersVisualStyles = False : 清單_dgv.BackgroundColor = Color.DimGray : 清單_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  393. 清單_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 清單_dgv.DefaultCellStyle.BackColor = Color.Black : 清單_dgv.DefaultCellStyle.ForeColor = Color.White
  394. 明細_dgv.EnableHeadersVisualStyles = False : 明細_dgv.BackgroundColor = Color.DimGray : 明細_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  395. 明細_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 明細_dgv.DefaultCellStyle.BackColor = Color.Black : 明細_dgv.DefaultCellStyle.ForeColor = Color.White
  396. End If
  397. End Sub
  398. End Class