Nav apraksta
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

工程日報表.vb 57KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726
  1. Imports System.Net
  2. Imports System.IO
  3. Public Class 工程日報表
  4. ReadOnly ds8 As New DataSet
  5. Dim 圖片資料庫指定 As String
  6. Dim EDR, 頁數, DGVX, NUM1 As Integer
  7. Dim ESTR As String
  8. ReadOnly 對話框(13) As String
  9. Private Sub Set_工程圖片資料庫狀態()
  10. Dim ds9 As New DataSet : 圖庫清單_dgv.DataSource = Nothing : ds9.Clear()
  11. 圖庫清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  12. 圖庫清單_dgv.ColumnHeadersHeight = 25
  13. 圖庫清單_dgv.AllowUserToAddRows = False
  14. 表頭(165) = "資料庫" : 表頭(166) = "狀態"
  15. SQL_工程圖片資料庫管理查詢()
  16. da.Fill(ds9) : 圖庫清單_dgv.DataSource = ds9.Tables(0) : conn.Close()
  17. 圖庫清單_dgv.Columns(0).FillWeight = 100 : 圖庫清單_dgv.Columns(1).FillWeight = 20
  18. End Sub
  19. Private Sub Set_工程清單()
  20. Dim ds1 As New DataSet
  21. 清單_dgv.DataSource = Nothing : ds1.Clear()
  22. 清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  23. 清單_dgv.ColumnHeadersHeight = 25 : 清單_dgv.AllowUserToAddRows = False : 清單_dgv.RowTemplate.Height = 35
  24. PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") : PA1 = 工程執行主管_cb.Text
  25. SQL_工程日報表()
  26. da.Fill(ds1) : 清單_dgv.DataSource = ds1.Tables(0) : conn.Close()
  27. 清單_dgv.Columns(0).Visible = False : 清單_dgv.Columns(1).FillWeight = 30 : 清單_dgv.Columns(2).Visible = False : 清單_dgv.Columns(3).FillWeight = 30
  28. 清單_dgv.Columns(4).FillWeight = 180 : 清單_dgv.Columns(5).Visible = False : 清單_dgv.Columns(6).Visible = False : 清單_dgv.Columns(7).FillWeight = 30
  29. 清單_dgv.Columns(8).Visible = False : 清單_dgv.Columns(9).Visible = False
  30. 頁數 = 0
  31. For I As Integer = 0 To 清單_dgv.Rows.Count - 1
  32. If IsDBNull(清單_dgv(表頭(28), I).Value) = False Then : If 清單_dgv(表頭(28), I).Value = True Then : 頁數 += 1 : End If : End If : 清單_dgv(表頭(11), I).Value = I + 1
  33. Next
  34. If 頁數 = 0 Then
  35. If 系統語言 = "繁體中文" Then : 頁數_lb.Text = "共 1 頁" : Else : 頁數_lb.Text = "Total 1 P" : End If : 目前頁數_nud.Value = 1
  36. Else : 頁數 = Math.Ceiling(頁數 / 4)
  37. If 系統語言 = "繁體中文" Then : 頁數_lb.Text = "共 " & 頁數 & " 頁" : Else : 頁數_lb.Text = "Total " & 頁數 & " P" : End If
  38. End If
  39. PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") : PA1 = 工程執行主管_cb.Text : SQL_讀取工程日報控制()
  40. If dr.Read Then
  41. 上午_cb.Text = dr("上午開工").ToString : 下午_cb.Text = dr("下午開工").ToString
  42. 編碼_tb.Text = dr("上午天氣").ToString : 編碼1_tb.Text = dr("下午天氣").ToString
  43. 控制表流水_tb.Text = dr("流水號").ToString
  44. PA40 = 編碼_tb.Text : SQL_天氣控制_讀取() : If dr.Read Then : 天氣_cb.Text = dr("天氣").ToString : End If
  45. PA40 = 編碼1_tb.Text : SQL_天氣控制_讀取() : If dr.Read Then : 天氣1_cb.Text = dr("天氣").ToString : End If : 已建檔_ch.Checked = True
  46. Else
  47. 上午_cb.Text = "" : 下午_cb.Text = "" : 編碼_tb.Text = "" : 編碼1_tb.Text = "" : 天氣_cb.Text = "" : 天氣1_cb.Text = "" : 已建檔_ch.Checked = False
  48. End If
  49. 分頁計算()
  50. End Sub
  51. Private Sub Set_工程日報圖片()
  52. Dim ds6 As New DataSet
  53. 圖片清單_dgv.DataSource = Nothing : ds6.Clear()
  54. 圖片清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  55. 圖片清單_dgv.ColumnHeadersHeight = 25 : 圖片清單_dgv.AllowUserToAddRows = False : 圖片清單_dgv.RowTemplate.Height = 35
  56. If 圖片庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 圖片庫_tb.Text : End If
  57. SQL_連線字串_圖片資料庫() : SQL_工程日報圖片清單()
  58. da.Fill(ds6) : 圖片清單_dgv.DataSource = ds6.Tables(0) : conn.Close()
  59. 圖片清單_dgv.Columns(0).ReadOnly = True
  60. If 圖片清單_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取() : Else : 圖片_pb.Image = Nothing : End If
  61. Dim mycol As DataGridViewImageColumn = 圖片清單_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom
  62. End Sub
  63. Private Sub 圖片清單讀取()
  64. 圖片_pb.Image = Nothing
  65. PA1 = 進度流水號_tb.Text : 圖片庫 = 圖片庫_tb.Text : SQL_連線字串_圖片資料庫() : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd")
  66. PA3 = 圖片清單_dgv("Item", DGVX).Value.ToString : SQL_工程日報圖片讀取()
  67. While dr.Read() = True
  68. Dim unused As Byte() = New Byte(-1) {}
  69. Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte())
  70. Dim oStream As New MemoryStream(bytes)
  71. 圖片_pb.Image = Bitmap.FromStream(oStream)
  72. End While
  73. conn.Close() : 圖片_pb.SizeMode = 4
  74. End Sub
  75. Private Sub Set_工程日報圖片1()
  76. Dim ds6 As New DataSet
  77. 圖片清單1_dgv.DataSource = Nothing : ds6.Clear()
  78. 圖片清單1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  79. 圖片清單1_dgv.ColumnHeadersHeight = 25 : 圖片清單1_dgv.AllowUserToAddRows = False : 圖片清單1_dgv.RowTemplate.Height = 35
  80. If 圖片庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 圖片庫_tb.Text : End If
  81. SQL_連線字串_圖片資料庫() : SQL_工程日報圖片清單()
  82. da.Fill(ds6) : 圖片清單1_dgv.DataSource = ds6.Tables(0) : conn.Close()
  83. 圖片清單1_dgv.Columns(0).ReadOnly = True
  84. If 圖片清單1_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取1() : Else : 圖片1_pb.Image = Nothing : End If
  85. Dim mycol As DataGridViewImageColumn = 圖片清單1_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom
  86. End Sub
  87. Private Sub 圖片清單讀取1()
  88. 圖片1_pb.Image = Nothing
  89. If 流水1_tb.Text = "" Then : PA1 = 進度流水號_tb.Text : Else : PA1 = 流水1_tb.Text : End If
  90. 圖片庫 = 圖片庫_tb.Text : SQL_連線字串_圖片資料庫() : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd")
  91. PA3 = 圖片清單1_dgv("Item", DGVX).Value.ToString : SQL_工程日報圖片讀取()
  92. While dr.Read() = True
  93. Dim unused As Byte() = New Byte(-1) {}
  94. Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte())
  95. Dim oStream As New MemoryStream(bytes)
  96. 圖片1_pb.Image = Bitmap.FromStream(oStream)
  97. End While
  98. conn.Close() : 圖片1_pb.SizeMode = 4
  99. End Sub
  100. Private Sub Set_工程日報圖片2()
  101. Dim ds6 As New DataSet
  102. 圖片清單2_dgv.DataSource = Nothing : ds6.Clear()
  103. 圖片清單2_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  104. 圖片清單2_dgv.ColumnHeadersHeight = 25 : 圖片清單2_dgv.AllowUserToAddRows = False : 圖片清單2_dgv.RowTemplate.Height = 35
  105. If 圖片庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 圖片庫_tb.Text : End If
  106. SQL_連線字串_圖片資料庫() : SQL_工程日報圖片清單()
  107. da.Fill(ds6) : 圖片清單2_dgv.DataSource = ds6.Tables(0) : conn.Close()
  108. 圖片清單2_dgv.Columns(0).ReadOnly = True
  109. If 圖片清單2_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取2() : Else : 圖片2_pb.Image = Nothing : End If
  110. Dim mycol As DataGridViewImageColumn = 圖片清單2_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom
  111. End Sub
  112. Private Sub 圖片清單讀取2()
  113. 圖片2_pb.Image = Nothing
  114. If 流水2_tb.Text = "" Then : PA1 = 進度流水號_tb.Text : Else : PA1 = 流水2_tb.Text : End If
  115. 圖片庫 = 圖片庫_tb.Text : SQL_連線字串_圖片資料庫() : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd")
  116. PA3 = 圖片清單2_dgv("Item", DGVX).Value.ToString : SQL_工程日報圖片讀取()
  117. While dr.Read() = True
  118. Dim unused As Byte() = New Byte(-1) {}
  119. Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte())
  120. Dim oStream As New MemoryStream(bytes)
  121. 圖片2_pb.Image = Bitmap.FromStream(oStream)
  122. End While
  123. conn.Close() : 圖片2_pb.SizeMode = 4
  124. End Sub
  125. Private Sub Set_工程日報圖片3()
  126. Dim ds6 As New DataSet
  127. 圖片清單3_dgv.DataSource = Nothing : ds6.Clear()
  128. 圖片清單3_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  129. 圖片清單3_dgv.ColumnHeadersHeight = 25 : 圖片清單3_dgv.AllowUserToAddRows = False : 圖片清單3_dgv.RowTemplate.Height = 35
  130. If 圖片庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 圖片庫_tb.Text : End If
  131. SQL_連線字串_圖片資料庫() : SQL_工程日報圖片清單()
  132. da.Fill(ds6) : 圖片清單3_dgv.DataSource = ds6.Tables(0) : conn.Close()
  133. 圖片清單3_dgv.Columns(0).ReadOnly = True
  134. If 圖片清單3_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取3() : Else : 圖片3_pb.Image = Nothing : End If
  135. Dim mycol As DataGridViewImageColumn = 圖片清單3_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom
  136. End Sub
  137. Private Sub 圖片清單讀取3()
  138. 圖片3_pb.Image = Nothing
  139. If 流水3_tb.Text = "" Then : PA1 = 進度流水號_tb.Text : Else : PA1 = 流水3_tb.Text : End If
  140. 圖片庫 = 圖片庫_tb.Text : SQL_連線字串_圖片資料庫() : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd")
  141. PA3 = 圖片清單3_dgv("Item", DGVX).Value.ToString : SQL_工程日報圖片讀取()
  142. While dr.Read() = True
  143. Dim unused As Byte() = New Byte(-1) {}
  144. Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte())
  145. Dim oStream As New MemoryStream(bytes)
  146. 圖片3_pb.Image = Bitmap.FromStream(oStream)
  147. End While
  148. conn.Close() : 圖片3_pb.SizeMode = 4
  149. End Sub
  150. Private Sub Set_工程日報圖片4()
  151. Dim ds6 As New DataSet
  152. 圖片清單4_dgv.DataSource = Nothing : ds6.Clear()
  153. 圖片清單4_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  154. 圖片清單4_dgv.ColumnHeadersHeight = 25 : 圖片清單4_dgv.AllowUserToAddRows = False : 圖片清單4_dgv.RowTemplate.Height = 35
  155. If 圖片庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 圖片庫_tb.Text : End If
  156. SQL_連線字串_圖片資料庫() : SQL_工程日報圖片清單()
  157. da.Fill(ds6) : 圖片清單4_dgv.DataSource = ds6.Tables(0) : conn.Close()
  158. 圖片清單4_dgv.Columns(0).ReadOnly = True
  159. If 圖片清單4_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取4() : Else : 圖片4_pb.Image = Nothing : End If
  160. Dim mycol As DataGridViewImageColumn = 圖片清單4_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom
  161. End Sub
  162. Private Sub 圖片清單讀取4()
  163. 圖片4_pb.Image = Nothing
  164. If 流水4_tb.Text = "" Then : PA1 = 進度流水號_tb.Text : Else : PA1 = 流水4_tb.Text : End If
  165. 圖片庫 = 圖片庫_tb.Text : SQL_連線字串_圖片資料庫() : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd")
  166. PA3 = 圖片清單4_dgv("Item", DGVX).Value.ToString : SQL_工程日報圖片讀取()
  167. While dr.Read() = True
  168. Dim unused As Byte() = New Byte(-1) {}
  169. Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte())
  170. Dim oStream As New MemoryStream(bytes)
  171. 圖片4_pb.Image = Bitmap.FromStream(oStream)
  172. End While
  173. conn.Close() : 圖片4_pb.SizeMode = 4
  174. End Sub
  175. Private Sub 執行主管下拉清單讀取()
  176. SQL執行主管下拉() : 工程執行主管_cb.Items.Clear() : 工程執行主管_cb.Items.Add("") : While (dr.Read()) : 工程執行主管_cb.Items.Add(dr("姓名")) : End While : conn.Close()
  177. End Sub
  178. Private Sub 上午_cb_下拉表單資料載入()
  179. SQL_上午控制_下拉清單() : 上午_cb.Items.Clear() : 上午_cb.Items.Add("") : While (dr.Read()) : 上午_cb.Items.Add(dr("上下午")) : End While : conn.Close()
  180. End Sub
  181. Private Sub 下午_cb_下拉表單資料載入()
  182. SQL_下午控制_下拉清單() : 下午_cb.Items.Clear() : 下午_cb.Items.Add("") : While (dr.Read()) : 下午_cb.Items.Add(dr("上下午")) : End While : conn.Close()
  183. End Sub
  184. Private Sub 天氣_cb_下拉表單資料載入()
  185. SQL_天氣控制_下拉清單() : 天氣_cb.Items.Clear() : 天氣1_cb.Items.Clear() : 天氣_cb.Items.Add("") : 天氣1_cb.Items.Add("")
  186. While (dr.Read()) : 天氣_cb.Items.Add(dr("天氣")) : 天氣1_cb.Items.Add(dr("天氣")) : End While : conn.Close()
  187. 天氣_cb.SelectedIndex = 0 : 天氣1_cb.SelectedIndex = 0
  188. End Sub
  189. Private Sub 甲方條件下拉清單讀取()
  190. SQL合約條件讀取() : 合約編號1_cb.Items.Clear() : 合約編號1_cb.Items.Add("") : While (dr.Read()) : 合約編號1_cb.Items.Add(dr("約號甲方")) : End While : conn.Close()
  191. End Sub
  192. Private Sub Set_語言()
  193. 語言_dgv.DataSource = Nothing : ds8.Clear()
  194. 語言_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  195. 語言_dgv.ColumnHeadersHeight = 25
  196. 語言_dgv.AllowUserToAddRows = False
  197. SQL_系統語言導入()
  198. da.Fill(ds8) : 語言_dgv.DataSource = ds8.Tables(0) : conn.Close()
  199. End Sub
  200. Private Sub 語言轉換讀取()
  201. Set_語言() : conn.Close()
  202. For i As Integer = 0 To 語言_dgv.Rows.Count - 1
  203. If 語言_dgv("控件", i).Value.ToString = "工程日報表" Then : Me.Text = 語言_dgv("內容", i).Value.ToString : End If
  204. If 語言_dgv("控件", i).Value.ToString = "工程執行主管_lb" Then : 工程執行主管_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  205. If 語言_dgv("控件", i).Value.ToString = "甲方_lb" Then : 甲方_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  206. If 語言_dgv("控件", i).Value.ToString = "上一天_bt" Then : 上一天_bt.Text = 語言_dgv("內容", i).Value.ToString : End If
  207. If 語言_dgv("控件", i).Value.ToString = "下一天_bt" Then : 下一天_bt.Text = 語言_dgv("內容", i).Value.ToString : End If
  208. If 語言_dgv("控件", i).Value.ToString = "今天_bt" Then : 今天_bt.Text = 語言_dgv("內容", i).Value.ToString : End If
  209. If 語言_dgv("控件", i).Value.ToString = "上午_lb" Then : 上午_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  210. If 語言_dgv("控件", i).Value.ToString = "下午_lb" Then : 下午_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  211. If 語言_dgv("控件", i).Value.ToString = "天氣_lb" Then : 天氣_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  212. If 語言_dgv("控件", i).Value.ToString = "天氣_lb" Then : 天氣1_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  213. If 語言_dgv("控件", i).Value.ToString = "已建檔_ch" Then : 已建檔_ch.Text = 語言_dgv("內容", i).Value.ToString : End If
  214. If 語言_dgv("控件", i).Value.ToString = "報表日期_lb" Then : 報表日期_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  215. If 語言_dgv("控件", i).Value.ToString = "日報表編輯_lb" Then : 日報表編輯_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  216. If 語言_dgv("控件", i).Value.ToString = "電腦_lb" Then : 電腦_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  217. If 語言_dgv("控件", i).Value.ToString = "伺服器FTP文件夾_lb" Then : 伺服器FTP文件夾_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  218. If 語言_dgv("控件", i).Value.ToString = "dgv_工地" Then : 表頭(75) = 語言_dgv("內容", i).Value.ToString : End If
  219. If 語言_dgv("控件", i).Value.ToString = "dgv_項次" Then : 表頭(11) = 語言_dgv("內容", i).Value.ToString : End If
  220. If 語言_dgv("控件", i).Value.ToString = "dgv_項目" Then : 表頭(155) = 語言_dgv("內容", i).Value.ToString : End If
  221. If 語言_dgv("控件", i).Value.ToString = "dgv_建檔" Then : 表頭(28) = 語言_dgv("內容", i).Value.ToString : End If
  222. If 語言_dgv("控件", i).Value.ToString = "對話框1" Then : 對話框(0) = 語言_dgv("內容", i).Value.ToString : End If
  223. If 語言_dgv("控件", i).Value.ToString = "對話框2" Then : 對話框(1) = 語言_dgv("內容", i).Value.ToString : End If
  224. If 語言_dgv("控件", i).Value.ToString = "對話框3" Then : 對話框(2) = 語言_dgv("內容", i).Value.ToString : End If
  225. If 語言_dgv("控件", i).Value.ToString = "對話框4" Then : 對話框(3) = 語言_dgv("內容", i).Value.ToString : End If
  226. If 語言_dgv("控件", i).Value.ToString = "對話框5" Then : 對話框(4) = 語言_dgv("內容", i).Value.ToString : End If
  227. If 語言_dgv("控件", i).Value.ToString = "對話框6" Then : 對話框(5) = 語言_dgv("內容", i).Value.ToString : End If
  228. If 語言_dgv("控件", i).Value.ToString = "對話框7" Then : 對話框(6) = 語言_dgv("內容", i).Value.ToString : End If
  229. If 語言_dgv("控件", i).Value.ToString = "對話框8" Then : 對話框(7) = 語言_dgv("內容", i).Value.ToString : End If
  230. If 語言_dgv("控件", i).Value.ToString = "對話框9" Then : 對話框(8) = 語言_dgv("內容", i).Value.ToString : End If
  231. If 語言_dgv("控件", i).Value.ToString = "對話框10" Then : 對話框(9) = 語言_dgv("內容", i).Value.ToString : End If
  232. If 語言_dgv("控件", i).Value.ToString = "對話框11" Then : 對話框(10) = 語言_dgv("內容", i).Value.ToString : End If
  233. If 語言_dgv("控件", i).Value.ToString = "對話框12" Then : 對話框(11) = 語言_dgv("內容", i).Value.ToString : End If
  234. If 語言_dgv("控件", i).Value.ToString = "對話框13" Then : 對話框(12) = 語言_dgv("內容", i).Value.ToString : End If
  235. If 語言_dgv("控件", i).Value.ToString = "對話框14" Then : 對話框(13) = 語言_dgv("內容", i).Value.ToString : End If
  236. Next
  237. End Sub
  238. Private Sub 工程日報表_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  239. Me.MdiParent = HX_PGS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  240. H(406) = True : 介面 = "H406" : 語言轉換讀取()
  241. 視窗2_pl.Visible = False : 視窗2_pl.BringToFront()
  242. 清單_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
  243. End Sub
  244. Private Sub 工程日報表_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown
  245. SQL_圖片資料庫查詢() : If dr.Read() Then : 圖片資料庫指定 = dr("工程圖片資料庫") : Else : MsgBox(對話框(0)) : Me.Close() : End If
  246. 甲方條件下拉清單讀取() : 天氣_cb_下拉表單資料載入() : 上午_cb_下拉表單資料載入() : 下午_cb_下拉表單資料載入() : 執行主管下拉清單讀取()
  247. 工程執行主管_cb.Text = gUserName : Set_工程清單() : Set_工程圖片資料庫狀態()
  248. 本機_wb.Navigate(My.Computer.FileSystem.SpecialDirectories.Desktop)
  249. Target1 = Target & AA(2) & "/"
  250. 伺服器_wb.Url = New Uri(Target1)
  251. MyModule1.清單字體大小調整()
  252. 清單_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value)
  253. End Sub
  254. Private Sub 銷售單申請_SizeChanged(sender As Object, e As EventArgs) Handles MyBase.SizeChanged
  255. MyModule1.清單字體大小調整()
  256. 清單_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value)
  257. End Sub
  258. Private Sub 工程日報表_Closed(sender As Object, e As EventArgs) Handles MyBase.Closed
  259. H(201) = False : MyModule1.虛擬桌面開啟()
  260. End Sub
  261. Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove
  262. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  263. End Sub
  264. Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress
  265. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  266. End Sub
  267. Private Sub 語轉扭_bt_Click(sender As Object, e As EventArgs) Handles 語轉扭_bt.Click
  268. 介面 = "H406" : 語言轉換讀取()
  269. If 系統語言 = "繁體中文" Then : 目前頁數_lb.Text = "第 " & 目前頁數_nud.Value & " 頁" : Else : 目前頁數_lb.Text = "Page " & 目前頁數_nud.Value : End If
  270. 甲方條件下拉清單讀取() : 天氣_cb_下拉表單資料載入() : 上午_cb_下拉表單資料載入() : 下午_cb_下拉表單資料載入() : 執行主管下拉清單讀取()
  271. 工程執行主管_cb.Text = gUserName : Set_工程清單()
  272. End Sub
  273. Private Sub 清單_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 清單_dgv.CellClick
  274. If e.RowIndex = -1 Then : Else
  275. 選擇項1_tb.Text = 清單_dgv("流水號", e.RowIndex).Value.ToString : 項目_tb.Text = 清單_dgv(表頭(155), e.RowIndex).Value.ToString
  276. If 已建檔_ch.Checked = False Then : Else
  277. If 視窗2_pl.Visible = False Then : 視窗2_pl.Location = New System.Drawing.Point(501, 79) : 視窗2_pl.Visible = True : End If
  278. 編號_lb.Text = 清單_dgv(表頭(75), e.RowIndex).Value.ToString : 圖片庫_tb.Text = 清單_dgv("圖片庫", e.RowIndex).Value.ToString
  279. 項目_lb.Text = 清單_dgv(表頭(11), e.RowIndex).Value.ToString & " - " & 清單_dgv(表頭(155), e.RowIndex).Value.ToString
  280. 進度流水號_tb.Text = 清單_dgv("流水號", e.RowIndex).Value.ToString : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd")
  281. PA1 = 進度流水號_tb.Text : Set_工程日報圖片()
  282. 工作內容_tb.Text = 清單_dgv("工作說明", e.RowIndex).Value.ToString
  283. If 工作內容_tb.Text = "" Then
  284. PA18 = 進度流水號_tb.Text : SQL_工程進度明細表_工作說明單獨讀取()
  285. If dr.Read Then : 工作內容_tb.Text = dr("工作說明").ToString : End If
  286. End If
  287. End If
  288. End If
  289. End Sub
  290. Private Sub 清單_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 清單_dgv.RowPostPaint
  291. Dim linePen As New Pen(Color.Blue, 2)
  292. If e.RowIndex = 清單_dgv.Rows.Count - 1 Then : Exit Sub : Else
  293. If 清單_dgv(表頭(75), e.RowIndex).Value.ToString <> 清單_dgv(表頭(75), e.RowIndex + 1).Value.ToString Then
  294. Dim startX As Integer = IIf(清單_dgv.RowHeadersVisible, 清單_dgv.RowHeadersWidth, 0)
  295. Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  296. Dim endX As Integer = startX + 清單_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 清單_dgv.HorizontalScrollingOffset
  297. e.Graphics.DrawLine(linePen, startX, startY, endX, startY)
  298. Exit Sub
  299. End If
  300. End If
  301. End Sub
  302. Private Sub 圖片清單_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單_dgv.CellClick
  303. If e.RowIndex = -1 Then : Else : DGVX = e.RowIndex : 編碼2_tb.Text = 圖片清單_dgv(("Item"), e.RowIndex).Value.ToString : 圖片清單讀取() : End If
  304. End Sub
  305. Private Sub 圖片清單1_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單1_dgv.CellClick
  306. If e.RowIndex = -1 Then : Else : DGVX = e.RowIndex : 圖片清單讀取1() : End If
  307. End Sub
  308. Private Sub 圖片清單2_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單2_dgv.CellClick
  309. If e.RowIndex = -1 Then : Else : DGVX = e.RowIndex : 圖片清單讀取2() : End If
  310. End Sub
  311. Private Sub 圖片清單3_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單3_dgv.CellClick
  312. If e.RowIndex = -1 Then : Else : DGVX = e.RowIndex : 圖片清單讀取3() : End If
  313. End Sub
  314. Private Sub 圖片清單4_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單4_dgv.CellClick
  315. If e.RowIndex = -1 Then : Else : DGVX = e.RowIndex : 圖片清單讀取4() : End If
  316. End Sub
  317. Private Sub 天氣_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 天氣_cb.SelectedIndexChanged
  318. PA6 = 天氣_cb.Text : SQL_天氣_資料讀取() : If dr.Read() Then : 編碼_tb.Text = dr("編碼") : End If : conn.Close()
  319. End Sub
  320. Private Sub 天氣1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 天氣1_cb.SelectedIndexChanged
  321. PA6 = 天氣1_cb.Text : SQL_天氣_資料讀取() : If dr.Read() Then : 編碼1_tb.Text = dr("編碼") : End If : conn.Close()
  322. End Sub
  323. Private Sub 工程執行主管_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 工程執行主管_cb.SelectedIndexChanged
  324. If 登入人級別 <= 3 Then : Else
  325. If 工程執行主管_cb.Text = gUserName Then
  326. 新建_bt.Enabled = True : 新增項目_bt.Enabled = True : 翻譯1_bt.Enabled = True : 存檔_bt.Enabled = True : 刪除專案_bt.Enabled = True
  327. 翻譯_bt.Enabled = True : 完工_bt.Enabled = True : 刪除圖片_bt.Enabled = True : 讀取資料夾路徑_bt.Enabled = True : 圖檔入系統_bt.Enabled = True
  328. Else
  329. 新建_bt.Enabled = False : 新增項目_bt.Enabled = False : 翻譯1_bt.Enabled = False : 存檔_bt.Enabled = False : 刪除專案_bt.Enabled = False
  330. 翻譯_bt.Enabled = False : 完工_bt.Enabled = False : 刪除圖片_bt.Enabled = False : 讀取資料夾路徑_bt.Enabled = False : 圖檔入系統_bt.Enabled = False
  331. End If
  332. End If
  333. Set_工程清單()
  334. End Sub
  335. Private Sub 上一天_bt_Click(sender As Object, e As EventArgs) Handles 上一天_bt.Click
  336. 報工日期_dtp.Value = 報工日期_dtp.Value.AddDays(-1) : Set_工程清單() : CanceL2_bt.PerformClick()
  337. End Sub
  338. Private Sub 今天_bt_Click(sender As Object, e As EventArgs) Handles 今天_bt.Click
  339. 報工日期_dtp.Value = Today() : Set_工程清單() : CanceL2_bt.PerformClick()
  340. End Sub
  341. Private Sub 下一天_bt_Click(sender As Object, e As EventArgs) Handles 下一天_bt.Click
  342. 報工日期_dtp.Value = 報工日期_dtp.Value.AddDays(1) : Set_工程清單() : CanceL2_bt.PerformClick()
  343. End Sub
  344. Private Sub 完工_bt_Click(sender As Object, e As EventArgs) Handles 完工_bt.Click
  345. If 進度流水號_tb.Text = "" Then : Else
  346. PA1 = 進度流水號_tb.Text : If Cancel_ch.Checked = False Then : PA19 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") : Else : PA19 = "2100/01/01" : End If
  347. SQL_工程進度項目結案() : CanceL2_bt.PerformClick() : MsgBox(對話框(4)) : Cancel_ch.Checked = False
  348. End If
  349. End Sub
  350. Private Sub 新建_bt_Click(sender As Object, e As EventArgs) Handles 新建_bt.Click
  351. If 工程執行主管_cb.Text = "" Then : MsgBox(對話框(1)) : Else
  352. If 上午_cb.Text = "" Or 下午_cb.Text = "" Or 天氣_cb.Text = "" Or 天氣1_cb.Text = "" Then : MsgBox(對話框(2)) : Else
  353. If 已建檔_ch.Checked = True Then : MsgBox(對話框(3)) : Else
  354. SQL_工程日報控制表流水號查詢()
  355. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("流水號").ToString, 8)) : Else : EDR = 0 : End If : conn.Close() : EDR += 1
  356. If EDR < 10 Then : ESTR = "RO0000000" & EDR
  357. ElseIf EDR > 9 And EDR < 100 Then : ESTR = "RO000000" & EDR
  358. ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "RO00000" & EDR
  359. ElseIf EDR > 9999 And EDR < 10000 Then : ESTR = "RO0000" & EDR
  360. ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "RO000" & EDR
  361. ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "RO00" & EDR
  362. ElseIf EDR > 9999999 And EDR < 10000000 Then : ESTR = "RO0" & EDR
  363. ElseIf EDR <= 10000000 Then : ESTR = "RO" & EDR : End If : PA1 = ESTR
  364. PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") : PA3 = 工程執行主管_cb.Text
  365. PA4 = 上午_cb.Text : PA5 = 下午_cb.Text : PA6 = 編碼_tb.Text : PA7 = 編碼1_tb.Text
  366. SQL_工程日報控制表新增() : 已建檔_ch.Checked = True : MsgBox(對話框(4))
  367. End If
  368. End If
  369. End If
  370. End Sub
  371. Private Sub 新增項目_bt_Click(sender As Object, e As EventArgs) Handles 新增項目_bt.Click
  372. If 工程執行主管_cb.Text = "" Then : MsgBox(對話框(1)) : Else
  373. If 合約編號1_cb.Text = "" Then : MsgBox(對話框(5)) : Else
  374. PA25 = InputBox(對話框(6))
  375. SQL_工程進度項目流水號查詢()
  376. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("流水號").ToString, 8)) : Else : EDR = 0 : End If : conn.Close() : EDR += 1
  377. If EDR < 10 Then : ESTR = "RP0000000" & EDR
  378. ElseIf EDR > 9 And EDR < 100 Then : ESTR = "RP000000" & EDR
  379. ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "RP00000" & EDR
  380. ElseIf EDR > 9999 And EDR < 10000 Then : ESTR = "RP0000" & EDR
  381. ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "RP000" & EDR
  382. ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "RP00" & EDR
  383. ElseIf EDR > 9999999 And EDR < 10000000 Then : ESTR = "RP0" & EDR
  384. ElseIf EDR <= 10000000 Then : ESTR = "RP" & EDR : End If : PA1 = ESTR
  385. PA1 = ESTR : PA2 = 工程執行主管_cb.Text : PA3 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd")
  386. PA4 = 合約編號1_cb.Text : SQL_工程進度項目新增() : Set_工程清單()
  387. End If
  388. End If
  389. End Sub
  390. Private Sub CanceL2_bt_Click(sender As Object, e As EventArgs) Handles CanceL2_bt.Click
  391. If 視窗2_pl.Visible = False Then : 視窗2_pl.Visible = True : 視窗2_pl.BringToFront() : Else
  392. 視窗2_pl.Visible = False : End If
  393. End Sub
  394. Private Sub 讀取資料夾路徑_bt_Click(sender As Object, e As EventArgs) Handles 讀取資料夾路徑_bt.Click
  395. If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
  396. 本機_wb.Navigate(FolderBrowserDialog1.SelectedPath)
  397. End If
  398. End Sub
  399. Private Sub 圖檔入系統_bt_Click(sender As Object, e As EventArgs) Handles 圖檔入系統_bt.Click
  400. Dim 新增資料 As Boolean
  401. PA10 = 進度流水號_tb.Text : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") : PA3 = 工作內容_tb.Text : PA5 = 圖片資料庫指定 : SQL_工程進度明細表查詢()
  402. If dr.Read Then : SQL_工程進度明細表修改() : 新增資料 = False : Else : SQL_工程進度明細表新增() : 新增資料 = True : End If
  403. If 檔案名稱_tb.Text = "" Or 副檔名_tb.Text = "" Then : Else
  404. Dim ftpclient As System.Net.FtpWebRequest = System.Net.FtpWebRequest.Create(New System.Uri(Target1 & 檔案名稱_tb.Text & 副檔名_tb.Text))
  405. ftpclient.UseBinary = True
  406. ftpclient.Credentials = New System.Net.NetworkCredential(FTP帳號, FTP密碼)
  407. ftpclient.Method = System.Net.WebRequestMethods.Ftp.ListDirectoryDetails
  408. ftpclient.KeepAlive = False
  409. Dim ftpresponse As System.Net.FtpWebResponse
  410. Try
  411. ftpresponse = CType(ftpclient.GetResponse, System.Net.FtpWebResponse)
  412. Console.WriteLine(ftpresponse.StatusCode.ToString + " " + ftpresponse.StatusDescription)
  413. Dim content(1024) As Byte : Dim index_a As Integer = 0
  414. index_a = ftpresponse.GetResponseStream.Read(content, 0, content.Length)
  415. Dim contentstring As String = String.Empty
  416. While index_a > 0
  417. index_a = ftpresponse.GetResponseStream.Read(content, 0, content.Length) : contentstring += System.Text.Encoding.UTF8.GetString(content)
  418. End While
  419. ftpresponse.Close()
  420. If contentstring.LastIndexOf(檔案名稱_tb.Text & 副檔名_tb.Text) > 0 Then
  421. Dim 驗證 As String = "" : Dim 取變數 As String : 取變數 = Strings.StrReverse(檔案名稱_tb.Text & 副檔名_tb.Text)
  422. For i As Integer = 1 To 10
  423. If i = 1 Then : 驗證 = Strings.Left(取變數, i) : Else
  424. If Strings.Mid(取變數, i, 1) = "." Then : 驗證 = Strings.StrReverse(驗證) : Exit For : Else : 驗證 &= Strings.Mid(取變數, i, 1) : End If
  425. End If
  426. Next
  427. If 驗證 = "PNG" Or 驗證 = "png" Or 驗證 = "GIF" Or 驗證 = "gif" Or 驗證 = "BMP" Or 驗證 = "bmp" Or 驗證 = "JPG" Or 驗證 = "jpg" Or 驗證 = "JPEG" Or 驗證 = "jpeg" Then
  428. PA1 = 進度流水號_tb.Text : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd")
  429. 圖片庫 = 圖片資料庫指定
  430. SQL_連線字串_圖片資料庫()
  431. Dim 文件號 As String : Dim 文件編號 As Integer : SQL_工程日報圖片最後一筆編號查詢()
  432. If dr.Read() Then : 文件編號 = Double.Parse(Strings.Right(dr("圖片號").ToString, 2)) : Else : 文件編號 = 0 : End If
  433. conn.Close() : 文件編號 += 1
  434. If 文件編號 < 10 Then : 文件號 = "IM" & "0" & 文件編號
  435. ElseIf 文件編號 > 9 Then : 文件號 = "IM" & 文件編號 : End If
  436. PA3 = 文件號 : SQL_工程日報圖片入系統() : FTP方式刪除檔案() : MsgBox(對話框(7)) : Set_工程日報圖片()
  437. Else
  438. FTP方式刪除檔案() : MsgBox(對話框(8))
  439. End If
  440. Else : MsgBox(對話框(9)) : End If
  441. Catch ex As Exception
  442. MsgBox(ex.Message)
  443. End Try
  444. End If : Set_工程清單()
  445. End Sub
  446. Private Sub FTP方式刪除檔案()
  447. '---FTP方式刪除檔案----------------------------------------------------------------------------------------------------------------------------------------------------------------------
  448. Dim frq As FtpWebRequest, frp As FtpWebResponse, fcr As NetworkCredential
  449. frq = CType(WebRequest.Create(New Uri(Target1 & 檔案名稱_tb.Text & 副檔名_tb.Text)), FtpWebRequest)
  450. fcr = New NetworkCredential(FTP帳號, FTP密碼)
  451. frq.Credentials = fcr
  452. frq.Method = WebRequestMethods.Ftp.DeleteFile
  453. frq.UseBinary = True
  454. frp = CType(frq.GetResponse, FtpWebResponse)
  455. frp.Close()
  456. 伺服器_wb.Refresh()
  457. '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  458. 檔案名稱_tb.Text = "" : 副檔名_tb.Text = ""
  459. End Sub
  460. Private Sub 上一頁_bt_Click(sender As Object, e As EventArgs) Handles 上一頁_bt.Click
  461. If 頁數 = 0 Then : Else
  462. If 目前頁數_nud.Value = 1 Then : Else : 目前頁數_nud.Value -= 1 : End If
  463. End If
  464. End Sub
  465. Private Sub 下一頁_bt_Click(sender As Object, e As EventArgs) Handles 下一頁_bt.Click
  466. If 頁數 = 0 Then : Else
  467. If 目前頁數_nud.Value = 頁數 Then : Else : 目前頁數_nud.Value += 1 : End If
  468. End If
  469. End Sub
  470. Private Sub 目前頁數_nud_ValueChanged(sender As Object, e As EventArgs) Handles 目前頁數_nud.ValueChanged
  471. If 系統語言 = "繁體中文" Then : 目前頁數_lb.Text = "第 " & 目前頁數_nud.Value & " 頁" : Else : 目前頁數_lb.Text = "Page " & 目前頁數_nud.Value : End If : 分頁計算()
  472. End Sub
  473. Private Sub 分頁計算()
  474. Dim 起始, 結束, 起算 As Integer : Dim 無資料 As String = "無資料 / Tidak Ada Data!!"
  475. 結束 = 目前頁數_nud.Value * 4 : 起始 = 結束 - 3
  476. 項目1_lb.Text = 無資料 : 說明1_lb.Text = 無資料 : 編號1_lb.Text = 無資料 : 項目2_lb.Text = 無資料 : 說明2_lb.Text = 無資料 : 編號2_lb.Text = 無資料
  477. 項目3_lb.Text = 無資料 : 說明3_lb.Text = 無資料 : 編號3_lb.Text = 無資料 : 項目4_lb.Text = 無資料 : 說明4_lb.Text = 無資料 : 編號4_lb.Text = 無資料
  478. 流水1_tb.Text = "" : 流水2_tb.Text = "" : 流水3_tb.Text = "" : 流水4_tb.Text = ""
  479. 圖片清單1_dgv.DataSource = Nothing : 圖片清單2_dgv.DataSource = Nothing : 圖片清單3_dgv.DataSource = Nothing : 圖片清單4_dgv.DataSource = Nothing
  480. 圖片1_pb.Image = Nothing : 圖片2_pb.Image = Nothing : 圖片3_pb.Image = Nothing : 圖片4_pb.Image = Nothing
  481. For I As Integer = 0 To 清單_dgv.Rows.Count - 1
  482. If IsDBNull(清單_dgv(表頭(28), I).Value) = True Then : Else
  483. If 清單_dgv(表頭(28), I).Value = True Then : 起算 += 1 : End If
  484. If 起算 = 起始 Then
  485. 編號1_lb.Text = 清單_dgv(表頭(75), I).Value.ToString : 說明1_lb.Text = 清單_dgv("工作說明", I).Value.ToString
  486. 項目1_lb.Text = 清單_dgv(表頭(11), I).Value.ToString & " - " & 清單_dgv(表頭(155), I).Value.ToString
  487. 圖片庫_tb.Text = 清單_dgv("圖片庫", I).Value.ToString : 進度流水號_tb.Text = 清單_dgv("流水號", I).Value.ToString
  488. PA1 = 清單_dgv("流水號", I).Value.ToString : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd")
  489. 流水1_tb.Text = 清單_dgv("流水號", I).Value.ToString : Set_工程日報圖片1()
  490. End If
  491. If 起算 = 起始 + 1 Then
  492. 編號2_lb.Text = 清單_dgv(表頭(75), I).Value.ToString : 說明2_lb.Text = 清單_dgv("工作說明", I).Value.ToString
  493. 項目2_lb.Text = 清單_dgv(表頭(11), I).Value.ToString & " - " & 清單_dgv(表頭(155), I).Value.ToString
  494. 圖片庫_tb.Text = 清單_dgv("圖片庫", I).Value.ToString : 進度流水號_tb.Text = 清單_dgv("流水號", I).Value.ToString
  495. PA1 = 清單_dgv("流水號", I).Value.ToString : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd")
  496. 流水2_tb.Text = 清單_dgv("流水號", I).Value.ToString : Set_工程日報圖片2()
  497. End If
  498. If 起算 = 起始 + 2 Then
  499. 編號3_lb.Text = 清單_dgv(表頭(75), I).Value.ToString : 說明3_lb.Text = 清單_dgv("工作說明", I).Value.ToString
  500. 項目3_lb.Text = 清單_dgv(表頭(11), I).Value.ToString & " - " & 清單_dgv(表頭(155), I).Value.ToString
  501. 圖片庫_tb.Text = 清單_dgv("圖片庫", I).Value.ToString : 進度流水號_tb.Text = 清單_dgv("流水號", I).Value.ToString
  502. PA1 = 清單_dgv("流水號", I).Value.ToString : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd")
  503. 流水3_tb.Text = 清單_dgv("流水號", I).Value.ToString : Set_工程日報圖片3()
  504. End If
  505. If 起算 = 起始 + 3 Then
  506. 編號4_lb.Text = 清單_dgv(表頭(75), I).Value.ToString : 說明4_lb.Text = 清單_dgv("工作說明", I).Value.ToString
  507. 項目4_lb.Text = 清單_dgv(表頭(11), I).Value.ToString & " - " & 清單_dgv(表頭(155), I).Value.ToString
  508. 圖片庫_tb.Text = 清單_dgv("圖片庫", I).Value.ToString : 進度流水號_tb.Text = 清單_dgv("流水號", I).Value.ToString
  509. PA1 = 清單_dgv("流水號", I).Value.ToString : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd")
  510. 流水4_tb.Text = 清單_dgv("流水號", I).Value.ToString : Set_工程日報圖片4()
  511. End If
  512. If 起算 > 起始 + 3 Then : Exit For : End If
  513. End If
  514. Next
  515. End Sub
  516. Private Sub 檔案名稱_tb_DragEnter(sender As Object, e As DragEventArgs) Handles 檔案名稱_tb.DragEnter
  517. If e.Data.GetDataPresent(DataFormats.FileDrop) Then : Dim files As String()
  518. Try
  519. files = CType(e.Data.GetData(DataFormats.FileDrop), String()) : 檔案名稱_tb.Text = files(files.Length - 1)
  520. Catch ex As Exception
  521. MessageBox.Show(ex.Message)
  522. Return
  523. End Try
  524. End If
  525. '-------確認檔案是圖片---------------------------------------------------------------------------------------------------------------
  526. Dim 驗證 As String = "" : Dim 取變數 As String : 取變數 = Strings.StrReverse(檔案名稱_tb.Text)
  527. For i As Integer = 1 To 10
  528. If i = 1 Then : 驗證 = Strings.Left(取變數, i) : Else
  529. If Strings.Mid(取變數, i, 1) = "." Then : 驗證 = Strings.StrReverse(驗證) : Exit For : Else : 驗證 &= Strings.Mid(取變數, i, 1) : End If
  530. End If
  531. Next
  532. If 驗證 = "PNG" Or 驗證 = "png" Or 驗證 = "GIF" Or 驗證 = "gif" Or 驗證 = "BMP" Or 驗證 = "bmp" Or 驗證 = "JPG" Or 驗證 = "jpg" Or 驗證 = "JPEG" Or 驗證 = "jpeg" Then
  533. 圖片_pb.Image = Image.FromFile(檔案名稱_tb.Text)
  534. End If
  535. Dim STR2 As Integer = 0 : 檔案路徑_tb.Text = 檔案名稱_tb.Text
  536. If 檔案名稱_tb.Text = "" Then : Else
  537. For i As Integer = 0 To 9999 : Dim STR1 As Integer = Strings.Len(檔案路徑_tb.Text)
  538. If Strings.Right((檔案路徑_tb.Text), 1) <> "\" Then : STR1 -= 1 : STR2 += 1
  539. If STR1 = 0 Then : 檔案路徑_tb.Text = "" : 檔案名稱_tb.Text = "" : i = 9999
  540. Else : 檔案路徑_tb.Text = Strings.Left((檔案路徑_tb.Text), STR1) : End If
  541. Else : 檔案路徑_tb.Text = Strings.Right((檔案名稱_tb.Text), STR2) : 檔案名稱_tb.Text = 檔案路徑_tb.Text : i = 9999 : End If
  542. Next
  543. End If
  544. '-------取得副檔名---------------------------------------------------------------------------------------------------------------
  545. For I As Integer = 1 To 99 : 副檔名_tb.Text = Strings.Mid(Strings.StrReverse(檔案名稱_tb.Text), I, 1)
  546. If 副檔名_tb.Text = "." Then : 副檔名_tb.Text = Strings.StrReverse(Strings.Left(Strings.StrReverse(檔案名稱_tb.Text), I)) : I = 99 : End If
  547. Next
  548. '-------取得檔名---------------------------------------------------------------------------------------------------------------
  549. Dim 檔名 As String : Dim 檔名長度 As Integer
  550. For I As Integer = 1 To 99 : 檔名 = Strings.Mid(Strings.StrReverse(檔案名稱_tb.Text), I, 1)
  551. If 檔名 = "." Then
  552. 檔名長度 = Len(檔案名稱_tb.Text) - I
  553. 檔案名稱_tb.Text = Strings.Left(檔案名稱_tb.Text, 檔名長度) : I = 99
  554. End If
  555. Next
  556. End Sub
  557. Private Sub 檔案名稱_tb_DragDrop(ByVal sender As Object, ByVal e As DragEventArgs) Handles 檔案名稱_tb.DragDrop
  558. Dim files As Array = e.Data.GetData(DataFormats.FileDrop)
  559. For Each file As String In files
  560. 檔案名稱_tb.AppendText(file + Environment.NewLine)
  561. Next
  562. End Sub
  563. Private Sub 圖片_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片_pb.Click
  564. If IsNothing(圖片_pb.Image) = False Then : 圖片傳遞 = 圖片_pb.Image : 圖片放大視窗.ShowDialog() : End If
  565. End Sub
  566. Private Sub 圖片1_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片1_pb.Click
  567. If IsNothing(圖片1_pb.Image) = False Then : 圖片傳遞 = 圖片1_pb.Image : 圖片放大視窗.ShowDialog() : End If
  568. End Sub
  569. Private Sub 圖片2_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片2_pb.Click
  570. If IsNothing(圖片2_pb.Image) = False Then : 圖片傳遞 = 圖片2_pb.Image : 圖片放大視窗.ShowDialog() : End If
  571. End Sub
  572. Private Sub 圖片3_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片3_pb.Click
  573. If IsNothing(圖片3_pb.Image) = False Then : 圖片傳遞 = 圖片3_pb.Image : 圖片放大視窗.ShowDialog() : End If
  574. End Sub
  575. Private Sub 圖片4_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片4_pb.Click
  576. If IsNothing(圖片4_pb.Image) = False Then : 圖片傳遞 = 圖片4_pb.Image : 圖片放大視窗.ShowDialog() : End If
  577. End Sub
  578. Private Sub 順時鐘90度旋轉1_bt_Click(sender As Object, e As EventArgs) Handles 順時鐘90度旋轉1_bt.Click
  579. If IsNothing(圖片1_pb.Image) = True Then : Else : 圖片1_pb.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) : 圖片1_pb.Refresh() : 圖片1_pb.SizeMode = 4 : End If
  580. End Sub
  581. Private Sub 逆時鐘90度旋轉1_bt_Click(sender As Object, e As EventArgs) Handles 逆時鐘90度旋轉1_bt.Click
  582. If IsNothing(圖片1_pb.Image) = True Then : Else : 圖片1_pb.Image.RotateFlip(RotateFlipType.Rotate270FlipNone) : 圖片1_pb.Refresh() : 圖片1_pb.SizeMode = 4 : End If
  583. End Sub
  584. Private Sub 水平翻轉1_bt_Click(sender As Object, e As EventArgs) Handles 水平翻轉1_bt.Click
  585. If IsNothing(圖片1_pb.Image) = True Then : Else : 圖片1_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipY) : 圖片1_pb.Refresh() : 圖片1_pb.SizeMode = 4 : End If
  586. End Sub
  587. Private Sub 垂直翻轉1_bt_Click(sender As Object, e As EventArgs) Handles 垂直翻轉1_bt.Click
  588. If IsNothing(圖片1_pb.Image) = True Then : Else : 圖片1_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipX) : 圖片1_pb.Refresh() : 圖片1_pb.SizeMode = 4 : End If
  589. End Sub
  590. Private Sub 順時鐘90度旋轉2_bt_Click(sender As Object, e As EventArgs) Handles 順時鐘90度旋轉2_bt.Click
  591. If IsNothing(圖片2_pb.Image) = True Then : Else : 圖片2_pb.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) : 圖片2_pb.Refresh() : 圖片2_pb.SizeMode = 4 : End If
  592. End Sub
  593. Private Sub 逆時鐘90度旋轉2_bt_Click(sender As Object, e As EventArgs) Handles 逆時鐘90度旋轉2_bt.Click
  594. If IsNothing(圖片2_pb.Image) = True Then : Else : 圖片2_pb.Image.RotateFlip(RotateFlipType.Rotate270FlipNone) : 圖片2_pb.Refresh() : 圖片2_pb.SizeMode = 4 : End If
  595. End Sub
  596. Private Sub 水平翻轉2_bt_Click(sender As Object, e As EventArgs) Handles 水平翻轉2_bt.Click
  597. If IsNothing(圖片2_pb.Image) = True Then : Else : 圖片2_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipY) : 圖片2_pb.Refresh() : 圖片2_pb.SizeMode = 4 : End If
  598. End Sub
  599. Private Sub 垂直翻轉2_bt_Click(sender As Object, e As EventArgs) Handles 垂直翻轉2_bt.Click
  600. If IsNothing(圖片2_pb.Image) = True Then : Else : 圖片2_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipX) : 圖片2_pb.Refresh() : 圖片2_pb.SizeMode = 4 : End If
  601. End Sub
  602. Private Sub 順時鐘90度旋轉3_bt_Click(sender As Object, e As EventArgs) Handles 順時鐘90度旋轉3_bt.Click
  603. If IsNothing(圖片3_pb.Image) = True Then : Else : 圖片3_pb.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) : 圖片3_pb.Refresh() : 圖片3_pb.SizeMode = 4 : End If
  604. End Sub
  605. Private Sub 逆時鐘90度旋轉3_bt_Click(sender As Object, e As EventArgs) Handles 逆時鐘90度旋轉3_bt.Click
  606. If IsNothing(圖片3_pb.Image) = True Then : Else : 圖片3_pb.Image.RotateFlip(RotateFlipType.Rotate270FlipNone) : 圖片3_pb.Refresh() : 圖片3_pb.SizeMode = 4 : End If
  607. End Sub
  608. Private Sub 水平翻轉3_bt_Click(sender As Object, e As EventArgs) Handles 水平翻轉3_bt.Click
  609. If IsNothing(圖片3_pb.Image) = True Then : Else : 圖片3_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipY) : 圖片3_pb.Refresh() : 圖片3_pb.SizeMode = 4 : End If
  610. End Sub
  611. Private Sub 垂直翻轉3_bt_Click(sender As Object, e As EventArgs) Handles 垂直翻轉3_bt.Click
  612. If IsNothing(圖片3_pb.Image) = True Then : Else : 圖片3_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipX) : 圖片3_pb.Refresh() : 圖片3_pb.SizeMode = 4 : End If
  613. End Sub
  614. Private Sub 順時鐘90度旋轉4_bt_Click(sender As Object, e As EventArgs) Handles 順時鐘90度旋轉4_bt.Click
  615. If IsNothing(圖片4_pb.Image) = True Then : Else : 圖片4_pb.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) : 圖片4_pb.Refresh() : 圖片4_pb.SizeMode = 4 : End If
  616. End Sub
  617. Private Sub 逆時鐘90度旋轉4_bt_Click(sender As Object, e As EventArgs) Handles 逆時鐘90度旋轉4_bt.Click
  618. If IsNothing(圖片4_pb.Image) = True Then : Else : 圖片4_pb.Image.RotateFlip(RotateFlipType.Rotate270FlipNone) : 圖片4_pb.Refresh() : 圖片4_pb.SizeMode = 4 : End If
  619. End Sub
  620. Private Sub 水平翻轉4_bt_Click(sender As Object, e As EventArgs) Handles 水平翻轉4_bt.Click
  621. If IsNothing(圖片4_pb.Image) = True Then : Else : 圖片4_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipY) : 圖片4_pb.Refresh() : 圖片4_pb.SizeMode = 4 : End If
  622. End Sub
  623. Private Sub 垂直翻轉4_bt_Click(sender As Object, e As EventArgs) Handles 垂直翻轉4_bt.Click
  624. If IsNothing(圖片4_pb.Image) = True Then : Else : 圖片4_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipX) : 圖片4_pb.Refresh() : 圖片4_pb.SizeMode = 4 : End If
  625. End Sub
  626. Private Sub 翻譯_bt_Click(sender As Object, e As EventArgs) Handles 翻譯_bt.Click
  627. If 工作內容_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("沒有資料!!") : Else : MsgBox("Tidak ada Informasi!!") : End If : Else
  628. 翻譯 = Replace(工作內容_tb.Text, vbCrLf, " ") : MyModule2.執行翻譯() : 等待翻譯_tim.Enabled = True
  629. End If
  630. End Sub
  631. Private Sub 等待翻譯_tim_Tick(sender As Object, e As EventArgs) Handles 等待翻譯_tim.Tick
  632. Dim Str2 As String = System.Windows.Forms.Application.StartupPath : Dim stringReader As String : Dim fileReader As StreamReader
  633. If File.Exists("ch.txt") Then
  634. 等待翻譯_tim.Enabled = False
  635. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\ch.txt") : stringReader = fileReader.ReadLine() : 工作內容_tb.Text = stringReader : fileReader.Close()
  636. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\in.txt") : stringReader = fileReader.ReadLine()
  637. 工作內容_tb.Text = 工作內容_tb.Text & vbCrLf & stringReader : fileReader.Close()
  638. If 系統語言 = "繁體中文" Then : MsgBox("翻譯完成!!") : Else : MsgBox("Terjemahan Selesai!!") : End If
  639. ElseIf File.Exists(Str2 & "\ch.txt") Then
  640. 等待翻譯_tim.Enabled = False
  641. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\ch.txt") : stringReader = fileReader.ReadLine() : 工作內容_tb.Text = stringReader : fileReader.Close()
  642. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\in.txt") : stringReader = fileReader.ReadLine()
  643. 工作內容_tb.Text = 工作內容_tb.Text & vbCrLf & stringReader : fileReader.Close()
  644. If 系統語言 = "繁體中文" Then : MsgBox("翻譯完成!!") : Else : MsgBox("Terjemahan Selesai!!") : End If
  645. End If
  646. End Sub
  647. Private Sub 刪除圖片_bt_Click(sender As Object, e As EventArgs) Handles 刪除圖片_bt.Click
  648. Dim aa As MsgBoxResult = MsgBox(對話框(10), MsgBoxStyle.OkCancel)
  649. If aa = MsgBoxResult.Ok Then
  650. Dim SSA As String = InputBox(對話框(11))
  651. If SSA = "YES" Then
  652. PA1 = 進度流水號_tb.Text : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") : PA3 = 編碼2_tb.Text : SQL_工程日報圖片刪除()
  653. Set_工程日報圖片() :: Set_工程清單() : 編碼2_tb.Text = ""
  654. End If
  655. End If
  656. End Sub
  657. Private Sub 刪除專案_bt_Click(sender As Object, e As EventArgs) Handles 刪除專案_bt.Click
  658. If 選擇項1_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("沒有資料!!") : Else : MsgBox("Tidak ada Informasi!!") : End If : Else
  659. Dim aa As MsgBoxResult = MsgBox(對話框(12), MsgBoxStyle.OkCancel)
  660. If aa = MsgBoxResult.Ok Then
  661. Dim SSA As String = InputBox(對話框(13))
  662. If SSA = "YES" Then : PA1 = 選擇項1_tb.Text : SQL_工程進度項目刪除() : SQL_工程進度明細表刪除()
  663. For i As Integer = 0 To 圖庫清單_dgv.Rows.Count - 1
  664. 圖片庫 = 圖庫清單_dgv("資料庫", i).Value.ToString : SQL_連線字串_圖片資料庫() : SQL_工程日報圖片刪除_全部()
  665. Next
  666. Set_工程日報圖片() : Set_工程清單() : 編碼2_tb.Text = ""
  667. End If
  668. End If
  669. End If
  670. End Sub
  671. Private Sub 翻譯1_bt_Click(sender As Object, e As EventArgs) Handles 翻譯1_bt.Click
  672. If 項目_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("沒有資料!!") : Else : MsgBox("Tidak ada Informasi!!") : End If : Else
  673. 翻譯 = Replace(項目_tb.Text, vbCrLf, " ") : MyModule2.執行翻譯() : 等待翻譯1_tim.Enabled = True
  674. End If
  675. End Sub
  676. Private Sub 等待翻譯1_tim_Tick(sender As Object, e As EventArgs) Handles 等待翻譯1_tim.Tick
  677. Dim Str2 As String = System.Windows.Forms.Application.StartupPath : Dim stringReader As String : Dim fileReader As StreamReader
  678. If File.Exists("ch.txt") Then
  679. 等待翻譯1_tim.Enabled = False
  680. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\ch.txt") : stringReader = fileReader.ReadLine() : 項目_tb.Text = stringReader : fileReader.Close()
  681. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\in.txt") : stringReader = fileReader.ReadLine()
  682. 項目_tb.Text = 項目_tb.Text & " - " & stringReader : fileReader.Close()
  683. If 系統語言 = "繁體中文" Then : MsgBox("翻譯完成!!") : Else : MsgBox("Terjemahan Selesai!!") : End If
  684. ElseIf File.Exists(Str2 & "\ch.txt") Then
  685. 等待翻譯1_tim.Enabled = False
  686. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\ch.txt") : stringReader = fileReader.ReadLine() : 項目_tb.Text = stringReader : fileReader.Close()
  687. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\in.txt") : stringReader = fileReader.ReadLine()
  688. 項目_tb.Text = 項目_tb.Text & " - " & stringReader : fileReader.Close()
  689. If 系統語言 = "繁體中文" Then : MsgBox("翻譯完成!!") : Else : MsgBox("Terjemahan Selesai!!") : End If
  690. End If
  691. End Sub
  692. Private Sub TW_ch_CheckedChanged(sender As Object, e As EventArgs) Handles TW_ch.Click
  693. TW_ch.Checked = True : IN_ch.Checked = False : TW = TW_ch.Visible : EN = IN_ch.Visible
  694. End Sub
  695. Private Sub IN_ch_CheckedChanged(sender As Object, e As EventArgs) Handles IN_ch.Click
  696. TW_ch.Checked = False : IN_ch.Checked = True : TW = TW_ch.Visible : EN = IN_ch.Visible
  697. End Sub
  698. Private Sub 存檔_bt_Click(sender As Object, e As EventArgs) Handles 存檔_bt.Click
  699. If 已建檔_ch.Checked = True Then
  700. PA1 = 控制表流水_tb.Text : PA4 = 上午_cb.Text : PA5 = 下午_cb.Text : PA6 = 編碼_tb.Text : PA7 = 編碼1_tb.Text : SQL_工程日報控制表修改()
  701. End If
  702. If 選擇項1_tb.Text = "" Then : Else
  703. PA1 = 選擇項1_tb.Text : PA25 = 項目_tb.Text : SQL_工程進度項目修改() : Set_工程清單()
  704. End If
  705. End Sub
  706. Private Sub 報工日期_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 報工日期_dtp.ValueChanged
  707. Set_工程清單() : CanceL2_bt.PerformClick()
  708. End Sub
  709. Dim OldX, OldY As Long
  710. Dim drag As Boolean
  711. Private Sub 視窗2_pl_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗2_pl.MouseDown
  712. If e.Button = MouseButtons.Left Then : OldX = e.X : OldY = e.Y : drag = True : End If
  713. End Sub
  714. Private Sub 視窗2_pl_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗2_pl.MouseMove
  715. If drag Then : 視窗2_pl.Left = 視窗2_pl.Left + e.X - OldX : 視窗2_pl.Top = 視窗2_pl.Top + e.Y - OldY : End If
  716. End Sub
  717. Private Sub 視窗2_pl_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗2_pl.MouseUp
  718. drag = False
  719. End Sub
  720. End Class