Sin descripción
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

派工人數紀錄表.vb 30KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391
  1. Imports System.Windows.Forms.DataVisualization.Charting
  2. Public Class 派工人數紀錄表
  3. ReadOnly ds8 As New DataSet
  4. Dim ESTR As String
  5. Dim EDR As Integer
  6. Dim 開始計算 As Boolean
  7. DIM 對話框(0) As String
  8. Private Sub Set_派工清單()
  9. Dim ds1 As New DataSet
  10. 清單_dgv.DataSource = Nothing : ds1.Clear()
  11. 清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  12. 清單_dgv.ColumnHeadersHeight = 25 : 清單_dgv.AllowUserToAddRows = False : 清單_dgv.RowTemplate.Height = 25
  13. PA2 = Strings.Left(Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd"), 4) : PA3 = Strings.Mid(Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd"), 6, 2)
  14. PA4 = Strings.Right(Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd"), 2) : PA5 = 合約編號2_tb.Text
  15. If 已完工顯示_ch.Checked = False Then : SQL2 = "AND (工程進度表.專案結束 IS NULL OR 工程進度表.專案結束 = 0)" : Else : SQL2 = "" : End If
  16. SQL_派工人數紀錄表()
  17. da.Fill(ds1) : 清單_dgv.DataSource = ds1.Tables(0) : conn.Close()
  18. 'Set_清單_dgv_下拉式清單1()
  19. 清單_dgv.Columns(0).FillWeight = 40 : 清單_dgv.Columns(1).Visible = False : 清單_dgv.Columns(2).Visible = False : 清單_dgv.Columns(3).Visible = False
  20. 清單_dgv.Columns(4).FillWeight = 80 : 清單_dgv.Columns(5).FillWeight = 40 : 清單_dgv.Columns(6).FillWeight = 200 : 清單_dgv.Columns(7).FillWeight = 80
  21. 清單_dgv.Columns(8).FillWeight = 50 : 清單_dgv.Columns(9).FillWeight = 80 : 清單_dgv.Columns(10).FillWeight = 80 : 清單_dgv.Columns(11).FillWeight = 200
  22. 清單_dgv.Columns(12).FillWeight = 50
  23. 清單_dgv.Columns(13).Visible = False : 清單_dgv.Columns(14).Visible = False ': 清單_dgv.Columns(15).Visible = False
  24. 清單_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 清單_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  25. 清單_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 清單_dgv.Columns(8).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  26. 清單_dgv.Columns(9).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 清單_dgv.Columns(10).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  27. 清單_dgv.Columns(13).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  28. 清單_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  29. For i As Integer = 1 To 11 : 清單_dgv.Columns(i).ReadOnly = True : Next
  30. For I As Integer = 0 To 清單_dgv.Rows.Count - 1
  31. If IsDBNull(清單_dgv.Rows(I).Cells(表頭(0)).Value) = True Then : 清單_dgv.Rows(I).Cells(表頭(0)).Value = False : End If
  32. 清單_dgv.Rows(I).Cells(表頭(73)).Value = Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd")
  33. If 清單_dgv.Rows(I).Cells(表頭(15)).Value.ToString = "" Then : 清單_dgv.Rows(I).Cells(表頭(15)).Value = "0" : 清單_dgv.Rows(I).Cells("原始").Value = "0" : End If
  34. Next
  35. End Sub
  36. Private Sub Set_清單_dgv_下拉式清單1()
  37. Dim Col As New DataGridViewComboBoxColumn With {
  38. .FillWeight = 200,
  39. .DataPropertyName = "案件主管"
  40. }
  41. SQL執行主管下拉()
  42. Col.Items.Clear() : Col.Items.Add("")
  43. While (dr.Read()) : Col.Items.Add(dr("姓名")) : End While : conn.Close()
  44. Col.HeaderText = 表頭(120) : Col.Name = "案件主管"
  45. 清單_dgv.Columns.Insert(12, Col)
  46. End Sub
  47. Private Sub 彙總清單()
  48. Set_日期清單()
  49. If 日期_dgv.Rows.Count > 0 Then
  50. Dim ds1 As New DataSet
  51. 彙總_dgv.DataSource = Nothing : ds1.Clear()
  52. 彙總_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  53. 彙總_dgv.ColumnHeadersHeight = 35 : 彙總_dgv.AllowUserToAddRows = False : 彙總_dgv.RowTemplate.Height = 25
  54. PA5 = 查詢日期_cb.Text : PA6 = 查詢日期1_cb.Text : PA7 = 工程執行主管1_cb.Text : PA8 = 合約編號_tb.Text
  55. SQL_人員統計彙總表()
  56. da.Fill(ds1) : 彙總_dgv.DataSource = ds1.Tables(0) : conn.Close()
  57. 彙總_dgv.Columns(0).Visible = False : 彙總_dgv.Columns(1).Width = 80 : 彙總_dgv.Columns(2).Width = 30
  58. 彙總_dgv.Columns(3).Width = 120 : 彙總_dgv.Columns(4).Width = 50
  59. 彙總_dgv.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  60. 彙總_dgv.Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  61. 彙總_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  62. For II As Integer = 5 To NN1 + 5
  63. 彙總_dgv.Columns(II).FillWeight = 50 : 彙總_dgv.Columns(II).DefaultCellStyle.Format = "#,##0"
  64. 彙總_dgv.Columns(II).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  65. Next
  66. Set_彙總計算() : Set_彙總畫面() : 表格繪製2()
  67. If 彙總_dgv.Rows.Count = 0 Then : Chart3.Series.Clear() : End If
  68. End If
  69. End Sub
  70. Private Sub Set_彙總計算()
  71. For I As Integer = 0 To 彙總_dgv.Rows.Count - 1
  72. 彙總_dgv.Rows(I).Cells(4).Value = "0"
  73. For II As Integer = 5 To NN1 + 5
  74. If 彙總_dgv.Rows(I).Cells(II).Value.ToString() = "" Then : 彙總_dgv.Rows(I).Cells(II).Value = "0" : End If
  75. 彙總_dgv.Rows(I).Cells(4).Value = CInt(彙總_dgv.Rows(I).Cells(4).Value.ToString) + CInt(彙總_dgv.Rows(I).Cells(II).Value.ToString())
  76. Next
  77. Next
  78. End Sub
  79. Private Sub Set_彙總畫面()
  80. For I As Integer = 0 To 彙總_dgv.Rows.Count - 1
  81. For II As Integer = 5 To NN1 + 5
  82. If IsDBNull(彙總_dgv.Rows(I).Cells(II).Value) Then
  83. 彙總_dgv.Rows(I).Cells(II).Style.ForeColor = 彙總_dgv.Rows(I).Cells(II).Style.BackColor
  84. Else
  85. If 彙總_dgv.Rows(I).Cells(II).Value = 0 Then
  86. 彙總_dgv.Rows(I).Cells(II).Style.ForeColor = 彙總_dgv.Rows(I).Cells(II).Style.BackColor
  87. Else
  88. If 深色風格 = False Then
  89. 彙總_dgv.Rows(I).Cells(II).Style.ForeColor = Color.Black
  90. Else
  91. 彙總_dgv.Rows(I).Cells(II).Style.ForeColor = Color.White
  92. End If
  93. End If
  94. End If
  95. Next
  96. Next
  97. End Sub
  98. Private Sub 表格繪製2()
  99. '-------線狀圖------------------------------------------------------
  100. Chart3.Series.Clear() : Chart3.ChartAreas(0).AxisX.Minimum = 0
  101. Chart3.ChartAreas(0).BackColor = Color.Transparent : Chart3.Legends(0).BackColor = Color.Transparent
  102. Chart3.Series.Add("每日派工總數") : Chart3.Series("每日派工總數").ChartType = SeriesChartType.Column
  103. Chart3.Series("每日派工總數").IsVisibleInLegend = False
  104. Chart3.Series("每日派工總數").IsValueShownAsLabel = True
  105. Chart3.Series("每日派工總數").IsXValueIndexed = True
  106. For i As Integer = 0 To 日期_dgv.Rows.Count - 1
  107. Chart3.Series("每日派工總數").Points.AddXY(日期_dgv.Rows(i).Cells("日").Value.ToString, 日期_dgv.Rows(i).Cells("人數").Value.ToString)
  108. Next
  109. Chart3.Series.Add("每日總數") : Chart3.Series("每日總數").ChartType = SeriesChartType.Line
  110. Chart3.Series("每日總數").IsVisibleInLegend = False
  111. For i As Integer = 0 To 日期_dgv.Rows.Count - 1
  112. Chart3.Series("每日總數").Points.AddXY(日期_dgv.Rows(i).Cells("日").Value.ToString, 日期_dgv.Rows(i).Cells("人數").Value.ToString)
  113. Next
  114. Chart3.ChartAreas(0).BackColor = Color.Transparent : Chart3.Legends(0).BackColor = Color.Transparent
  115. If 深色風格 = False Then
  116. Chart3.Series("每日派工總數").LabelForeColor = Color.Black
  117. Chart3.Series("每日總數").LabelForeColor = Color.Black
  118. Chart3.Legends(0).ForeColor = Color.Black
  119. Chart3.ChartAreas(0).AxisX.LineColor = Color.Black : Chart3.ChartAreas(0).AxisY.LineColor = Color.Black
  120. Chart3.ChartAreas(0).AxisX.LabelStyle.ForeColor = Color.Black : Chart3.ChartAreas(0).AxisY.LabelStyle.ForeColor = Color.Black
  121. Else
  122. Chart3.Series("每日派工總數").LabelForeColor = Color.White
  123. Chart3.Series("每日總數").LabelForeColor = Color.White
  124. Chart3.Legends(0).ForeColor = Color.White
  125. Chart3.ChartAreas(0).AxisX.LineColor = Color.White : Chart3.ChartAreas(0).AxisY.LineColor = Color.White
  126. Chart3.ChartAreas(0).AxisX.LabelStyle.ForeColor = Color.White : Chart3.ChartAreas(0).AxisY.LabelStyle.ForeColor = Color.White
  127. End If
  128. End Sub
  129. Private Sub Set_日期清單()
  130. Dim ds1 As New DataSet : 日期_dgv.DataSource = Nothing : ds1.Clear()
  131. 日期_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  132. 日期_dgv.ColumnHeadersHeight = 25 : 日期_dgv.AllowUserToAddRows = False
  133. PA5 = 查詢日期_cb.Text : PA6 = 查詢日期1_cb.Text
  134. SQL_派工日期人數()
  135. da.Fill(ds1) : 日期_dgv.DataSource = ds1.Tables(0) : conn.Close()
  136. For I As Integer = 0 To 日期_dgv.Rows.Count - 1
  137. If I = 0 Then : 清單列表 = "[" & 日期_dgv.Rows(I).Cells(0).Value.ToString()
  138. Else : 清單列表 = 清單列表 & "], [" & 日期_dgv.Rows(I).Cells(0).Value.ToString() : End If
  139. If I = 日期_dgv.Rows.Count - 1 Then : 清單列表 &= "]" : End If : NN1 = I
  140. Next
  141. End Sub
  142. Private Sub Set_進度表清單()
  143. Dim ds1 As New DataSet : 進度表清單_dgv.DataSource = Nothing : ds1.Clear()
  144. 進度表清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  145. 進度表清單_dgv.ColumnHeadersHeight = 25 : 進度表清單_dgv.AllowUserToAddRows = False
  146. SQL_進度表清單()
  147. da.Fill(ds1) : 進度表清單_dgv.DataSource = ds1.Tables(0) : conn.Close()
  148. End Sub
  149. Private Sub 地方主管下拉清單讀取()
  150. SQL執行主管下拉() : 主管_cb.Items.Clear() : 主管_cb.Items.Add("") : While (dr.Read()) : 主管_cb.Items.Add(dr("姓名")) : End While : conn.Close()
  151. End Sub
  152. Private Sub 執行主管下拉清單讀取()
  153. SQL執行主管下拉() : 工程執行主管_cb.Items.Clear() : 工程執行主管1_cb.Items.Clear() : 工程執行主管_cb.Items.Add("") : 工程執行主管1_cb.Items.Add("")
  154. While (dr.Read()) : 工程執行主管_cb.Items.Add(dr("姓名")) : 工程執行主管1_cb.Items.Add(dr("姓名")) : End While : conn.Close()
  155. End Sub
  156. Private Sub 年份清單下拉清單讀取()
  157. SQL_年份清單() : 查詢日期_cb.Items.Clear() : While (dr.Read()) : 查詢日期_cb.Items.Add(dr("年份")) : End While : conn.Close()
  158. End Sub
  159. Private Sub 甲方條件下拉清單讀取()
  160. SQL合約條件讀取() : 合約編號1_cb.Items.Clear() : 合約編號1_cb.Items.Add("") : 合約編號2_cb.Items.Clear() : 合約編號2_cb.Items.Add("")
  161. While (dr.Read()) : 合約編號1_cb.Items.Add(dr("約號甲方")) : 合約編號2_cb.Items.Add(dr("約號甲方")) : End While : conn.Close()
  162. End Sub
  163. Private Sub 語言轉換讀取()
  164. If 系統語言 = "繁體中文" Then : 語言 = "CH" : ElseIf 系統語言 = "English" Then : 語言 = "EN" : ElseIf 系統語言 = "Indonesian" Then : 語言 = "IN" : End If
  165. Me.Text = 系統語言字典("H001-176-" & 語言) : 甲方_lb.Text = 系統語言字典("H110-118-" & 語言) : 甲方1_lb.Text = 系統語言字典("H110-118-" & 語言)
  166. 控制表_tp.Text = 系統語言字典("H405-100-" & 語言) : 彙總表_tp.Text = 系統語言字典("H405-101-" & 語言) : 工程執行主管_lb.Text = 系統語言字典("G000-200-" & 語言)
  167. 工程執行主管1_lb.Text = 系統語言字典("G000-200-" & 語言) : 合約編號清單_bt.Text = 系統語言字典("H405-102-" & 語言) : 合約編號清單2_bt.Text = 系統語言字典("H405-102-" & 語言)
  168. 報工日期_lb.Text = 系統語言字典("H405-103-" & 語言) : 下一天_bt.Text = 系統語言字典("H405-106-" & 語言)
  169. 指定存檔_bt.Text = 系統語言字典("G000-110-" & 語言) : 已完工顯示_ch.Text = 系統語言字典("H405-107-" & 語言) : 派工月份_lb.Text = 系統語言字典("H405-108-" & 語言)
  170. 表頭(0) = 系統語言字典("H405-109-" & 語言) : 表頭(134) = 系統語言字典("H501-152-" & 語言) : 表頭(11) = 系統語言字典("H511-116-" & 語言)
  171. 表頭(155) = 系統語言字典("H405-110-" & 語言) : 表頭(1) = 系統語言字典("H405-111-" & 語言) : 表頭(2) = 系統語言字典("H405-112-" & 語言)
  172. 表頭(3) = 系統語言字典("H405-113-" & 語言) : 表頭(73) = 系統語言字典("H405-114-" & 語言) : 表頭(120) = 系統語言字典("H405-115-" & 語言)
  173. 表頭(15) = 系統語言字典("H405-116-" & 語言) : 表頭(83) = 系統語言字典("H405-117-" & 語言) : 對話框(0) = 系統語言字典("H204-133-" & 語言)
  174. End Sub
  175. Private Sub 派工人數紀錄表_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  176. Me.MdiParent = HX_PGS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  177. 風格() : H(405) = True : 介面 = "H405" : 語言轉換讀取() : 顯示說明(999, False)
  178. 彙總_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
  179. End Sub
  180. Private Sub 派工人數紀錄表_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown
  181. 地方主管下拉清單讀取() : 甲方條件下拉清單讀取() : 年份清單下拉清單讀取() : 執行主管下拉清單讀取() : 工程執行主管_cb.Text = gUserName
  182. If CInt(登入人級別) <= 3 Then : PA1 = "%%" : ElseIf CInt(登入人級別) > 3 Then : PA1 = gUserName : End If
  183. Set_派工清單() : 開始計算 = False : 查詢日期_cb.Text = Year(Today) : 查詢日期1_cb.SelectedIndex = Month(Today) - 1 : 彙總清單() : 開始計算 = True
  184. End Sub
  185. Private Sub 派工人數紀錄表_Closed(sender As Object, e As EventArgs) Handles MyBase.Closed
  186. H(405) = False : MyMod.虛擬桌面開啟()
  187. End Sub
  188. Private Sub 語轉扭_bt_Click(sender As Object, e As EventArgs) Handles 語轉扭_bt.Click
  189. 介面 = "H405" : 語言轉換讀取() : Set_派工清單() : 彙總清單()
  190. End Sub
  191. Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove
  192. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  193. End Sub
  194. Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress
  195. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  196. End Sub
  197. Private Sub 彙總_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 彙總_dgv.RowPostPaint
  198. Dim linePen As New Pen(Color.Blue, 2) : Set_彙總畫面()
  199. If e.RowIndex = 彙總_dgv.Rows.Count - 1 Then
  200. Exit Sub
  201. Else
  202. If 彙總_dgv(表頭(134), e.RowIndex).Value.ToString <> 彙總_dgv(表頭(134), e.RowIndex + 1).Value.ToString Then
  203. Dim startX As Integer = IIf(彙總_dgv.RowHeadersVisible, 彙總_dgv.RowHeadersWidth, 0)
  204. Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  205. Dim endX As Integer = startX + 彙總_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 清單_dgv.HorizontalScrollingOffset
  206. e.Graphics.DrawLine(linePen, startX, startY, endX, startY)
  207. Exit Sub
  208. End If
  209. End If
  210. End Sub
  211. Private Sub 清單_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 清單_dgv.RowPostPaint
  212. Dim linePen As New Pen(Color.Blue, 2)
  213. If e.RowIndex = 清單_dgv.Rows.Count - 1 Then
  214. Exit Sub
  215. Else
  216. If 清單_dgv(表頭(134), e.RowIndex).Value.ToString <> 清單_dgv(表頭(134), e.RowIndex + 1).Value.ToString Then
  217. Dim startX As Integer = IIf(清單_dgv.RowHeadersVisible, 清單_dgv.RowHeadersWidth, 0)
  218. Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  219. Dim endX As Integer = startX + 清單_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 清單_dgv.HorizontalScrollingOffset
  220. e.Graphics.DrawLine(linePen, startX, startY, endX, startY)
  221. Exit Sub
  222. End If
  223. End If
  224. End Sub
  225. Private Sub 清單_dgv_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 清單_dgv.MouseUp
  226. 'If 清單_dgv.SelectedCells.Count = 1 Then : MsgBox(清單_dgv.SelectedCells(0).ColumnIndex & " " & 清單_dgv.SelectedCells(0).RowIndex) : End If
  227. If 清單_dgv.SelectedCells.Count > 0 Then
  228. If 清單_dgv.SelectedCells(0).ColumnIndex = 11 Then
  229. CB選擇清單(主管_cb) : 清單_dgv(11, 清單_dgv.SelectedCells(0).RowIndex).Value = 主管_cb.Text
  230. End If
  231. End If
  232. End Sub
  233. Private Sub 工程執行主管_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 工程執行主管_cb.SelectedIndexChanged
  234. If 工程執行主管_cb.Text = "" Then : PA1 = "%%" : Else : PA1 = 工程執行主管_cb.Text : End If : Set_派工清單()
  235. End Sub
  236. Private Sub 工程執行主管_cb_Click(sender As Object, e As EventArgs) Handles 工程執行主管_cb.Click
  237. CB選擇清單(工程執行主管_cb)
  238. End Sub
  239. Private Sub 報工日期_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 報工日期_dtp.ValueChanged
  240. If 工程執行主管_cb.Text = "" Then : PA1 = "%%" : Else : PA1 = 工程執行主管_cb.Text : End If : Set_派工清單()
  241. End Sub
  242. Private Sub 上一天_bt_Click(sender As Object, e As EventArgs) Handles 上一天_bt.Click
  243. 報工日期_dtp.Value = 報工日期_dtp.Value.AddDays(-1)
  244. End Sub
  245. Private Sub 今天_bt_Click(sender As Object, e As EventArgs) Handles 今天_bt.Click
  246. 報工日期_dtp.Value = Today()
  247. End Sub
  248. Private Sub 下一天_bt_Click(sender As Object, e As EventArgs) Handles 下一天_bt.Click
  249. 報工日期_dtp.Value = 報工日期_dtp.Value.AddDays(1)
  250. End Sub
  251. Private Sub 人員統計表流水號()
  252. SQL_人員統計表_最後一筆資料()
  253. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("流水號").ToString, 9)) : Else : EDR = 0 : End If
  254. conn.Close() : EDR += 1
  255. If EDR < 10 Then : ESTR = "PE" & "00000000" & EDR : ElseIf EDR > 9 And EDR < 100 Then : ESTR = "PE" & "0000000" & EDR
  256. ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "PE" & "000000" & EDR : ElseIf EDR > 999 And EDR < 10000 Then : ESTR = "PE" & "00000" & EDR
  257. ElseIf EDR > 9999 And EDR < 100000 Then : ESTR = "PE" & "0000" & EDR : ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "PE" & "000" & EDR
  258. ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "PE" & "00" & EDR : ElseIf EDR > 9999999 And EDR < 10000000 Then : ESTR = "PE" & "0" & EDR
  259. ElseIf EDR > 99999999 Then : ESTR = "PE" & EDR : End If : PA9 = ESTR
  260. End Sub
  261. Private Sub 指定存檔_bt_Click(sender As Object, e As EventArgs) Handles 指定存檔_bt.Click
  262. For I As Integer = 0 To 清單_dgv.Rows.Count - 1
  263. If 清單_dgv.Rows(I).Cells(表頭(15)).Value.ToString = "" Then : 清單_dgv.Rows(I).Cells(表頭(15)).Value = "0" : End If
  264. If 清單_dgv.Rows(I).Cells(表頭(15)).Value.ToString = "0" And 清單_dgv.Rows(I).Cells("原始").Value.ToString = "0" Then : Else
  265. PA = 清單_dgv.Rows(I).Cells("專案流水").Value.ToString : PA2 = Strings.Left(Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd"), 4)
  266. PA3 = Strings.Mid(Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd"), 6, 2) : PA4 = Strings.Right(Strings.Format(報工日期_dtp.Value, "yyyy/MM/dd"), 2)
  267. PA6 = 清單_dgv.Rows(I).Cells(表頭(15)).Value.ToString : PA7 = 清單_dgv.Rows(I).Cells("案件主管").Value.ToString : PA8 = 清單_dgv.Rows(I).Cells(表頭(134)).Value.ToString
  268. If 清單_dgv.Rows(I).Cells("流水號").Value.ToString = "" Then
  269. 人員統計表流水號() : SQL_人員統計表_新增資料()
  270. Else
  271. PA9 = 清單_dgv.Rows(I).Cells("流水號").Value.ToString : SQL_人員統計表_修改資料()
  272. End If
  273. End If
  274. PA = 清單_dgv.Rows(I).Cells("專案流水").Value.ToString : BL1 = 清單_dgv.Rows(I).Cells(表頭(0)).Value : SQL_工程進度表_派工開關()
  275. Next : Set_派工清單() : MGB(對話框(0),1)
  276. End Sub
  277. Private Sub 查詢日期_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 查詢日期_cb.SelectedIndexChanged
  278. If 開始計算 = True Then : 彙總清單() : End If
  279. End Sub
  280. Private Sub 查詢日期_cb_Click(sender As Object, e As EventArgs) Handles 查詢日期_cb.Click
  281. CB選擇清單(查詢日期_cb)
  282. End Sub
  283. Private Sub 查詢日期1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 查詢日期1_cb.SelectedIndexChanged
  284. If 開始計算 = True Then : 彙總清單() : End If
  285. End Sub
  286. Private Sub 查詢日期1_cb_Click(sender As Object, e As EventArgs) Handles 查詢日期1_cb.Click
  287. CB選擇清單(查詢日期1_cb)
  288. End Sub
  289. Private Sub 合約編號1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 合約編號1_cb.SelectedIndexChanged
  290. 合約編號_tb.Text = "" : PA = 合約編號1_cb.Text : Set_進度表清單() : If 合約編號1_cb.Text = "" Then : 彙總清單() : End If
  291. End Sub
  292. Private Sub 合約編號1_cb_Click(sender As Object, e As EventArgs) Handles 合約編號1_cb.Click
  293. CB選擇清單(合約編號1_cb)
  294. End Sub
  295. Private Sub 合約編號2_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 合約編號2_cb.SelectedIndexChanged
  296. 合約編號2_tb.Text = "" : PA = 合約編號2_cb.Text : Set_進度表清單() : If 合約編號2_cb.Text = "" Then : Set_派工清單() : End If
  297. End Sub
  298. Private Sub 合約編號2_cb_Click(sender As Object, e As EventArgs) Handles 合約編號2_cb.Click
  299. CB選擇清單(合約編號2_cb)
  300. End Sub
  301. Private Sub 合約編號清單2_bt_Click(sender As Object, e As EventArgs) Handles 合約編號清單2_bt.Click
  302. If 進度表清單_dgv.Rows.Count > 2999 Then : MGB(系統語言字典("G000-153-" & 語言), 1) : Else
  303. For I As Integer = 0 To 3000 : PPBB(I) = "" : Next
  304. For I As Integer = 0 To 進度表清單_dgv.Rows.Count - 1 : PPBB(I) = 進度表清單_dgv(表頭(134), I).Value.ToString : NN1 = I : Next
  305. 下拉清單_1.ShowDialog()
  306. For I As Integer = 0 To 進度表清單_dgv.Rows.Count - 1
  307. If PPAA = 進度表清單_dgv(表頭(134), I).Value.ToString Then : 合約編號2_tb.Text = 進度表清單_dgv(表頭(134), I).Value.ToString : Exit For : End If
  308. Next : Set_派工清單()
  309. End If
  310. End Sub
  311. Private Sub 工程執行主管1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 工程執行主管1_cb.SelectedIndexChanged
  312. 彙總清單()
  313. End Sub
  314. Private Sub 工程執行主管1_cb_Click(sender As Object, e As EventArgs) Handles 工程執行主管1_cb.Click
  315. CB選擇清單(工程執行主管1_cb)
  316. End Sub
  317. Private Sub 合約編號清單_bt_Click(sender As Object, e As EventArgs) Handles 合約編號清單_bt.Click
  318. If 進度表清單_dgv.Rows.Count > 2999 Then : MGB(系統語言字典("G000-153-" & 語言), 1) : Else
  319. For I As Integer = 0 To 3000 : PPBB(I) = "" : Next
  320. For I As Integer = 0 To 進度表清單_dgv.Rows.Count - 1 : PPBB(I) = 進度表清單_dgv(表頭(134), I).Value.ToString : NN1 = I : Next
  321. 下拉清單_1.ShowDialog()
  322. For I As Integer = 0 To 進度表清單_dgv.Rows.Count - 1
  323. If PPAA = 進度表清單_dgv(表頭(134), I).Value.ToString Then : 合約編號_tb.Text = 進度表清單_dgv(表頭(134), I).Value.ToString : Exit For : End If
  324. Next : 彙總清單()
  325. End If
  326. End Sub
  327. Private Sub 已完工顯示_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 已完工顯示_ch.Click
  328. Set_派工清單()
  329. End Sub
  330. Private Sub TabControl1_ChangeUICues(ByVal sender As Object, ByVal e As EventArgs) Handles TabControl1.SelectedIndexChanged
  331. If TabControl1.SelectedIndex = 1 Then : 彙總清單() : End If
  332. End Sub
  333. Private Sub 風格()
  334. If 深色風格 = False Then
  335. Me.BackColor = SystemColors.Control : 控制表_tp.BackColor = SystemColors.Control : 彙總表_tp.BackColor = SystemColors.Control
  336. 工程執行主管_lb.ForeColor = Color.FromArgb(192, 0, 0) : 工程執行主管1_lb.ForeColor = Color.FromArgb(192, 0, 0)
  337. 報工日期_lb.ForeColor = Color.FromArgb(192, 0, 192)
  338. 派工月份_lb.ForeColor = Color.Blue
  339. 甲方_lb.ForeColor = Color.Black : 甲方1_lb.ForeColor = Color.Black : 已完工顯示_ch.ForeColor = Color.Black
  340. 甲方_lb.BackColor = SystemColors.Control : 甲方1_lb.BackColor = SystemColors.Control
  341. 工程執行主管_cb.BackColor = Color.White : 工程執行主管_cb.ForeColor = Color.Blue : 合約編號2_cb.BackColor = Color.White : 合約編號2_cb.ForeColor = Color.Blue
  342. 工程執行主管1_cb.BackColor = Color.White : 工程執行主管1_cb.ForeColor = Color.Blue : 合約編號1_cb.BackColor = Color.White : 合約編號1_cb.ForeColor = Color.Blue
  343. 合約編號2_tb.BackColor = Color.White : 合約編號2_tb.ForeColor = Color.Black : 查詢日期_cb.BackColor = Color.White : 查詢日期_cb.ForeColor = Color.Black
  344. 查詢日期1_cb.BackColor = Color.White : 查詢日期1_cb.ForeColor = Color.Black : 合約編號_tb.BackColor = Color.White : 合約編號_tb.ForeColor = Color.Black
  345. 合約編號清單2_bt.BackColor = Color.White : 合約編號清單2_bt.ForeColor = Color.Black : 指定存檔_bt.BackColor = Color.White : 指定存檔_bt.ForeColor = Color.Black
  346. 合約編號清單_bt.BackColor = Color.White : 合約編號清單_bt.ForeColor = Color.Black : 語轉扭_bt.BackColor = Color.White : 語轉扭_bt.ForeColor = Color.Black
  347. 上一天_bt.BackColor = Color.White : 上一天_bt.ForeColor = Color.Blue : 今天_bt.BackColor = Color.White : 今天_bt.ForeColor = Color.Blue
  348. 下一天_bt.BackColor = Color.White : 下一天_bt.ForeColor = Color.Blue
  349. 清單_dgv.EnableHeadersVisualStyles = True : 清單_dgv.BackgroundColor = Color.White : 清單_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  350. 清單_dgv.AlternatingRowsDefaultCellStyle.BackColor = Color.LightPink
  351. 清單_dgv.DefaultCellStyle.BackColor = Color.White : 清單_dgv.DefaultCellStyle.ForeColor = Color.Black
  352. 彙總_dgv.EnableHeadersVisualStyles = True : 彙總_dgv.BackgroundColor = Color.White : 彙總_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  353. 彙總_dgv.AlternatingRowsDefaultCellStyle.BackColor = Color.LightPink
  354. 彙總_dgv.DefaultCellStyle.BackColor = Color.White : 彙總_dgv.DefaultCellStyle.ForeColor = Color.Black
  355. Else
  356. Me.BackColor = Color.Black : 控制表_tp.BackColor = Color.Black : 彙總表_tp.BackColor = Color.Black
  357. 工程執行主管_lb.ForeColor = Color.LightPink : 工程執行主管1_lb.ForeColor = Color.LightPink
  358. 報工日期_lb.ForeColor = Color.Violet
  359. 派工月份_lb.ForeColor = Color.LightBlue
  360. 甲方_lb.ForeColor = Color.White : 甲方1_lb.ForeColor = Color.White : 已完工顯示_ch.ForeColor = Color.White
  361. 甲方_lb.BackColor = Color.Black : 甲方1_lb.BackColor = Color.Black
  362. 工程執行主管_cb.BackColor = Color.DimGray : 工程執行主管_cb.ForeColor = Color.LightBlue : 合約編號2_cb.BackColor = Color.DimGray : 合約編號2_cb.ForeColor = Color.LightBlue
  363. 工程執行主管1_cb.BackColor = Color.DimGray : 工程執行主管1_cb.ForeColor = Color.LightBlue : 合約編號1_cb.BackColor = Color.DimGray : 合約編號1_cb.ForeColor = Color.LightBlue
  364. 合約編號2_tb.BackColor = Color.DimGray : 合約編號2_tb.ForeColor = Color.White : 查詢日期_cb.BackColor = Color.DimGray : 查詢日期_cb.ForeColor = Color.White
  365. 查詢日期1_cb.BackColor = Color.DimGray : 查詢日期1_cb.ForeColor = Color.White : 合約編號_tb.BackColor = Color.DimGray : 合約編號_tb.ForeColor = Color.White
  366. 合約編號清單2_bt.BackColor = Color.DimGray : 合約編號清單2_bt.ForeColor = Color.White : 指定存檔_bt.BackColor = Color.DimGray : 指定存檔_bt.ForeColor = Color.White
  367. 合約編號清單_bt.BackColor = Color.DimGray : 合約編號清單_bt.ForeColor = Color.White : 語轉扭_bt.BackColor = Color.DimGray : 語轉扭_bt.ForeColor = Color.White
  368. 上一天_bt.BackColor = Color.DimGray : 上一天_bt.ForeColor = Color.LightBlue : 今天_bt.BackColor = Color.DimGray : 今天_bt.ForeColor = Color.LightBlue
  369. 下一天_bt.BackColor = Color.DimGray : 下一天_bt.ForeColor = Color.LightBlue
  370. 清單_dgv.EnableHeadersVisualStyles = False : 清單_dgv.BackgroundColor = Color.DimGray : 清單_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  371. 清單_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 清單_dgv.AlternatingRowsDefaultCellStyle.BackColor = Color.DimGray
  372. 清單_dgv.DefaultCellStyle.BackColor = Color.Black : 清單_dgv.DefaultCellStyle.ForeColor = Color.White
  373. 彙總_dgv.EnableHeadersVisualStyles = False : 彙總_dgv.BackgroundColor = Color.DimGray : 彙總_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  374. 彙總_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 彙總_dgv.AlternatingRowsDefaultCellStyle.BackColor = Color.DimGray
  375. 彙總_dgv.DefaultCellStyle.BackColor = Color.Black : 彙總_dgv.DefaultCellStyle.ForeColor = Color.White
  376. End If
  377. End Sub
  378. End Class