123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134 |
- Option Strict Off
- Public Class 一般物料請購單核准
- Private ReadOnly ds, ds1, ds3 As New DataSet
- Dim 已超出 As Boolean
- Private Sub Set_使用者清單()
- 明細_dgv.DataSource = Nothing : ds.Clear()
- 明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
- 明細_dgv.ColumnHeadersHeight = 25
- 明細_dgv.AllowUserToAddRows = False
- 明細_dgv.RowTemplate.Height = 35
- SQL_一般物料請購單明細表1()
- da.Fill(ds) : 明細_dgv.DataSource = ds.Tables(0) : conn.Close()
-
- 明細_dgv.Columns(0).Visible = False : 明細_dgv.Columns(1).FillWeight = 80 : 明細_dgv.Columns(2).FillWeight = 200 : 明細_dgv.Columns(3).FillWeight = 200
- 明細_dgv.Columns(5).FillWeight = 80 : 明細_dgv.Columns(6).FillWeight = 80 : 明細_dgv.Columns(7).FillWeight = 80 : 明細_dgv.Columns(8).FillWeight = 305
- 明細_dgv.Columns(4).FillWeight = 200
- 明細_dgv.Columns(5).DefaultCellStyle.Format = "#,##0.00" : 明細_dgv.Columns(6).DefaultCellStyle.Format = "#,##0.00" : 明細_dgv.Columns(7).DefaultCellStyle.Format = "#,##0.00"
- 明細_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
- 明細_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
- 明細_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
- 明細_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
- 明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter
- 明細_dgv.Columns("項次").ReadOnly = True : 明細_dgv.Columns("金額").ReadOnly = True
-
- 總金額_tb.Text = "0.00"
- For i As Integer = 0 To 明細_dgv.Rows.Count - 1
- 總金額_tb.Text = Val(總金額_tb.Text) + 明細_dgv.Rows(i).Cells("金額").Value
- Next i
- 總金額_tb.Text = Format(Val(總金額_tb.Text), "#,##0.00")
- End Sub
- Private Sub Set_清單1()
- 未審核_dgv.DataSource = Nothing : ds1.Clear()
- 未審核_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
- 未審核_dgv.ColumnHeadersHeight = 25
- 未審核_dgv.AllowUserToAddRows = False
- SQL_未審核清單()
- da.Fill(ds1) : 未審核_dgv.DataSource = ds1.Tables(0) : conn.Close()
-
- 未審核_dgv.Columns(0).FillWeight = 150 : 未審核_dgv.Columns(1).FillWeight = 115 : 未審核_dgv.Columns(2).FillWeight = 115
- 未審核_dgv.Columns(3).Visible = False : 未審核_dgv.Columns(4).Visible = False
- End Sub
- Private Sub Set_清單3()
- 作廢_dgv.DataSource = Nothing : ds3.Clear()
- 作廢_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
- 作廢_dgv.ColumnHeadersHeight = 25
- 作廢_dgv.AllowUserToAddRows = False
- SQL_未核准清單()
- da.Fill(ds3) : 作廢_dgv.DataSource = ds3.Tables(0) : conn.Close()
-
- 作廢_dgv.Columns(0).FillWeight = 150 : 作廢_dgv.Columns(1).FillWeight = 115 : 作廢_dgv.Columns(2).FillWeight = 115
- 作廢_dgv.Columns(3).Visible = False : 作廢_dgv.Columns(4).Visible = False
- End Sub
- Private Sub Set_日期格式轉換()
- DTP = Format(Today(), "yyyy/MM/dd") & "-" & Format(TimeOfDay(), "hh:mm:ss") : DTP1 = Format(Today(), "yyyyMMdd")
- End Sub
- Private Sub 一般物料請購單核准_Load(sender As Object, e As EventArgs) Handles MyBase.Load
- Me.MdiParent = WINPROFIT_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
- Set_清單1() : Set_清單3()
- 明細_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
- 未審核_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
- 作廢_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
- End Sub
- Private Sub DataGridView2_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 未審核_dgv.CellClick
- If e.RowIndex = -1 Then : Else
- 一般物料請購單號_tb.Text = 未審核_dgv(0, e.RowIndex).Value.ToString
- 申請人_tb.Text = 未審核_dgv(1, e.RowIndex).Value.ToString
- 申請日期_dtp.Value = 未審核_dgv(2, e.RowIndex).Value.ToString
- 請購單核准_bt.Enabled = True : 請購單作廢_bt.Enabled = True : Set_使用者清單()
- End If
- End Sub
- Private Sub DataGridView4_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 作廢_dgv.CellClick
- If e.RowIndex = -1 Then : Else
- 一般物料請購單號_tb.Text = 作廢_dgv(0, e.RowIndex).Value.ToString
- 申請人_tb.Text = 作廢_dgv(1, e.RowIndex).Value.ToString
- 申請日期_dtp.Value = 作廢_dgv(2, e.RowIndex).Value.ToString
- 請購單核准_bt.Enabled = False : 請購單作廢_bt.Enabled = False : Set_使用者清單()
- End If
- End Sub
- Private Sub Button3_Click(sender As Object, e As EventArgs) Handles 請購單核准_bt.Click
- Set_日期格式轉換()
- If 一般物料請購單號_tb.Text = "" Then
- MsgBox("沒有選擇請購單據")
- Else
- SQL_一般物料核准() : conn.Close()
- MsgBox("單據 " & 一般物料請購單號_tb.Text & " 核准完成")
- Set_清單1() : Set_清單3()
- 一般物料請購單號_tb.Text = "" : 總金額_tb.Text = "" : 申請人_tb.Text = ""
- 明細_dgv.DataSource = Nothing : ds.Clear()
- End If
- End Sub
- Private Sub Button5_Click(sender As Object, e As EventArgs) Handles 請購單作廢_bt.Click
- Set_日期格式轉換()
- If 一般物料請購單號_tb.Text = "" Then
- MsgBox("沒有選擇請購單據")
- Else
- Dim aa As MsgBoxResult
- aa = MsgBox("確定要作廢該筆資料?", MsgBoxStyle.OkCancel)
- If aa = MsgBoxResult.Ok Then
- SQL_一般物料作廢() : conn.Close()
- MsgBox("單據 " & 一般物料請購單號_tb.Text & " 已作廢")
- Set_清單1() : Set_清單3()
- 一般物料請購單號_tb.Text = "" : 總金額_tb.Text = "" : 申請人_tb.Text = ""
- 明細_dgv.DataSource = Nothing : ds.Clear()
- End If
- End If
- End Sub
-
- Private Sub 明細_dgv_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 明細_dgv.MouseUp
- If 明細_dgv.SelectedCells.Count = 1 Then
- 已超出 = False
- End If
- If 明細_dgv.SelectedCells.Count > 0 Then
- '設定滑鼠點擊DGV時候的範圍,超出範圍時有可能不是數字所以不計算
- If 明細_dgv.SelectedCells(0).ColumnIndex = 5 Or 明細_dgv.SelectedCells(0).ColumnIndex = 7 Then
- If 已超出 = False Then
- Dim x As Double = 0
- For i As Integer = 0 To 明細_dgv.SelectedCells.Count - 1
- '明細_dgv.SelectedCells.Item(i).ColumnIndex + 8 是因為該DGV顯示項與計算像剛好差8格,使用時要注意可直接計算的不需要加數字。
- x += Val(明細_dgv.Rows(明細_dgv.SelectedCells.Item(i).RowIndex).Cells(明細_dgv.SelectedCells.Item(i).ColumnIndex).Value)
- Next i
- '將計算好的資料放置到指定的控件中
-
- WINPROFIT_ERP_SYS.合計_TSSL.Text = "合計 : " & Strings.Format(x, "#,##0")
- Else
-
- WINPROFIT_ERP_SYS.合計_TSSL.Text = "合計 : " & Strings.Format(0, "#,##0")
- End If
- Else
- 已超出 = True
- WINPROFIT_ERP_SYS.合計_TSSL.Text = "合計 : " & Strings.Format(0, "#,##0")
- End If
- End If
- End Sub
- End Class
|