No Description
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 18KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. Public Class 合約請款控制表
  2. ReadOnly ds8 As New DataSet
  3. Dim 簽回檔 As Boolean
  4. Private Sub Set_請款清單()
  5. Dim ds2 As New DataSet
  6. 請款單_dgv.DataSource = Nothing : ds2.Clear()
  7. 請款單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  8. 請款單_dgv.ColumnHeadersHeight = 25 : 請款單_dgv.AllowUserToAddRows = False
  9. PA46 = 合約編號1_cb.Text : PA47 = 工程期1_ch.Text
  10. If 全部資料_ch.Checked = True And 請款未結束_ch.Checked = False And 請款已結束_ch.Checked = False Then
  11. SQL2 = "WHERE 合約控制表.約號甲方 Like N'%" & PA46 & "%' AND 合約控制表.合約期數 LIKE N'%" & PA47 & "%' AND (合約控制表.合約編號 LIKE N'%" & PA & "%' OR
  12. 合約控制表.客戶名稱 LIKE N'%" & PA & "%' OR 合約控制表.負責人A LIKE N'%" & PA & "%' OR 合約控制表.工程地點 LIKE N'%" & PA & "%' OR
  13. 合約控制表.客戶地址 LIKE N'%" & PA & "%' OR 合約控制表.工程名稱_中 LIKE N'%" & PA & "%' OR
  14. 合約控制表.工程名稱_英 LIKE N'%" & PA & "%') AND (合約控制表.合約停止 = 0 OR 合約控制表.合約停止 IS NULL) AND (報價放行 = 1) "
  15. ElseIf 全部資料_ch.Checked = False And 請款未結束_ch.Checked = True And 請款已結束_ch.Checked = False Then
  16. SQL2 = "WHERE 合約控制表.剩餘款 <> 0 AND 合約控制表.約號甲方 Like N'%" & PA46 & "%' AND 合約控制表.合約期數 LIKE N'%" & PA47 & "%' AND
  17. (合約控制表.合約編號 LIKE N'%" & PA & "%' OR 合約控制表.客戶名稱 LIKE N'%" & PA & "%' OR 合約控制表.負責人A LIKE N'%" & PA & "%' OR
  18. 合約控制表.工程地點 LIKE N'%" & PA & "%' OR 合約控制表.客戶地址 LIKE N'%" & PA & "%' OR 合約控制表.工程名稱_中 LIKE N'%" & PA & "%' OR
  19. 合約控制表.工程名稱_英 LIKE N'%" & PA & "%') AND (合約控制表.合約停止 = 0 OR 合約控制表.合約停止 IS NULL) AND (報價放行 = 1) "
  20. ElseIf 全部資料_ch.Checked = False And 請款未結束_ch.Checked = False And 請款已結束_ch.Checked = True Then
  21. SQL2 = "WHERE 合約控制表.剩餘款 = 0 AND 合約控制表.約號甲方 Like N'%" & PA46 & "%' AND 合約控制表.合約期數 LIKE N'%" & PA47 & "%' AND
  22. (合約控制表.合約編號 LIKE N'%" & PA & "%' OR 合約控制表.客戶名稱 LIKE N'%" & PA & "%' OR 合約控制表.負責人A LIKE N'%" & PA & "%' OR
  23. 合約控制表.工程地點 LIKE N'%" & PA & "%' OR 合約控制表.客戶地址 LIKE N'%" & PA & "%' OR 合約控制表.工程名稱_中 LIKE N'%" & PA & "%' OR
  24. 合約控制表.工程名稱_英 LIKE N'%" & PA & "%') AND (合約控制表.合約停止 = 0 OR 合約控制表.合約停止 IS NULL) AND (報價放行 = 1) "
  25. End If
  26. If 系統語言 = "繁體中文" Then : SQL3 = "工程名稱_中" : Else : SQL3 = "工程名稱_英" : End If
  27. SQL_合約請款控制表查詢()
  28. da.Fill(ds2) : 請款單_dgv.DataSource = ds2.Tables(0) : conn.Close()
  29. Set_進度條顯示2() : Set_進度條顯示1()
  30. 請款單_dgv.Columns(0).FillWeight = 120 : 請款單_dgv.Columns(1).FillWeight = 300 : 請款單_dgv.Columns("比例1").Visible = False : 請款單_dgv.Columns("比例2").Visible = False
  31. 請款單_dgv.Columns("簽回").FillWeight = 40 : 請款單_dgv.Columns("簽回檔圖庫").Visible = False
  32. 請款單_dgv.Columns(表頭(27)).DefaultCellStyle.Format = "#,##0" : 請款單_dgv.Columns(表頭(180)).DefaultCellStyle.Format = "#,##0"
  33. 請款單_dgv.Columns(表頭(181)).DefaultCellStyle.Format = "#,##0" : 請款單_dgv.Columns(表頭(182)).DefaultCellStyle.Format = "#,##0"
  34. 請款單_dgv.Columns(表頭(183)).DefaultCellStyle.Format = "#,##0" : 請款單_dgv.Columns(表頭(184)).DefaultCellStyle.Format = "#,##0"
  35. 請款單_dgv.Columns(表頭(185)).DefaultCellStyle.Format = "#,##0" : 請款單_dgv.Columns(表頭(186)).DefaultCellStyle.Format = "#,##0"
  36. 請款單_dgv.Columns(表頭(187)).DefaultCellStyle.Format = "#,##0" : 請款單_dgv.Columns(表頭(188)).DefaultCellStyle.Format = "#,##0"
  37. 請款單_dgv.Columns(表頭(27)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  38. 請款單_dgv.Columns(表頭(180)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  39. 請款單_dgv.Columns(表頭(181)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  40. 請款單_dgv.Columns(表頭(182)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  41. 請款單_dgv.Columns(表頭(183)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  42. 請款單_dgv.Columns(表頭(184)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  43. 請款單_dgv.Columns(表頭(185)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  44. 請款單_dgv.Columns(表頭(186)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  45. 請款單_dgv.Columns(表頭(187)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  46. 請款單_dgv.Columns(表頭(188)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  47. ANUD1.Value = 0 : ANUD2.Value = 0 : ANUD3.Value = 0 : ANUD4.Value = 0 : ANUD5.Value = 0 : ANUD6.Value = 0 : ANUD7.Value = 0 : ANUD8.Value = 0 : ANUD9.Value = 0 : ANUD10.Value = 0
  48. For i As Integer = 0 To 請款單_dgv.Rows.Count - 1
  49. If IsDBNull(請款單_dgv("簽回", i).Value) = True Then : 請款單_dgv("簽回", i).Value = False : End If
  50. If 請款單_dgv.Rows(i).Cells(表頭(184)).Value.ToString = "" Then : 請款單_dgv.Rows(i).Cells(表頭(184)).Value = "0" : End If
  51. If 請款單_dgv.Rows(i).Cells(表頭(185)).Value.ToString = "" Then : 請款單_dgv.Rows(i).Cells(表頭(185)).Value = "0" : End If
  52. If 請款單_dgv.Rows(i).Cells(表頭(186)).Value.ToString = "" Then : 請款單_dgv.Rows(i).Cells(表頭(186)).Value = "0" : End If
  53. If 請款單_dgv.Rows(i).Cells(表頭(187)).Value.ToString = "" Then : 請款單_dgv.Rows(i).Cells(表頭(187)).Value = "0" : End If
  54. If 請款單_dgv.Rows(i).Cells(表頭(188)).Value.ToString = "" Then : 請款單_dgv.Rows(i).Cells(表頭(188)).Value = "0" : End If
  55. If 請款單_dgv.Rows(i).Cells(表頭(180)).Value.ToString = "" Then : 請款單_dgv.Rows(i).Cells(表頭(180)).Value = "0" : End If
  56. If 請款單_dgv.Rows(i).Cells(表頭(182)).Value.ToString = "" Then : 請款單_dgv.Rows(i).Cells(表頭(182)).Value = "0" : End If
  57. If 請款單_dgv.Rows(i).Cells(表頭(183)).Value.ToString = "" Then : 請款單_dgv.Rows(i).Cells(表頭(183)).Value = "0" : End If
  58. 請款單_dgv.Rows(i).Cells(表頭(181)).Value = 請款單_dgv.Rows(i).Cells(表頭(27)).Value + 請款單_dgv.Rows(i).Cells(表頭(180)).Value
  59. 請款單_dgv.Rows(i).Cells(表頭(183)).Value = 請款單_dgv.Rows(i).Cells(表頭(181)).Value - 請款單_dgv.Rows(i).Cells(表頭(182)).Value
  60. If 請款單_dgv.Rows(i).Cells(表頭(183)).Value < 0 Then : 請款單_dgv.Rows(i).Cells(表頭(183)).Value = 0 : End If
  61. If 請款單_dgv.Rows(i).Cells(表頭(181)).Value = 0 Then
  62. 請款單_dgv.Rows(i).Cells("比例1").Value = 0 : 請款單_dgv.Rows(i).Cells("比例2").Value = 0
  63. Else
  64. 請款單_dgv.Rows(i).Cells("比例1").Value = 請款單_dgv.Rows(i).Cells(表頭(182)).Value / 請款單_dgv.Rows(i).Cells(表頭(181)).Value * 100
  65. 請款單_dgv.Rows(i).Cells("比例2").Value = 請款單_dgv.Rows(i).Cells(表頭(183)).Value / 請款單_dgv.Rows(i).Cells(表頭(181)).Value * 100
  66. End If
  67. ANUD1.Value += 請款單_dgv.Rows(i).Cells(表頭(27)).Value : ANUD2.Value += 請款單_dgv.Rows(i).Cells(表頭(180)).Value
  68. ANUD3.Value += 請款單_dgv.Rows(i).Cells(表頭(181)).Value : ANUD4.Value += 請款單_dgv.Rows(i).Cells(表頭(182)).Value
  69. ANUD5.Value += 請款單_dgv.Rows(i).Cells(表頭(183)).Value : ANUD6.Value += 請款單_dgv.Rows(i).Cells(表頭(184)).Value
  70. ANUD7.Value += 請款單_dgv.Rows(i).Cells(表頭(185)).Value : ANUD8.Value += 請款單_dgv.Rows(i).Cells(表頭(186)).Value
  71. ANUD9.Value += 請款單_dgv.Rows(i).Cells(表頭(187)).Value : ANUD10.Value += 請款單_dgv.Rows(i).Cells(表頭(188)).Value
  72. Next
  73. 請款單_dgv.Sort(請款單_dgv.Columns("比例2"), System.ComponentModel.ListSortDirection.Descending)
  74. End Sub
  75. Private Sub Set_進度條顯示1()
  76. Dim Col As New DataGridViewProgressColumn With {
  77. .Width = 30,
  78. .DataPropertyName = "請款比例"
  79. }
  80. Col.HeaderText = "Percent (%)" : Col.Name = "容量" : Col.DataPropertyName = "比例1"
  81. 請款單_dgv.Columns.Insert(7, Col)
  82. End Sub
  83. Private Sub Set_進度條顯示2()
  84. Dim Col As New DataGridViewProgressColumn With {
  85. .Width = 30,
  86. .DataPropertyName = "請款比例"
  87. }
  88. Col.HeaderText = "Percent (%)" : Col.Name = "容量" : Col.DataPropertyName = "比例2"
  89. 請款單_dgv.Columns.Insert(9, Col)
  90. End Sub
  91. Private Sub Set_語言()
  92. 語言_dgv.DataSource = Nothing : ds8.Clear()
  93. 語言_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  94. 語言_dgv.ColumnHeadersHeight = 25
  95. 語言_dgv.AllowUserToAddRows = False
  96. SQL_系統語言導入()
  97. da.Fill(ds8) : 語言_dgv.DataSource = ds8.Tables(0) : conn.Close()
  98. End Sub
  99. Private Sub 語言轉換讀取()
  100. Set_語言() : conn.Close()
  101. For i As Integer = 0 To 語言_dgv.Rows.Count - 1
  102. If 語言_dgv("控件", i).Value.ToString = "合約請款控制表" Then : Me.Text = 語言_dgv("內容", i).Value.ToString : End If
  103. If 語言_dgv("控件", i).Value.ToString = "甲方_lb" Then : 甲方_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  104. If 語言_dgv("控件", i).Value.ToString = "搜尋_lb" Then : 搜尋_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  105. If 語言_dgv("控件", i).Value.ToString = "全部資料_ch" Then : 全部資料_ch.Text = 語言_dgv("內容", i).Value.ToString : End If
  106. If 語言_dgv("控件", i).Value.ToString = "請款未結束_ch" Then : 請款未結束_ch.Text = 語言_dgv("內容", i).Value.ToString : End If
  107. If 語言_dgv("控件", i).Value.ToString = "請款已結束_ch" Then : 請款已結束_ch.Text = 語言_dgv("內容", i).Value.ToString : End If
  108. If 語言_dgv("控件", i).Value.ToString = "工程期數_lb" Then : 工程期數_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  109. If 語言_dgv("控件", i).Value.ToString = "工程總價_lb" Then : 工程總價_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  110. If 語言_dgv("控件", i).Value.ToString = "追加減_lb" Then : 追加減_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  111. If 語言_dgv("控件", i).Value.ToString = "結算金額_lb" Then : 結算金額_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  112. If 語言_dgv("控件", i).Value.ToString = "已請款_lb" Then : 已請款_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  113. If 語言_dgv("控件", i).Value.ToString = "剩餘款_lb" Then : 剩餘款_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  114. If 語言_dgv("控件", i).Value.ToString = "預付款_lb" Then : 預付款_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  115. If 語言_dgv("控件", i).Value.ToString = "到貨款_lb" Then : 到貨款_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  116. If 語言_dgv("控件", i).Value.ToString = "施工款_lb" Then : 施工款_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  117. If 語言_dgv("控件", i).Value.ToString = "驗收款_lb" Then : 驗收款_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  118. If 語言_dgv("控件", i).Value.ToString = "保留款_lb" Then : 保留款_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  119. If 語言_dgv("控件", i).Value.ToString = "dgv_合約號" Then : 表頭(134) = 語言_dgv("內容", i).Value.ToString : End If
  120. If 語言_dgv("控件", i).Value.ToString = "dgv_工程" Then : 表頭(151) = 語言_dgv("內容", i).Value.ToString : End If
  121. If 語言_dgv("控件", i).Value.ToString = "dgv_工程總價" Then : 表頭(27) = 語言_dgv("內容", i).Value.ToString : End If
  122. If 語言_dgv("控件", i).Value.ToString = "dgv_追加減" Then : 表頭(180) = 語言_dgv("內容", i).Value.ToString : End If
  123. If 語言_dgv("控件", i).Value.ToString = "dgv_結算金額" Then : 表頭(181) = 語言_dgv("內容", i).Value.ToString : End If
  124. If 語言_dgv("控件", i).Value.ToString = "dgv_已請款" Then : 表頭(182) = 語言_dgv("內容", i).Value.ToString : End If
  125. If 語言_dgv("控件", i).Value.ToString = "dgv_剩餘款" Then : 表頭(183) = 語言_dgv("內容", i).Value.ToString : End If
  126. If 語言_dgv("控件", i).Value.ToString = "dgv_預付款" Then : 表頭(184) = 語言_dgv("內容", i).Value.ToString : End If
  127. If 語言_dgv("控件", i).Value.ToString = "dgv_到貨款" Then : 表頭(185) = 語言_dgv("內容", i).Value.ToString : End If
  128. If 語言_dgv("控件", i).Value.ToString = "dgv_施工款" Then : 表頭(186) = 語言_dgv("內容", i).Value.ToString : End If
  129. If 語言_dgv("控件", i).Value.ToString = "dgv_驗收款" Then : 表頭(187) = 語言_dgv("內容", i).Value.ToString : End If
  130. If 語言_dgv("控件", i).Value.ToString = "dgv_保留款" Then : 表頭(188) = 語言_dgv("內容", i).Value.ToString : End If
  131. Next
  132. End Sub
  133. Private Sub 甲方條件下拉清單讀取()
  134. SQL合約條件讀取() : 合約編號1_cb.Items.Clear() : 合約編號1_cb.Items.Add("") : While (dr.Read()) : 合約編號1_cb.Items.Add(dr("約號甲方")) : End While : conn.Close()
  135. End Sub
  136. Private Sub 合約請款控制表_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  137. Me.MdiParent = HX_PGS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  138. H(106) = True : 介面 = "H106" : 語言轉換讀取()
  139. 分母 = 100 : 分段1 = 0.35 : 分段2 = 0.34 : 分段3 = 0.65 : 分段4 = 0.64 : 進度條後墜 = " %"
  140. 甲方條件下拉清單讀取() : Set_請款清單() : 合約報價單_Siz()
  141. End Sub
  142. Private Sub 合約請款控制表_Closed(sender As Object, e As EventArgs) Handles MyBase.Closed
  143. H(106) = False : MyModule1.虛擬桌面開啟()
  144. End Sub
  145. Private Sub 語轉扭_bt_Click(sender As Object, e As EventArgs) Handles 語轉扭_bt.Click
  146. 介面 = "H106" : 語言轉換讀取() : Set_請款清單()
  147. End Sub
  148. Private Sub 合約報價單_Siz()
  149. MyModule1.清單字體大小調整()
  150. 請款單_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value)
  151. End Sub
  152. Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove
  153. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  154. End Sub
  155. Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress
  156. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  157. End Sub
  158. Private Sub 請款單_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 請款單_dgv.CellClick
  159. If e.RowIndex = -1 Then : Else
  160. 合約編號_tb.Text = 請款單_dgv(表頭(134), e.RowIndex).Value.ToString
  161. 圖片庫 = 請款單_dgv("簽回檔圖庫", e.RowIndex).Value.ToString : 簽回檔 = 請款單_dgv("簽回", e.RowIndex).Value
  162. End If
  163. End Sub
  164. Private Sub 合約編號1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 合約編號1_cb.SelectedIndexChanged
  165. Set_請款清單()
  166. End Sub
  167. Private Sub 工程期1_ch_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 工程期1_ch.SelectedIndexChanged
  168. Set_請款清單()
  169. End Sub
  170. Private Sub 查閱文件_bt_Click(sender As Object, e As EventArgs) Handles 查閱文件_bt.Click
  171. If 合約編號_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("請先選擇合約!!") : Else : MsgBox("Silakan pilih kontrak terlebih dahulu!!") : End If : Else
  172. If 簽回檔 = False Then : If 系統語言 = "繁體中文" Then : MsgBox("該合約還沒有建立報價簽回文件!!") : Else : MsgBox("Kontrak belum menetapkan dokumen tanda balik kutipan!!") : End If : Else
  173. PA1 = 合約編號_tb.Text : PA2 = "請款" : 文件查閱視窗.ShowDialog()
  174. End If
  175. End If
  176. End Sub
  177. Private Sub 全部資料_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 全部資料_ch.Click
  178. 全部資料_ch.Checked = True : 請款未結束_ch.Checked = False : 請款已結束_ch.Checked = False : Set_請款清單()
  179. End Sub
  180. Private Sub 請款未結束_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 請款未結束_ch.Click
  181. 全部資料_ch.Checked = False : 請款未結束_ch.Checked = True : 請款已結束_ch.Checked = False : Set_請款清單()
  182. End Sub
  183. Private Sub 請款已結束_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 請款已結束_ch.Click
  184. 全部資料_ch.Checked = False : 請款未結束_ch.Checked = False : 請款已結束_ch.Checked = True : Set_請款清單()
  185. End Sub
  186. Private Sub 查詢_bt_Click(sender As Object, e As EventArgs) Handles 查詢_bt.Click
  187. PA = 關鍵字搜尋_tb.Text : Set_請款清單()
  188. End Sub
  189. End Class