暂无描述
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

合約結案控制表.vb 38KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385
  1. Option Strict Off
  2. Imports Microsoft.Office.Interop.Excel.XlUnderlineStyle
  3. Imports Microsoft.Office.Interop.Excel.Constants
  4. Imports Microsoft.Office.Interop.Excel.XlThemeFont
  5. Imports Microsoft.Office.Interop.Excel.XlThemeColor
  6. Imports Microsoft.Office.Interop.Excel.XlWindowState
  7. Imports Microsoft.Office.Interop.Excel
  8. Public Class 合約結案控制表
  9. Dim xlApp As Application : Dim xlBook As Workbook : Dim xlSheet As Worksheet : Dim 對話框(4) As String
  10. Dim 選擇項 As Integer
  11. Private Sub Set_合約清單()
  12. Dim ds2 As New DataSet
  13. 合約控制表_dgv.DataSource = Nothing : ds2.Clear()
  14. 合約控制表_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  15. 合約控制表_dgv.ColumnHeadersHeight = 40 : 合約控制表_dgv.AllowUserToAddRows = False
  16. PA46 = 合約編號1_cb.Text : PA47 = 工程期1_ch.Text
  17. If 系統語言 = "繁體中文" Then
  18. SQL3 = "工程名稱_中"
  19. Else
  20. SQL3 = "工程名稱_英"
  21. End If
  22. If 全部資料_ch.Checked = True And 請款未結束_ch.Checked = False And 請款已結束_ch.Checked = False Then
  23. SQL2 = "WHERE 合約控制表." & SQL3 & " NOT LIKE '' AND 合約控制表.約號甲方 Like N'%" & PA46 & "%' AND 合約控制表.合約期數 LIKE N'%" & PA47 & "%' AND
  24. (合約控制表.合約編號 LIKE N'%" & PA & "%' OR 合約控制表.客戶名稱 LIKE N'%" & PA & "%' OR
  25. 合約控制表.負責人A LIKE N'%" & PA & "%' OR 合約控制表.工程地點 LIKE N'%" & PA & "%' OR
  26. 合約控制表.客戶地址 LIKE N'%" & PA & "%' OR 合約控制表." & SQL3 & " LIKE N'%" & PA & "%' OR
  27. 合約控制表.工程名稱_英 LIKE N'%" & PA & "%') AND (合約控制表.合約停止 = 0 OR 合約控制表.合約停止 IS NULL) AND (報價放行 = 1) AND (作廢 = 0) "
  28. ElseIf 全部資料_ch.Checked = False And 請款未結束_ch.Checked = True And 請款已結束_ch.Checked = False Then
  29. SQL2 = "WHERE 合約控制表." & SQL3 & " NOT LIKE '' AND (合約控制表.剩餘款 > 0 OR 合約控制表.剩餘款 IS NULL) AND 合約控制表.約號甲方 Like N'%" & PA46 & "%' AND
  30. 合約控制表.合約期數 LIKE N'%" & PA47 & "%' AND (合約控制表.合約編號 LIKE N'%" & PA & "%' OR
  31. 合約控制表.客戶名稱 LIKE N'%" & PA & "%' OR 合約控制表.負責人A LIKE N'%" & PA & "%' OR
  32. 合約控制表.工程地點 LIKE N'%" & PA & "%' OR 合約控制表.客戶地址 LIKE N'%" & PA & "%' OR
  33. 合約控制表." & SQL3 & " LIKE N'%" & PA & "%' OR 合約控制表.工程名稱_英 LIKE N'%" & PA & "%') AND
  34. (合約控制表.合約停止 = 0 OR 合約控制表.合約停止 IS NULL) AND (報價放行 = 1) AND (作廢 = 0) "
  35. ElseIf 全部資料_ch.Checked = False And 請款未結束_ch.Checked = False And 請款已結束_ch.Checked = True Then
  36. SQL2 = "WHERE 合約控制表." & SQL3 & " NOT LIKE '' AND 合約控制表.剩餘款 = 0 AND 合約控制表.約號甲方 Like N'%" & PA46 & "%' AND 合約控制表.合約期數 LIKE N'%" & PA47 & "%' AND
  37. (合約控制表.合約編號 LIKE N'%" & PA & "%' OR 合約控制表.客戶名稱 LIKE N'%" & PA & "%' OR 合約控制表.負責人A LIKE N'%" & PA & "%' OR
  38. 合約控制表.工程地點 LIKE N'%" & PA & "%' OR 合約控制表.客戶地址 LIKE N'%" & PA & "%' OR
  39. 合約控制表." & SQL3 & " LIKE N'%" & PA & "%' OR 合約控制表.工程名稱_英 LIKE N'%" & PA & "%') AND
  40. (合約控制表.合約停止 = 0 OR 合約控制表.合約停止 IS NULL) AND (報價放行 = 1) AND (作廢 = 0) "
  41. End If
  42. SQL_合約清單_結案用()
  43. da.Fill(ds2) : 合約控制表_dgv.DataSource = ds2.Tables(0) : conn.Close()
  44. 合約控制表_dgv.Columns(0).FillWeight = 120 : 合約控制表_dgv.Columns(1).FillWeight = 250 : 合約控制表_dgv.Columns(表頭(30)).Visible = False
  45. If 系統分區控制 = True Then : 合約控制表_dgv.Columns(表頭(23)).Visible = True : Else : 合約控制表_dgv.Columns(表頭(23)).Visible = False : End If
  46. 合約控制表_dgv.Columns(表頭(26)).Visible = False : 合約控制表_dgv.Columns(表頭(27)).Visible = False : 合約控制表_dgv.Columns(表頭(28)).Visible = False
  47. 合約控制表_dgv.Columns(表頭(29)).Visible = False : 合約控制表_dgv.Columns(表頭(31)).Visible = False
  48. 合約控制表_dgv.Columns(表頭(14)).FillWeight = 30 : 合約控制表_dgv.Columns(表頭(15)).FillWeight = 30 : 合約控制表_dgv.Columns(表頭(16)).FillWeight = 30
  49. 合約控制表_dgv.Columns(表頭(17)).FillWeight = 30 : 合約控制表_dgv.Columns(表頭(18)).FillWeight = 30 : 合約控制表_dgv.Columns(表頭(2)).FillWeight = 30
  50. 合約控制表_dgv.Columns(表頭(20)).FillWeight = 50 : 合約控制表_dgv.Columns(表頭(2)).FillWeight = 50
  51. 合約控制表_dgv.Columns(表頭(23)).FillWeight = 100 : 合約控制表_dgv.Columns(表頭(22)).FillWeight = 50
  52. 合約控制表_dgv.Columns(表頭(3)).FillWeight = 80 : 合約控制表_dgv.Columns(表頭(19)).FillWeight = 80
  53. 合約控制表_dgv.Columns(表頭(21)).FillWeight = 80 : 合約控制表_dgv.Columns(表頭(24)).FillWeight = 200
  54. 合約控制表_dgv.Columns(表頭(2)).DefaultCellStyle.Format = "#,##0" : 合約控制表_dgv.Columns(表頭(23)).DefaultCellStyle.Format = "#,##0"
  55. 合約控制表_dgv.Columns(表頭(2)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  56. 合約控制表_dgv.Columns(表頭(3)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  57. 合約控制表_dgv.Columns(表頭(19)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  58. 合約控制表_dgv.Columns(表頭(21)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  59. 合約控制表_dgv.Columns(表頭(22)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  60. 合約控制表_dgv.Columns(表頭(20)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  61. 合約控制表_dgv.Columns(表頭(23)).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  62. For I As Integer = 4 To 13 : 合約控制表_dgv.Columns(I).Visible = False : Next : 合約控制表_dgv.Columns(表頭(25)).Visible = False
  63. For I As Integer = 0 To 合約控制表_dgv.Rows.Count - 1
  64. If 合約控制表_dgv.Rows(I).Cells(表頭(27)).Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(27)).Value = 0 : End If
  65. If 合約控制表_dgv.Rows(I).Cells(表頭(29)).Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(29)).Value = 0 : End If
  66. 合約控制表_dgv.Rows(I).Cells(表頭(28)).Value = 合約控制表_dgv.Rows(I).Cells(表頭(26)).Value + 合約控制表_dgv.Rows(I).Cells(表頭(27)).Value
  67. 合約控制表_dgv.Rows(I).Cells(表頭(23)).Value = 合約控制表_dgv.Rows(I).Cells(表頭(28)).Value - 合約控制表_dgv.Rows(I).Cells(表頭(29)).Value
  68. If 合約控制表_dgv.Rows(I).Cells(表頭(23)).Value < 0 Then : 合約控制表_dgv.Rows(I).Cells(表頭(23)).Value = 0 : End If
  69. If 合約控制表_dgv.Rows(I).Cells(表頭(19)).Value.ToString = "" Then : Else
  70. DTP1.Value = 合約控制表_dgv.Rows(I).Cells(表頭(19)).Value.ToString
  71. 合約控制表_dgv.Rows(I).Cells(表頭(21)).Value = Strings.Format((DTP1.Value.AddMonths(CInt(合約控制表_dgv.Rows(I).Cells(表頭(20)).Value.ToString))), "yyyy/MM/dd")
  72. 合約控制表_dgv.Rows(I).Cells(表頭(22)).Value =
  73. DateDiff("d", Today(), 合約控制表_dgv.Rows(I).Cells(表頭(21)).Value.ToString)
  74. End If
  75. If 合約控制表_dgv.Rows(I).Cells(表頭(22)).Value.ToString = "" Then
  76. 合約控制表_dgv.Rows(I).Cells(表頭(22)).Value = "無資料" : 合約控制表_dgv.Rows(I).Cells(表頭(30)).Value = 999999
  77. ElseIf CInt(合約控制表_dgv.Rows(I).Cells(表頭(22)).Value.ToString) < 0 Then
  78. 合約控制表_dgv.Rows(I).Cells(表頭(22)).Value = "0" : 合約控制表_dgv.Rows(I).Cells(表頭(30)).Value = 999998
  79. Else : 合約控制表_dgv.Rows(I).Cells(表頭(30)).Value = CInt(合約控制表_dgv.Rows(I).Cells(表頭(22)).Value.ToString) : End If
  80. If 合約控制表_dgv.Rows(I).Cells(表頭(19)).Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(19)).Value = "未驗收" : End If
  81. If 合約控制表_dgv.Rows(I).Cells(表頭(4)).Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(4)).Value = "0.0000" : End If
  82. If 合約控制表_dgv.Rows(I).Cells(表頭(5)).Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(5)).Value = "0.0000" : End If
  83. If 合約控制表_dgv.Rows(I).Cells(表頭(6)).Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(6)).Value = "0.0000" : End If
  84. If 合約控制表_dgv.Rows(I).Cells(表頭(7)).Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(7)).Value = "0.0000" : End If
  85. If 合約控制表_dgv.Rows(I).Cells(表頭(8)).Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(8)).Value = "0.0000" : End If
  86. If 合約控制表_dgv.Rows(I).Cells(表頭(9)).Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(9)).Value = "0.0000" : End If
  87. If 合約控制表_dgv.Rows(I).Cells(表頭(10)).Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(10)).Value = "0.0000" : End If
  88. If 合約控制表_dgv.Rows(I).Cells(表頭(11)).Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(11)).Value = "0.0000" : End If
  89. If 合約控制表_dgv.Rows(I).Cells(表頭(12)).Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(12)).Value = "0.0000" : End If
  90. If 合約控制表_dgv.Rows(I).Cells(表頭(13)).Value.ToString = "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(13)).Value = "0.0000" : End If
  91. 'My.Resources._1_123 綠色 My.Resources._1_124 紅色 My.Resources._1_125 橘色
  92. If 合約控制表_dgv.Rows(I).Cells(表頭(4)).Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(9)).Value.ToString <> "0.0000" And
  93. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(14)).Value = My.Resources._1_125
  94. ElseIf 合約控制表_dgv.Rows(I).Cells(表頭(4)).Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(9)).Value.ToString = "0.0000" And
  95. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(14)).Value = My.Resources._1_123
  96. ElseIf 合約控制表_dgv.Rows(I).Cells(表頭(4)).Value.ToString = "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(9)).Value.ToString = "0.0000" And
  97. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(14)).Value = My.Resources._1_124 : End If
  98. If 合約控制表_dgv.Rows(I).Cells(表頭(5)).Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(10)).Value.ToString <> "0.0000" And
  99. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(15)).Value = My.Resources._1_125
  100. ElseIf 合約控制表_dgv.Rows(I).Cells(表頭(5)).Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(10)).Value.ToString = "0.0000" And
  101. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(15)).Value = My.Resources._1_123
  102. ElseIf 合約控制表_dgv.Rows(I).Cells(表頭(5)).Value.ToString = "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(10)).Value.ToString = "0.0000" And
  103. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(15)).Value = My.Resources._1_124 : End If
  104. If 合約控制表_dgv.Rows(I).Cells(表頭(6)).Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(11)).Value.ToString <> "0.0000" And
  105. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(16)).Value = My.Resources._1_125
  106. ElseIf 合約控制表_dgv.Rows(I).Cells(表頭(6)).Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(11)).Value.ToString = "0.0000" And
  107. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(16)).Value = My.Resources._1_123
  108. ElseIf 合約控制表_dgv.Rows(I).Cells(表頭(6)).Value.ToString = "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(11)).Value.ToString = "0.0000" And
  109. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(16)).Value = My.Resources._1_124 : End If
  110. If 合約控制表_dgv.Rows(I).Cells(表頭(7)).Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(12)).Value.ToString <> "0.0000" And
  111. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(17)).Value = My.Resources._1_125
  112. ElseIf 合約控制表_dgv.Rows(I).Cells(表頭(7)).Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(12)).Value.ToString = "0.0000" And
  113. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(17)).Value = My.Resources._1_123
  114. ElseIf 合約控制表_dgv.Rows(I).Cells(表頭(7)).Value.ToString = "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(12)).Value.ToString = "0.0000" And
  115. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(17)).Value = My.Resources._1_124 : End If
  116. If 合約控制表_dgv.Rows(I).Cells(表頭(8)).Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(13)).Value.ToString <> "0.0000" And
  117. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(18)).Value = My.Resources._1_125
  118. ElseIf 合約控制表_dgv.Rows(I).Cells(表頭(8)).Value.ToString <> "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(13)).Value.ToString = "0.0000" And
  119. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(18)).Value = My.Resources._1_123
  120. ElseIf 合約控制表_dgv.Rows(I).Cells(表頭(8)).Value.ToString = "0.0000" And 合約控制表_dgv.Rows(I).Cells(表頭(13)).Value.ToString = "0.0000" And
  121. 合約控制表_dgv.Rows(I).Cells(表頭(1)).Value.ToString <> "" Then : 合約控制表_dgv.Rows(I).Cells(表頭(18)).Value = My.Resources._1_124
  122. Else
  123. 合約控制表_dgv.Rows(I).Cells(表頭(14)).Value = My.Resources._1_124 : 合約控制表_dgv.Rows(I).Cells(表頭(15)).Value = My.Resources._1_124
  124. 合約控制表_dgv.Rows(I).Cells(表頭(16)).Value = My.Resources._1_124 : 合約控制表_dgv.Rows(I).Cells(表頭(17)).Value = My.Resources._1_124
  125. 合約控制表_dgv.Rows(I).Cells(表頭(18)).Value = My.Resources._1_124
  126. End If
  127. Next
  128. Dim mycol1 As DataGridViewImageColumn = 合約控制表_dgv.Columns(表頭(14)) : Dim mycol2 As DataGridViewImageColumn = 合約控制表_dgv.Columns(表頭(15))
  129. Dim mycol3 As DataGridViewImageColumn = 合約控制表_dgv.Columns(表頭(16)) : Dim mycol4 As DataGridViewImageColumn = 合約控制表_dgv.Columns(表頭(17))
  130. Dim mycol5 As DataGridViewImageColumn = 合約控制表_dgv.Columns(表頭(18))
  131. mycol1.ImageLayout = DataGridViewImageCellLayout.Zoom : mycol2.ImageLayout = DataGridViewImageCellLayout.Zoom : mycol3.ImageLayout = DataGridViewImageCellLayout.Zoom
  132. mycol4.ImageLayout = DataGridViewImageCellLayout.Zoom : mycol5.ImageLayout = DataGridViewImageCellLayout.Zoom
  133. 合約控制表_dgv.Sort(合約控制表_dgv.Columns(表頭(30)), System.ComponentModel.ListSortDirection.Ascending)
  134. End Sub
  135. Private Sub 甲方條件下拉清單讀取()
  136. SQL合約條件讀取() : 合約編號1_cb.Items.Clear() : 合約編號1_cb.Items.Add("") : While (dr.Read()) : 合約編號1_cb.Items.Add(dr("約號甲方")) : End While : conn.Close()
  137. End Sub
  138. Private Sub 語言轉換讀取()
  139. Dim 介面1 As String = "H001"
  140. If 系統語言 = "繁體中文" Then : 語言 = "CH" : ElseIf 系統語言 = "English" Then : 語言 = "EN" : ElseIf 系統語言 = "Indonesian" Then : 語言 = "IN" : End If
  141. Me.Text = 系統語言字典("H001-126-" & 語言) : 全部資料_ch.Text = 系統語言字典("H110-114-" & 語言) : Label7.Text = 系統語言字典("H110-117-" & 語言)
  142. Label11.Text = 系統語言字典("H110-118-" & 語言) : Label10.Text = 系統語言字典("H114-100-" & 語言) : Label2.Text = 系統語言字典("G000-156-" & 語言)
  143. Label375.Text = 系統語言字典("G000-215-" & 語言) : Label1.Text = 系統語言字典("H114-103-" & 語言) : 請款未結束_ch.Text = 系統語言字典("H114-101-" & 語言)
  144. 請款已結束_ch.Text = 系統語言字典("H114-102-" & 語言) : Label372.Text = 系統語言字典("H112-100-" & 語言) : Label5.Text = 系統語言字典("G000-155-" & 語言)
  145. 備註存檔_bt.Text = 系統語言字典("H114-104-" & 語言) : 完工結案單_bt.Text = 系統語言字典("H114-105-" & 語言) : ToolTip1.ToolTipTitle = 系統語言字典("G000-108-" & 語言)
  146. 表頭(0) = 系統語言字典("H501-152-" & 語言) : 表頭(1) = 系統語言字典("H101-100-" & 語言) : 表頭(2) = 系統語言字典("H110-122-" & 語言)
  147. 表頭(3) = 系統語言字典("G000-157-" & 語言) : 表頭(4) = 系統語言字典("H114-108-" & 語言) : 表頭(5) = 系統語言字典("H114-109-" & 語言)
  148. 表頭(6) = 系統語言字典("H114-110-" & 語言) : 表頭(7) = 系統語言字典("H114-111-" & 語言) : 表頭(8) = 系統語言字典("H114-112-" & 語言)
  149. 表頭(9) = 系統語言字典("H114-113-" & 語言) : 表頭(10) = 系統語言字典("H114-114-" & 語言) : 表頭(11) = 系統語言字典("H114-115-" & 語言)
  150. 表頭(12) = 系統語言字典("H114-116-" & 語言) : 表頭(13) = 系統語言字典("H114-117-" & 語言) : 表頭(14) = 系統語言字典("H114-118-" & 語言)
  151. 表頭(15) = 系統語言字典("H114-119-" & 語言) : 表頭(16) = 系統語言字典("H114-120-" & 語言) : 表頭(17) = 系統語言字典("H114-121-" & 語言)
  152. 表頭(18) = 系統語言字典("H114-122-" & 語言) : 表頭(19) = 系統語言字典("H114-123-" & 語言) : 表頭(20) = 系統語言字典("H114-124-" & 語言)
  153. 表頭(21) = 系統語言字典("H114-125-" & 語言) : 表頭(22) = 系統語言字典("H114-126-" & 語言) : 表頭(23) = 系統語言字典("H114-127-" & 語言)
  154. 表頭(24) = 系統語言字典("H114-128-" & 語言) : 表頭(25) = 系統語言字典("H112-100-" & 語言) : 表頭(26) = 系統語言字典("H310-104-" & 語言)
  155. 表頭(27) = 系統語言字典("H114-129-" & 語言) : 表頭(28) = 系統語言字典("H114-130-" & 語言) : 表頭(29) = 系統語言字典("H310-105-" & 語言)
  156. 表頭(30) = 系統語言字典("H114-131-" & 語言) : 表頭(31) = 系統語言字典("H112-119-" & 語言) : 對話框(0) = 系統語言字典("H110-102-" & 語言)
  157. 對話框(1) = 系統語言字典("H110-109-" & 語言) : 對話框(2) = 系統語言字典("H114-106-" & 語言) : 對話框(3) = 系統語言字典("H114-107-" & 語言)
  158. 對話框(4) = 系統語言字典("H508-121-" & 語言)
  159. End Sub
  160. Private Sub 查詢_bt_MouseEnter(sender As Object, e As EventArgs) Handles 查詢_bt.MouseEnter
  161. ToolTip1.SetToolTip(Me.查詢_bt, 系統語言字典("G000-113-" & 語言))
  162. End Sub
  163. Private Sub 合約結案控制表_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  164. Me.MdiParent = HX_PGS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  165. 風格() : H(114) = True : 介面 = "H114" : 語言轉換讀取() : Panel1.SendToBack() : 顯示說明(999, False)
  166. 甲方條件下拉清單讀取() : Set_合約清單() : 合約報價單_Siz()
  167. End Sub
  168. Private Sub 合約結案控制表_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown
  169. If 待辦進入 <> "" Then : lastFoundRowIndex = -1 : lastFoundColIndex = -1
  170. 關鍵字搜尋_tb.Text = 待辦進入 : 查詢DGV中的關鍵字_自動(合約控制表_dgv, 關鍵字搜尋_tb) : 選擇項 = lastFoundRowIndex : 合約資料讀取()
  171. lastFoundRowIndex = -1 : lastFoundColIndex = -1 : 關鍵字搜尋_tb.Text = "" : 待辦進入 = ""
  172. End If
  173. End Sub
  174. Private Sub 合約結案控制表_Closed(sender As Object, e As EventArgs) Handles MyBase.Closed
  175. MyMod.虛擬桌面開啟()
  176. End Sub
  177. Private Sub 合約報價單_Siz()
  178. MyMod.清單字體大小調整()
  179. 合約控制表_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value)
  180. End Sub
  181. Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove
  182. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  183. End Sub
  184. Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress
  185. timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True
  186. End Sub
  187. Private Sub 語轉扭_bt_Click(sender As Object, e As EventArgs) Handles 語轉扭_bt.Click
  188. 介面 = "H114" : 語言轉換讀取()
  189. End Sub
  190. Private Sub 合約控制表_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 合約控制表_dgv.CellClick
  191. If e.RowIndex = -1 Then : Else : 選擇項 = e.RowIndex : 合約資料讀取() : End If
  192. End Sub
  193. Private Sub 合約資料讀取()
  194. 合約編號_tb.Text = 合約控制表_dgv(表頭(0), 選擇項).Value.ToString : 備註_tb.Text = 合約控制表_dgv(表頭(24), 選擇項).Value.ToString
  195. 客戶名稱_tb.Text = 合約控制表_dgv(表頭(25), 選擇項).Value.ToString : 工程名稱_中_tb.Text = 合約控制表_dgv(表頭(1), 選擇項).Value.ToString
  196. 驗收日_tb.Text = 合約控制表_dgv(表頭(21), 選擇項).Value.ToString : 保固期限_tb.Text = 合約控制表_dgv(表頭(20), 選擇項).Value.ToString
  197. 工程名稱_英_tb.Text = 合約控制表_dgv(表頭(31), 選擇項).Value.ToString
  198. End Sub
  199. Private Sub 合約編號1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 合約編號1_cb.SelectedIndexChanged
  200. PA = 關鍵字搜尋_tb.Text : Set_合約清單()
  201. End Sub
  202. Private Sub 合約編號1_cb_Click(sender As Object, e As EventArgs) Handles 合約編號1_cb.Click
  203. CB選擇清單(合約編號1_cb)
  204. End Sub
  205. Private Sub 工程期1_ch_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 工程期1_ch.SelectedIndexChanged
  206. PA = 關鍵字搜尋_tb.Text : Set_合約清單()
  207. End Sub
  208. Private Sub 工程期1_ch_Click(sender As Object, e As EventArgs) Handles 工程期1_ch.Click
  209. CB選擇清單(工程期1_ch)
  210. End Sub
  211. Private Sub 全部資料_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 全部資料_ch.Click
  212. PA = 關鍵字搜尋_tb.Text : 全部資料_ch.Checked = True : 請款未結束_ch.Checked = False : 請款已結束_ch.Checked = False : Set_合約清單()
  213. End Sub
  214. Private Sub 請款未結束_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 請款未結束_ch.Click
  215. PA = 關鍵字搜尋_tb.Text : 全部資料_ch.Checked = False : 請款未結束_ch.Checked = True : 請款已結束_ch.Checked = False : Set_合約清單()
  216. End Sub
  217. Private Sub 請款已結束_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 請款已結束_ch.Click
  218. PA = 關鍵字搜尋_tb.Text : 全部資料_ch.Checked = False : 請款未結束_ch.Checked = False : 請款已結束_ch.Checked = True : Set_合約清單()
  219. End Sub
  220. Private Sub 查詢_bt_Click(sender As Object, e As EventArgs) Handles 查詢_bt.Click
  221. PA = 關鍵字搜尋_tb.Text : Set_合約清單()
  222. End Sub
  223. Private Sub 備註存檔_bt_Click(sender As Object, e As EventArgs) Handles 備註存檔_bt.Click
  224. If 合約編號_tb.Text = "" Then : MGB(對話框(0), 1) : Else
  225. PA = 合約編號_tb.Text : PA3 = 備註_tb.Text : SQL_控制表_結案修改() : PA = "" : Set_合約清單() : MGB(對話框(1), 1)
  226. End If
  227. End Sub
  228. Private Sub 客戶名稱_tb_Click(sender As Object, e As EventArgs) Handles 客戶名稱_tb.Click
  229. CB選擇清單(客戶名稱_tb)
  230. End Sub
  231. Private Sub 完工結案單_bt_Click(sender As Object, e As EventArgs) Handles 完工結案單_bt.Click
  232. If 合約編號_tb.Text = "" Then : MGB(對話框(2), 1) : Else
  233. If 驗收日_tb.Text = "" Then : MGB(對話框(3), 1) : Else
  234. xlApp = CType(CreateObject("Excel.Application"), Application)
  235. xlApp.Visible = True
  236. xlApp.DisplayAlerts = True
  237. xlApp.Application.WindowState = xlMaximized
  238. xlBook = xlApp.Workbooks.Add
  239. '----------------------------------------------------------------------------------------------------------------------
  240. xlSheet = NewMethod(xlBook) : xlApp.Sheets(1).Select : xlApp.Sheets(1).Name = "完工結案單"
  241. xlBook.Activate() : xlSheet.Activate()
  242. xlSheet.Cells(2, 2) = "工程完工結案單" : xlSheet.Cells(3, 2) = "Pernyataan Penyelesaian Proyek"
  243. xlSheet.Cells(5, 2) = "業 主 : " : xlSheet.Cells(5, 3) = 客戶名稱_tb.Text
  244. xlSheet.Cells(6, 2) = "Klien : " : xlSheet.Cells(6, 3) = 客戶名稱_tb.Text
  245. xlSheet.Cells(8, 2) = "工程名稱 : " : xlSheet.Cells(8, 3) = 工程名稱_中_tb.Text
  246. xlSheet.Cells(9, 2) = "Nama Proyek : " : xlSheet.Cells(9, 3) = 工程名稱_英_tb.Text
  247. xlSheet.Cells(11, 2) = "合約編號 : " : xlSheet.Cells(11, 3) = 合約編號_tb.Text
  248. xlSheet.Cells(12, 2) = "Nomor Kontrak : " : xlSheet.Cells(12, 3) = 合約編號_tb.Text
  249. xlSheet.Cells(14, 2) = "估驗期別 : " : xlSheet.Cells(15, 2) = "Periode Evaluasi : "
  250. xlSheet.Cells(17, 2) = "估驗項目 : " : xlSheet.Cells(17, 3) = "保固款"
  251. xlSheet.Cells(18, 2) = "Proyek Penilaian : " : xlSheet.Cells(18, 3) = "Jaminan"
  252. xlSheet.Cells(20, 2) = "說明 / Menjelaskan : "
  253. xlSheet.Cells(21, 2) = 工程名稱_中_tb.Text & " 以於 " & 驗收日_tb.Text & " 完成 " & 保固期限_tb.Text & " 個月保固。"
  254. xlSheet.Cells(22, 2) = "依合約第三項估驗款項"
  255. xlSheet.Cells(23, 2) = "惠請 尊上同意施款"
  256. xlSheet.Cells(25, 2) = 工程名稱_英_tb.Text
  257. xlSheet.Cells(26, 2) = "Garansi " & 保固期限_tb.Text & " bulan telah selesai pada " & 驗收日_tb.Text & "."
  258. xlSheet.Cells(27, 2) = "Perkiraan pembayaran sesuai dengan klausul ketiga kontrak"
  259. xlSheet.Cells(28, 2) = "Mohon setuju untuk pembayaran"
  260. xlSheet.Cells(31, 2) = "甲方簽章 / Partai A" : xlSheet.Cells(31, 4) = "乙方簽章 / Partai B"
  261. AA(xlApp, xlSheet)
  262. If Strings.Left(合約編號_tb.Text, 2) = "HX" Then : CC(xlApp, xlSheet) : Else : DD(xlApp, xlSheet) : End If : FF(xlApp, xlSheet)
  263. xlApp.Sheets(2).Delete : xlSheet.PageSetup.PrintArea = ""
  264. '-------------轉換成PDF---------------------------------------------------------------------
  265. Dim SERT As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
  266. xlBook.Sheets(1).ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, SERT & "\" & 合約編號_tb.Text & "工程完工結案單.pdf", XlFixedFormatQuality.xlQualityStandard, True)
  267. '-------------關閉EXCEL---------------------------------------------------------------------
  268. xlApp.Cells.Select() : xlApp.Application.WindowState = xlMinimized
  269. xlBook.Close(False)
  270. Runtime.InteropServices.Marshal.ReleaseComObject(xlSheet)
  271. Runtime.InteropServices.Marshal.ReleaseComObject(xlBook)
  272. Runtime.InteropServices.Marshal.ReleaseComObject(xlApp)
  273. xlApp.Quit() : xlSheet = Nothing : xlBook = Nothing : xlApp = Nothing : GC.Collect()
  274. MGB(對話框(4), 1)
  275. End If
  276. End If
  277. End Sub
  278. Private Shared Function NewMethod(xlBook As Workbook) As Worksheet
  279. Return CType(xlBook.Worksheets.Add, Worksheet)
  280. End Function
  281. Private Sub AA(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
  282. xlSheet.Cells.Select()
  283. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 12 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  284. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  285. xlSheet.Rows("1:1").Select : myExcel.Selection.RowHeight = 95
  286. xlSheet.Rows("32:32").Select : myExcel.Selection.RowHeight = 95
  287. xlSheet.Columns("A:A").Select : myExcel.Selection.ColumnWidth = 7 : xlSheet.Columns("B:B").Select : myExcel.Selection.ColumnWidth = 20
  288. xlSheet.Columns("C:D").Select : myExcel.Selection.ColumnWidth = 35
  289. xlSheet.Range("C12").Select() : myExcel.ActiveWindow.DisplayGridlines = False
  290. xlSheet.Range("B2:D2").Select()
  291. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  292. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  293. myExcel.Selection.Font.Underline = xlUnderlineStyleSingle
  294. xlSheet.Range("B3:D3").Select()
  295. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  296. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  297. myExcel.Selection.Font.Underline = xlUnderlineStyleSingle
  298. xlSheet.Range("C7").Select()
  299. End Sub
  300. Private Sub CC(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
  301. Clipboard.SetDataObject(PictureBox1.Image)
  302. xlSheet.Range("A1").Select()
  303. myExcel.ActiveSheet.Pictures.Paste.Select
  304. myExcel.Selection.ShapeRange.Height = 93
  305. myExcel.Selection.ShapeRange.Width = 550
  306. myExcel.Selection.ShapeRange.IncrementLeft(0)
  307. myExcel.Selection.ShapeRange.IncrementTop(0)
  308. End Sub
  309. Private Sub DD(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
  310. Clipboard.SetDataObject(PictureBox2.Image)
  311. xlSheet.Range("A1").Select()
  312. myExcel.ActiveSheet.Pictures.Paste.Select
  313. myExcel.Selection.ShapeRange.Height = 93
  314. myExcel.Selection.ShapeRange.Width = 550
  315. myExcel.Selection.ShapeRange.IncrementLeft(0)
  316. myExcel.Selection.ShapeRange.IncrementTop(0)
  317. End Sub
  318. Private Sub FF(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
  319. myExcel.Application.PrintCommunication = False : With myExcel.ActiveSheet.PageSetup : .PrintTitleRows = "" : .PrintTitleColumns = "" : End With
  320. myExcel.Application.PrintCommunication = True : myExcel.ActiveSheet.PageSetup.PrintArea = "" : myExcel.Application.PrintCommunication = False
  321. With myExcel.ActiveSheet.PageSetup : .LeftHeader = "" : .CenterHeader = "" : .RightHeader = "" : .LeftFooter = "" : .CenterFooter = "第 &P 頁,共 &N 頁" : .RightFooter = ""
  322. .LeftMargin = myExcel.Application.InchesToPoints(0.236220472440945) : .RightMargin = myExcel.Application.InchesToPoints(0.236220472440945)
  323. .TopMargin = myExcel.Application.InchesToPoints(0.748031496062992) : .BottomMargin = myExcel.Application.InchesToPoints(0.748031496062992)
  324. .HeaderMargin = myExcel.Application.InchesToPoints(0.31496062992126) : .FooterMargin = myExcel.Application.InchesToPoints(0.31496062992126)
  325. .PrintHeadings = False : .PrintGridlines = False : .CenterHorizontally = True : .CenterVertically = False : .Draft = False
  326. .FirstPageNumber = xlAutomatic : .BlackAndWhite = False : .Zoom = False : .FitToPagesWide = 1 : .FitToPagesTall = False : .OddAndEvenPagesHeaderFooter = False
  327. .DifferentFirstPageHeaderFooter = False : .ScaleWithDocHeaderFooter = True : .AlignMarginsHeaderFooter = True
  328. .EvenPage.LeftHeader.Text = "" : .EvenPage.CenterHeader.Text = "" : .EvenPage.RightHeader.Text = "" : .EvenPage.LeftFooter.Text = ""
  329. .EvenPage.CenterFooter.Text = "" : .EvenPage.RightFooter.Text = "" : .FirstPage.LeftHeader.Text = "" : .FirstPage.CenterHeader.Text = ""
  330. .FirstPage.RightHeader.Text = "" : .FirstPage.LeftFooter.Text = "" : .FirstPage.CenterFooter.Text = "" : .FirstPage.RightFooter.Text = ""
  331. End With : myExcel.Application.PrintCommunication = True
  332. End Sub
  333. Private Sub 風格()
  334. If 深色風格 = False Then
  335. Me.BackColor = SystemColors.Control
  336. 全部資料_ch.ForeColor = Color.Green : 請款未結束_ch.ForeColor = Color.Green : 請款已結束_ch.ForeColor = Color.Green
  337. Label5.ForeColor = Color.Blue : Label7.ForeColor = Color.Blue
  338. Label372.ForeColor = Color.FromArgb(192, 0, 0) : Label375.ForeColor = Color.FromArgb(192, 0, 0)
  339. Label1.ForeColor = Color.Black : Label2.ForeColor = Color.Black : Label10.ForeColor = Color.Black : Label11.ForeColor = Color.Black
  340. Label1.BackColor = SystemColors.Control : Label2.BackColor = SystemColors.Control : Label10.BackColor = SystemColors.Control : Label11.BackColor = SystemColors.Control
  341. 關鍵字搜尋_tb.BackColor = Color.White : 關鍵字搜尋_tb.ForeColor = Color.Black : 合約編號_tb.BackColor = Color.White : 合約編號_tb.ForeColor = Color.Black
  342. 工程名稱_中_tb.BackColor = Color.White : 工程名稱_中_tb.ForeColor = Color.Black : 驗收日_tb.BackColor = Color.White : 驗收日_tb.ForeColor = Color.Black
  343. 客戶名稱_tb.BackColor = Color.White : 客戶名稱_tb.ForeColor = Color.Black : 備註_tb.BackColor = Color.White : 備註_tb.ForeColor = Color.Black
  344. 合約編號1_cb.BackColor = Color.White : 合約編號1_cb.ForeColor = Color.Blue : 工程期1_ch.BackColor = Color.White : 工程期1_ch.ForeColor = Color.Blue
  345. 備註存檔_bt.BackColor = Color.White : 備註存檔_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. 合約控制表_dgv.EnableHeadersVisualStyles = True : 合約控制表_dgv.BackgroundColor = Color.White : 合約控制表_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.Black
  348. 合約控制表_dgv.AlternatingRowsDefaultCellStyle.BackColor = Color.LightPink
  349. 合約控制表_dgv.DefaultCellStyle.BackColor = Color.White : 合約控制表_dgv.DefaultCellStyle.ForeColor = Color.Black
  350. Else
  351. Me.BackColor = Color.Black
  352. 全部資料_ch.ForeColor = Color.LightGreen : 請款未結束_ch.ForeColor = Color.LightGreen : 請款已結束_ch.ForeColor = Color.LightGreen
  353. Label5.ForeColor = Color.LightBlue : Label7.ForeColor = Color.White
  354. Label372.ForeColor = Color.LightPink : Label375.ForeColor = Color.LightPink
  355. Label1.ForeColor = Color.White : Label2.ForeColor = Color.White : Label10.ForeColor = Color.White : Label11.ForeColor = Color.White
  356. Label1.BackColor = Color.Black : Label2.BackColor = Color.Black : Label10.BackColor = Color.Black : Label11.BackColor = Color.Black
  357. 關鍵字搜尋_tb.BackColor = Color.DimGray : 關鍵字搜尋_tb.ForeColor = Color.White : 合約編號_tb.BackColor = Color.DimGray : 合約編號_tb.ForeColor = Color.White
  358. 工程名稱_中_tb.BackColor = Color.DimGray : 工程名稱_中_tb.ForeColor = Color.White : 驗收日_tb.BackColor = Color.DimGray : 驗收日_tb.ForeColor = Color.White
  359. 客戶名稱_tb.BackColor = Color.DimGray : 客戶名稱_tb.ForeColor = Color.White : 備註_tb.BackColor = Color.DimGray : 備註_tb.ForeColor = Color.White
  360. 合約編號1_cb.BackColor = Color.DimGray : 合約編號1_cb.ForeColor = Color.LightBlue : 工程期1_ch.BackColor = Color.DimGray : 工程期1_ch.ForeColor = Color.LightBlue
  361. 備註存檔_bt.BackColor = Color.DimGray : 備註存檔_bt.ForeColor = Color.White : 完工結案單_bt.BackColor = Color.DimGray : 完工結案單_bt.ForeColor = Color.White
  362. 語轉扭_bt.BackColor = Color.DimGray : 語轉扭_bt.ForeColor = Color.White : 查詢_bt.BackColor = Color.DimGray : 查詢_bt.ForeColor = Color.White
  363. 合約控制表_dgv.EnableHeadersVisualStyles = False : 合約控制表_dgv.BackgroundColor = Color.DimGray : 合約控制表_dgv.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
  364. 合約控制表_dgv.ColumnHeadersDefaultCellStyle.BackColor = Color.Black : 合約控制表_dgv.AlternatingRowsDefaultCellStyle.BackColor = Color.DimGray
  365. 合約控制表_dgv.DefaultCellStyle.BackColor = Color.Black : 合約控制表_dgv.DefaultCellStyle.ForeColor = Color.White
  366. End If
  367. End Sub
  368. End Class