暫無描述
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 27KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255
  1. Option Strict Off
  2. Imports Microsoft.Office.Interop.Excel.XlUnderlineStyle
  3. Imports Microsoft.Office.Interop.Excel.Constants
  4. Imports Microsoft.Office.Interop.Excel.XlBordersIndex
  5. Imports Microsoft.Office.Interop.Excel.XlLineStyle
  6. Imports Microsoft.Office.Interop.Excel.XlBorderWeight
  7. Imports Microsoft.Office.Interop.Excel.XlThemeFont
  8. Imports Microsoft.Office.Interop.Excel.XlThemeColor
  9. Imports Microsoft.Office.Interop.Excel.XlWindowState
  10. Imports Microsoft.Office.Interop.Excel
  11. Public Class 合約結案控制表
  12. Dim xlApp As Application : Dim xlBook As Workbook : Dim xlSheet As Worksheet
  13. Private Sub Set_合約清單()
  14. Dim ds2 As New DataSet
  15. 合約控制表_dgv.DataSource = Nothing : ds2.Clear()
  16. 合約控制表_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  17. 合約控制表_dgv.ColumnHeadersHeight = 40 : 合約控制表_dgv.AllowUserToAddRows = False
  18. PA46 = 合約編號1_cb.Text : PA47 = 工程期1_ch.Text
  19. If 全部資料_ch.Checked = True And 請款未結束_ch.Checked = False And 請款已結束_ch.Checked = False Then
  20. SQL2 = "WHERE 合約控制表.工程名稱_中 NOT LIKE '' AND 合約控制表.約號甲方 Like N'%" & PA46 & "%' AND 合約控制表.合約期數 LIKE N'%" & PA47 & "%' AND
  21. (合約控制表.合約編號 LIKE N'%" & PA & "%' OR 合約控制表.客戶名稱 LIKE N'%" & PA & "%' OR
  22. 合約控制表.負責人A LIKE N'%" & PA & "%' OR 合約控制表.工程地點 LIKE N'%" & PA & "%' OR
  23. 合約控制表.客戶地址 LIKE N'%" & PA & "%' OR 合約控制表.工程名稱_中 LIKE N'%" & PA & "%' OR
  24. 合約控制表.工程名稱_英 LIKE N'%" & PA & "%') AND (合約控制表.合約停止 = 0 OR 合約控制表.合約停止 IS NULL) AND (報價放行 = 1) "
  25. ElseIf 全部資料_ch.Checked = False And 請款未結束_ch.Checked = True And 請款已結束_ch.Checked = False Then
  26. SQL2 = "WHERE 合約控制表.工程名稱_中 NOT LIKE '' AND 合約控制表.剩餘款 > 0 AND 合約控制表.約號甲方 Like N'%" & PA46 & "%' AND
  27. 合約控制表.合約期數 LIKE N'%" & PA47 & "%' AND (合約控制表.合約編號 LIKE N'%" & PA & "%' OR
  28. 合約控制表.客戶名稱 LIKE N'%" & PA & "%' OR 合約控制表.負責人A LIKE N'%" & PA & "%' OR
  29. 合約控制表.工程地點 LIKE N'%" & PA & "%' OR 合約控制表.客戶地址 LIKE N'%" & PA & "%' OR
  30. 合約控制表.工程名稱_中 LIKE N'%" & PA & "%' OR 合約控制表.工程名稱_英 LIKE N'%" & PA & "%') AND
  31. (合約控制表.合約停止 = 0 OR 合約控制表.合約停止 IS NULL) AND (報價放行 = 1) "
  32. ElseIf 全部資料_ch.Checked = False And 請款未結束_ch.Checked = False And 請款已結束_ch.Checked = True Then
  33. SQL2 = "WHERE 合約控制表.工程名稱_中 NOT LIKE '' AND 合約控制表.剩餘款 = 0 AND 合約控制表.約號甲方 Like N'%" & PA46 & "%' AND 合約控制表.合約期數 LIKE N'%" & PA47 & "%' AND
  34. (合約控制表.合約編號 LIKE N'%" & PA & "%' OR 合約控制表.客戶名稱 LIKE N'%" & PA & "%' OR 合約控制表.負責人A LIKE N'%" & PA & "%' OR
  35. 合約控制表.工程地點 LIKE N'%" & PA & "%' OR 合約控制表.客戶地址 LIKE N'%" & PA & "%' OR
  36. 合約控制表.工程名稱_中 LIKE N'%" & PA & "%' OR 合約控制表.工程名稱_英 LIKE N'%" & PA & "%') AND
  37. (合約控制表.合約停止 = 0 OR 合約控制表.合約停止 IS NULL) AND (報價放行 = 1)"
  38. End If
  39. SQL_合約清單_結案用()
  40. da.Fill(ds2) : 合約控制表_dgv.DataSource = ds2.Tables(0) : conn.Close()
  41. 合約控制表_dgv.Columns(0).FillWeight = 120 : 合約控制表_dgv.Columns(1).FillWeight = 250 : 合約控制表_dgv.Columns("排序").Visible = False
  42. If 系統分區控制 = True Then : 合約控制表_dgv.Columns("剩餘款").Visible = True : Else : 合約控制表_dgv.Columns("剩餘款").Visible = False : End If
  43. 合約控制表_dgv.Columns("工程總價").Visible = False : 合約控制表_dgv.Columns("追加減").Visible = False : 合約控制表_dgv.Columns("結算金額").Visible = False
  44. 合約控制表_dgv.Columns("已請款").Visible = False
  45. 合約控制表_dgv.Columns("訂金").FillWeight = 30 : 合約控制表_dgv.Columns("到料").FillWeight = 30 : 合約控制表_dgv.Columns("施工").FillWeight = 30
  46. 合約控制表_dgv.Columns("驗收").FillWeight = 30 : 合約控制表_dgv.Columns("保固").FillWeight = 30 : 合約控制表_dgv.Columns("工期").FillWeight = 30
  47. 合約控制表_dgv.Columns("保固期限(月)").FillWeight = 50 : 合約控制表_dgv.Columns("工期").FillWeight = 50
  48. 合約控制表_dgv.Columns("剩餘款").FillWeight = 100 : 合約控制表_dgv.Columns("保固剩餘(天)").FillWeight = 50
  49. 合約控制表_dgv.Columns("立約日期").FillWeight = 80 : 合約控制表_dgv.Columns("驗收完成日期").FillWeight = 80
  50. 合約控制表_dgv.Columns("保固到期日").FillWeight = 80 : 合約控制表_dgv.Columns("結案備註").FillWeight = 200
  51. 合約控制表_dgv.Columns("工期").DefaultCellStyle.Format = "#,##0" : 合約控制表_dgv.Columns("剩餘款").DefaultCellStyle.Format = "#,##0"
  52. 合約控制表_dgv.Columns("工期").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  53. 合約控制表_dgv.Columns("立約日期").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  54. 合約控制表_dgv.Columns("驗收完成日期").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  55. 合約控制表_dgv.Columns("保固到期日").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  56. 合約控制表_dgv.Columns("保固剩餘(天)").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  57. 合約控制表_dgv.Columns("保固期限(月)").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  58. 合約控制表_dgv.Columns("剩餘款").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  59. For I As Integer = 4 To 13 : 合約控制表_dgv.Columns(I).Visible = False : Next : 合約控制表_dgv.Columns("客戶名稱").Visible = False
  60. For I As Integer = 0 To 合約控制表_dgv.Rows.Count - 1
  61. If 合約控制表_dgv.Rows(I).Cells("追加減").Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells("追加減").Value = 0 : End If
  62. If 合約控制表_dgv.Rows(I).Cells("已請款").Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells("已請款").Value = 0 : End If
  63. 合約控制表_dgv.Rows(I).Cells("結算金額").Value = 合約控制表_dgv.Rows(I).Cells("工程總價").Value + 合約控制表_dgv.Rows(I).Cells("追加減").Value
  64. 合約控制表_dgv.Rows(I).Cells("剩餘款").Value = 合約控制表_dgv.Rows(I).Cells("結算金額").Value - 合約控制表_dgv.Rows(I).Cells("已請款").Value
  65. If 合約控制表_dgv.Rows(I).Cells("剩餘款").Value < 0 Then : 合約控制表_dgv.Rows(I).Cells("剩餘款").Value = 0 : End If
  66. If 合約控制表_dgv.Rows(I).Cells("驗收完成日期").Value.ToString = "" Then : Else
  67. DTP1.Value = 合約控制表_dgv.Rows(I).Cells("驗收完成日期").Value.ToString
  68. 合約控制表_dgv.Rows(I).Cells("保固到期日").Value = Strings.Format((DTP1.Value.AddMonths(CInt(合約控制表_dgv.Rows(I).Cells("保固期限(月)").Value.ToString))), "yyyy/MM/dd")
  69. 合約控制表_dgv.Rows(I).Cells("保固剩餘(天)").Value =
  70. DateDiff("d", Today(), 合約控制表_dgv.Rows(I).Cells("保固到期日").Value.ToString)
  71. End If
  72. If 合約控制表_dgv.Rows(I).Cells("保固剩餘(天)").Value.ToString = "" Then
  73. 合約控制表_dgv.Rows(I).Cells("保固剩餘(天)").Value = "無資料" : 合約控制表_dgv.Rows(I).Cells("排序").Value = 999999
  74. ElseIf CInt(合約控制表_dgv.Rows(I).Cells("保固剩餘(天)").Value.ToString) < 0 Then
  75. 合約控制表_dgv.Rows(I).Cells("保固剩餘(天)").Value = "0" : 合約控制表_dgv.Rows(I).Cells("排序").Value = 999998
  76. Else : 合約控制表_dgv.Rows(I).Cells("排序").Value = CInt(合約控制表_dgv.Rows(I).Cells("保固剩餘(天)").Value.ToString) : End If
  77. If 合約控制表_dgv.Rows(I).Cells("驗收完成日期").Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells("驗收完成日期").Value = "未驗收" : End If
  78. If 合約控制表_dgv.Rows(I).Cells("第一期比例").Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells("第一期比例").Value = "0.0000" : End If
  79. If 合約控制表_dgv.Rows(I).Cells("第二期比例").Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells("第二期比例").Value = "0.0000" : End If
  80. If 合約控制表_dgv.Rows(I).Cells("第三期比例").Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells("第三期比例").Value = "0.0000" : End If
  81. If 合約控制表_dgv.Rows(I).Cells("第四期比例").Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells("第四期比例").Value = "0.0000" : End If
  82. If 合約控制表_dgv.Rows(I).Cells("第五期比例").Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells("第五期比例").Value = "0.0000" : End If
  83. If 合約控制表_dgv.Rows(I).Cells("預付款").Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells("預付款").Value = "0.0000" : End If
  84. If 合約控制表_dgv.Rows(I).Cells("到貨款").Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells("到貨款").Value = "0.0000" : End If
  85. If 合約控制表_dgv.Rows(I).Cells("施工款").Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells("施工款").Value = "0.0000" : End If
  86. If 合約控制表_dgv.Rows(I).Cells("驗收款").Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells("驗收款").Value = "0.0000" : End If
  87. If 合約控制表_dgv.Rows(I).Cells("保留款").Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells("保留款").Value = "0.0000" : End If
  88. 'My.Resources._1_123 綠色 My.Resources._1_124 紅色 My.Resources._1_125 橘色
  89. If 合約控制表_dgv.Rows(I).Cells("第一期比例").Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells("預付款").Value.ToString <> "0.0000" And
  90. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("訂金").Value = My.Resources._1_125
  91. ElseIf 合約控制表_dgv.Rows(I).Cells("第一期比例").Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells("預付款").Value.ToString = "0.0000" And
  92. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("訂金").Value = My.Resources._1_123
  93. ElseIf 合約控制表_dgv.Rows(I).Cells("第一期比例").Value.ToString = "0.0000" And 合約控制表_dgv.Rows(I).Cells("預付款").Value.ToString = "0.0000" And
  94. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("訂金").Value = My.Resources._1_124 : End If
  95. If 合約控制表_dgv.Rows(I).Cells("第二期比例").Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells("到貨款").Value.ToString <> "0.0000" And
  96. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("到料").Value = My.Resources._1_125
  97. ElseIf 合約控制表_dgv.Rows(I).Cells("第二期比例").Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells("到貨款").Value.ToString = "0.0000" And
  98. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("到料").Value = My.Resources._1_123
  99. ElseIf 合約控制表_dgv.Rows(I).Cells("第二期比例").Value.ToString = "0.0000" And 合約控制表_dgv.Rows(I).Cells("到貨款").Value.ToString = "0.0000" And
  100. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("到料").Value = My.Resources._1_124 : End If
  101. If 合約控制表_dgv.Rows(I).Cells("第三期比例").Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells("施工款").Value.ToString <> "0.0000" And
  102. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("施工").Value = My.Resources._1_125
  103. ElseIf 合約控制表_dgv.Rows(I).Cells("第三期比例").Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells("施工款").Value.ToString = "0.0000" And
  104. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("施工").Value = My.Resources._1_123
  105. ElseIf 合約控制表_dgv.Rows(I).Cells("第三期比例").Value.ToString = "0.0000" And 合約控制表_dgv.Rows(I).Cells("施工款").Value.ToString = "0.0000" And
  106. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("施工").Value = My.Resources._1_124 : End If
  107. If 合約控制表_dgv.Rows(I).Cells("第四期比例").Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells("驗收款").Value.ToString <> "0.0000" And
  108. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("驗收").Value = My.Resources._1_125
  109. ElseIf 合約控制表_dgv.Rows(I).Cells("第四期比例").Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells("驗收款").Value.ToString = "0.0000" And
  110. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("驗收").Value = My.Resources._1_123
  111. ElseIf 合約控制表_dgv.Rows(I).Cells("第四期比例").Value.ToString = "0.0000" And 合約控制表_dgv.Rows(I).Cells("驗收款").Value.ToString = "0.0000" And
  112. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("驗收").Value = My.Resources._1_124 : End If
  113. If 合約控制表_dgv.Rows(I).Cells("第五期比例").Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells("保留款").Value.ToString <> "0.0000" And
  114. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("保固").Value = My.Resources._1_125
  115. ElseIf 合約控制表_dgv.Rows(I).Cells("第五期比例").Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells("保留款").Value.ToString = "0.0000" And
  116. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("保固").Value = My.Resources._1_123
  117. ElseIf 合約控制表_dgv.Rows(I).Cells("第五期比例").Value.ToString = "0.0000" And 合約控制表_dgv.Rows(I).Cells("保留款").Value.ToString = "0.0000" And
  118. 合約控制表_dgv.Rows(I).Cells("工程").Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells("保固").Value = My.Resources._1_124
  119. Else
  120. 合約控制表_dgv.Rows(I).Cells("訂金").Value = My.Resources._1_124 : 合約控制表_dgv.Rows(I).Cells("到料").Value = My.Resources._1_124
  121. 合約控制表_dgv.Rows(I).Cells("施工").Value = My.Resources._1_124 : 合約控制表_dgv.Rows(I).Cells("驗收").Value = My.Resources._1_124
  122. 合約控制表_dgv.Rows(I).Cells("保固").Value = My.Resources._1_124
  123. End If
  124. Next
  125. Dim mycol1 As DataGridViewImageColumn = 合約控制表_dgv.Columns("訂金") : Dim mycol2 As DataGridViewImageColumn = 合約控制表_dgv.Columns("到料")
  126. Dim mycol3 As DataGridViewImageColumn = 合約控制表_dgv.Columns("施工") : Dim mycol4 As DataGridViewImageColumn = 合約控制表_dgv.Columns("驗收")
  127. Dim mycol5 As DataGridViewImageColumn = 合約控制表_dgv.Columns("保固")
  128. mycol1.ImageLayout = DataGridViewImageCellLayout.Zoom : mycol2.ImageLayout = DataGridViewImageCellLayout.Zoom : mycol3.ImageLayout = DataGridViewImageCellLayout.Zoom
  129. mycol4.ImageLayout = DataGridViewImageCellLayout.Zoom : mycol5.ImageLayout = DataGridViewImageCellLayout.Zoom
  130. 合約控制表_dgv.Sort(合約控制表_dgv.Columns("排序"), System.ComponentModel.ListSortDirection.Ascending)
  131. End Sub
  132. Private Sub 甲方條件下拉清單讀取()
  133. SQL合約條件讀取() : 合約編號1_cb.Items.Clear() : 合約編號1_cb.Items.Add("") : While (dr.Read()) : 合約編號1_cb.Items.Add(dr("約號甲方")) : End While : conn.Close()
  134. End Sub
  135. Private Sub 合約結案控制表_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  136. Me.MdiParent = GCM_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  137. 甲方條件下拉清單讀取() : Set_合約清單() : 合約報價單_Siz()
  138. End Sub
  139. Private Sub 合約報價單_Siz()
  140. MyModule1.清單字體大小調整()
  141. 合約控制表_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
  142. End Sub
  143. Private Sub 合約控制表_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 合約控制表_dgv.CellClick
  144. If e.RowIndex = -1 Then : Else
  145. 合約編號_tb.Text = 合約控制表_dgv("合約編號", e.RowIndex).Value.ToString : 備註_tb.Text = 合約控制表_dgv("結案備註", e.RowIndex).Value.ToString
  146. 客戶名稱_tb.Text = 合約控制表_dgv("客戶名稱", e.RowIndex).Value.ToString : 工程名稱_中_tb.Text = 合約控制表_dgv("工程", e.RowIndex).Value.ToString
  147. 驗收日_tb.Text = 合約控制表_dgv("保固到期日", e.RowIndex).Value.ToString : 保固期限_tb.Text = 合約控制表_dgv("保固期限(月)", e.RowIndex).Value.ToString
  148. End If
  149. End Sub
  150. Private Sub 合約編號1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 合約編號1_cb.SelectedIndexChanged
  151. PA = 關鍵字搜尋_tb.Text : Set_合約清單()
  152. End Sub
  153. Private Sub 工程期1_ch_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 工程期1_ch.SelectedIndexChanged
  154. PA = 關鍵字搜尋_tb.Text : Set_合約清單()
  155. End Sub
  156. Private Sub 全部資料_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 全部資料_ch.Click
  157. PA = 關鍵字搜尋_tb.Text : 全部資料_ch.Checked = True : 請款未結束_ch.Checked = False : 請款已結束_ch.Checked = False : Set_合約清單()
  158. End Sub
  159. Private Sub 請款未結束_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 請款未結束_ch.Click
  160. PA = 關鍵字搜尋_tb.Text : 全部資料_ch.Checked = False : 請款未結束_ch.Checked = True : 請款已結束_ch.Checked = False : Set_合約清單()
  161. End Sub
  162. Private Sub 請款已結束_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 請款已結束_ch.Click
  163. PA = 關鍵字搜尋_tb.Text : 全部資料_ch.Checked = False : 請款未結束_ch.Checked = False : 請款已結束_ch.Checked = True : Set_合約清單()
  164. End Sub
  165. Private Sub 查詢_bt_Click(sender As Object, e As EventArgs) Handles 查詢_bt.Click
  166. PA = 關鍵字搜尋_tb.Text : Set_合約清單()
  167. End Sub
  168. Private Sub 備註存檔_bt_Click(sender As Object, e As EventArgs) Handles 備註存檔_bt.Click
  169. If 合約編號_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("請先選擇要完成驗收的合約!!") : Else : MsgBox("Silakan pilih kontrak terlebih dahulu!!") : End If : Else
  170. PA = 合約編號_tb.Text : PA3 = 備註_tb.Text : SQL_控制表_結案修改() : PA = "" : Set_合約清單()
  171. If 系統語言 = "繁體中文" Then : MsgBox("備註存檔完成!!") : Else : MsgBox("Arsip selesai!!") : End If
  172. End If
  173. End Sub
  174. Private Sub 完工結案單_bt_Click(sender As Object, e As EventArgs) Handles 完工結案單_bt.Click
  175. If 合約編號_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("請先選擇要列印完工結案單的合約!!") : Else : MsgBox("Silakan pilih kontrak terlebih dahulu!!") : End If : Else
  176. If 驗收日_tb.Text = "" Then
  177. If 系統語言 = "繁體中文" Then : MsgBox("該合約沒有設定保固期限,無法列印完工結案單!!")
  178. Else : MsgBox("Kontrak tidak memiliki masa garansi yang ditetapkan dan tidak dapat mencetak pernyataan penyelesaian!!") : End If : Else
  179. xlApp = CType(CreateObject("Excel.Application"), Application)
  180. xlApp.Visible = True
  181. xlApp.DisplayAlerts = True
  182. xlApp.Application.WindowState = xlMaximized
  183. xlBook = xlApp.Workbooks.Add
  184. '----------------------------------------------------------------------------------------------------------------------
  185. xlSheet = NewMethod(xlBook) : xlApp.Sheets(1).Select : xlApp.Sheets(1).Name = "完工結案單"
  186. xlBook.Activate() : xlSheet.Activate()
  187. xlSheet.Cells(2, 1) = "工程完工結案單" : xlSheet.Cells(4, 1) = "業 主 : " : xlSheet.Cells(4, 2) = 客戶名稱_tb.Text
  188. xlSheet.Cells(6, 1) = "工程名稱 : " : xlSheet.Cells(6, 2) = 工程名稱_中_tb.Text : xlSheet.Cells(8, 1) = "合約編號 : " : xlSheet.Cells(8, 2) = 合約編號_tb.Text
  189. xlSheet.Cells(10, 1) = "估驗期別 : " : xlSheet.Cells(12, 1) = "估驗項目 : " : xlSheet.Cells(12, 2) = "保固款" : xlSheet.Cells(15, 1) = "說明 : "
  190. xlSheet.Cells(16, 1) = 工程名稱_中_tb.Text & " 以於 " & 驗收日_tb.Text & " 完成 " & 保固期限_tb.Text & " 個月保固。"
  191. xlSheet.Cells(17, 1) = "依合約第三項估驗款項" : xlSheet.Cells(20, 1) = "惠請 尊上同意施款" : xlSheet.Cells(23, 1) = "甲方簽章" : xlSheet.Cells(23, 3) = "乙方簽章"
  192. AA(xlApp, xlSheet)
  193. If Strings.Left(合約編號_tb.Text, 2) = "HX" Then : CC(xlApp, xlSheet) : Else : DD(xlApp, xlSheet) : End If : FF(xlApp, xlSheet)
  194. xlApp.Sheets(2).Delete
  195. xlSheet.PageSetup.PrintArea = ""
  196. xlApp.Cells.Select()
  197. xlApp.Application.WindowState = xlMinimized
  198. If 系統語言 = "繁體中文" Then : MsgBox("列印完成!!") : Else : MsgBox("cetak selesai!!") : End If
  199. End If
  200. End If
  201. End Sub
  202. Private Shared Function NewMethod(xlBook As Workbook) As Worksheet
  203. Return CType(xlBook.Worksheets.Add, Worksheet)
  204. End Function
  205. Private Sub AA(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
  206. xlSheet.Cells.Select()
  207. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 12 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  208. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  209. xlSheet.Rows("1:1").Select : myExcel.Selection.RowHeight = 95 : xlSheet.Rows("24:24").Select : myExcel.Selection.RowHeight = 95
  210. xlSheet.Columns("A:A").Select : myExcel.Selection.ColumnWidth = 10 : xlSheet.Columns("B:C").Select : myExcel.Selection.ColumnWidth = 40
  211. xlSheet.Range("C12").Select() : myExcel.ActiveWindow.DisplayGridlines = False
  212. xlSheet.Range("A2:C2").Select()
  213. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  214. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  215. myExcel.Selection.Font.Underline = xlUnderlineStyleSingle
  216. xlSheet.Range("C7").Select()
  217. End Sub
  218. Private Sub CC(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
  219. Clipboard.SetDataObject(PictureBox1.Image)
  220. xlSheet.Range("A1").Select()
  221. myExcel.ActiveSheet.Pictures.Paste.Select
  222. myExcel.Selection.ShapeRange.Height = 93
  223. myExcel.Selection.ShapeRange.Width = 550
  224. myExcel.Selection.ShapeRange.IncrementLeft(0)
  225. myExcel.Selection.ShapeRange.IncrementTop(0)
  226. End Sub
  227. Private Sub DD(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
  228. Clipboard.SetDataObject(PictureBox2.Image)
  229. xlSheet.Range("A1").Select()
  230. myExcel.ActiveSheet.Pictures.Paste.Select
  231. myExcel.Selection.ShapeRange.Height = 93
  232. myExcel.Selection.ShapeRange.Width = 550
  233. myExcel.Selection.ShapeRange.IncrementLeft(0)
  234. myExcel.Selection.ShapeRange.IncrementTop(0)
  235. End Sub
  236. Private Sub FF(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
  237. myExcel.Application.PrintCommunication = False : With myExcel.ActiveSheet.PageSetup : .PrintTitleRows = "" : .PrintTitleColumns = "" : End With
  238. myExcel.Application.PrintCommunication = True : myExcel.ActiveSheet.PageSetup.PrintArea = "" : myExcel.Application.PrintCommunication = False
  239. With myExcel.ActiveSheet.PageSetup : .LeftHeader = "" : .CenterHeader = "" : .RightHeader = "" : .LeftFooter = "" : .CenterFooter = "第 &P 頁,共 &N 頁" : .RightFooter = ""
  240. .LeftMargin = myExcel.Application.InchesToPoints(0.236220472440945) : .RightMargin = myExcel.Application.InchesToPoints(0.236220472440945)
  241. .TopMargin = myExcel.Application.InchesToPoints(0.748031496062992) : .BottomMargin = myExcel.Application.InchesToPoints(0.748031496062992)
  242. .HeaderMargin = myExcel.Application.InchesToPoints(0.31496062992126) : .FooterMargin = myExcel.Application.InchesToPoints(0.31496062992126)
  243. .PrintHeadings = False : .PrintGridlines = False : .CenterHorizontally = True : .CenterVertically = False : .Draft = False
  244. .FirstPageNumber = xlAutomatic : .BlackAndWhite = False : .Zoom = False : .FitToPagesWide = 1 : .FitToPagesTall = False : .OddAndEvenPagesHeaderFooter = False
  245. .DifferentFirstPageHeaderFooter = False : .ScaleWithDocHeaderFooter = True : .AlignMarginsHeaderFooter = True
  246. .EvenPage.LeftHeader.Text = "" : .EvenPage.CenterHeader.Text = "" : .EvenPage.RightHeader.Text = "" : .EvenPage.LeftFooter.Text = ""
  247. .EvenPage.CenterFooter.Text = "" : .EvenPage.RightFooter.Text = "" : .FirstPage.LeftHeader.Text = "" : .FirstPage.CenterHeader.Text = ""
  248. .FirstPage.RightHeader.Text = "" : .FirstPage.LeftFooter.Text = "" : .FirstPage.CenterFooter.Text = "" : .FirstPage.RightFooter.Text = ""
  249. End With : myExcel.Application.PrintCommunication = True
  250. End Sub
  251. End Class