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 29KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431
  1. Imports System.Net
  2. Imports System.IO
  3. Public Class 合約文件圖庫管理
  4. ReadOnly ds2 As New DataSet
  5. Dim 新流水號3, TT As String
  6. Dim 圖庫已滿 As Boolean
  7. Private Sub Set_合約清單()
  8. Dim ds6 As New DataSet : 合約_dgv.DataSource = Nothing : ds6.Clear()
  9. 合約_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  10. 合約_dgv.ColumnHeadersHeight = 25
  11. 合約_dgv.AllowUserToAddRows = False
  12. PA = 關鍵字搜尋_tb.Text : PA46 = 合約編號1_cb.Text : PA47 = 工程期1_ch.Text
  13. SQL_合約清單1()
  14. da.Fill(ds6) : 合約_dgv.DataSource = ds6.Tables(0) : conn.Close()
  15. 合約_dgv.Columns(0).FillWeight = 160 : 合約_dgv.Columns(1).Visible = False : 合約_dgv.Columns(2).Visible = False : 合約_dgv.Columns(3).Visible = False
  16. 合約_dgv.Columns(4).Visible = False : 合約_dgv.Columns(5).Visible = False : 合約_dgv.Columns(6).Visible = False : 合約_dgv.Columns(7).Visible = False
  17. 合約_dgv.Columns(8).Visible = False : 合約_dgv.Columns(9).Visible = False : 合約_dgv.Columns(10).Visible = False : 合約_dgv.Columns(11).Visible = False
  18. 合約_dgv.Columns(12).Visible = False : 合約_dgv.Columns(13).Visible = False : 合約_dgv.Columns(14).Visible = False : 合約_dgv.Columns(15).Visible = False
  19. 合約_dgv.Columns(16).Visible = False : 合約_dgv.Columns(17).Visible = False : 合約_dgv.Columns(18).Visible = False : 合約_dgv.Columns(19).Visible = False
  20. 合約_dgv.Columns(20).Visible = False : 合約_dgv.Columns(21).Visible = False : 合約_dgv.Columns(22).Visible = False : 合約_dgv.Columns(23).Visible = False
  21. 合約_dgv.Columns(24).Visible = False : 合約_dgv.Columns(25).Visible = False : 合約_dgv.Columns(26).Visible = False : 合約_dgv.Columns(27).Visible = False
  22. 合約_dgv.Columns(28).Visible = False : 合約_dgv.Columns(29).Visible = False
  23. End Sub
  24. Private Sub Set_文件清單()
  25. Dim ds5 As New DataSet : 文件_dgv.DataSource = Nothing : ds5.Clear()
  26. 文件_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  27. 文件_dgv.ColumnHeadersHeight = 25
  28. 文件_dgv.AllowUserToAddRows = False
  29. SQL_合約工程文檔控制表()
  30. da.Fill(ds5) : 文件_dgv.DataSource = ds5.Tables(0) : conn.Close()
  31. 文件_dgv.Columns("副檔名").FillWeight = 50 : 文件_dgv.Columns("版次").FillWeight = 40 : 文件_dgv.Columns("上傳日期").FillWeight = 50 : 文件_dgv.Columns("文檔類型").FillWeight = 80
  32. 文件_dgv.Columns("文件號").Visible = False : 文件_dgv.Columns("圖庫").Visible = False : 文件_dgv.Columns("上傳人員").Visible = False
  33. End Sub
  34. Private Sub Set_文件說明()
  35. Dim ds5 As New DataSet : 文件說明_dgv.DataSource = Nothing : ds5.Clear()
  36. 文件說明_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  37. 文件說明_dgv.ColumnHeadersHeight = 25
  38. 文件說明_dgv.AllowUserToAddRows = False
  39. SQL_合約工程文檔說明()
  40. da.Fill(ds5) : 文件說明_dgv.DataSource = ds5.Tables(0) : conn.Close()
  41. End Sub
  42. Private Sub Set_工程文件資料庫狀態()
  43. Dim ds2 As New DataSet : 工程文件資料庫管理_dgv.DataSource = Nothing : ds2.Clear()
  44. 工程文件資料庫管理_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  45. 工程文件資料庫管理_dgv.ColumnHeadersHeight = 25
  46. 工程文件資料庫管理_dgv.AllowUserToAddRows = False
  47. SQL_合約工程文件資料庫管理查詢2()
  48. da.Fill(ds2) : 工程文件資料庫管理_dgv.DataSource = ds2.Tables(0) : conn.Close()
  49. 工程文件資料庫管理_dgv.Columns(0).FillWeight = 100 : 工程文件資料庫管理_dgv.Columns(1).FillWeight = 50
  50. End Sub
  51. Private Sub Set_文件紀錄()
  52. Dim ds5 As New DataSet : 歷史紀錄_dgv.DataSource = Nothing : ds5.Clear()
  53. 歷史紀錄_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  54. 歷史紀錄_dgv.ColumnHeadersHeight = 25
  55. 歷史紀錄_dgv.AllowUserToAddRows = False
  56. SQL_合約工程文檔操作紀錄()
  57. da.Fill(ds5) : 歷史紀錄_dgv.DataSource = ds5.Tables(0) : conn.Close()
  58. 歷史紀錄_dgv.Columns(0).FillWeight = 20 : 歷史紀錄_dgv.Columns(2).FillWeight = 40 : 歷史紀錄_dgv.Columns(3).FillWeight = 70
  59. For I As Integer = 0 To 歷史紀錄_dgv.Rows.Count - 1
  60. 歷史紀錄_dgv("時間", I).Value = Strings.Left(歷史紀錄_dgv("時間", I).Value.ToString, 19)
  61. Next
  62. End Sub
  63. Private Sub 檔案類型()
  64. SQL_檔案類型下拉清單() : 文檔類型_cb.Items.Clear() : While (dr.Read()) : 文檔類型_cb.Items.Add(dr("文檔類型")) : End While : conn.Close()
  65. End Sub
  66. Private Sub 甲方條件下拉清單讀取()
  67. SQL合約條件讀取() : 合約編號1_cb.Items.Clear() : 合約編號1_cb.Items.Add("") : While (dr.Read()) : 合約編號1_cb.Items.Add(dr("約號甲方")) : End While : conn.Close()
  68. End Sub
  69. Private Sub 驗證文件資料庫大小()
  70. For i As Integer = 0 To 99
  71. Set_工程文件資料庫狀態()
  72. If 工程文件資料庫管理_dgv.Rows.Count = 0 Then
  73. MsgBox("文件伺服器已滿,請竊系統管理員") : 圖庫已滿 = True : Exit For
  74. Else
  75. PA = 工程文件資料庫管理_dgv.Rows(0).Cells(0).Value.ToString
  76. SQL_資料庫大小查驗()
  77. If dr.Read() Then
  78. If 工程圖庫限制 <= dr("大小") Then
  79. SQL_合約工程文件資料庫管理查詢修改1()
  80. Else
  81. 圖片庫 = PA : SQL_連線字串_圖片資料庫() : Exit For
  82. End If
  83. End If
  84. End If
  85. Next
  86. End Sub
  87. Private Sub 工程文件圖庫管理_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  88. Me.MdiParent = GCM_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  89. PA = "" : 版次自動_cb.Checked = True : 新增檔案_ch.Checked = True : 覆蓋檔案_ch.Checked = False : 操作說明視窗_P.Visible = True : 歷史紀錄_P.Visible = False
  90. MsgBox("本介面語言轉換功能製作中!!" & vbCrLf & "Fungsi konversi bahasa antarmuka ini sedang dalam produksi!!")
  91. If CC(117) = False Then : 存檔_tb.Enabled = False : End If
  92. If CC(121) = False Then : 下載_tb.Enabled = False : End If
  93. If CC(122) = False Then : 刪除_bt.Enabled = False : End If
  94. Target1 = Target & AA(2) & "/" : 伺服器_wb.Url = New Uri(Target1)
  95. 本機_wb.Navigate(My.Computer.FileSystem.SpecialDirectories.Desktop)
  96. MyModule1.清單字體大小調整()
  97. 合約_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value)
  98. 文件_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value)
  99. 歷史紀錄_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value)
  100. End Sub
  101. Private Sub 工程文件圖庫管理_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown
  102. Set_合約清單() : Set_工程文件資料庫狀態() : 驗證文件資料庫大小() : 檔案類型() : 甲方條件下拉清單讀取()
  103. End Sub
  104. Private Sub 工程文件圖庫管理_Closing(sender As Object, e As EventArgs) Handles MyBase.Closed
  105. 驗證文件資料庫大小()
  106. End Sub
  107. Private Sub 工程文件圖庫管理_SizeChanged(sender As Object, e As EventArgs) Handles MyBase.SizeChanged
  108. MyModule1.清單字體大小調整()
  109. 合約_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value)
  110. 文件_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value)
  111. 歷史紀錄_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value)
  112. End Sub
  113. Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove
  114. timeNow = 0 : GCM_ERP_SYS.Timer1.Enabled = False : GCM_ERP_SYS.Timer1.Enabled = True
  115. End Sub
  116. Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress
  117. timeNow = 0 : GCM_ERP_SYS.Timer1.Enabled = False : GCM_ERP_SYS.Timer1.Enabled = True
  118. End Sub
  119. Private Sub 合約_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 合約_dgv.CellClick
  120. If e.RowIndex = -1 Then : Else
  121. 合約號_tb.Text = 合約_dgv(0, e.RowIndex).Value.ToString
  122. 文件號_tb.Text = "" : 版本_tb.Text = "" : 檔案名稱_tb.Text = "" : 副檔名_tb.Text = ""
  123. 文檔說明1_tb.Text = "" : 文檔說明2_tb.Text = "" : 文檔說明3_tb.Text = ""
  124. Set_文件清單()
  125. End If
  126. End Sub
  127. Private Sub 文件_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 文件_dgv.CellClick
  128. If e.RowIndex = -1 Then : Else
  129. 文件號_tb.Text = 文件_dgv("文件號", e.RowIndex).Value.ToString : 文檔類型_cb.Text = 文件_dgv("文檔類型", e.RowIndex).Value.ToString
  130. 檔案名稱_tb.Text = 文件_dgv("檔案名稱", e.RowIndex).Value.ToString : 副檔名_tb.Text = 文件_dgv("副檔名", e.RowIndex).Value.ToString
  131. 版本_tb.Text = 文件_dgv("版次", e.RowIndex).Value.ToString : 圖片庫 = 文件_dgv("圖庫", e.RowIndex).Value.ToString : SQL_連線字串_圖片資料庫()
  132. 上傳者_tb.Text = 文件_dgv("上傳人員", e.RowIndex).Value.ToString
  133. Set_文件紀錄() : Set_文件說明()
  134. For i As Integer = 0 To 文件說明_dgv.Rows.Count - 1
  135. If 文件說明_dgv("語言", i).Value.ToString = "繁體中文" Then
  136. 文檔說明1_tb.Text = 文件說明_dgv("文檔說明", i).Value.ToString
  137. ElseIf 文件說明_dgv("語言", i).Value.ToString = "Indonesian" Then
  138. 文檔說明3_tb.Text = 文件說明_dgv("文檔說明", i).Value.ToString
  139. ElseIf 文件說明_dgv("語言", i).Value.ToString = "English" Then
  140. 文檔說明2_tb.Text = 文件說明_dgv("文檔說明", i).Value.ToString
  141. End If
  142. Next
  143. End If
  144. End Sub
  145. Private Sub 文件_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 文件_dgv.RowPostPaint
  146. Dim linePen As New Pen(Color.Blue, 2)
  147. If e.RowIndex = 文件_dgv.Rows.Count - 1 Then : Exit Sub : Else
  148. If 文件_dgv(0, e.RowIndex).Value.ToString <> 文件_dgv(0, e.RowIndex + 1).Value.ToString Then
  149. Dim startX As Integer = IIf(文件_dgv.RowHeadersVisible, 文件_dgv.RowHeadersWidth, 0) : Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  150. Dim endX As Integer = startX + 文件_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 文件_dgv.HorizontalScrollingOffset
  151. e.Graphics.DrawLine(linePen, startX, startY, endX, startY) : Exit Sub
  152. End If
  153. End If
  154. End Sub
  155. Private Sub 合約編號1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 合約編號1_cb.SelectedIndexChanged
  156. Set_合約清單()
  157. End Sub
  158. Private Sub 查詢_bt_Click(sender As Object, e As EventArgs) Handles 查詢_bt.Click
  159. PA = 關鍵字搜尋_tb.Text : Set_合約清單()
  160. End Sub
  161. Private Sub 新增檔案_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 新增檔案_ch.Click
  162. 新增檔案_ch.Checked = True : 覆蓋檔案_ch.Checked = False : 文件號_tb.Text = "" : 版本_tb.Text = ""
  163. End Sub
  164. Private Sub 覆蓋檔案_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 覆蓋檔案_ch.Click
  165. 新增檔案_ch.Checked = False : 覆蓋檔案_ch.Checked = True
  166. End Sub
  167. Private Sub 檔案名稱_tb_DragEnter(sender As Object, e As DragEventArgs) Handles 檔案名稱_tb.DragEnter
  168. If e.Data.GetDataPresent(DataFormats.FileDrop) Then
  169. Dim files As String()
  170. Try
  171. files = CType(e.Data.GetData(DataFormats.FileDrop), String()) : 檔案名稱_tb.Text = files(files.Length - 1)
  172. Catch ex As Exception
  173. MessageBox.Show(ex.Message) : Return
  174. End Try
  175. End If
  176. Dim STR1 As Integer : Dim STR2 As Integer
  177. 檔案路徑_tb.Text = 檔案名稱_tb.Text
  178. If 檔案名稱_tb.Text = "" Then : Else
  179. For i As Integer = 0 To 9999
  180. STR1 = Strings.Len(檔案路徑_tb.Text)
  181. If Strings.Right((檔案路徑_tb.Text), 1) <> "\" Then
  182. STR1 -= 1 : STR2 += 1
  183. If STR1 = 0 Then
  184. 檔案路徑_tb.Text = "" : 檔案名稱_tb.Text = "" : i = 9999
  185. Else
  186. 檔案路徑_tb.Text = Strings.Left((檔案路徑_tb.Text), STR1)
  187. End If
  188. Else
  189. 檔案路徑_tb.Text = Strings.Right((檔案名稱_tb.Text), STR2) : 檔案名稱_tb.Text = 檔案路徑_tb.Text : i = 9999
  190. End If
  191. Next
  192. End If
  193. '-------取得副檔名---------------------------------------------------------------------------------------------------------------
  194. For I As Integer = 1 To 99
  195. 副檔名_tb.Text = Strings.Mid(Strings.StrReverse(檔案名稱_tb.Text), I, 1)
  196. If 副檔名_tb.Text = "." Then : 副檔名_tb.Text = Strings.StrReverse(Strings.Left(Strings.StrReverse(檔案名稱_tb.Text), I)) : I = 99 : End If
  197. Next
  198. '-------取得檔名---------------------------------------------------------------------------------------------------------------
  199. Dim 檔名 As String : Dim 檔名長度 As Integer
  200. For I As Integer = 1 To 99
  201. 檔名 = Strings.Mid(Strings.StrReverse(檔案名稱_tb.Text), I, 1)
  202. If 檔名 = "." Then
  203. 檔名長度 = Len(檔案名稱_tb.Text) - I
  204. 檔案名稱_tb.Text = Strings.Left(檔案名稱_tb.Text, 檔名長度) : I = 99
  205. End If
  206. Next
  207. End Sub
  208. Private Sub 檔案名稱_tb_DragDrop(ByVal sender As Object, ByVal e As DragEventArgs) Handles 檔案名稱_tb.DragDrop
  209. Dim files As Array = e.Data.GetData(DataFormats.FileDrop)
  210. For Each file As String In files
  211. 檔案名稱_tb.AppendText(file + Environment.NewLine)
  212. Next
  213. End Sub
  214. Private Sub 讀取料夾路徑_bt_Click(sender As Object, e As EventArgs) Handles 讀取料夾路徑_bt.Click
  215. If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
  216. 本機_wb.Navigate(FolderBrowserDialog1.SelectedPath)
  217. End If
  218. End Sub
  219. Private Sub 存檔_tb_Click(sender As Object, e As EventArgs) Handles 存檔_tb.Click
  220. If 合約號_tb.Text = "" Then
  221. MsgBox("請先選擇合約")
  222. Else
  223. '-------------判斷FTP資料夾中是否有該文件--------------------------------------------------------------------------------------------------------
  224. Dim ftpclient As System.Net.FtpWebRequest = System.Net.FtpWebRequest.Create(New System.Uri(Target1 & 檔案名稱_tb.Text & 副檔名_tb.Text))
  225. ftpclient.UseBinary = True
  226. ftpclient.Credentials = New System.Net.NetworkCredential(FTP帳號, FTP密碼)
  227. ftpclient.Method = System.Net.WebRequestMethods.Ftp.ListDirectoryDetails
  228. ftpclient.KeepAlive = False
  229. Dim ftpresponse As System.Net.FtpWebResponse
  230. Try
  231. ftpresponse = CType(ftpclient.GetResponse, System.Net.FtpWebResponse)
  232. Console.WriteLine(ftpresponse.StatusCode.ToString + " " + ftpresponse.StatusDescription)
  233. Dim content(1024) As Byte
  234. Dim index_a As Integer = 0
  235. index_a = ftpresponse.GetResponseStream.Read(content, 0, content.Length)
  236. Dim contentstring As String = String.Empty
  237. While index_a > 0
  238. index_a = ftpresponse.GetResponseStream.Read(content, 0, content.Length) : contentstring += System.Text.Encoding.UTF8.GetString(content)
  239. End While
  240. ftpresponse.Close()
  241. If contentstring.LastIndexOf(檔案名稱_tb.Text & 副檔名_tb.Text) > 0 Then
  242. If 文件號_tb.Text <> "" Or 版本_tb.Text <> "" Then
  243. Dim SS As String
  244. If 系統語言 = "繁體中文" Then : SS = "是否建立新的檔案編號?" : Else : SS = "Apakah akan membuat nomor file baru??" : End If
  245. Dim aa1 As MsgBoxResult = MsgBox(SS, MsgBoxStyle.OkCancel)
  246. If aa1 = MsgBoxResult.Ok Then
  247. 文件號_tb.Text = "" : 版本_tb.Text = ""
  248. End If
  249. End If
  250. Dim 文件新 As Boolean = False
  251. If 文件號_tb.Text = "" Then
  252. Dim 文件號 As String = "" : Dim 文件編號 As Integer : SQL_合約工程文檔_文件號查詢()
  253. If dr.Read() Then : 文件編號 = Double.Parse(Strings.Right(dr("文件號").ToString, 8)) : Else : 文件編號 = 0 : End If
  254. conn.Close() : 文件編號 += 1
  255. If 文件編號 < 10 Then : 文件號 = "PF" & "0000000" & 文件編號
  256. ElseIf 文件編號 > 9 And 文件編號 < 100 Then : 文件號 = "PF" & "000000" & 文件編號
  257. ElseIf 文件編號 > 99 And 文件編號 < 1000 Then : 文件號 = "PF" & "00000" & 文件編號
  258. ElseIf 文件編號 > 999 And 文件編號 < 10000 Then : 文件號 = "PF" & "0000" & 文件編號
  259. ElseIf 文件編號 > 9999 And 文件編號 < 100000 Then : 文件號 = "PF" & "000" & 文件編號
  260. ElseIf 文件編號 > 99999 And 文件編號 < 100000 Then : 文件號 = "PF" & "00" & 文件編號
  261. ElseIf 文件編號 > 999999 And 文件編號 < 1000000 Then : 文件號 = "PF" & "0" & 文件編號
  262. ElseIf 文件編號 > 9999999 Then : 文件號 = "PF" & 文件編號
  263. End If
  264. 文件號_tb.Text = 文件號
  265. 文件新 = True
  266. End If
  267. If 新增檔案_ch.Checked = True Then
  268. SQL_合約工程文檔_版本號查詢()
  269. If dr.Read() Then : 新流水號3 = dr("版次") : Else : 新流水號3 = "V00" : End If : conn.Close()
  270. Dim NUM1 As Integer
  271. NUM1 = Double.Parse(Strings.Right(新流水號3, 2)) + 1
  272. If NUM1 < 10 Then : 新流水號3 = "V" & "0" & NUM1
  273. ElseIf NUM1 > 9 Then : 新流水號3 = "V" & NUM1
  274. End If
  275. 版本_tb.Text = 新流水號3
  276. If 文件新 = False And CC(118) = False Then
  277. If 系統語言 = "繁體中文" Then : MsgBox("您沒有權限新增文件版本!!") : Else : MsgBox("Anda tidak memiliki izin untuk menambahkan versi file!!") : End If
  278. FTP方式刪除檔案() : Exit Sub
  279. End If
  280. End If
  281. If 新增檔案_ch.Checked = True Then
  282. SQL_合約工程文檔控制表_新增() : SQL_合約工程文檔_文檔入系統() : 驗證文件資料庫大小()
  283. SQL_合約工程文檔_檔案說明檢查()
  284. If dr.Read Then : Else
  285. SQL_合約工程文檔_檔案說明新增1() : SQL_合約工程文檔_檔案說明新增2() : SQL_合約工程文檔_檔案說明新增3()
  286. End If
  287. If 文件新 = True Then
  288. PA43 = "新增檔案" : SQL_合約工程文檔操作紀錄_新增() : Set_文件紀錄()
  289. Else
  290. PA43 = "版本更新" : SQL_合約工程文檔操作紀錄_新增() : Set_文件紀錄()
  291. End If
  292. Else
  293. If CC(119) = False Then
  294. If 系統語言 = "繁體中文" Then : MsgBox("您沒有權限修改已經上傳的檔案!!") : Else : MsgBox("Anda tidak memiliki izin untuk mengubah file yang diunggah!!") : End If
  295. Else
  296. SQL_合約工程文檔控制表_修改() : SQL_合約工程文檔_檔案說明修改1() : SQL_合約工程文檔_檔案說明修改2() : SQL_合約工程文檔_檔案說明修改3()
  297. SQL_合約工程文檔_文檔修改()
  298. PA43 = "修改檔案" : SQL_合約工程文檔操作紀錄_新增() : Set_文件紀錄()
  299. End If
  300. End If
  301. FTP方式刪除檔案() : If 系統語言 = "繁體中文" Then : MsgBox("上傳完畢!!") : Else : MsgBox("Unggah selesai!!") : End If
  302. Else
  303. If 系統語言 = "繁體中文" Then : MsgBox("請先確定檔案資料已準備完畢!!") : Else : MsgBox("Pastikan file sudah siap!!") : End If
  304. End If
  305. Catch ex As Exception
  306. If CC(120) = False Then
  307. If 系統語言 = "繁體中文" Then : MsgBox("您沒有權限修改檔案的資訊!!") : Else : MsgBox("Anda tidak memiliki izin untuk mengubah informasi file!!") : End If
  308. Else
  309. SQL_合約工程文檔控制表_修改1() : SQL_合約工程文檔_檔案說明修改1() : SQL_合約工程文檔_檔案說明修改2() : SQL_合約工程文檔_檔案說明修改3()
  310. PA43 = "資訊更新" : SQL_合約工程文檔操作紀錄_新增() : Set_文件紀錄()
  311. If 系統語言 = "繁體中文" Then : MsgBox("資料修改完畢!!") : Else : MsgBox("Data telah diubah!!") : End If
  312. End If
  313. End Try
  314. End If : 檔案類型() : Set_文件清單()
  315. End Sub
  316. Private Sub FTP方式刪除檔案()
  317. '---FTP方式刪除檔案----------------------------------------------------------------------------------------------------------------------------------------------------------------------
  318. Dim frq As FtpWebRequest, frp As FtpWebResponse, fcr As NetworkCredential
  319. frq = CType(WebRequest.Create(New Uri(Target1 & 檔案名稱_tb.Text & 副檔名_tb.Text)), FtpWebRequest)
  320. fcr = New NetworkCredential(FTP帳號, FTP密碼)
  321. frq.Credentials = fcr
  322. frq.Method = WebRequestMethods.Ftp.DeleteFile
  323. frq.UseBinary = True
  324. frp = CType(frq.GetResponse, FtpWebResponse)
  325. frp.Close()
  326. 伺服器_wb.Refresh()
  327. '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  328. 檔案名稱_tb.Text = "" : 副檔名_tb.Text = ""
  329. End Sub
  330. Private Sub 下載_tb_Click(sender As Object, e As EventArgs) Handles 下載_tb.Click
  331. If CC(121) = False Then
  332. MsgBox("您沒有權限下載檔案!!")
  333. Else
  334. If 合約號_tb.Text = "" Or 檔案名稱_tb.Text = "" Or 副檔名_tb.Text = "" Then
  335. MsgBox("請先選擇要下載的圖檔")
  336. Else
  337. With SaveFileDialog1 : .Filter = "所有文件(*.*)|*.*" : End With
  338. TT = 檔案名稱_tb.Text
  339. SaveFileDialog1.FileName = TT & 副檔名_tb.Text
  340. SaveFileDialog1.ShowDialog() : 檔案路徑_tb.Text = SaveFileDialog1.FileName
  341. Dim ds2 As New DataSet : ds2.Clear()
  342. SQL_合約工程文檔_文檔下載()
  343. da.Fill(ds2) : conn.Close()
  344. If ds2.Tables(0).Rows.Count > 0 Then
  345. Dim imgData() As Byte
  346. imgData = ds2.Tables(0).Rows(0).Item("文檔")
  347. Dim fs As FileStream
  348. fs = File.Create(檔案路徑_tb.Text, imgData.Length - 1)
  349. fs.Write(imgData, 0, imgData.Length - 1)
  350. fs.Close()
  351. End If
  352. PA43 = "下載檔案" : SQL_合約工程文檔操作紀錄_新增() : Set_文件紀錄()
  353. 檔案路徑_tb.Text = ""
  354. MsgBox("下載完成")
  355. End If
  356. End If
  357. End Sub
  358. Private Sub 版次自動_cb_CheckedChanged(sender As Object, e As EventArgs) Handles 版次自動_cb.Click
  359. 版次自動_cb.Checked = True : 版次手動_cb.Checked = False : 版本_tb.Enabled = False
  360. End Sub
  361. Private Sub 版次手動_cb_CheckedChanged(sender As Object, e As EventArgs) Handles 版次手動_cb.Click
  362. 版次自動_cb.Checked = False : 版次手動_cb.Checked = True : 版本_tb.Enabled = True
  363. End Sub
  364. Private Sub 刪除_bt_Click(sender As Object, e As EventArgs) Handles 刪除_bt.Click
  365. If CC(122) = False Then
  366. MsgBox("您沒有權限刪除檔案!!")
  367. Else
  368. If 文件號_tb.Text = "" Then
  369. MsgBox("請先選擇文件!!")
  370. Else
  371. Dim 文件數 As Integer
  372. For I As Integer = 0 To 文件_dgv.Rows.Count - 1
  373. If 文件號_tb.Text = 文件_dgv("文件號", I).Value.ToString Then
  374. 文件數 += 1
  375. End If
  376. Next
  377. Dim aa1 As MsgBoxResult = MsgBox("確定要刪除該筆資料?", MsgBoxStyle.OkCancel)
  378. If aa1 = MsgBoxResult.Ok Then
  379. If 文件數 = 1 Then
  380. SQL_合約工程文檔控制表_刪除() : SQL_合約工程文檔_刪除() : SQL_合約工程文檔說明_刪除()
  381. PA43 = "檔案刪除" : SQL_合約工程文檔操作紀錄_新增() : Set_文件紀錄()
  382. ElseIf 文件數 > 1 Then
  383. SQL_合約工程文檔控制表_刪除() : SQL_合約工程文檔_刪除()
  384. PA43 = "檔案刪除" : SQL_合約工程文檔操作紀錄_新增() : Set_文件紀錄()
  385. End If
  386. MsgBox("刪除完成")
  387. End If
  388. End If : 檔案類型() : Set_文件清單()
  389. End If
  390. End Sub
  391. Private Sub 操作說明視窗1_Click(sender As Object, e As EventArgs) Handles 說明_bt.Click
  392. If 操作說明視窗_P.Visible = True Then : 操作說明視窗_P.Visible = False : Else : 歷史紀錄_P.Visible = False : 操作說明視窗_P.Visible = True : End If
  393. End Sub
  394. Private Sub 歷史紀錄_bt_Click(sender As Object, e As EventArgs) Handles 歷史紀錄_bt.Click
  395. If 歷史紀錄_P.Visible = True Then : 歷史紀錄_P.Visible = False : Else : 操作說明視窗_P.Visible = False : 歷史紀錄_P.Visible = True : End If
  396. End Sub
  397. Private Sub Cancel_bt_Click(sender As Object, e As EventArgs) Handles Cancel_bt.Click
  398. 操作說明視窗_P.Visible = False
  399. End Sub
  400. Private Sub Cancel1_bt_Click(sender As Object, e As EventArgs) Handles Cancel1_bt.Click
  401. 歷史紀錄_P.Visible = False
  402. End Sub
  403. '----------------------自創視窗滑鼠拖曳功能---------------------------------------------------------------------------------------------------------
  404. Dim OldX, OldY As Long
  405. Dim drag As Boolean
  406. Private Sub 操作說明視窗_P_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 操作說明視窗_P.MouseDown
  407. If e.Button = MouseButtons.Left Then : OldX = e.X : OldY = e.Y : drag = True : End If
  408. End Sub
  409. Private Sub 操作說明視窗_P_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 操作說明視窗_P.MouseMove
  410. If drag Then : 操作說明視窗_P.Left = 操作說明視窗_P.Left + e.X - OldX : 操作說明視窗_P.Top = 操作說明視窗_P.Top + e.Y - OldY : End If
  411. End Sub
  412. Private Sub 操作說明視窗_P_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 操作說明視窗_P.MouseUp
  413. drag = False
  414. End Sub
  415. Private Sub 歷史紀錄_P_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 歷史紀錄_P.MouseDown
  416. If e.Button = MouseButtons.Left Then : OldX = e.X : OldY = e.Y : drag = True : End If
  417. End Sub
  418. Private Sub 歷史紀錄_P_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 歷史紀錄_P.MouseMove
  419. If drag Then : 歷史紀錄_P.Left = 歷史紀錄_P.Left + e.X - OldX : 歷史紀錄_P.Top = 歷史紀錄_P.Top + e.Y - OldY : End If
  420. End Sub
  421. Private Sub 歷史紀錄_P_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 歷史紀錄_P.MouseUp
  422. drag = False
  423. End Sub
  424. End Class