Imports System.Net Imports System.IO Public Class 工程日報表 ReadOnly ds8 As New DataSet Dim 圖片資料庫指定 As String Dim EDR, 頁數, DGVX, NUM1 As Integer Dim ESTR As String ReadOnly 對話框(13) As String Private Sub Set_工程圖片資料庫狀態() Dim ds9 As New DataSet : 圖庫清單_dgv.DataSource = Nothing : ds9.Clear() 圖庫清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 圖庫清單_dgv.ColumnHeadersHeight = 25 圖庫清單_dgv.AllowUserToAddRows = False 表頭(165) = "資料庫" : 表頭(166) = "狀態" SQL_工程圖片資料庫管理查詢() da.Fill(ds9) : 圖庫清單_dgv.DataSource = ds9.Tables(0) : conn.Close() 圖庫清單_dgv.Columns(0).FillWeight = 100 : 圖庫清單_dgv.Columns(1).FillWeight = 20 End Sub Private Sub Set_工程清單() Dim ds1 As New DataSet 清單_dgv.DataSource = Nothing : ds1.Clear() 清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 清單_dgv.ColumnHeadersHeight = 25 : 清單_dgv.AllowUserToAddRows = False : 清單_dgv.RowTemplate.Height = 35 PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") : PA1 = 工程執行主管_cb.Text SQL_工程日報表() da.Fill(ds1) : 清單_dgv.DataSource = ds1.Tables(0) : conn.Close() 清單_dgv.Columns(0).Visible = False : 清單_dgv.Columns(1).FillWeight = 30 : 清單_dgv.Columns(2).Visible = False : 清單_dgv.Columns(3).FillWeight = 30 清單_dgv.Columns(4).FillWeight = 180 : 清單_dgv.Columns(5).Visible = False : 清單_dgv.Columns(6).Visible = False : 清單_dgv.Columns(7).FillWeight = 30 清單_dgv.Columns(8).Visible = False : 清單_dgv.Columns(9).Visible = False 頁數 = 0 For I As Integer = 0 To 清單_dgv.Rows.Count - 1 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 Next If 頁數 = 0 Then If 系統語言 = "繁體中文" Then : 頁數_lb.Text = "共 1 頁" : Else : 頁數_lb.Text = "Total 1 P" : End If : 目前頁數_nud.Value = 1 Else : 頁數 = Math.Ceiling(頁數 / 4) If 系統語言 = "繁體中文" Then : 頁數_lb.Text = "共 " & 頁數 & " 頁" : Else : 頁數_lb.Text = "Total " & 頁數 & " P" : End If End If PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") : PA1 = 工程執行主管_cb.Text : SQL_讀取工程日報控制() If dr.Read Then 上午_cb.Text = dr("上午開工").ToString : 下午_cb.Text = dr("下午開工").ToString 編碼_tb.Text = dr("上午天氣").ToString : 編碼1_tb.Text = dr("下午天氣").ToString 控制表流水_tb.Text = dr("流水號").ToString PA40 = 編碼_tb.Text : SQL_天氣控制_讀取() : If dr.Read Then : 天氣_cb.Text = dr("天氣").ToString : End If PA40 = 編碼1_tb.Text : SQL_天氣控制_讀取() : If dr.Read Then : 天氣1_cb.Text = dr("天氣").ToString : End If : 已建檔_ch.Checked = True Else 上午_cb.Text = "" : 下午_cb.Text = "" : 編碼_tb.Text = "" : 編碼1_tb.Text = "" : 天氣_cb.Text = "" : 天氣1_cb.Text = "" : 已建檔_ch.Checked = False End If 分頁計算() End Sub Private Sub Set_工程日報圖片() Dim ds6 As New DataSet 圖片清單_dgv.DataSource = Nothing : ds6.Clear() 圖片清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 圖片清單_dgv.ColumnHeadersHeight = 25 : 圖片清單_dgv.AllowUserToAddRows = False : 圖片清單_dgv.RowTemplate.Height = 35 If 圖片庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 圖片庫_tb.Text : End If SQL_連線字串_圖片資料庫() : SQL_工程日報圖片清單() da.Fill(ds6) : 圖片清單_dgv.DataSource = ds6.Tables(0) : conn.Close() 圖片清單_dgv.Columns(0).ReadOnly = True If 圖片清單_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取() : Else : 圖片_pb.Image = Nothing : End If Dim mycol As DataGridViewImageColumn = 圖片清單_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom End Sub Private Sub 圖片清單讀取() 圖片_pb.Image = Nothing PA1 = 進度流水號_tb.Text : 圖片庫 = 圖片庫_tb.Text : SQL_連線字串_圖片資料庫() : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") PA3 = 圖片清單_dgv("Item", DGVX).Value.ToString : SQL_工程日報圖片讀取() While dr.Read() = True Dim unused As Byte() = New Byte(-1) {} Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte()) Dim oStream As New MemoryStream(bytes) 圖片_pb.Image = Bitmap.FromStream(oStream) End While conn.Close() : 圖片_pb.SizeMode = 4 End Sub Private Sub Set_工程日報圖片1() Dim ds6 As New DataSet 圖片清單1_dgv.DataSource = Nothing : ds6.Clear() 圖片清單1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 圖片清單1_dgv.ColumnHeadersHeight = 25 : 圖片清單1_dgv.AllowUserToAddRows = False : 圖片清單1_dgv.RowTemplate.Height = 35 If 圖片庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 圖片庫_tb.Text : End If SQL_連線字串_圖片資料庫() : SQL_工程日報圖片清單() da.Fill(ds6) : 圖片清單1_dgv.DataSource = ds6.Tables(0) : conn.Close() 圖片清單1_dgv.Columns(0).ReadOnly = True If 圖片清單1_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取1() : Else : 圖片1_pb.Image = Nothing : End If Dim mycol As DataGridViewImageColumn = 圖片清單1_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom End Sub Private Sub 圖片清單讀取1() 圖片1_pb.Image = Nothing If 流水1_tb.Text = "" Then : PA1 = 進度流水號_tb.Text : Else : PA1 = 流水1_tb.Text : End If 圖片庫 = 圖片庫_tb.Text : SQL_連線字串_圖片資料庫() : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") PA3 = 圖片清單1_dgv("Item", DGVX).Value.ToString : SQL_工程日報圖片讀取() While dr.Read() = True Dim unused As Byte() = New Byte(-1) {} Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte()) Dim oStream As New MemoryStream(bytes) 圖片1_pb.Image = Bitmap.FromStream(oStream) End While conn.Close() : 圖片1_pb.SizeMode = 4 End Sub Private Sub Set_工程日報圖片2() Dim ds6 As New DataSet 圖片清單2_dgv.DataSource = Nothing : ds6.Clear() 圖片清單2_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 圖片清單2_dgv.ColumnHeadersHeight = 25 : 圖片清單2_dgv.AllowUserToAddRows = False : 圖片清單2_dgv.RowTemplate.Height = 35 If 圖片庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 圖片庫_tb.Text : End If SQL_連線字串_圖片資料庫() : SQL_工程日報圖片清單() da.Fill(ds6) : 圖片清單2_dgv.DataSource = ds6.Tables(0) : conn.Close() 圖片清單2_dgv.Columns(0).ReadOnly = True If 圖片清單2_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取2() : Else : 圖片2_pb.Image = Nothing : End If Dim mycol As DataGridViewImageColumn = 圖片清單2_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom End Sub Private Sub 圖片清單讀取2() 圖片2_pb.Image = Nothing If 流水2_tb.Text = "" Then : PA1 = 進度流水號_tb.Text : Else : PA1 = 流水2_tb.Text : End If 圖片庫 = 圖片庫_tb.Text : SQL_連線字串_圖片資料庫() : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") PA3 = 圖片清單2_dgv("Item", DGVX).Value.ToString : SQL_工程日報圖片讀取() While dr.Read() = True Dim unused As Byte() = New Byte(-1) {} Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte()) Dim oStream As New MemoryStream(bytes) 圖片2_pb.Image = Bitmap.FromStream(oStream) End While conn.Close() : 圖片2_pb.SizeMode = 4 End Sub Private Sub Set_工程日報圖片3() Dim ds6 As New DataSet 圖片清單3_dgv.DataSource = Nothing : ds6.Clear() 圖片清單3_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 圖片清單3_dgv.ColumnHeadersHeight = 25 : 圖片清單3_dgv.AllowUserToAddRows = False : 圖片清單3_dgv.RowTemplate.Height = 35 If 圖片庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 圖片庫_tb.Text : End If SQL_連線字串_圖片資料庫() : SQL_工程日報圖片清單() da.Fill(ds6) : 圖片清單3_dgv.DataSource = ds6.Tables(0) : conn.Close() 圖片清單3_dgv.Columns(0).ReadOnly = True If 圖片清單3_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取3() : Else : 圖片3_pb.Image = Nothing : End If Dim mycol As DataGridViewImageColumn = 圖片清單3_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom End Sub Private Sub 圖片清單讀取3() 圖片3_pb.Image = Nothing If 流水3_tb.Text = "" Then : PA1 = 進度流水號_tb.Text : Else : PA1 = 流水3_tb.Text : End If 圖片庫 = 圖片庫_tb.Text : SQL_連線字串_圖片資料庫() : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") PA3 = 圖片清單3_dgv("Item", DGVX).Value.ToString : SQL_工程日報圖片讀取() While dr.Read() = True Dim unused As Byte() = New Byte(-1) {} Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte()) Dim oStream As New MemoryStream(bytes) 圖片3_pb.Image = Bitmap.FromStream(oStream) End While conn.Close() : 圖片3_pb.SizeMode = 4 End Sub Private Sub Set_工程日報圖片4() Dim ds6 As New DataSet 圖片清單4_dgv.DataSource = Nothing : ds6.Clear() 圖片清單4_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 圖片清單4_dgv.ColumnHeadersHeight = 25 : 圖片清單4_dgv.AllowUserToAddRows = False : 圖片清單4_dgv.RowTemplate.Height = 35 If 圖片庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 圖片庫_tb.Text : End If SQL_連線字串_圖片資料庫() : SQL_工程日報圖片清單() da.Fill(ds6) : 圖片清單4_dgv.DataSource = ds6.Tables(0) : conn.Close() 圖片清單4_dgv.Columns(0).ReadOnly = True If 圖片清單4_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取4() : Else : 圖片4_pb.Image = Nothing : End If Dim mycol As DataGridViewImageColumn = 圖片清單4_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom End Sub Private Sub 圖片清單讀取4() 圖片4_pb.Image = Nothing If 流水4_tb.Text = "" Then : PA1 = 進度流水號_tb.Text : Else : PA1 = 流水4_tb.Text : End If 圖片庫 = 圖片庫_tb.Text : SQL_連線字串_圖片資料庫() : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") PA3 = 圖片清單4_dgv("Item", DGVX).Value.ToString : SQL_工程日報圖片讀取() While dr.Read() = True Dim unused As Byte() = New Byte(-1) {} Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte()) Dim oStream As New MemoryStream(bytes) 圖片4_pb.Image = Bitmap.FromStream(oStream) End While conn.Close() : 圖片4_pb.SizeMode = 4 End Sub Private Sub 執行主管下拉清單讀取() SQL執行主管下拉() : 工程執行主管_cb.Items.Clear() : 工程執行主管_cb.Items.Add("") : While (dr.Read()) : 工程執行主管_cb.Items.Add(dr("姓名")) : End While : conn.Close() End Sub Private Sub 上午_cb_下拉表單資料載入() SQL_上午控制_下拉清單() : 上午_cb.Items.Clear() : 上午_cb.Items.Add("") : While (dr.Read()) : 上午_cb.Items.Add(dr("上下午")) : End While : conn.Close() End Sub Private Sub 下午_cb_下拉表單資料載入() SQL_下午控制_下拉清單() : 下午_cb.Items.Clear() : 下午_cb.Items.Add("") : While (dr.Read()) : 下午_cb.Items.Add(dr("上下午")) : End While : conn.Close() End Sub Private Sub 天氣_cb_下拉表單資料載入() SQL_天氣控制_下拉清單() : 天氣_cb.Items.Clear() : 天氣1_cb.Items.Clear() : 天氣_cb.Items.Add("") : 天氣1_cb.Items.Add("") While (dr.Read()) : 天氣_cb.Items.Add(dr("天氣")) : 天氣1_cb.Items.Add(dr("天氣")) : End While : conn.Close() 天氣_cb.SelectedIndex = 0 : 天氣1_cb.SelectedIndex = 0 End Sub Private Sub 甲方條件下拉清單讀取() SQL合約條件讀取() : 合約編號1_cb.Items.Clear() : 合約編號1_cb.Items.Add("") : While (dr.Read()) : 合約編號1_cb.Items.Add(dr("約號甲方")) : End While : conn.Close() End Sub Private Sub Set_語言() 語言_dgv.DataSource = Nothing : ds8.Clear() 語言_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 語言_dgv.ColumnHeadersHeight = 25 語言_dgv.AllowUserToAddRows = False SQL_系統語言導入() da.Fill(ds8) : 語言_dgv.DataSource = ds8.Tables(0) : conn.Close() End Sub Private Sub 語言轉換讀取() Set_語言() : conn.Close() For i As Integer = 0 To 語言_dgv.Rows.Count - 1 If 語言_dgv("控件", i).Value.ToString = "工程日報表" Then : Me.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "工程執行主管_lb" Then : 工程執行主管_lb.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "甲方_lb" Then : 甲方_lb.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "上一天_bt" Then : 上一天_bt.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "下一天_bt" Then : 下一天_bt.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "今天_bt" Then : 今天_bt.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "上午_lb" Then : 上午_lb.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "下午_lb" Then : 下午_lb.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "天氣_lb" Then : 天氣_lb.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "天氣_lb" Then : 天氣1_lb.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "已建檔_ch" Then : 已建檔_ch.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "報表日期_lb" Then : 報表日期_lb.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "日報表編輯_lb" Then : 日報表編輯_lb.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "電腦_lb" Then : 電腦_lb.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "伺服器FTP文件夾_lb" Then : 伺服器FTP文件夾_lb.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "dgv_工地" Then : 表頭(75) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "dgv_項次" Then : 表頭(11) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "dgv_項目" Then : 表頭(155) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "dgv_建檔" Then : 表頭(28) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "對話框1" Then : 對話框(0) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "對話框2" Then : 對話框(1) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "對話框3" Then : 對話框(2) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "對話框4" Then : 對話框(3) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "對話框5" Then : 對話框(4) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "對話框6" Then : 對話框(5) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "對話框7" Then : 對話框(6) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "對話框8" Then : 對話框(7) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "對話框9" Then : 對話框(8) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "對話框10" Then : 對話框(9) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "對話框11" Then : 對話框(10) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "對話框12" Then : 對話框(11) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "對話框13" Then : 對話框(12) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "對話框14" Then : 對話框(13) = 語言_dgv("內容", i).Value.ToString : End If Next End Sub Private Sub 工程日報表_Load(sender As Object, e As EventArgs) Handles MyBase.Load Me.MdiParent = HX_PGS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True H(406) = True : 介面 = "H406" : 語言轉換讀取() 視窗2_pl.Visible = False : 視窗2_pl.BringToFront() 清單_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6) End Sub Private Sub 工程日報表_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown SQL_圖片資料庫查詢() : If dr.Read() Then : 圖片資料庫指定 = dr("工程圖片資料庫") : Else : MsgBox(對話框(0)) : Me.Close() : End If 甲方條件下拉清單讀取() : 天氣_cb_下拉表單資料載入() : 上午_cb_下拉表單資料載入() : 下午_cb_下拉表單資料載入() : 執行主管下拉清單讀取() 工程執行主管_cb.Text = gUserName : Set_工程清單() : Set_工程圖片資料庫狀態() 本機_wb.Navigate(My.Computer.FileSystem.SpecialDirectories.Desktop) Target1 = Target & AA(2) & "/" 伺服器_wb.Url = New Uri(Target1) MyModule1.清單字體大小調整() 清單_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value) End Sub Private Sub 銷售單申請_SizeChanged(sender As Object, e As EventArgs) Handles MyBase.SizeChanged MyModule1.清單字體大小調整() 清單_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value) End Sub Private Sub 工程日報表_Closed(sender As Object, e As EventArgs) Handles MyBase.Closed H(201) = False : MyModule1.虛擬桌面開啟() End Sub Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True End Sub Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True End Sub Private Sub 語轉扭_bt_Click(sender As Object, e As EventArgs) Handles 語轉扭_bt.Click 介面 = "H406" : 語言轉換讀取() If 系統語言 = "繁體中文" Then : 目前頁數_lb.Text = "第 " & 目前頁數_nud.Value & " 頁" : Else : 目前頁數_lb.Text = "Page " & 目前頁數_nud.Value : End If 甲方條件下拉清單讀取() : 天氣_cb_下拉表單資料載入() : 上午_cb_下拉表單資料載入() : 下午_cb_下拉表單資料載入() : 執行主管下拉清單讀取() 工程執行主管_cb.Text = gUserName : Set_工程清單() End Sub Private Sub 清單_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 清單_dgv.CellClick If e.RowIndex = -1 Then : Else 選擇項1_tb.Text = 清單_dgv("流水號", e.RowIndex).Value.ToString : 項目_tb.Text = 清單_dgv(表頭(155), e.RowIndex).Value.ToString If 已建檔_ch.Checked = False Then : Else If 視窗2_pl.Visible = False Then : 視窗2_pl.Location = New System.Drawing.Point(501, 79) : 視窗2_pl.Visible = True : End If 編號_lb.Text = 清單_dgv(表頭(75), e.RowIndex).Value.ToString : 圖片庫_tb.Text = 清單_dgv("圖片庫", e.RowIndex).Value.ToString 項目_lb.Text = 清單_dgv(表頭(11), e.RowIndex).Value.ToString & " - " & 清單_dgv(表頭(155), e.RowIndex).Value.ToString 進度流水號_tb.Text = 清單_dgv("流水號", e.RowIndex).Value.ToString : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") PA1 = 進度流水號_tb.Text : Set_工程日報圖片() 工作內容_tb.Text = 清單_dgv("工作說明", e.RowIndex).Value.ToString If 工作內容_tb.Text = "" Then PA18 = 進度流水號_tb.Text : SQL_工程進度明細表_工作說明單獨讀取() If dr.Read Then : 工作內容_tb.Text = dr("工作說明").ToString : End If End If End If End If End Sub Private Sub 清單_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 清單_dgv.RowPostPaint Dim linePen As New Pen(Color.Blue, 2) If e.RowIndex = 清單_dgv.Rows.Count - 1 Then : Exit Sub : Else If 清單_dgv(表頭(75), e.RowIndex).Value.ToString <> 清單_dgv(表頭(75), e.RowIndex + 1).Value.ToString Then Dim startX As Integer = IIf(清單_dgv.RowHeadersVisible, 清單_dgv.RowHeadersWidth, 0) Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1 Dim endX As Integer = startX + 清單_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 清單_dgv.HorizontalScrollingOffset e.Graphics.DrawLine(linePen, startX, startY, endX, startY) Exit Sub End If End If End Sub Private Sub 圖片清單_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單_dgv.CellClick If e.RowIndex = -1 Then : Else : DGVX = e.RowIndex : 編碼2_tb.Text = 圖片清單_dgv(("Item"), e.RowIndex).Value.ToString : 圖片清單讀取() : End If End Sub Private Sub 圖片清單1_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單1_dgv.CellClick If e.RowIndex = -1 Then : Else : DGVX = e.RowIndex : 圖片清單讀取1() : End If End Sub Private Sub 圖片清單2_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單2_dgv.CellClick If e.RowIndex = -1 Then : Else : DGVX = e.RowIndex : 圖片清單讀取2() : End If End Sub Private Sub 圖片清單3_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單3_dgv.CellClick If e.RowIndex = -1 Then : Else : DGVX = e.RowIndex : 圖片清單讀取3() : End If End Sub Private Sub 圖片清單4_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單4_dgv.CellClick If e.RowIndex = -1 Then : Else : DGVX = e.RowIndex : 圖片清單讀取4() : End If End Sub Private Sub 天氣_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 天氣_cb.SelectedIndexChanged PA6 = 天氣_cb.Text : SQL_天氣_資料讀取() : If dr.Read() Then : 編碼_tb.Text = dr("編碼") : End If : conn.Close() End Sub Private Sub 天氣1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 天氣1_cb.SelectedIndexChanged PA6 = 天氣1_cb.Text : SQL_天氣_資料讀取() : If dr.Read() Then : 編碼1_tb.Text = dr("編碼") : End If : conn.Close() End Sub Private Sub 工程執行主管_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 工程執行主管_cb.SelectedIndexChanged If 登入人級別 <= 3 Then : Else If 工程執行主管_cb.Text = gUserName Then 新建_bt.Enabled = True : 新增項目_bt.Enabled = True : 翻譯1_bt.Enabled = True : 存檔_bt.Enabled = True : 刪除專案_bt.Enabled = True 翻譯_bt.Enabled = True : 完工_bt.Enabled = True : 刪除圖片_bt.Enabled = True : 讀取資料夾路徑_bt.Enabled = True : 圖檔入系統_bt.Enabled = True Else 新建_bt.Enabled = False : 新增項目_bt.Enabled = False : 翻譯1_bt.Enabled = False : 存檔_bt.Enabled = False : 刪除專案_bt.Enabled = False 翻譯_bt.Enabled = False : 完工_bt.Enabled = False : 刪除圖片_bt.Enabled = False : 讀取資料夾路徑_bt.Enabled = False : 圖檔入系統_bt.Enabled = False End If End If Set_工程清單() End Sub Private Sub 上一天_bt_Click(sender As Object, e As EventArgs) Handles 上一天_bt.Click 報工日期_dtp.Value = 報工日期_dtp.Value.AddDays(-1) : Set_工程清單() : CanceL2_bt.PerformClick() End Sub Private Sub 今天_bt_Click(sender As Object, e As EventArgs) Handles 今天_bt.Click 報工日期_dtp.Value = Today() : Set_工程清單() : CanceL2_bt.PerformClick() End Sub Private Sub 下一天_bt_Click(sender As Object, e As EventArgs) Handles 下一天_bt.Click 報工日期_dtp.Value = 報工日期_dtp.Value.AddDays(1) : Set_工程清單() : CanceL2_bt.PerformClick() End Sub Private Sub 完工_bt_Click(sender As Object, e As EventArgs) Handles 完工_bt.Click If 進度流水號_tb.Text = "" Then : Else PA1 = 進度流水號_tb.Text : If Cancel_ch.Checked = False Then : PA19 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") : Else : PA19 = "2100/01/01" : End If SQL_工程進度項目結案() : CanceL2_bt.PerformClick() : MsgBox(對話框(4)) : Cancel_ch.Checked = False End If End Sub Private Sub 新建_bt_Click(sender As Object, e As EventArgs) Handles 新建_bt.Click If 工程執行主管_cb.Text = "" Then : MsgBox(對話框(1)) : Else If 上午_cb.Text = "" Or 下午_cb.Text = "" Or 天氣_cb.Text = "" Or 天氣1_cb.Text = "" Then : MsgBox(對話框(2)) : Else If 已建檔_ch.Checked = True Then : MsgBox(對話框(3)) : Else SQL_工程日報控制表流水號查詢() If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("流水號").ToString, 8)) : Else : EDR = 0 : End If : conn.Close() : EDR += 1 If EDR < 10 Then : ESTR = "RO0000000" & EDR ElseIf EDR > 9 And EDR < 100 Then : ESTR = "RO000000" & EDR ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "RO00000" & EDR ElseIf EDR > 9999 And EDR < 10000 Then : ESTR = "RO0000" & EDR ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "RO000" & EDR ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "RO00" & EDR ElseIf EDR > 9999999 And EDR < 10000000 Then : ESTR = "RO0" & EDR ElseIf EDR <= 10000000 Then : ESTR = "RO" & EDR : End If : PA1 = ESTR PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") : PA3 = 工程執行主管_cb.Text PA4 = 上午_cb.Text : PA5 = 下午_cb.Text : PA6 = 編碼_tb.Text : PA7 = 編碼1_tb.Text SQL_工程日報控制表新增() : 已建檔_ch.Checked = True : MsgBox(對話框(4)) End If End If End If End Sub Private Sub 新增項目_bt_Click(sender As Object, e As EventArgs) Handles 新增項目_bt.Click If 工程執行主管_cb.Text = "" Then : MsgBox(對話框(1)) : Else If 合約編號1_cb.Text = "" Then : MsgBox(對話框(5)) : Else PA25 = InputBox(對話框(6)) SQL_工程進度項目流水號查詢() If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("流水號").ToString, 8)) : Else : EDR = 0 : End If : conn.Close() : EDR += 1 If EDR < 10 Then : ESTR = "RP0000000" & EDR ElseIf EDR > 9 And EDR < 100 Then : ESTR = "RP000000" & EDR ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "RP00000" & EDR ElseIf EDR > 9999 And EDR < 10000 Then : ESTR = "RP0000" & EDR ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "RP000" & EDR ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "RP00" & EDR ElseIf EDR > 9999999 And EDR < 10000000 Then : ESTR = "RP0" & EDR ElseIf EDR <= 10000000 Then : ESTR = "RP" & EDR : End If : PA1 = ESTR PA1 = ESTR : PA2 = 工程執行主管_cb.Text : PA3 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") PA4 = 合約編號1_cb.Text : SQL_工程進度項目新增() : Set_工程清單() End If End If End Sub Private Sub CanceL2_bt_Click(sender As Object, e As EventArgs) Handles CanceL2_bt.Click If 視窗2_pl.Visible = False Then : 視窗2_pl.Visible = True : 視窗2_pl.BringToFront() : Else 視窗2_pl.Visible = False : End If End Sub Private Sub 讀取資料夾路徑_bt_Click(sender As Object, e As EventArgs) Handles 讀取資料夾路徑_bt.Click If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then 本機_wb.Navigate(FolderBrowserDialog1.SelectedPath) End If End Sub Private Sub 圖檔入系統_bt_Click(sender As Object, e As EventArgs) Handles 圖檔入系統_bt.Click Dim 新增資料 As Boolean PA10 = 進度流水號_tb.Text : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") : PA3 = 工作內容_tb.Text : PA5 = 圖片資料庫指定 : SQL_工程進度明細表查詢() If dr.Read Then : SQL_工程進度明細表修改() : 新增資料 = False : Else : SQL_工程進度明細表新增() : 新增資料 = True : End If If 檔案名稱_tb.Text = "" Or 副檔名_tb.Text = "" Then : Else Dim ftpclient As System.Net.FtpWebRequest = System.Net.FtpWebRequest.Create(New System.Uri(Target1 & 檔案名稱_tb.Text & 副檔名_tb.Text)) ftpclient.UseBinary = True ftpclient.Credentials = New System.Net.NetworkCredential(FTP帳號, FTP密碼) ftpclient.Method = System.Net.WebRequestMethods.Ftp.ListDirectoryDetails ftpclient.KeepAlive = False Dim ftpresponse As System.Net.FtpWebResponse Try ftpresponse = CType(ftpclient.GetResponse, System.Net.FtpWebResponse) Console.WriteLine(ftpresponse.StatusCode.ToString + " " + ftpresponse.StatusDescription) Dim content(1024) As Byte : Dim index_a As Integer = 0 index_a = ftpresponse.GetResponseStream.Read(content, 0, content.Length) Dim contentstring As String = String.Empty While index_a > 0 index_a = ftpresponse.GetResponseStream.Read(content, 0, content.Length) : contentstring += System.Text.Encoding.UTF8.GetString(content) End While ftpresponse.Close() If contentstring.LastIndexOf(檔案名稱_tb.Text & 副檔名_tb.Text) > 0 Then Dim 驗證 As String = "" : Dim 取變數 As String : 取變數 = Strings.StrReverse(檔案名稱_tb.Text & 副檔名_tb.Text) For i As Integer = 1 To 10 If i = 1 Then : 驗證 = Strings.Left(取變數, i) : Else If Strings.Mid(取變數, i, 1) = "." Then : 驗證 = Strings.StrReverse(驗證) : Exit For : Else : 驗證 &= Strings.Mid(取變數, i, 1) : End If End If Next If 驗證 = "PNG" Or 驗證 = "png" Or 驗證 = "GIF" Or 驗證 = "gif" Or 驗證 = "BMP" Or 驗證 = "bmp" Or 驗證 = "JPG" Or 驗證 = "jpg" Or 驗證 = "JPEG" Or 驗證 = "jpeg" Then PA1 = 進度流水號_tb.Text : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") 圖片庫 = 圖片資料庫指定 SQL_連線字串_圖片資料庫() Dim 文件號 As String : Dim 文件編號 As Integer : SQL_工程日報圖片最後一筆編號查詢() If dr.Read() Then : 文件編號 = Double.Parse(Strings.Right(dr("圖片號").ToString, 2)) : Else : 文件編號 = 0 : End If conn.Close() : 文件編號 += 1 If 文件編號 < 10 Then : 文件號 = "IM" & "0" & 文件編號 ElseIf 文件編號 > 9 Then : 文件號 = "IM" & 文件編號 : End If PA3 = 文件號 : SQL_工程日報圖片入系統() : FTP方式刪除檔案() : MsgBox(對話框(7)) : Set_工程日報圖片() Else FTP方式刪除檔案() : MsgBox(對話框(8)) End If Else : MsgBox(對話框(9)) : End If Catch ex As Exception MsgBox(ex.Message) End Try End If : Set_工程清單() End Sub Private Sub FTP方式刪除檔案() '---FTP方式刪除檔案---------------------------------------------------------------------------------------------------------------------------------------------------------------------- Dim frq As FtpWebRequest, frp As FtpWebResponse, fcr As NetworkCredential frq = CType(WebRequest.Create(New Uri(Target1 & 檔案名稱_tb.Text & 副檔名_tb.Text)), FtpWebRequest) fcr = New NetworkCredential(FTP帳號, FTP密碼) frq.Credentials = fcr frq.Method = WebRequestMethods.Ftp.DeleteFile frq.UseBinary = True frp = CType(frq.GetResponse, FtpWebResponse) frp.Close() 伺服器_wb.Refresh() '---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 檔案名稱_tb.Text = "" : 副檔名_tb.Text = "" End Sub Private Sub 上一頁_bt_Click(sender As Object, e As EventArgs) Handles 上一頁_bt.Click If 頁數 = 0 Then : Else If 目前頁數_nud.Value = 1 Then : Else : 目前頁數_nud.Value -= 1 : End If End If End Sub Private Sub 下一頁_bt_Click(sender As Object, e As EventArgs) Handles 下一頁_bt.Click If 頁數 = 0 Then : Else If 目前頁數_nud.Value = 頁數 Then : Else : 目前頁數_nud.Value += 1 : End If End If End Sub Private Sub 目前頁數_nud_ValueChanged(sender As Object, e As EventArgs) Handles 目前頁數_nud.ValueChanged If 系統語言 = "繁體中文" Then : 目前頁數_lb.Text = "第 " & 目前頁數_nud.Value & " 頁" : Else : 目前頁數_lb.Text = "Page " & 目前頁數_nud.Value : End If : 分頁計算() End Sub Private Sub 分頁計算() Dim 起始, 結束, 起算 As Integer : Dim 無資料 As String = "無資料 / Tidak Ada Data!!" 結束 = 目前頁數_nud.Value * 4 : 起始 = 結束 - 3 項目1_lb.Text = 無資料 : 說明1_lb.Text = 無資料 : 編號1_lb.Text = 無資料 : 項目2_lb.Text = 無資料 : 說明2_lb.Text = 無資料 : 編號2_lb.Text = 無資料 項目3_lb.Text = 無資料 : 說明3_lb.Text = 無資料 : 編號3_lb.Text = 無資料 : 項目4_lb.Text = 無資料 : 說明4_lb.Text = 無資料 : 編號4_lb.Text = 無資料 流水1_tb.Text = "" : 流水2_tb.Text = "" : 流水3_tb.Text = "" : 流水4_tb.Text = "" 圖片清單1_dgv.DataSource = Nothing : 圖片清單2_dgv.DataSource = Nothing : 圖片清單3_dgv.DataSource = Nothing : 圖片清單4_dgv.DataSource = Nothing 圖片1_pb.Image = Nothing : 圖片2_pb.Image = Nothing : 圖片3_pb.Image = Nothing : 圖片4_pb.Image = Nothing For I As Integer = 0 To 清單_dgv.Rows.Count - 1 If IsDBNull(清單_dgv(表頭(28), I).Value) = True Then : Else If 清單_dgv(表頭(28), I).Value = True Then : 起算 += 1 : End If If 起算 = 起始 Then 編號1_lb.Text = 清單_dgv(表頭(75), I).Value.ToString : 說明1_lb.Text = 清單_dgv("工作說明", I).Value.ToString 項目1_lb.Text = 清單_dgv(表頭(11), I).Value.ToString & " - " & 清單_dgv(表頭(155), I).Value.ToString 圖片庫_tb.Text = 清單_dgv("圖片庫", I).Value.ToString : 進度流水號_tb.Text = 清單_dgv("流水號", I).Value.ToString PA1 = 清單_dgv("流水號", I).Value.ToString : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") 流水1_tb.Text = 清單_dgv("流水號", I).Value.ToString : Set_工程日報圖片1() End If If 起算 = 起始 + 1 Then 編號2_lb.Text = 清單_dgv(表頭(75), I).Value.ToString : 說明2_lb.Text = 清單_dgv("工作說明", I).Value.ToString 項目2_lb.Text = 清單_dgv(表頭(11), I).Value.ToString & " - " & 清單_dgv(表頭(155), I).Value.ToString 圖片庫_tb.Text = 清單_dgv("圖片庫", I).Value.ToString : 進度流水號_tb.Text = 清單_dgv("流水號", I).Value.ToString PA1 = 清單_dgv("流水號", I).Value.ToString : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") 流水2_tb.Text = 清單_dgv("流水號", I).Value.ToString : Set_工程日報圖片2() End If If 起算 = 起始 + 2 Then 編號3_lb.Text = 清單_dgv(表頭(75), I).Value.ToString : 說明3_lb.Text = 清單_dgv("工作說明", I).Value.ToString 項目3_lb.Text = 清單_dgv(表頭(11), I).Value.ToString & " - " & 清單_dgv(表頭(155), I).Value.ToString 圖片庫_tb.Text = 清單_dgv("圖片庫", I).Value.ToString : 進度流水號_tb.Text = 清單_dgv("流水號", I).Value.ToString PA1 = 清單_dgv("流水號", I).Value.ToString : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") 流水3_tb.Text = 清單_dgv("流水號", I).Value.ToString : Set_工程日報圖片3() End If If 起算 = 起始 + 3 Then 編號4_lb.Text = 清單_dgv(表頭(75), I).Value.ToString : 說明4_lb.Text = 清單_dgv("工作說明", I).Value.ToString 項目4_lb.Text = 清單_dgv(表頭(11), I).Value.ToString & " - " & 清單_dgv(表頭(155), I).Value.ToString 圖片庫_tb.Text = 清單_dgv("圖片庫", I).Value.ToString : 進度流水號_tb.Text = 清單_dgv("流水號", I).Value.ToString PA1 = 清單_dgv("流水號", I).Value.ToString : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") 流水4_tb.Text = 清單_dgv("流水號", I).Value.ToString : Set_工程日報圖片4() End If If 起算 > 起始 + 3 Then : Exit For : End If End If Next End Sub Private Sub 檔案名稱_tb_DragEnter(sender As Object, e As DragEventArgs) Handles 檔案名稱_tb.DragEnter If e.Data.GetDataPresent(DataFormats.FileDrop) Then : Dim files As String() Try files = CType(e.Data.GetData(DataFormats.FileDrop), String()) : 檔案名稱_tb.Text = files(files.Length - 1) Catch ex As Exception MessageBox.Show(ex.Message) Return End Try End If '-------確認檔案是圖片--------------------------------------------------------------------------------------------------------------- Dim 驗證 As String = "" : Dim 取變數 As String : 取變數 = Strings.StrReverse(檔案名稱_tb.Text) For i As Integer = 1 To 10 If i = 1 Then : 驗證 = Strings.Left(取變數, i) : Else If Strings.Mid(取變數, i, 1) = "." Then : 驗證 = Strings.StrReverse(驗證) : Exit For : Else : 驗證 &= Strings.Mid(取變數, i, 1) : End If End If Next If 驗證 = "PNG" Or 驗證 = "png" Or 驗證 = "GIF" Or 驗證 = "gif" Or 驗證 = "BMP" Or 驗證 = "bmp" Or 驗證 = "JPG" Or 驗證 = "jpg" Or 驗證 = "JPEG" Or 驗證 = "jpeg" Then 圖片_pb.Image = Image.FromFile(檔案名稱_tb.Text) End If Dim STR2 As Integer = 0 : 檔案路徑_tb.Text = 檔案名稱_tb.Text If 檔案名稱_tb.Text = "" Then : Else For i As Integer = 0 To 9999 : Dim STR1 As Integer = Strings.Len(檔案路徑_tb.Text) If Strings.Right((檔案路徑_tb.Text), 1) <> "\" Then : STR1 -= 1 : STR2 += 1 If STR1 = 0 Then : 檔案路徑_tb.Text = "" : 檔案名稱_tb.Text = "" : i = 9999 Else : 檔案路徑_tb.Text = Strings.Left((檔案路徑_tb.Text), STR1) : End If Else : 檔案路徑_tb.Text = Strings.Right((檔案名稱_tb.Text), STR2) : 檔案名稱_tb.Text = 檔案路徑_tb.Text : i = 9999 : End If Next End If '-------取得副檔名--------------------------------------------------------------------------------------------------------------- For I As Integer = 1 To 99 : 副檔名_tb.Text = Strings.Mid(Strings.StrReverse(檔案名稱_tb.Text), I, 1) If 副檔名_tb.Text = "." Then : 副檔名_tb.Text = Strings.StrReverse(Strings.Left(Strings.StrReverse(檔案名稱_tb.Text), I)) : I = 99 : End If Next '-------取得檔名--------------------------------------------------------------------------------------------------------------- Dim 檔名 As String : Dim 檔名長度 As Integer For I As Integer = 1 To 99 : 檔名 = Strings.Mid(Strings.StrReverse(檔案名稱_tb.Text), I, 1) If 檔名 = "." Then 檔名長度 = Len(檔案名稱_tb.Text) - I 檔案名稱_tb.Text = Strings.Left(檔案名稱_tb.Text, 檔名長度) : I = 99 End If Next End Sub Private Sub 檔案名稱_tb_DragDrop(ByVal sender As Object, ByVal e As DragEventArgs) Handles 檔案名稱_tb.DragDrop Dim files As Array = e.Data.GetData(DataFormats.FileDrop) For Each file As String In files 檔案名稱_tb.AppendText(file + Environment.NewLine) Next End Sub Private Sub 圖片_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片_pb.Click If IsNothing(圖片_pb.Image) = False Then : 圖片傳遞 = 圖片_pb.Image : 圖片放大視窗.ShowDialog() : End If End Sub Private Sub 圖片1_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片1_pb.Click If IsNothing(圖片1_pb.Image) = False Then : 圖片傳遞 = 圖片1_pb.Image : 圖片放大視窗.ShowDialog() : End If End Sub Private Sub 圖片2_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片2_pb.Click If IsNothing(圖片2_pb.Image) = False Then : 圖片傳遞 = 圖片2_pb.Image : 圖片放大視窗.ShowDialog() : End If End Sub Private Sub 圖片3_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片3_pb.Click If IsNothing(圖片3_pb.Image) = False Then : 圖片傳遞 = 圖片3_pb.Image : 圖片放大視窗.ShowDialog() : End If End Sub Private Sub 圖片4_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片4_pb.Click If IsNothing(圖片4_pb.Image) = False Then : 圖片傳遞 = 圖片4_pb.Image : 圖片放大視窗.ShowDialog() : End If End Sub Private Sub 順時鐘90度旋轉1_bt_Click(sender As Object, e As EventArgs) Handles 順時鐘90度旋轉1_bt.Click If IsNothing(圖片1_pb.Image) = True Then : Else : 圖片1_pb.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) : 圖片1_pb.Refresh() : 圖片1_pb.SizeMode = 4 : End If End Sub Private Sub 逆時鐘90度旋轉1_bt_Click(sender As Object, e As EventArgs) Handles 逆時鐘90度旋轉1_bt.Click If IsNothing(圖片1_pb.Image) = True Then : Else : 圖片1_pb.Image.RotateFlip(RotateFlipType.Rotate270FlipNone) : 圖片1_pb.Refresh() : 圖片1_pb.SizeMode = 4 : End If End Sub Private Sub 水平翻轉1_bt_Click(sender As Object, e As EventArgs) Handles 水平翻轉1_bt.Click If IsNothing(圖片1_pb.Image) = True Then : Else : 圖片1_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipY) : 圖片1_pb.Refresh() : 圖片1_pb.SizeMode = 4 : End If End Sub Private Sub 垂直翻轉1_bt_Click(sender As Object, e As EventArgs) Handles 垂直翻轉1_bt.Click If IsNothing(圖片1_pb.Image) = True Then : Else : 圖片1_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipX) : 圖片1_pb.Refresh() : 圖片1_pb.SizeMode = 4 : End If End Sub Private Sub 順時鐘90度旋轉2_bt_Click(sender As Object, e As EventArgs) Handles 順時鐘90度旋轉2_bt.Click If IsNothing(圖片2_pb.Image) = True Then : Else : 圖片2_pb.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) : 圖片2_pb.Refresh() : 圖片2_pb.SizeMode = 4 : End If End Sub Private Sub 逆時鐘90度旋轉2_bt_Click(sender As Object, e As EventArgs) Handles 逆時鐘90度旋轉2_bt.Click If IsNothing(圖片2_pb.Image) = True Then : Else : 圖片2_pb.Image.RotateFlip(RotateFlipType.Rotate270FlipNone) : 圖片2_pb.Refresh() : 圖片2_pb.SizeMode = 4 : End If End Sub Private Sub 水平翻轉2_bt_Click(sender As Object, e As EventArgs) Handles 水平翻轉2_bt.Click If IsNothing(圖片2_pb.Image) = True Then : Else : 圖片2_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipY) : 圖片2_pb.Refresh() : 圖片2_pb.SizeMode = 4 : End If End Sub Private Sub 垂直翻轉2_bt_Click(sender As Object, e As EventArgs) Handles 垂直翻轉2_bt.Click If IsNothing(圖片2_pb.Image) = True Then : Else : 圖片2_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipX) : 圖片2_pb.Refresh() : 圖片2_pb.SizeMode = 4 : End If End Sub Private Sub 順時鐘90度旋轉3_bt_Click(sender As Object, e As EventArgs) Handles 順時鐘90度旋轉3_bt.Click If IsNothing(圖片3_pb.Image) = True Then : Else : 圖片3_pb.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) : 圖片3_pb.Refresh() : 圖片3_pb.SizeMode = 4 : End If End Sub Private Sub 逆時鐘90度旋轉3_bt_Click(sender As Object, e As EventArgs) Handles 逆時鐘90度旋轉3_bt.Click If IsNothing(圖片3_pb.Image) = True Then : Else : 圖片3_pb.Image.RotateFlip(RotateFlipType.Rotate270FlipNone) : 圖片3_pb.Refresh() : 圖片3_pb.SizeMode = 4 : End If End Sub Private Sub 水平翻轉3_bt_Click(sender As Object, e As EventArgs) Handles 水平翻轉3_bt.Click If IsNothing(圖片3_pb.Image) = True Then : Else : 圖片3_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipY) : 圖片3_pb.Refresh() : 圖片3_pb.SizeMode = 4 : End If End Sub Private Sub 垂直翻轉3_bt_Click(sender As Object, e As EventArgs) Handles 垂直翻轉3_bt.Click If IsNothing(圖片3_pb.Image) = True Then : Else : 圖片3_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipX) : 圖片3_pb.Refresh() : 圖片3_pb.SizeMode = 4 : End If End Sub Private Sub 順時鐘90度旋轉4_bt_Click(sender As Object, e As EventArgs) Handles 順時鐘90度旋轉4_bt.Click If IsNothing(圖片4_pb.Image) = True Then : Else : 圖片4_pb.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) : 圖片4_pb.Refresh() : 圖片4_pb.SizeMode = 4 : End If End Sub Private Sub 逆時鐘90度旋轉4_bt_Click(sender As Object, e As EventArgs) Handles 逆時鐘90度旋轉4_bt.Click If IsNothing(圖片4_pb.Image) = True Then : Else : 圖片4_pb.Image.RotateFlip(RotateFlipType.Rotate270FlipNone) : 圖片4_pb.Refresh() : 圖片4_pb.SizeMode = 4 : End If End Sub Private Sub 水平翻轉4_bt_Click(sender As Object, e As EventArgs) Handles 水平翻轉4_bt.Click If IsNothing(圖片4_pb.Image) = True Then : Else : 圖片4_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipY) : 圖片4_pb.Refresh() : 圖片4_pb.SizeMode = 4 : End If End Sub Private Sub 垂直翻轉4_bt_Click(sender As Object, e As EventArgs) Handles 垂直翻轉4_bt.Click If IsNothing(圖片4_pb.Image) = True Then : Else : 圖片4_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipX) : 圖片4_pb.Refresh() : 圖片4_pb.SizeMode = 4 : End If End Sub Private Sub 翻譯_bt_Click(sender As Object, e As EventArgs) Handles 翻譯_bt.Click If 工作內容_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("沒有資料!!") : Else : MsgBox("Tidak ada Informasi!!") : End If : Else 翻譯 = Replace(工作內容_tb.Text, vbCrLf, " ") : MyModule2.執行翻譯() : 等待翻譯_tim.Enabled = True End If End Sub Private Sub 等待翻譯_tim_Tick(sender As Object, e As EventArgs) Handles 等待翻譯_tim.Tick Dim Str2 As String = System.Windows.Forms.Application.StartupPath : Dim stringReader As String : Dim fileReader As StreamReader If File.Exists("ch.txt") Then 等待翻譯_tim.Enabled = False fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\ch.txt") : stringReader = fileReader.ReadLine() : 工作內容_tb.Text = stringReader : fileReader.Close() fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\in.txt") : stringReader = fileReader.ReadLine() 工作內容_tb.Text = 工作內容_tb.Text & vbCrLf & stringReader : fileReader.Close() If 系統語言 = "繁體中文" Then : MsgBox("翻譯完成!!") : Else : MsgBox("Terjemahan Selesai!!") : End If ElseIf File.Exists(Str2 & "\ch.txt") Then 等待翻譯_tim.Enabled = False fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\ch.txt") : stringReader = fileReader.ReadLine() : 工作內容_tb.Text = stringReader : fileReader.Close() fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\in.txt") : stringReader = fileReader.ReadLine() 工作內容_tb.Text = 工作內容_tb.Text & vbCrLf & stringReader : fileReader.Close() If 系統語言 = "繁體中文" Then : MsgBox("翻譯完成!!") : Else : MsgBox("Terjemahan Selesai!!") : End If End If End Sub Private Sub 刪除圖片_bt_Click(sender As Object, e As EventArgs) Handles 刪除圖片_bt.Click Dim aa As MsgBoxResult = MsgBox(對話框(10), MsgBoxStyle.OkCancel) If aa = MsgBoxResult.Ok Then Dim SSA As String = InputBox(對話框(11)) If SSA = "YES" Then PA1 = 進度流水號_tb.Text : PA2 = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd") : PA3 = 編碼2_tb.Text : SQL_工程日報圖片刪除() Set_工程日報圖片() :: Set_工程清單() : 編碼2_tb.Text = "" End If End If End Sub Private Sub 刪除專案_bt_Click(sender As Object, e As EventArgs) Handles 刪除專案_bt.Click If 選擇項1_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("沒有資料!!") : Else : MsgBox("Tidak ada Informasi!!") : End If : Else Dim aa As MsgBoxResult = MsgBox(對話框(12), MsgBoxStyle.OkCancel) If aa = MsgBoxResult.Ok Then Dim SSA As String = InputBox(對話框(13)) If SSA = "YES" Then : PA1 = 選擇項1_tb.Text : SQL_工程進度項目刪除() : SQL_工程進度明細表刪除() For i As Integer = 0 To 圖庫清單_dgv.Rows.Count - 1 圖片庫 = 圖庫清單_dgv("資料庫", i).Value.ToString : SQL_連線字串_圖片資料庫() : SQL_工程日報圖片刪除_全部() Next Set_工程日報圖片() : Set_工程清單() : 編碼2_tb.Text = "" End If End If End If End Sub Private Sub 翻譯1_bt_Click(sender As Object, e As EventArgs) Handles 翻譯1_bt.Click If 項目_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("沒有資料!!") : Else : MsgBox("Tidak ada Informasi!!") : End If : Else 翻譯 = Replace(項目_tb.Text, vbCrLf, " ") : MyModule2.執行翻譯() : 等待翻譯1_tim.Enabled = True End If End Sub Private Sub 等待翻譯1_tim_Tick(sender As Object, e As EventArgs) Handles 等待翻譯1_tim.Tick Dim Str2 As String = System.Windows.Forms.Application.StartupPath : Dim stringReader As String : Dim fileReader As StreamReader If File.Exists("ch.txt") Then 等待翻譯1_tim.Enabled = False fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\ch.txt") : stringReader = fileReader.ReadLine() : 項目_tb.Text = stringReader : fileReader.Close() fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\in.txt") : stringReader = fileReader.ReadLine() 項目_tb.Text = 項目_tb.Text & " - " & stringReader : fileReader.Close() If 系統語言 = "繁體中文" Then : MsgBox("翻譯完成!!") : Else : MsgBox("Terjemahan Selesai!!") : End If ElseIf File.Exists(Str2 & "\ch.txt") Then 等待翻譯1_tim.Enabled = False fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\ch.txt") : stringReader = fileReader.ReadLine() : 項目_tb.Text = stringReader : fileReader.Close() fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\in.txt") : stringReader = fileReader.ReadLine() 項目_tb.Text = 項目_tb.Text & " - " & stringReader : fileReader.Close() If 系統語言 = "繁體中文" Then : MsgBox("翻譯完成!!") : Else : MsgBox("Terjemahan Selesai!!") : End If End If End Sub Private Sub TW_ch_CheckedChanged(sender As Object, e As EventArgs) Handles TW_ch.Click TW_ch.Checked = True : IN_ch.Checked = False : TW = TW_ch.Visible : EN = IN_ch.Visible End Sub Private Sub IN_ch_CheckedChanged(sender As Object, e As EventArgs) Handles IN_ch.Click TW_ch.Checked = False : IN_ch.Checked = True : TW = TW_ch.Visible : EN = IN_ch.Visible End Sub Private Sub 存檔_bt_Click(sender As Object, e As EventArgs) Handles 存檔_bt.Click If 已建檔_ch.Checked = True Then PA1 = 控制表流水_tb.Text : PA4 = 上午_cb.Text : PA5 = 下午_cb.Text : PA6 = 編碼_tb.Text : PA7 = 編碼1_tb.Text : SQL_工程日報控制表修改() End If If 選擇項1_tb.Text = "" Then : Else PA1 = 選擇項1_tb.Text : PA25 = 項目_tb.Text : SQL_工程進度項目修改() : Set_工程清單() End If End Sub Private Sub 報工日期_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 報工日期_dtp.ValueChanged Set_工程清單() : CanceL2_bt.PerformClick() End Sub Dim OldX, OldY As Long Dim drag As Boolean Private Sub 視窗2_pl_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗2_pl.MouseDown If e.Button = MouseButtons.Left Then : OldX = e.X : OldY = e.Y : drag = True : End If End Sub Private Sub 視窗2_pl_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗2_pl.MouseMove If drag Then : 視窗2_pl.Left = 視窗2_pl.Left + e.X - OldX : 視窗2_pl.Top = 視窗2_pl.Top + e.Y - OldY : End If End Sub Private Sub 視窗2_pl_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗2_pl.MouseUp drag = False End Sub End Class