Geen omschrijving
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

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424
  1. Option Strict Off
  2. Imports System.IO
  3. Public Class 樣品採購單一級核准
  4. ReadOnly ds8 As New DataSet
  5. Dim 新項次 As String : DIM 對話框(5) As String
  6. Dim NUM1 As Integer : ReadOnly QQW(11) As String : Dim II As Integer : Dim 單據總價 As Integer
  7. Private Sub Set_清單2()
  8. Dim ds2 As New DataSet : 單據_dgv.DataSource = Nothing : ds2.Clear()
  9. 單據_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  10. 單據_dgv.ColumnHeadersHeight = 25
  11. 單據_dgv.AllowUserToAddRows = False
  12. SQL_行政物料採購單一級核准_清單()
  13. da.Fill(ds2) : 單據_dgv.DataSource = ds2.Tables(0) : conn.Close()
  14. 單據_dgv.Columns(0).FillWeight = 125 : 單據_dgv.Columns(1).Visible = False : 單據_dgv.Columns(2).Visible = False : 單據_dgv.Columns(3).Visible = False
  15. 單據_dgv.Columns(4).Visible = False : 單據_dgv.Columns(5).Visible = False : 單據_dgv.Columns(6).Visible = False : 單據_dgv.Columns(7).Visible = False
  16. 單據_dgv.Columns(8).Visible = False : 單據_dgv.Columns(9).Visible = False : 單據_dgv.Columns(10).Visible = False : 單據_dgv.Columns(11).Visible = False
  17. 單據_dgv.Columns(12).Visible = False : 單據_dgv.Columns(13).Visible = False : 單據_dgv.Columns(14).Visible = False : 單據_dgv.Columns(15).Visible = False
  18. 單據_dgv.Columns(16).Visible = False : 單據_dgv.Columns(17).Visible = False : 單據_dgv.Columns(18).Visible = False : 單據_dgv.Columns(19).Visible = False
  19. End Sub
  20. Private Sub Set_清單1()
  21. Dim ds As New DataSet : 明細_dgv.DataSource = Nothing : ds.Clear()
  22. 明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  23. 明細_dgv.ColumnHeadersHeight = 25
  24. 明細_dgv.AllowUserToAddRows = False
  25. If 小間距1_ch.Checked = False And 中間距1_ch.Checked = False And 大間距1_ch.Checked = True Then
  26. 明細_dgv.RowTemplate.Height = 75
  27. ElseIf 小間距1_ch.Checked = False And 中間距1_ch.Checked = True And 大間距1_ch.Checked = False Then
  28. 明細_dgv.RowTemplate.Height = 45
  29. ElseIf 小間距1_ch.Checked = True And 中間距1_ch.Checked = False And 大間距1_ch.Checked = False Then
  30. 明細_dgv.RowTemplate.Height = 25
  31. End If
  32. PA10 = 採購單號_tb.Text : SQL_樣品採購單明細表()
  33. da.Fill(ds) : 明細_dgv.DataSource = ds.Tables(0) : conn.Close()
  34. 明細_dgv.Columns(0).Visible = False : 明細_dgv.Columns(1).FillWeight = 80 : 明細_dgv.Columns(2).FillWeight = 250 : 明細_dgv.Columns(3).FillWeight = 250
  35. 明細_dgv.Columns(4).FillWeight = 245 : 明細_dgv.Columns(5).FillWeight = 80 : 明細_dgv.Columns(6).FillWeight = 80 : 明細_dgv.Columns(7).FillWeight = 80
  36. 明細_dgv.Columns(8).FillWeight = 80 : 明細_dgv.Columns(9).Visible = False
  37. 明細_dgv.Columns(5).DefaultCellStyle.Format = "#,##0" : 明細_dgv.Columns(7).DefaultCellStyle.Format = "#,##0" : 明細_dgv.Columns(8).DefaultCellStyle.Format = "#,##0"
  38. 明細_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  39. 明細_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  40. 明細_dgv.Columns(8).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(8).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  41. 明細_dgv.Columns(1).ReadOnly = True : 明細_dgv.Columns(8).ReadOnly = True
  42. 明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  43. 新項次 = "00"
  44. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  45. NUM1 = Double.Parse(新項次) + 1
  46. If NUM1 < 10 Then : 新項次 = "0" & NUM1
  47. ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = NUM1
  48. End If
  49. 明細_dgv.Rows(i).Cells(表頭(11)).Value = 新項次
  50. Next i
  51. 總金額計算()
  52. End Sub
  53. Private Sub Set_清單()
  54. Dim ds1 As New DataSet : 簽名檔_dgv.DataSource = Nothing : ds1.Clear()
  55. 簽名檔_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  56. 簽名檔_dgv.ColumnHeadersHeight = 25
  57. 簽名檔_dgv.AllowUserToAddRows = False
  58. SQL_主管簽名檔管理()
  59. da.Fill(ds1) : 簽名檔_dgv.DataSource = ds1.Tables(0) : conn.Close()
  60. 簽名檔_dgv.Columns(0).FillWeight = 173 : 簽名檔_dgv.Columns(1).Visible = False
  61. If 簽名檔_dgv.Rows.Count = 0 Then : Else
  62. 圖片編碼_tb.Text = 簽名檔_dgv(0, 0).Value.ToString
  63. PA1 = 圖片編碼_tb.Text : SQL_主管簽名檔管理_圖片流水號()
  64. While dr.Read() = True
  65. Dim unused As Byte() = New Byte(-1) {}
  66. Dim bytes As Byte() = DirectCast(dr.Item("簽名檔圖片"), Byte())
  67. Dim oStream As New MemoryStream(bytes)
  68. 簽名檔1_pb.Image = Bitmap.FromStream(oStream)
  69. End While
  70. conn.Close() : 簽名檔1_pb.SizeMode = 4
  71. For QAZ = 0 To 999
  72. QQW(0) = Strings.Right(簽名檔_dgv(0, 0).Value.ToString, 2) : QQW(1) = Strings.Right(Year(Today), 2) : QQW(2) = Strings.Left(Year(Today), 2) : QQW(3) = Month(Today) + 9
  73. QQW(4) = Strings.Right(QQW(0), 1) : QQW(5) = Strings.Left(QQW(0), 1) : QQW(6) = Strings.Right(QQW(1), 1) : QQW(7) = Strings.Left(QQW(1), 1) : QQW(8) = Strings.Right(QQW(2), 1)
  74. QQW(9) = Strings.Left(QQW(2), 1) : QQW(10) = Strings.Right(QQW(3), 1) : QQW(11) = Strings.Left(QQW(3), 1)
  75. For RT = 4 To 11
  76. Delay(3)
  77. Dim ran = New Random(DateTime.Now.Millisecond) : Dim NUM1 As Integer = ran.Next(1, 4096)
  78. For I = 0 To 4096 : If NUM1 > 9 Then : NUM1 -= 9 : ElseIf NUM1 < 9 Then : I = 4096 : End If : Next
  79. If NUM1 = 1 Then : II = RT : 轉換() : ElseIf NUM1 = 2 Then : II = RT : 轉換() : ElseIf NUM1 = 3 Then : ElseIf NUM1 = 4 Then : II = RT : 轉換() : ElseIf NUM1 = 5 Then
  80. ElseIf NUM1 = 6 Then : II = RT : 轉換() : ElseIf NUM1 = 7 Then : ElseIf NUM1 = 8 Then : II = RT : 轉換() : ElseIf NUM1 = 9 Then : II = RT : 轉換() : End If
  81. Next
  82. Dim ran1 = New Random(DateTime.Now.Millisecond) : Dim NUM2 As Integer = ran1.Next(1, 4096)
  83. For I = 0 To 4096 : If NUM2 > 99 Then : NUM2 -= 49 : ElseIf NUM2 < 99 Then : I = 4096 : End If : Next
  84. 驗證碼_tb.Text = QQW(11) & "2" & QQW(9) & "7" & QQW(7) & "0" & QQW(5) & QQW(4) & "1" & QQW(6) & "3" & QQW(8) & "9" & QQW(10) & NUM2
  85. PA20 = 驗證碼_tb.Text : SQL_行政驗證碼()
  86. If dr.Read() = True Then : Else : QAZ = 999 : End If : conn.Close()
  87. Next
  88. End If
  89. End Sub
  90. Private Sub 轉換()
  91. If QQW(II) = "1" Then : QQW(II) = "A" : ElseIf QQW(II) = "2" Then : QQW(II) = "B" : ElseIf QQW(II) = "3" Then : QQW(II) = "C" : ElseIf QQW(II) = "4" Then : QQW(II) = "D"
  92. ElseIf QQW(II) = "5" Then : QQW(II) = "E" : ElseIf QQW(II) = "6" Then : QQW(II) = "F" : ElseIf QQW(II) = "7" Then : QQW(II) = "G" : ElseIf QQW(II) = "8" Then : QQW(II) = "H"
  93. ElseIf QQW(II) = "9" Then : QQW(II) = "I" : ElseIf QQW(II) = "0" Then : QQW(II) = "J"
  94. End If
  95. End Sub
  96. Public Sub Delay(ByRef Interval As Double) 'Interval单位为毫秒
  97. Dim time As DateTime = DateTime.Now : Dim Span As Double = Interval * 1234 : While ((DateTime.Now.Ticks - time.Ticks) < Span) : Application.DoEvents() : End While
  98. End Sub
  99. Private Sub 供應商_cb_下拉表單資料載入()
  100. SQL_供應商資料表_公司名_下拉用() : 供應商_cb.Items.Clear() : While (dr.Read()) : 供應商_cb.Items.Add(dr("公司名")) : End While : conn.Close()
  101. End Sub
  102. Private Sub 總金額計算()
  103. Dim FFGG As Integer = 0
  104. 總金額_tb.Text = "0"
  105. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  106. 明細_dgv.Rows(i).Cells(表頭(27)).Value = 明細_dgv.Rows(i).Cells(表頭(26)).Value * 明細_dgv.Rows(i).Cells(表頭(15)).Value
  107. FFGG = Val(FFGG) + 明細_dgv.Rows(i).Cells(表頭(27)).Value
  108. Next i
  109. 折扣金額_tb.Text = Val(折扣比例_tb.Text) * FFGG / 100
  110. If 稅金_ch.Checked = True Then
  111. If 折扣比例_tb.Text = "0" Then
  112. 稅金金額_tb.Text = FFGG * Val(稅金比例_tb.Text) / 100
  113. Else
  114. 稅金金額_tb.Text = (FFGG - 折扣金額_tb.Text) * Val(稅金比例_tb.Text) / 100
  115. End If
  116. Else
  117. 稅金金額_tb.Text = "0"
  118. End If
  119. 總金額_tb.Text = FFGG - Val(折扣金額_tb.Text) + Val(稅金金額_tb.Text)
  120. 折扣金額_tb.Text = Format(Val(折扣金額_tb.Text), "#,##0") : 稅金金額_tb.Text = Format(Val(稅金金額_tb.Text), "#,##0")
  121. 總金額_tb.Text = Format(Val(總金額_tb.Text), "#,##0")
  122. End Sub
  123. Private Sub Set_語言()
  124. 語言_dgv.DataSource = Nothing : ds8.Clear()
  125. 語言_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  126. 語言_dgv.ColumnHeadersHeight = 25
  127. 語言_dgv.AllowUserToAddRows = False
  128. SQL_系統語言導入()
  129. da.Fill(ds8) : 語言_dgv.DataSource = ds8.Tables(0) : conn.Close()
  130. End Sub
  131. Private Sub 語言轉換讀取()
  132. Set_語言() : conn.Close()
  133. For i As Integer = 0 To 語言_dgv.Rows.Count - 1
  134. If 語言_dgv("控件", i).Value.ToString = "行政物料採購單一級核准" Then : Me.Text = 語言_dgv("內容", i).Value.ToString : End If
  135. If 語言_dgv("控件", i).Value.ToString = "未核准_ib" Then : 未核准_ib.Text = 語言_dgv("內容", i).Value.ToString : End If
  136. If 語言_dgv("控件", i).Value.ToString = "簽核提示1_lb" Then : 簽核提示_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  137. If 語言_dgv("控件", i).Value.ToString = "總金額_lb" Then : 總金額_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  138. If 語言_dgv("控件", i).Value.ToString = "選擇公司_lb" Then : 選擇公司_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  139. If 語言_dgv("控件", i).Value.ToString = "驗證碼_lb" Then : 驗證碼_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  140. If 語言_dgv("控件", i).Value.ToString = "圖片編碼_lb" Then : 圖片編碼_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  141. If 語言_dgv("控件", i).Value.ToString = "選擇_lb" Then : 選擇_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  142. If 語言_dgv("控件", i).Value.ToString = "項次_lb" Then : 項次_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  143. If 語言_dgv("控件", i).Value.ToString = "核准_bt" Then : 核准_bt.Text = 語言_dgv("內容", i).Value.ToString : End If
  144. If 語言_dgv("控件", i).Value.ToString = "作廢_bt" Then : 作廢_bt.Text = 語言_dgv("內容", i).Value.ToString : End If
  145. If 語言_dgv("控件", i).Value.ToString = "存檔_bt" Then : 存檔_bt.Text = 語言_dgv("內容", i).Value.ToString : End If
  146. If 語言_dgv("控件", i).Value.ToString = "重新整理_tsm" Then : 重新整理_tsm.Text = 語言_dgv("內容", i).Value.ToString : End If
  147. If 語言_dgv("控件", i).Value.ToString = "核准_tsm" Then : 核准_tsm.Text = 語言_dgv("內容", i).Value.ToString : End If
  148. If 語言_dgv("控件", i).Value.ToString = "作廢_tsm" Then : 作廢_tsm.Text = 語言_dgv("內容", i).Value.ToString : End If
  149. If 語言_dgv("控件", i).Value.ToString = "清單修改存檔_tsm" Then : 清單修改存檔_tsm.Text = 語言_dgv("內容", i).Value.ToString : End If
  150. If 語言_dgv("控件", i).Value.ToString = "刪除一筆選中的細項資料_tsm" Then : 刪除一筆選中的細項資料_tsm.Text = 語言_dgv("內容", i).Value.ToString : End If
  151. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_項次" Then : 表頭(11) = 語言_dgv("內容", i).Value.ToString : End If
  152. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_品名" Then : 表頭(12) = 語言_dgv("內容", i).Value.ToString : End If
  153. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_規格" Then : 表頭(13) = 語言_dgv("內容", i).Value.ToString : End If
  154. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_備註" Then : 表頭(14) = 語言_dgv("內容", i).Value.ToString : End If
  155. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_數量" Then : 表頭(15) = 語言_dgv("內容", i).Value.ToString : End If
  156. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_單位" Then : 表頭(16) = 語言_dgv("內容", i).Value.ToString : End If
  157. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_單價" Then : 表頭(26) = 語言_dgv("內容", i).Value.ToString : End If
  158. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_單號" Then : 表頭(18) = 語言_dgv("內容", i).Value.ToString : End If
  159. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_金額" Then : 表頭(27) = 語言_dgv("內容", i).Value.ToString : End If
  160. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_圖檔編碼" Then : 表頭(87) = 語言_dgv("內容", i).Value.ToString : End If
  161. If 語言_dgv("控件", i).Value.ToString = "對話框1" Then : 對話框(0) = 語言_dgv("內容", i).Value.ToString : End If
  162. If 語言_dgv("控件", i).Value.ToString = "對話框2" Then : 對話框(1) = 語言_dgv("內容", i).Value.ToString : End If
  163. If 語言_dgv("控件", i).Value.ToString = "對話框3" Then : 對話框(2) = 語言_dgv("內容", i).Value.ToString : End If
  164. If 語言_dgv("控件", i).Value.ToString = "對話框4" Then : 對話框(3) = 語言_dgv("內容", i).Value.ToString : End If
  165. If 語言_dgv("控件", i).Value.ToString = "對話框5" Then : 對話框(4) = 語言_dgv("內容", i).Value.ToString : End If
  166. If 語言_dgv("控件", i).Value.ToString = "對話框6" Then : 對話框(5) = 語言_dgv("內容", i).Value.ToString : End If
  167. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_申請人" Then : 表頭(19) = 語言_dgv("內容", i).Value.ToString : End If
  168. Next
  169. End Sub
  170. Private Sub 樣品採購單一級核准_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  171. Me.MdiParent = HX_PGS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  172. H(215) = True : 介面 = "H215" : 語言轉換讀取() : 顯示說明(999, False)
  173. 地址_tb.Enabled = False : 電話_tb.Enabled = False : 郵件_tb.Enabled = False : 採購單號_tb.Enabled = False : 傳真_tb.Enabled = False : 供應商編碼_tb.Visible = False
  174. 驗證碼_tb.Enabled = False : 圖片編碼_tb.Enabled = False : 選擇公司_cb.Enabled = False : 折扣金額_tb.Enabled = False : 稅金金額_tb.Enabled = False : 總金額_tb.Enabled = False
  175. 項次_tb.Visible = False
  176. SQL_清單欄位查詢()
  177. If Acdr.Read() Then
  178. 小間距1_ch.Checked = Acdr("L_1_1") : 中間距1_ch.Checked = Acdr("L_2_1") : 大間距1_ch.Checked = Acdr("L_3_1")
  179. End If : Access1.Close()
  180. 供應商_cb_下拉表單資料載入() : Set_清單2() : Set_清單()
  181. If 驗證碼_tb.Text = "" Or 圖片編碼_tb.Text = "" Then : 作廢_bt.Enabled = False : 核准_bt.Enabled = False : End If
  182. MyMod.清單字體大小調整()
  183. 簽名檔_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value)
  184. 明細_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value)
  185. 單據_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value)
  186. End Sub
  187. Private Sub 樣品採購單一級核准_SizeChanged(sender As Object, e As EventArgs) Handles MyBase.SizeChanged
  188. MyMod.清單字體大小調整()
  189. 簽名檔_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value)
  190. 明細_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value)
  191. 單據_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value)
  192. End Sub
  193. Private Sub 採購單詢價_Closed(sender As Object, e As EventArgs) Handles MyBase.Closed
  194. H(215) = False : MyMod.虛擬桌面開啟()
  195. End Sub
  196. Private Sub 語轉扭_bt_Click(sender As Object, e As EventArgs) Handles 語轉扭_bt.Click
  197. 介面 = "H215" : 語言轉換讀取() : Set_清單2() : Set_清單1()
  198. End Sub
  199. Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove
  200. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  201. End Sub
  202. Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress
  203. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  204. End Sub
  205. Dim 已超出 As Boolean
  206. Private Sub 明細_dgv_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 明細_dgv.MouseUp
  207. 'If 明細_dgv.SelectedCells.Count = 1 Then : 通知訊息 = 明細_dgv.SelectedCells(0).ColumnIndex & " " & 明細_dgv.SelectedCells(0).RowIndex) : End If
  208. If 明細_dgv.SelectedCells.Count = 1 Then : 已超出 = False : End If
  209. If 明細_dgv.SelectedCells.Count > 0 Then
  210. If 明細_dgv.SelectedCells(0).ColumnIndex = 8 Then
  211. If 已超出 = False Then
  212. Dim x As Double = 0
  213. For i As Integer = 0 To 明細_dgv.SelectedCells.Count - 1
  214. Dim 變數 As String = "" : Dim 取變數 As String
  215. 取變數 = 明細_dgv.Rows(明細_dgv.SelectedCells.Item(i).RowIndex).Cells(明細_dgv.SelectedCells.Item(i).ColumnIndex).Value
  216. For ii As Integer = 1 To Len(取變數)
  217. If ii = 1 Then : 變數 = Strings.Left(取變數, ii) : Else : If Strings.Mid(取變數, ii, 1) <> "," Then : 變數 &= Strings.Mid(取變數, ii, 1) : End If : End If
  218. Next : x += Val(變數)
  219. Next i : HX_PGS_ERP_SYS.合計_TSSL.Text = "Total : " & Strings.Format(x, "#,##0")
  220. Else : HX_PGS_ERP_SYS.合計_TSSL.Text = "Total : " & Strings.Format(0, "#,##0")
  221. End If
  222. Else : 已超出 = True : HX_PGS_ERP_SYS.合計_TSSL.Text = "Total : " & Strings.Format(0, "#,##0")
  223. End If
  224. End If
  225. End Sub
  226. Private Sub 明細_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 明細_dgv.CellClick
  227. If e.RowIndex = -1 Then : Else
  228. 項次_tb.Text = 明細_dgv.Rows(e.RowIndex).Cells("項次01").Value : 編號_tb.Text = 明細_dgv.Rows(e.RowIndex).Cells(表頭(11)).Value
  229. End If
  230. End Sub
  231. Private Sub 明細_dgv_CellEnter(sender As Object, e As DataGridViewCellEventArgs) Handles 明細_dgv.CellEnter
  232. 總金額計算()
  233. End Sub
  234. Private Sub 簽名檔_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 簽名檔_dgv.CellClick
  235. If e.RowIndex = -1 Then : Else
  236. 圖片編碼_tb.Text = 簽名檔_dgv(0, e.RowIndex).Value.ToString
  237. PA1 = 圖片編碼_tb.Text : SQL_主管簽名檔管理_圖片流水號()
  238. While dr.Read() = True
  239. Dim unused As Byte() = New Byte(-1) {}
  240. Dim bytes As Byte() = DirectCast(dr.Item("簽名檔圖片"), Byte())
  241. Dim oStream As New MemoryStream(bytes)
  242. 簽名檔1_pb.Image = Bitmap.FromStream(oStream)
  243. End While
  244. conn.Close() : 簽名檔1_pb.SizeMode = 4
  245. For QAZ = 0 To 999
  246. QQW(0) = Strings.Right(簽名檔_dgv(0, e.RowIndex).Value.ToString, 2) : QQW(1) = Strings.Right(Year(Today), 2) : QQW(2) = Strings.Left(Year(Today), 2) : QQW(3) = Month(Today) + 9
  247. QQW(4) = Strings.Right(QQW(0), 1) : QQW(5) = Strings.Left(QQW(0), 1) : QQW(6) = Strings.Right(QQW(1), 1) : QQW(7) = Strings.Left(QQW(1), 1) : QQW(8) = Strings.Right(QQW(2), 1)
  248. QQW(9) = Strings.Left(QQW(2), 1) : QQW(10) = Strings.Right(QQW(3), 1) : QQW(11) = Strings.Left(QQW(3), 1)
  249. For RT = 4 To 11
  250. Delay(3)
  251. Dim ran = New Random(DateTime.Now.Millisecond) : Dim NUM1 As Integer = ran.Next(1, 4096)
  252. For I = 0 To 4096 : If NUM1 > 9 Then : NUM1 -= 9 : ElseIf NUM1 < 9 Then : I = 4096 : End If : Next
  253. If NUM1 = 1 Then : II = RT : 轉換() : ElseIf NUM1 = 2 Then : II = RT : 轉換() : ElseIf NUM1 = 3 Then : ElseIf NUM1 = 4 Then : II = RT : 轉換() : ElseIf NUM1 = 5 Then
  254. ElseIf NUM1 = 6 Then : II = RT : 轉換() : ElseIf NUM1 = 7 Then : ElseIf NUM1 = 8 Then : II = RT : 轉換() : ElseIf NUM1 = 9 Then : II = RT : 轉換() : End If
  255. Next
  256. Dim ran1 = New Random(DateTime.Now.Millisecond) : Dim NUM2 As Integer = ran1.Next(1, 4096)
  257. For I = 0 To 4096 : If NUM2 > 99 Then : NUM2 -= 49 : ElseIf NUM2 < 99 Then : I = 4096 : End If : Next
  258. 驗證碼_tb.Text = QQW(11) & "2" & QQW(9) & "7" & QQW(7) & "0" & QQW(5) & QQW(4) & "1" & QQW(6) & "3" & QQW(8) & "9" & QQW(10) & NUM2
  259. PA20 = 驗證碼_tb.Text : SQL_行政驗證碼()
  260. If dr.Read() = True Then : Else : QAZ = 999 : End If : conn.Close()
  261. Next
  262. End If
  263. End Sub
  264. Private Sub 單據_dgv_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles 單據_dgv.CellClick
  265. If e.RowIndex = -1 Then : Else
  266. If 單據_dgv("總價", e.RowIndex).Value <= 行政採購簽核級別基數 Then
  267. For i As Integer = 0 To 語言_dgv.Rows.Count - 1
  268. If 語言_dgv("控件", i).Value.ToString = "簽核提示2_lb" Then : 簽核提示_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  269. Next
  270. ElseIf 單據_dgv("總價", e.RowIndex).Value > 行政採購簽核級別基數 Then
  271. For i As Integer = 0 To 語言_dgv.Rows.Count - 1
  272. If 語言_dgv("控件", i).Value.ToString = "簽核提示3_lb" Then : 簽核提示_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  273. Next
  274. End If
  275. 採購單號_tb.Text = 單據_dgv(0, e.RowIndex).Value.ToString : 折扣比例_tb.Text = 單據_dgv(13, e.RowIndex).Value.ToString : 稅金_ch.Checked = 單據_dgv(14, e.RowIndex).Value
  276. 稅金比例_tb.Text = 單據_dgv(15, e.RowIndex).Value.ToString : 單據總價 = 單據_dgv("總價", e.RowIndex).Value
  277. If Strings.Left(採購單號_tb.Text, 3) = "HXI" Then : 選擇公司_cb.Text = "PT HONG XHE INDUSTRIAL"
  278. ElseIf Strings.Left(採購單號_tb.Text, 3) = "PGS" Then : 選擇公司_cb.Text = "PT PUNCAK GEMILANG SEMESTA" : End If
  279. 供應商編碼_tb.Text = 單據_dgv(1, e.RowIndex).Value.ToString : conn.Close()
  280. PA1 = 供應商編碼_tb.Text : SQL_行政物料採購單生成_供應商資料一()
  281. If dr.Read() Then : 供應商_cb.Text = dr("公司名") : conn.Close() : End If : conn.Close()
  282. 使用地點_tb.Text = 單據_dgv(3, e.RowIndex).Value.ToString : 需求時間_dtp.Value = 單據_dgv(2, e.RowIndex).Value
  283. Set_清單1()
  284. End If
  285. End Sub
  286. Private Sub 供應商_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 供應商_cb.SelectedIndexChanged
  287. PA1 = 供應商_cb.Text : SQL_行政物料採購單生成_供應商資料二()
  288. If dr.Read() Then
  289. 供應商編碼_tb.Text = dr("供應商編碼") : 地址_tb.Text = dr("公司地址") : 電話_tb.Text = dr("公司電話1") : 郵件_tb.Text = dr("聯繫人1郵箱") : 傳真_tb.Text = dr("公司傳真1")
  290. End If : conn.Close()
  291. End Sub
  292. Private Sub Set_日期格式轉換()
  293. DTP = Format(Today(), "yyyy/MM/dd") : DTP2 = Format(需求時間_dtp.Value, "yyyy/MM/dd")
  294. End Sub
  295. Private Sub 核准_bt_Click(sender As Object, e As EventArgs) Handles 核准_bt.Click
  296. If 單據總價 = 0 Then
  297. MGB(對話框(5), 1)
  298. Else
  299. Set_日期格式轉換()
  300. If 簽名檔_dgv.Rows.Count = 0 Then : Else
  301. If Val(登入人級別) = 0 Then : Else
  302. 圖片編碼_tb.Text = 簽名檔_dgv(0, 0).Value.ToString
  303. End If
  304. PA1 = 圖片編碼_tb.Text : SQL_主管簽名檔管理_圖片流水號()
  305. While dr.Read() = True
  306. Dim unused As Byte() = New Byte(-1) {}
  307. Dim bytes As Byte() = DirectCast(dr.Item("簽名檔圖片"), Byte())
  308. Dim oStream As New MemoryStream(bytes)
  309. 簽名檔1_pb.Image = Bitmap.FromStream(oStream)
  310. End While
  311. conn.Close() : 簽名檔1_pb.SizeMode = 4
  312. For QAZ = 0 To 999
  313. QQW(0) = Strings.Right(簽名檔_dgv(0, 0).Value.ToString, 2) : QQW(1) = Strings.Right(Year(Today), 2) : QQW(2) = Strings.Left(Year(Today), 2) : QQW(3) = Month(Today) + 9
  314. QQW(4) = Strings.Right(QQW(0), 1) : QQW(5) = Strings.Left(QQW(0), 1) : QQW(6) = Strings.Right(QQW(1), 1) : QQW(7) = Strings.Left(QQW(1), 1) : QQW(8) = Strings.Right(QQW(2), 1)
  315. QQW(9) = Strings.Left(QQW(2), 1) : QQW(10) = Strings.Right(QQW(3), 1) : QQW(11) = Strings.Left(QQW(3), 1)
  316. For RT = 4 To 11
  317. Delay(3)
  318. Dim ran = New Random(DateTime.Now.Millisecond) : Dim NUM1 As Integer = ran.Next(1, 4096)
  319. For I = 0 To 4096 : If NUM1 > 9 Then : NUM1 -= 9 : ElseIf NUM1 < 9 Then : I = 4096 : End If : Next
  320. If NUM1 = 1 Then : II = RT : 轉換() : ElseIf NUM1 = 2 Then : II = RT : 轉換() : ElseIf NUM1 = 3 Then : ElseIf NUM1 = 4 Then : II = RT : 轉換() : ElseIf NUM1 = 5 Then
  321. ElseIf NUM1 = 6 Then : II = RT : 轉換() : ElseIf NUM1 = 7 Then : ElseIf NUM1 = 8 Then : II = RT : 轉換() : ElseIf NUM1 = 9 Then : II = RT : 轉換() : End If
  322. Next
  323. Dim ran1 = New Random(DateTime.Now.Millisecond) : Dim NUM2 As Integer = ran1.Next(1, 4096)
  324. For I = 0 To 4096 : If NUM2 > 99 Then : NUM2 -= 49 : ElseIf NUM2 < 99 Then : I = 4096 : End If : Next
  325. 驗證碼_tb.Text = QQW(11) & "2" & QQW(9) & "7" & QQW(7) & "0" & QQW(5) & QQW(4) & "1" & QQW(6) & "3" & QQW(8) & "9" & QQW(10) & NUM2
  326. PA20 = 驗證碼_tb.Text : SQL_行政驗證碼()
  327. If dr.Read() = True Then : Else : QAZ = 999 : End If : conn.Close()
  328. Next
  329. End If
  330. If 單據總價 <= 行政採購簽核級別基數 Then
  331. SQL_行政物料採購單一級核准料_不需二級() : conn.Close()
  332. ElseIf 單據總價 > 行政採購簽核級別基數 Then
  333. SQL_行政物料採購單一級核准料_需二級() : conn.Close()
  334. End If
  335. 明細_dgv.DataSource = Nothing : Set_清單2() : 單據總價 = 0 : MGB(對話框(0), 1)
  336. End If
  337. End Sub
  338. Private Sub 作廢_bt_Click(sender As Object, e As EventArgs) Handles 作廢_bt.Click
  339. PA11 = 採購單號_tb.Text
  340. SQL_樣品採購單控制表_作廢() : conn.Close() : 明細_dgv.DataSource = Nothing : Set_清單2() : MGB(對話框(1), 1)
  341. End Sub
  342. Private Sub 存檔_bt_Click(sender As Object, e As EventArgs) Handles 存檔_bt.Click
  343. Set_日期格式轉換()
  344. PA1 = 供應商編碼_tb.Text : PA2 = 使用地點_tb.Text : PA3 = 折扣比例_tb.Text : BL1 = 稅金_ch.Checked : PA4 = 稅金比例_tb.Text : PA5 = 採購單號_tb.Text
  345. SQL_樣品採購單控制表_修改() : conn.Close() : 存檔()
  346. Set_清單2() : 單據總價 = 總金額_tb.Text
  347. MGB(對話框(2), 1)
  348. End Sub
  349. Private Sub 存檔()
  350. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  351. 資料數 = 明細_dgv.Rows.Count : MyMod.進度條()
  352. PA11 = 明細_dgv.Rows(i).Cells(表頭(12)).Value : PA12 = 明細_dgv.Rows(i).Cells(表頭(13)).Value : PA6 = 明細_dgv.Rows(i).Cells(表頭(14)).Value
  353. PA7 = 明細_dgv.Rows(i).Cells(表頭(26)).Value : PA8 = 明細_dgv.Rows(i).Cells(表頭(15)).Value : PA9 = 明細_dgv.Rows(i).Cells(表頭(16)).Value
  354. PA5 = 採購單號_tb.Text : PA10 = 明細_dgv.Rows(i).Cells("項次01").Value
  355. SQL_樣品採購單明細表_修改() : conn.Close()
  356. Next
  357. HX_PGS_ERP_SYS.ToolStripProgressBar1.Value = 0 : 最終數 = 0
  358. End Sub
  359. Private Sub 小間距1_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 小間距1_ch.Click
  360. 小間距1_ch.Checked = True : 中間距1_ch.Checked = False : 大間距1_ch.Checked = False : MyMod.間距設定存檔_1() : Set_清單1()
  361. End Sub
  362. Private Sub 中間距1_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 中間距1_ch.Click
  363. 小間距1_ch.Checked = False : 中間距1_ch.Checked = True : 大間距1_ch.Checked = False : MyMod.間距設定存檔_2() : Set_清單1()
  364. End Sub
  365. Private Sub 大間距1_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 大間距1_ch.Click
  366. 小間距1_ch.Checked = False : 中間距1_ch.Checked = False : 大間距1_ch.Checked = True : MyMod.間距設定存檔_3() : Set_清單1()
  367. End Sub
  368. '-----------------------------滑鼠右鍵--------------------------------------------------------------------------------------------------------------------------------------
  369. Private Sub 重新整理_tsm_Click(sender As Object, e As EventArgs) Handles 重新整理_tsm.Click
  370. Set_清單2()
  371. End Sub
  372. Private Sub 核准_tsm_Click(sender As Object, e As EventArgs) Handles 核准_tsm.Click
  373. Me.核准_bt.PerformClick()
  374. End Sub
  375. Private Sub 作作廢_tsm_Click(sender As Object, e As EventArgs) Handles 作廢_tsm.Click
  376. Me.作廢_bt.PerformClick()
  377. End Sub
  378. Private Sub 清單修改存檔_tsm_Click(sender As Object, e As EventArgs) Handles 清單修改存檔_tsm.Click
  379. Me.存檔_bt.PerformClick()
  380. End Sub
  381. Private Sub 刪除一筆選中的細項資料_tsm_Click(sender As Object, e As EventArgs) Handles 刪除一筆選中的細項資料_tsm.Click
  382. If 項次_tb.Text = "" Then : MGB(對話框(3), 1) : Else
  383. MGB(對話框(4), 2)
  384. If 訊息回應 = "YES" Then
  385. 存檔() : PA1 = 採購單號_tb.Text : PA2 = 項次_tb.Text
  386. SQL_樣品採購單明細表_刪除() : conn.Close() : Set_清單1()
  387. Dim NUM1 As Integer = 0
  388. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  389. NUM1 += 1 : If NUM1 < 10 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = NUM1 : End If
  390. PA18 = 新項次 : PA19 = 採購單號_tb.Text : PA20 = 明細_dgv.Rows(i).Cells("項次01").Value
  391. SQL_行政物料採購單一級核准料_新項次() : conn.Close()
  392. Next
  393. Set_清單1() : 項次_tb.Text = ""
  394. End If
  395. End If
  396. End Sub
  397. End Class