123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173 |
- Public Class 合約驗收控制表
- ReadOnly ds2 As New DataSet
- Dim 存檔, 簽回檔 As Boolean
- Private Sub Set_驗收清單()
- 驗收單_dgv.DataSource = Nothing : ds2.Clear()
- 驗收單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
- 驗收單_dgv.ColumnHeadersHeight = 40 : 驗收單_dgv.AllowUserToAddRows = False
- PA46 = 合約編號1_cb.Text : PA47 = 工程期1_ch.Text
- If 全部資料_ch.Checked = True And 請款未結束_ch.Checked = False And 請款已結束_ch.Checked = False Then
- SQL2 = "WHERE 約號甲方 Like N'%" & PA46 & "%' AND 合約期數 LIKE N'%" & PA47 & "%' AND (合約編號 LIKE N'%" & PA & "%' OR 客戶名稱 LIKE N'%" & PA & "%' OR
- 負責人A LIKE N'%" & PA & "%' OR 工程地點 LIKE N'%" & PA & "%' OR 客戶地址 LIKE N'%" & PA & "%' OR 工程名稱_中 LIKE N'%" & PA & "%' OR
- 工程名稱_英 LIKE N'%" & PA & "%') AND (合約停止 = 0 OR 合約停止 IS NULL) AND (報價放行 = 1) "
- ElseIf 全部資料_ch.Checked = False And 請款未結束_ch.Checked = True And 請款已結束_ch.Checked = False Then
- SQL2 = "WHERE (驗收結果 = 0 OR 驗收結果 IS NULL) AND 約號甲方 Like N'%" & PA46 & "%' AND 合約期數 LIKE N'%" & PA47 & "%' AND (合約編號 LIKE N'%" & PA & "%' OR
- 客戶名稱 LIKE N'%" & PA & "%' OR 負責人A LIKE N'%" & PA & "%' OR 工程地點 LIKE N'%" & PA & "%' OR 客戶地址 LIKE N'%" & PA & "%' OR
- 工程名稱_中 LIKE N'%" & PA & "%' OR 工程名稱_英 LIKE N'%" & PA & "%') AND (合約停止 = 0 OR 合約停止 IS NULL) AND (報價放行 = 1) "
- ElseIf 全部資料_ch.Checked = False And 請款未結束_ch.Checked = False And 請款已結束_ch.Checked = True Then
- SQL2 = "WHERE 驗收結果 = 1 AND 約號甲方 Like N'%" & PA46 & "%' AND 合約期數 LIKE N'%" & PA47 & "%' AND (合約編號 LIKE N'%" & PA & "%' OR
- 客戶名稱 LIKE N'%" & PA & "%' OR 負責人A LIKE N'%" & PA & "%' OR 工程地點 LIKE N'%" & PA & "%' OR 客戶地址 LIKE N'%" & PA & "%' OR
- 工程名稱_中 LIKE N'%" & PA & "%' OR 工程名稱_英 LIKE N'%" & PA & "%') AND (合約停止 = 0 OR 合約停止 IS NULL) AND (報價放行 = 1) "
- End If
- SQL_合約驗收控制表查詢()
- da.Fill(ds2) : 驗收單_dgv.DataSource = ds2.Tables(0) : conn.Close()
- 驗收單_dgv.Columns(0).FillWeight = 120 : 驗收單_dgv.Columns(1).FillWeight = 350 : 驗收單_dgv.Columns(2).FillWeight = 50 : 驗收單_dgv.Columns(3).FillWeight = 100
- 驗收單_dgv.Columns(4).FillWeight = 100 : 驗收單_dgv.Columns(5).FillWeight = 60 : 驗收單_dgv.Columns(6).FillWeight = 100 : 驗收單_dgv.Columns(7).FillWeight = 40
- 驗收單_dgv.Columns(8).FillWeight = 40 : 驗收單_dgv.Columns(9).FillWeight = 200 : 驗收單_dgv.Columns(10).FillWeight = 200
- 驗收單_dgv.Columns("簽回").FillWeight = 40 : 驗收單_dgv.Columns("簽回檔圖庫").Visible = False
- 驗收單_dgv.Columns("工期").DefaultCellStyle.Format = "#,##0" : 驗收單_dgv.Columns("已完成/未完成天數").DefaultCellStyle.Format = "#,##0"
- 驗收單_dgv.Columns("工期").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
- 驗收單_dgv.Columns("已完成/未完成天數").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
- 驗收單_dgv.Columns("立約日期").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
- 驗收單_dgv.Columns("驗收開始日期").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
- 驗收單_dgv.Columns("驗收完成日期").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
- 驗收單_dgv.Columns("保固期限").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
- Dim 驗收日 As String
- For i As Integer = 0 To 驗收單_dgv.Rows.Count - 1
- If IsDBNull(驗收單_dgv("簽回", i).Value) = True Then : 驗收單_dgv("簽回", i).Value = False : End If
- If 驗收單_dgv.Rows(i).Cells("驗收開始日期").Value.ToString = "" Then
- 驗收日 = Today()
- Else
- 驗收日 = 驗收單_dgv.Rows(i).Cells("驗收開始日期").Value.ToString
- End If
- 驗收單_dgv.Rows(i).Cells("已完成/未完成天數").Value = DateDiff("d", 驗收單_dgv.Rows(i).Cells("立約日期").Value.ToString, 驗收日)
- Next
- If 系統分區控制 = True Then
- Set_清單_dgv_下拉式清單1() : 驗收單_dgv.Columns(12).Visible = False
- 驗收單_dgv.Columns("工地驗收備註").Visible = False : 驗收單_dgv.Columns("驗收備註").Visible = True
- Else
- 驗收單_dgv.Columns("工地驗收備註").Visible = True : 驗收單_dgv.Columns("工地驗收備註").FillWeight = 200
- 驗收單_dgv.Columns("驗收備註").Visible = False
- End If
- End Sub
- Private Sub Set_清單_dgv_下拉式清單1()
- Dim Col As New DataGridViewComboBoxColumn With {
- .FillWeight = 100,
- .DataPropertyName = "工程主管"
- }
- SQL執行主管下拉()
- Col.Items.Clear() : Col.Items.Add("")
- While (dr.Read()) : Col.Items.Add(dr("姓名")) : End While : conn.Close()
- Col.HeaderText = "工程主管" : Col.Name = "工程主管"
- 驗收單_dgv.Columns.Insert(11, Col)
- 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 合約驗收控制表_Load(sender As Object, e As EventArgs) Handles MyBase.Load
- Me.MdiParent = HX_PGS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
- 甲方條件下拉清單讀取() : Set_驗收清單() : 合約報價單_Siz()
- If 系統分區控制 = True Then : 驗收完成_bt.Text = "驗收完成" : 指定存檔_bt.Enabled = True : Else : 驗收完成_bt.Text = "修改存檔" : 指定存檔_bt.Enabled = False : End If
- End Sub
- Private Sub 合約驗收控制表_Closed(sender As Object, e As EventArgs) Handles MyBase.Closed
- MyModule1.虛擬桌面開啟()
- End Sub
- Private Sub 合約報價單_Siz()
- MyModule1.清單字體大小調整()
- 驗收單_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value)
- 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("驗收開始日期", e.RowIndex).Value.ToString <> "" And 驗收單_dgv("驗收開始日期", 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
- 圖片庫 = 驗收單_dgv("簽回檔圖庫", e.RowIndex).Value.ToString : 簽回檔 = 驗收單_dgv("簽回", e.RowIndex).Value
- 合約編號_tb.Text = 驗收單_dgv("合約編號", e.RowIndex).Value.ToString : 保固_cb.Text = 驗收單_dgv("保固期限", e.RowIndex).Value.ToString
- 立約日期_dtp.Value = 驗收單_dgv("立約日期", e.RowIndex).Value.ToString : 合約工期_nud.Value = 驗收單_dgv("工期", e.RowIndex).Value.ToString
- If 系統分區控制 = True Then : 備註_tb.Text = 驗收單_dgv("驗收備註", e.RowIndex).Value.ToString
- Else : 備註_tb.Text = 驗收單_dgv("工地驗收備註", e.RowIndex).Value.ToString : End If
- If 驗收單_dgv("驗收開始日期", e.RowIndex).Value.ToString = "" Then : 驗收日期_dtp.Value = Today() : 存檔 = False
- Else : 驗收日期_dtp.Value = 驗收單_dgv("驗收開始日期", e.RowIndex).Value.ToString : 存檔 = True : End If
- If 驗收單_dgv("驗收完成日期", e.RowIndex).Value.ToString = "" Then : 驗收完成_dtp.Value = Today()
- Else : 驗收完成_dtp.Value = 驗收單_dgv("驗收完成日期", e.RowIndex).Value.ToString : End If
- 工程天數_nud.Value = DateDiff("d", 立約日期_dtp.Value, 驗收日期_dtp.Value) : 日期差異_nud.Value = 合約工期_nud.Value - 工程天數_nud.Value
- End If
- End Sub
- Private Sub 合約編號1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 合約編號1_cb.SelectedIndexChanged
- PA = 關鍵字搜尋_tb.Text : Set_驗收清單()
- End Sub
- Private Sub 工程期1_ch_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 工程期1_ch.SelectedIndexChanged
- PA = 關鍵字搜尋_tb.Text : Set_驗收清單()
- End Sub
- Private Sub 全部資料_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 全部資料_ch.Click
- PA = 關鍵字搜尋_tb.Text : 全部資料_ch.Checked = True : 請款未結束_ch.Checked = False : 請款已結束_ch.Checked = False : Set_驗收清單()
- End Sub
- Private Sub 請款未結束_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 請款未結束_ch.Click
- PA = 關鍵字搜尋_tb.Text : 全部資料_ch.Checked = False : 請款未結束_ch.Checked = True : 請款已結束_ch.Checked = False : Set_驗收清單()
- End Sub
- Private Sub 請款已結束_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 請款已結束_ch.Click
- PA = 關鍵字搜尋_tb.Text : 全部資料_ch.Checked = False : 請款未結束_ch.Checked = False : 請款已結束_ch.Checked = True : Set_驗收清單()
- End Sub
- Private Sub 查詢_bt_Click(sender As Object, e As EventArgs) Handles 查詢_bt.Click
- PA = 關鍵字搜尋_tb.Text : Set_驗收清單()
- End Sub
- Private Sub 驗收完成_bt_Click(sender As Object, e As EventArgs) Handles 驗收完成_bt.Click
- If 合約編號_tb.Text = "" Then
- If 系統語言 = "繁體中文" Then : MsgBox("請先選擇要完成驗收的合約!!") : Else : MsgBox("Silakan pilih kontrak terlebih dahulu!!") : End If : Else
- If 系統分區控制 = True Then
- If 存檔 = False Then
- If 系統語言 = "繁體中文" Then : MsgBox("該合約沒有開始驗收,所以無法完成驗收!!")
- Else : MsgBox("Kontrak belum memulai penerimaan, jadi penerimaan tidak dapat diselesaikan!!") : End If : Else
- If 保固_cb.Text = "" Then
- If 系統語言 = "繁體中文" Then : MsgBox("沒有保固期限,無法存檔!!") : Else : MsgBox("Tidak ada masa garansi dan tidak dapat diarsipkan!!") : End If : Else
- If 驗收日期_dtp.Value > 驗收完成_dtp.Value Then
- If 系統語言 = "繁體中文" Then : MsgBox("驗收完成日不可能小於驗收開始日期!!")
- Else : MsgBox("Tanggal penyelesaian penerimaan tidak boleh kurang dari tanggal mulai penerimaan!!") : End If : Else
- Dim SS, SS1 As String
- If 系統語言 = "繁體中文" Then : SS = "驗收完成日期為 " : SS1 = " 是否正確??"
- Else : SS = "Tanggal penyelesaian penerimaan adalah " : SS1 = " apakah benar atau tidak??" : End If
- Dim aa As MsgBoxResult = MsgBox(SS & Strings.Format(驗收完成_dtp.Value, "yyyy/MM/dd") & SS1, MsgBoxStyle.OkCancel)
- If aa = MsgBoxResult.Ok Then
- PA = 合約編號_tb.Text : PA1 = Strings.Format(驗收完成_dtp.Value, "yyyy/MM/dd") : PA2 = "1" : PA3 = 備註_tb.Text : PA4 = 保固_cb.Text
- SQL_控制表_驗收修改2() : PA = "" : Set_驗收清單() : 存檔 = False
- If 系統語言 = "繁體中文" Then : MsgBox("驗收回報完成!!") : Else : MsgBox("Laporan penerimaan selesai!!") : End If
- End If
- End If
- End If
- End If
- Else
- PA = 合約編號_tb.Text : PA3 = 備註_tb.Text : SQL_控制表_驗收修改3() : PA = "" : Set_驗收清單()
- If 系統語言 = "繁體中文" Then : MsgBox("備註存檔完成!!") : Else : MsgBox("Arsip selesai!!") : End If
- End If
- End If
- End Sub
- Private Sub 指定存檔_bt_Click(sender As Object, e As EventArgs) Handles 指定存檔_bt.Click
- For I As Integer = 0 To 驗收單_dgv.Rows.Count - 1
- PA = 驗收單_dgv("合約編號", I).Value.ToString : PA3 = 驗收單_dgv("工程主管", I).Value.ToString : SQL_控制表_驗收修改4()
- Next : If 系統語言 = "繁體中文" Then : MsgBox("工程主管指定完成!!") : Else : MsgBox("Ditunjuk oleh supervisor teknik!!") : 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("Silakan pilih kontrak terlebih dahulu!!") : End If : Else
- If 簽回檔 = False Then : If 系統語言 = "繁體中文" Then : MsgBox("該合約還沒有建立驗收簽回文件!!") : Else : MsgBox("Dokumen belum diterima!!") : End If : Else
- PA1 = 合約編號_tb.Text : PA2 = "驗收" : 文件查閱視窗.ShowDialog()
- End If
- End If
- End Sub
- End Class
|