Без опису
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

簽名檔管理.vb 8.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. Option Explicit On
  2. Imports System.Net
  3. Imports System.IO
  4. Imports System.Data.SqlClient
  5. Public Class 簽名檔管理
  6. Public Property Credentials As ICredentials
  7. ReadOnly ds As New DataSet : ReadOnly ds1 As New DataSet
  8. Dim EDR As Integer = 0 : Dim ESTR As String
  9. Private Sub Set_DGV1載入前設定()
  10. DataGridView1.DataSource = Nothing : ds.Clear()
  11. DataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  12. DataGridView1.ColumnHeadersHeight = 25
  13. DataGridView1.AllowUserToAddRows = False
  14. ConnOpen()
  15. End Sub
  16. Private Sub Set_DGV1載入後設定()
  17. CmdSet_For_DGV() : da.Fill(ds) : DataGridView1.DataSource = ds.Tables(0) : conn.Close() : Set_grid()
  18. End Sub
  19. Private Sub Set_清單()
  20. Set_DGV1載入前設定()
  21. SQL1 = "SELECT 圖片流水號 AS 圖檔編碼, 簽名檔人名 FROM GCM主管簽名檔管理 ORDER BY 圖片流水號"
  22. Set_DGV1載入後設定()
  23. End Sub
  24. Private Sub Set_grid()
  25. DataGridView1.Columns(0).FillWeight = 221 : DataGridView1.Columns(1).FillWeight = 220
  26. End Sub
  27. Private Sub ComboBox1下拉表單資料載入()
  28. conn.Close()
  29. ConnOpen()
  30. SQL1 = "SELECT 姓名 FROM 使用者權限管理表 ORDER BY 姓名"
  31. CmdSet_For_dr()
  32. ComboBox1.Items.Clear()
  33. While (dr.Read()) : ComboBox1.Items.Add(dr("姓名")) : End While
  34. conn.Close()
  35. End Sub
  36. Private Sub 簽名檔管理_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  37. Me.MdiParent = GCM_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  38. Set_清單() : TextBox3.Visible = False
  39. ComboBox1下拉表單資料載入()
  40. If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
  41. WebBrowser2.Navigate(FolderBrowserDialog1.SelectedPath)
  42. End If
  43. Target1 = Target & AA(0) & "/"
  44. WebBrowser1.Url = New Uri(Target1)
  45. End Sub
  46. Private Sub DataGridView1_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles DataGridView1.CellClick
  47. If e.RowIndex = -1 Then : Else
  48. TextBox2.Text = DataGridView1(0, e.RowIndex).Value.ToString : ComboBox1.Text = DataGridView1(1, e.RowIndex).Value.ToString
  49. ConnOpen()
  50. SQL1 = "SELECT 簽名檔圖片 FROM GCM主管簽名檔管理 WHERE 圖片流水號 LIKE '" & TextBox2.Text & "'"
  51. cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader
  52. While dr.Read() = True
  53. Dim unused As Byte() = New Byte(-1) {}
  54. Dim bytes As Byte() = DirectCast(dr.Item("簽名檔圖片"), Byte())
  55. Dim oStream As New MemoryStream(bytes)
  56. PictureBox1.Image = Bitmap.FromStream(oStream)
  57. End While
  58. conn.Close()
  59. PictureBox1.SizeMode = 4
  60. End If
  61. End Sub
  62. Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
  63. If TextBox2.Text = "" Then
  64. MsgBox("請先將要入庫的編號準備好")
  65. Else
  66. If TextBox4.Text = "" Then
  67. MsgBox("請先確定圖片資料已準備完畢")
  68. Else
  69. ConnOpen()
  70. SQL1 = "INSERT INTO GCM主管簽名檔管理 (圖片流水號, 簽名檔人名, 簽名檔圖片) SELECT '" & TextBox2.Text & "', '" & ComboBox1.Text & "', " &
  71. "BULKCOLUMN FROM OPENROWSET ( BULK 'D:\FTP\GCM\" & AA(0) & "\" & TextBox4.Text & "', SINGLE_BLOB) AS EMPLOYEEPICTURE"
  72. CmdSet_For_dr() : conn.Close()
  73. '---FTP方式刪除檔案----------------------------------------------------------------------------------------------------------------------------------------------------------------------
  74. Dim frq As FtpWebRequest, frp As FtpWebResponse, fcr As NetworkCredential
  75. frq = CType(WebRequest.Create(New Uri(Target1 & TextBox4.Text)), FtpWebRequest)
  76. fcr = New NetworkCredential(FTP帳號, FTP密碼)
  77. frq.Credentials = fcr
  78. frq.Method = WebRequestMethods.Ftp.DeleteFile
  79. frq.UseBinary = True
  80. frp = CType(frq.GetResponse, FtpWebResponse)
  81. frp.Close()
  82. WebBrowser1.Refresh()
  83. '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  84. TextBox4.Text = ""
  85. ConnOpen()
  86. SQL1 = "SELECT 簽名檔圖片 FROM GCM主管簽名檔管理 WHERE 圖片流水號 LIKE '" & TextBox2.Text & "'"
  87. cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader
  88. While dr.Read() = True
  89. Dim unused As Byte() = New Byte(-1) {}
  90. Dim bytes As Byte() = DirectCast(dr.Item("簽名檔圖片"), Byte())
  91. Dim oStream As New MemoryStream(bytes)
  92. PictureBox1.Image = Bitmap.FromStream(oStream)
  93. End While
  94. conn.Close()
  95. PictureBox1.SizeMode = 4
  96. Set_清單() : TextBox2.Text = ""
  97. End If
  98. End If
  99. End Sub
  100. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  101. ConnOpen()
  102. SQL1 = "SELECT TOP (1) 圖片流水號 FROM GCM主管簽名檔管理 ORDER BY 圖片流水號 DESC"
  103. cmd.Connection = conn : cmd.CommandText = SQL1 : dr = cmd.ExecuteReader
  104. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("圖片流水號").ToString, 8)) : Else : EDR = 0 : End If
  105. conn.Close()
  106. EDR += 1
  107. If EDR < 10 Then : ESTR = "PG" & "0000000" & EDR
  108. ElseIf EDR > 9 And EDR < 100 Then : ESTR = "PG" & "000000" & EDR
  109. ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "PG" & "00000" & EDR
  110. ElseIf EDR > 999 And EDR < 10000 Then : ESTR = "PG" & "0000" & EDR
  111. ElseIf EDR > 9999 And EDR < 100000 Then : ESTR = "PG" & "000" & EDR
  112. ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "PG" & "00" & EDR
  113. ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "PG" & "0" & EDR
  114. ElseIf EDR > 9999999 Then : ESTR = "PG" & EDR
  115. End If
  116. TextBox2.Text = ESTR
  117. End Sub
  118. Private Sub TextBox4_DragEnter(sender As Object, e As DragEventArgs) Handles TextBox4.DragEnter
  119. If e.Data.GetDataPresent(DataFormats.FileDrop) Then
  120. Dim files As String()
  121. Try
  122. files = CType(e.Data.GetData(DataFormats.FileDrop), String())
  123. TextBox4.Text = files(files.Length - 1)
  124. Catch ex As Exception
  125. MessageBox.Show(ex.Message)
  126. Return
  127. End Try
  128. End If
  129. Dim STR2 As Integer = 0
  130. TextBox3.Text = TextBox4.Text
  131. If TextBox4.Text = "" Then
  132. Else
  133. For i As Integer = 0 To 9999
  134. Dim STR1 As Integer = Strings.Len(TextBox3.Text)
  135. If Strings.Right((TextBox3.Text), 1) <> "\" Then
  136. STR1 -= 1 : STR2 += 1
  137. If STR1 = 0 Then
  138. TextBox3.Text = ""
  139. TextBox4.Text = ""
  140. i = 9999
  141. Else
  142. TextBox3.Text = Strings.Left((TextBox3.Text), STR1)
  143. End If
  144. Else
  145. TextBox3.Text = Strings.Right((TextBox4.Text), STR2)
  146. TextBox4.Text = TextBox3.Text
  147. i = 9999
  148. End If
  149. Next
  150. End If
  151. End Sub
  152. Private Sub TextBox4_DragDrop(ByVal sender As Object, ByVal e As DragEventArgs) Handles TextBox4.DragDrop
  153. Dim files As Array = e.Data.GetData(DataFormats.FileDrop)
  154. For Each file As String In files
  155. TextBox4.AppendText(file + Environment.NewLine)
  156. Next
  157. End Sub
  158. Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
  159. SQL1 = "DELETE FROM GCM主管簽名檔管理 WHERE (圖片流水號 = N'" & TextBox2.Text & "')"
  160. cmd.CommandText = SQL1 : cmd.Connection = conn
  161. ConnOpen()
  162. Dim aa As MsgBoxResult
  163. aa = MsgBox("確定要刪除該筆資料?", MsgBoxStyle.OkCancel)
  164. If aa = MsgBoxResult.Ok Then
  165. cmd.ExecuteNonQuery()
  166. Set_清單() : TextBox2.Text = ""
  167. End If
  168. End Sub
  169. Private Sub Button14_Click(sender As Object, e As EventArgs) Handles Button14.Click
  170. If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
  171. WebBrowser2.Navigate(FolderBrowserDialog1.SelectedPath)
  172. End If
  173. End Sub
  174. End Class