Option Strict Off Imports System.IO Public Class 倉儲單據狀態看板 ReadOnly ds12 As New DataSet Dim KKKK As String Private Sub Set_清單() Dim ds1 As New DataSet : 清單_dgv.DataSource = Nothing : ds1.Clear() 清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 清單_dgv.ColumnHeadersHeight = 40 清單_dgv.AllowUserToAddRows = False If 小間距_ch.Checked = False And 中間距_ch.Checked = False And 大間距_ch.Checked = True Then 清單_dgv.RowTemplate.Height = 75 ElseIf 小間距_ch.Checked = False And 中間距_ch.Checked = True And 大間距_ch.Checked = False Then 清單_dgv.RowTemplate.Height = 45 ElseIf 小間距_ch.Checked = True And 中間距_ch.Checked = False And 大間距_ch.Checked = False Then 清單_dgv.RowTemplate.Height = 25 End If PA1 = KKKK : SQL_倉儲單據狀態看板_清單() da.Fill(ds1) : 清單_dgv.DataSource = ds1.Tables(0) : conn.Close() 清單_dgv.Columns(0).Visible = False : 清單_dgv.Columns(1).FillWeight = 120 : 清單_dgv.Columns(2).FillWeight = 110 : 清單_dgv.Columns(3).FillWeight = 190 清單_dgv.Columns(4).FillWeight = 75 : 清單_dgv.Columns(5).FillWeight = 70 : 清單_dgv.Columns(6).FillWeight = 140 : 清單_dgv.Columns(7).FillWeight = 60 清單_dgv.Columns(8).FillWeight = 140 : 清單_dgv.Columns(9).FillWeight = 100 : 清單_dgv.Columns(10).FillWeight = 85 : 清單_dgv.Columns(11).FillWeight = 100 清單_dgv.Columns(12).FillWeight = 85 : 清單_dgv.Columns(13).FillWeight = 100 : 清單_dgv.Columns(14).FillWeight = 85 : 清單_dgv.Columns(15).FillWeight = 100 清單_dgv.Columns(16).FillWeight = 100 : 清單_dgv.Columns(17).Visible = False : 清單_dgv.Columns(18).Visible = False 清單_dgv.Columns(4).DefaultCellStyle.Format = "#,##0" : 清單_dgv.Columns(5).DefaultCellStyle.Format = "#,##0" 清單_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 清單_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter 清單_dgv.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter : 清單_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter 清單_dgv.Columns(0).Frozen = True : 清單_dgv.Columns(1).Frozen = True : 清單_dgv.Columns(2).Frozen = True : 清單_dgv.Columns(3).Frozen = True 清單_dgv.Columns(4).Frozen = True : 清單_dgv.Columns(5).Frozen = True End Sub Private Sub Set_語言() 語言_dgv.DataSource = Nothing : ds12.Clear() 語言_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 語言_dgv.ColumnHeadersHeight = 25 語言_dgv.AllowUserToAddRows = False SQL_系統語言導入() da.Fill(ds12) : 語言_dgv.DataSource = ds12.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 = "指定出庫未審核_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 = "指定入庫未入庫_tb" Then : 指定入庫未入庫_tb.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 = "退料入庫未入庫_bt" Then : 退料入庫未入庫_bt.Text = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_品名" Then : 表頭(12) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_備註" Then : 表頭(14) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_採購單號" Then : 表頭(24) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_入庫" Then : 表頭(45) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_出庫" Then : 表頭(46) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_倉儲單號" Then : 表頭(47) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_指定倉庫" Then : 表頭(48) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_狀態" Then : 表頭(71) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_申請人" Then : 表頭(19) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_申請日期" Then : 表頭(20) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_核准人" Then : 表頭(21) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_核准日期" Then : 表頭(22) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_倉庫作業" Then : 表頭(72) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_作業日期" Then : 表頭(73) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_指定入倉" Then : 表頭(74) = 語言_dgv("內容", i).Value.ToString : End If If 語言_dgv("控件", i).Value.ToString = "清單_dgv_使用工地" Then : 表頭(75) = 語言_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(510) = True : 介面 = "H510" : 語言轉換讀取() SQL_清單欄位查詢() If Acdr.Read() Then 小間距_ch.Checked = Acdr("L_1_1") : 中間距_ch.Checked = Acdr("L_2_1") : 大間距_ch.Checked = Acdr("L_3_1") End If : Access1.Close() 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(510) = False : MyModule1.虛擬桌面開啟() End Sub Private Sub 語轉扭_bt_Click(sender As Object, e As EventArgs) Handles 語轉扭_bt.Click 介面 = "H510" : 語言轉換讀取() : Set_清單() 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 清單_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(1, e.RowIndex).Value.ToString <> 清單_dgv(1, 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 圖片檔1_pb.Image = Nothing : 圖片檔2_pb.Image = Nothing PA2 = 清單_dgv.Rows(e.RowIndex).Cells("料號原則").Value : 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 PA3 = 清單_dgv.Rows(e.RowIndex).Cells("圖檔編號").Value : SQL_物料圖庫_圖檔讀取二() While dr.Read() = True Dim unused1 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 If End Sub Private Sub 指定出庫未審核_bt_Click(sender As Object, e As EventArgs) Handles 指定出庫未審核_bt.Click 指定出庫未審核_bt.Enabled = False : 指定出庫已作廢_bt.Enabled = True : 指定出庫未出庫_bt.Enabled = True : 指定入庫未入庫_tb.Enabled = True 領料出庫未審核_bt.Enabled = True : 領料出庫已作廢_bt.Enabled = True : 領料出庫未出庫_bt.Enabled = True : 退料入庫未入庫_bt.Enabled = True KKKK = "(倉儲明細表.狀態 LIKE N'指定出庫') AND (倉儲明細表.審核人 LIKE N'') AND (倉儲明細表.倉庫作業 LIKE N'')" Set_清單() End Sub Private Sub 指定出庫已作廢_bt_Click(sender As Object, e As EventArgs) Handles 指定出庫已作廢_bt.Click 指定出庫未審核_bt.Enabled = True : 指定出庫已作廢_bt.Enabled = False : 指定出庫未出庫_bt.Enabled = True : 指定入庫未入庫_tb.Enabled = True 領料出庫未審核_bt.Enabled = True : 領料出庫已作廢_bt.Enabled = True : 領料出庫未出庫_bt.Enabled = True : 退料入庫未入庫_bt.Enabled = True KKKK = "(倉儲明細表.狀態 LIKE N'指定出庫') AND (倉儲明細表.審核人 LIKE N'作廢%') AND (倉儲明細表.倉庫作業 LIKE N'')" Set_清單() End Sub Private Sub 指定出庫未出庫_bt_Click(sender As Object, e As EventArgs) Handles 指定出庫未出庫_bt.Click 指定出庫未審核_bt.Enabled = True : 指定出庫已作廢_bt.Enabled = True : 指定出庫未出庫_bt.Enabled = False : 指定入庫未入庫_tb.Enabled = True 領料出庫未審核_bt.Enabled = True : 領料出庫已作廢_bt.Enabled = True : 領料出庫未出庫_bt.Enabled = True : 退料入庫未入庫_bt.Enabled = True KKKK = "(倉儲明細表.狀態 LIKE N'指定出庫') AND (倉儲明細表.審核人 NOT LIKE N'作廢%') AND (倉儲明細表.倉庫作業 LIKE N'') AND (倉儲明細表.審核人 NOT LIKE N'')" Set_清單() End Sub Private Sub 指定入庫未入庫_tb_Click(sender As Object, e As EventArgs) Handles 指定入庫未入庫_tb.Click 指定出庫未審核_bt.Enabled = True : 指定出庫已作廢_bt.Enabled = True : 指定出庫未出庫_bt.Enabled = True : 指定入庫未入庫_tb.Enabled = False 領料出庫未審核_bt.Enabled = True : 領料出庫已作廢_bt.Enabled = True : 領料出庫未出庫_bt.Enabled = True : 退料入庫未入庫_bt.Enabled = True KKKK = "(倉儲明細表.狀態 LIKE N'指定入庫') AND (倉儲明細表.倉庫作業 LIKE N'')" Set_清單() End Sub Private Sub 領料出庫未審核_bt_Click(sender As Object, e As EventArgs) Handles 領料出庫未審核_bt.Click 指定出庫未審核_bt.Enabled = True : 指定出庫已作廢_bt.Enabled = True : 指定出庫未出庫_bt.Enabled = True : 指定入庫未入庫_tb.Enabled = True 領料出庫未審核_bt.Enabled = False : 領料出庫已作廢_bt.Enabled = True : 領料出庫未出庫_bt.Enabled = True : 退料入庫未入庫_bt.Enabled = True KKKK = "(倉儲明細表.狀態 LIKE N'領料出庫') AND (倉儲明細表.審核人 LIKE N'') AND (倉儲明細表.倉庫作業 LIKE N'')" Set_清單() End Sub Private Sub 領料出庫已作廢_bt_Click(sender As Object, e As EventArgs) Handles 領料出庫已作廢_bt.Click 指定出庫未審核_bt.Enabled = True : 指定出庫已作廢_bt.Enabled = True : 指定出庫未出庫_bt.Enabled = True : 指定入庫未入庫_tb.Enabled = True 領料出庫未審核_bt.Enabled = True : 領料出庫已作廢_bt.Enabled = False : 領料出庫未出庫_bt.Enabled = True : 退料入庫未入庫_bt.Enabled = True KKKK = "(倉儲明細表.狀態 LIKE N'領料出庫') AND (倉儲明細表.審核人 LIKE N'作廢%') AND (倉儲明細表.倉庫作業 LIKE N'')" Set_清單() End Sub Private Sub 領料出庫未出庫_bt_Click(sender As Object, e As EventArgs) Handles 領料出庫未出庫_bt.Click 指定出庫未審核_bt.Enabled = True : 指定出庫已作廢_bt.Enabled = True : 指定出庫未出庫_bt.Enabled = True : 指定入庫未入庫_tb.Enabled = True 領料出庫未審核_bt.Enabled = True : 領料出庫已作廢_bt.Enabled = True : 領料出庫未出庫_bt.Enabled = False : 退料入庫未入庫_bt.Enabled = True KKKK = "(倉儲明細表.狀態 LIKE N'領料出庫') AND (倉儲明細表.審核人 NOT LIKE N'作廢%') AND (倉儲明細表.倉庫作業 LIKE N'') AND (倉儲明細表.審核人 NOT LIKE N'')" Set_清單() End Sub Private Sub 退料入庫未入庫_bt_Click(sender As Object, e As EventArgs) Handles 退料入庫未入庫_bt.Click 指定出庫未審核_bt.Enabled = True : 指定出庫已作廢_bt.Enabled = True : 指定出庫未出庫_bt.Enabled = True : 指定入庫未入庫_tb.Enabled = True 領料出庫未審核_bt.Enabled = True : 領料出庫已作廢_bt.Enabled = True : 領料出庫未出庫_bt.Enabled = True : 退料入庫未入庫_bt.Enabled = False KKKK = "(倉儲明細表.狀態 LIKE N'退料入庫') AND (倉儲明細表.倉庫作業 LIKE N'')" Set_清單() End Sub Private Sub 小間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 小間距_ch.Click 小間距_ch.Checked = True : 中間距_ch.Checked = False : 大間距_ch.Checked = False : MyModule1.間距設定存檔_1() : Set_清單() End Sub Private Sub 中間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 中間距_ch.Click 小間距_ch.Checked = False : 中間距_ch.Checked = True : 大間距_ch.Checked = False : MyModule1.間距設定存檔_2() : Set_清單() End Sub Private Sub 大間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 大間距_ch.Click 小間距_ch.Checked = False : 中間距_ch.Checked = False : 大間距_ch.Checked = True : MyModule1.間距設定存檔_3() : Set_清單() End Sub End Class