설명 없음
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.

工程項目BOM表.vb 61KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702
  1. Imports System.IO
  2. Public Class 工程項目BOM表
  3. Dim ds4 As New DataSet
  4. Dim KKK2, 物料規格, ESTR, 目前選擇, 條件選擇 As String
  5. Dim 啟動運算, 已超出, 放大, 不再動作1 As Boolean
  6. Dim EDR, 頁數, DGVX, NUM1 As Integer
  7. Private Sub Set_合約清單()
  8. Dim ds6 As New DataSet
  9. 合約_dgv.DataSource = Nothing : ds6.Clear()
  10. 合約_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  11. 合約_dgv.ColumnHeadersHeight = 25 : 合約_dgv.AllowUserToAddRows = False
  12. PA = 關鍵字搜尋_tb.Text : PA46 = 合約編號1_cb.Text
  13. SQL_合約清單_報價用()
  14. da.Fill(ds6) : 合約_dgv.DataSource = ds6.Tables(0) : conn.Close()
  15. 合約_dgv.Columns(0).FillWeight = 100 : 合約_dgv.Columns("工程名稱_中").FillWeight = 250 : 合約_dgv.Columns("幣別").Visible = False
  16. 合約_dgv.Columns("折讓比例").Visible = False : 合約_dgv.Columns("稅前歸零").Visible = False : 合約_dgv.Columns("稅後歸零").Visible = False
  17. 合約_dgv.Columns("歸零位數").Visible = False
  18. For i As Integer = 1 To 33 : 合約_dgv.Columns(i).Visible = False : Next
  19. For i As Integer = 0 To 合約_dgv.Rows.Count - 1 : If IsDBNull(合約_dgv("停止", i).Value) = True Then : 合約_dgv("停止", i).Value = False : End If : Next
  20. If 放大 = True Then
  21. 合約_dgv.Columns("工程名稱_中").Visible = True
  22. Else
  23. 合約_dgv.Columns("工程名稱_中").Visible = False
  24. End If
  25. End Sub
  26. Private Sub Set_合約報價明細表()
  27. Dim ds14 As New DataSet
  28. 報價明細表_dgv.DataSource = Nothing : ds14.Clear() : 報價明細表_dgv.Columns.Clear()
  29. 報價明細表_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  30. 報價明細表_dgv.ColumnHeadersHeight = 40 : 報價明細表_dgv.AllowUserToAddRows = False : 報價明細表_dgv.RowTemplate.Height = 45
  31. 報價明細表_dgv.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.True
  32. PA = 合約編號_tb.Text : SQL_合約報價明細表()
  33. da.Fill(ds14) : 報價明細表_dgv.DataSource = ds14.Tables(0) : conn.Close()
  34. 報價明細表_dgv.Columns(0).FillWeight = 50 : 報價明細表_dgv.Columns(1).FillWeight = 50 : 報價明細表_dgv.Columns(2).FillWeight = 250
  35. 報價明細表_dgv.Columns(3).FillWeight = 50 : 報價明細表_dgv.Columns(4).FillWeight = 50 : 報價明細表_dgv.Columns(5).FillWeight = 80
  36. 報價明細表_dgv.Columns(6).FillWeight = 80 : 報價明細表_dgv.Columns(7).FillWeight = 100 : 報價明細表_dgv.Columns(8).FillWeight = 50
  37. 報價明細表_dgv.Columns(34).FillWeight = 80 : 報價明細表_dgv.Columns(33).FillWeight = 40 : 報價明細表_dgv.Columns("S").Visible = False
  38. 報價明細表_dgv.Columns(42).FillWeight = 20 : 報價明細表_dgv.Columns(43).FillWeight = 20 : 報價明細表_dgv.Columns(44).FillWeight = 20
  39. 報價明細表_dgv.Columns(45).FillWeight = 20 : 報價明細表_dgv.Columns(46).FillWeight = 20 : 報價明細表_dgv.Columns(47).FillWeight = 20
  40. 報價明細表_dgv.Columns(48).FillWeight = 20 : 報價明細表_dgv.Columns(49).FillWeight = 20 : 報價明細表_dgv.Columns(50).FillWeight = 20
  41. For I As Integer = 0 To 58 : 報價明細表_dgv.Columns(I).Visible = False : Next
  42. 報價明細表_dgv.Columns("QTY").DefaultCellStyle.Format = "#,##0"
  43. 報價明細表_dgv.Columns("UNIT").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  44. 報價明細表_dgv.Columns("QTY").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  45. 報價明細表_dgv.Columns("ITEM").Visible = True : 報價明細表_dgv.Columns("DESCRIPTION").Visible = True : 報價明細表_dgv.Columns("UNIT").Visible = True
  46. 報價明細表_dgv.Columns("QTY").Visible = True : 報價明細表_dgv.Columns("料號").Visible = True
  47. 報價明細表_dgv.Columns("ITEM").ReadOnly = True : 報價明細表_dgv.Columns("DESCRIPTION").ReadOnly = True : 報價明細表_dgv.Columns("UNIT").ReadOnly = True
  48. 報價明細表_dgv.Columns("QTY").ReadOnly = True : 報價明細表_dgv.Columns("料號").ReadOnly = True
  49. If DGV位置2.Value >= 報價明細表_dgv.Rows.Count Then : DGV位置2.Value = 報價明細表_dgv.Rows.Count - 1 : End If
  50. If DGV位置2.Value > 0 Then : 報價明細表_dgv.CurrentCell = 報價明細表_dgv.Rows(DGV位置2.Value).Cells("UNIT") : End If
  51. Set_報價係數_dgv_勾選項()
  52. 報價明細表_dgv.Columns("選擇").FillWeight = 50
  53. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  54. If 報價明細表_dgv.Rows(i).Cells("料號").Value.ToString = "" Then
  55. 報價明細表_dgv.Rows(i).Cells("D1").Value = False : 報價明細表_dgv.Rows(i).Cells("D2").Value = False
  56. 報價明細表_dgv.Rows(i).Cells("D3").Value = False : 報價明細表_dgv.Rows(i).Cells("D4").Value = False
  57. 報價明細表_dgv.Rows(i).Cells("D5").Value = False : 報價明細表_dgv.Rows(i).Cells("D6").Value = False
  58. 報價明細表_dgv.Rows(i).Cells("D7").Value = False : 報價明細表_dgv.Rows(i).Cells("D8").Value = False
  59. End If
  60. If 報價明細表_dgv.Rows(i).Cells("料號").Value.ToString <> "" Then
  61. If 報價明細表_dgv.Rows(i).Cells("預設").Value = True Then
  62. 報價明細表_dgv.Rows(i).Cells("D1").Value = 報價明細表_dgv.Rows(i).Cells("S1").Value : 報價明細表_dgv.Rows(i).Cells("D2").Value = 報價明細表_dgv.Rows(i).Cells("S2").Value
  63. 報價明細表_dgv.Rows(i).Cells("D3").Value = 報價明細表_dgv.Rows(i).Cells("S3").Value : 報價明細表_dgv.Rows(i).Cells("D4").Value = 報價明細表_dgv.Rows(i).Cells("S4").Value
  64. 報價明細表_dgv.Rows(i).Cells("D5").Value = 報價明細表_dgv.Rows(i).Cells("S5").Value : 報價明細表_dgv.Rows(i).Cells("D6").Value = 報價明細表_dgv.Rows(i).Cells("S6").Value
  65. 報價明細表_dgv.Rows(i).Cells("D7").Value = 報價明細表_dgv.Rows(i).Cells("S7").Value : 報價明細表_dgv.Rows(i).Cells("D8").Value = 報價明細表_dgv.Rows(i).Cells("S8").Value
  66. End If
  67. Dim ZA1, ZA2, ZA3, ZA4, ZA5, ZA6, ZA7, ZA8 As String : 物料規格 = ""
  68. If 詳細資料2_ch.Checked = True Then
  69. If 報價明細表_dgv.Rows(i).Cells("A1").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D1").Value = True Then
  70. ZA1 = 報價明細表_dgv.Rows(i).Cells("AA1").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A1").Value.ToString : 物料規格 = ZA1 : End If : End If
  71. If 報價明細表_dgv.Rows(i).Cells("A2").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D2").Value = True Then
  72. ZA2 = 報價明細表_dgv.Rows(i).Cells("AA2").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A2").Value : If 物料規格 = "" Then
  73. 物料規格 = ZA2 : Else : 物料規格 = 物料規格 + "、" + ZA2 : End If : End If : End If
  74. If 報價明細表_dgv.Rows(i).Cells("A3").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D3").Value = True Then
  75. ZA3 = 報價明細表_dgv.Rows(i).Cells("AA3").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A3").Value : If 物料規格 = "" Then
  76. 物料規格 = ZA3 : Else : 物料規格 = 物料規格 + "、" + ZA3 : End If : End If : End If
  77. If 報價明細表_dgv.Rows(i).Cells("A4").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D4").Value = True Then
  78. ZA4 = 報價明細表_dgv.Rows(i).Cells("AA4").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A4").Value : If 物料規格 = "" Then
  79. 物料規格 = ZA4 : Else : 物料規格 = 物料規格 + "、" + ZA4 : End If : End If : End If
  80. If 報價明細表_dgv.Rows(i).Cells("A5").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D5").Value = True Then
  81. ZA5 = 報價明細表_dgv.Rows(i).Cells("AA5").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A5").Value : If 物料規格 = "" Then
  82. 物料規格 = ZA5 : Else : 物料規格 = 物料規格 + "、" + ZA5 : End If : End If : End If
  83. If 報價明細表_dgv.Rows(i).Cells("A6").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D6").Value = True Then
  84. ZA6 = 報價明細表_dgv.Rows(i).Cells("AA6").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A6").Value : If 物料規格 = "" Then
  85. 物料規格 = ZA6 : Else : 物料規格 = 物料規格 + "、" + ZA6 : End If : End If : End If
  86. If 報價明細表_dgv.Rows(i).Cells("A7").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D7").Value = True Then
  87. ZA7 = 報價明細表_dgv.Rows(i).Cells("AA7").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A7").Value : If 物料規格 = "" Then
  88. 物料規格 = ZA7 : Else : 物料規格 = 物料規格 + "、" + ZA7 : End If : End If : End If
  89. If 報價明細表_dgv.Rows(i).Cells("A8").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D8").Value = True Then
  90. ZA8 = 報價明細表_dgv.Rows(i).Cells("AA8").Value.ToString & "=" & 報價明細表_dgv.Rows(i).Cells("A8").Value : If 物料規格 = "" Then
  91. 物料規格 = ZA8 : Else : 物料規格 = 物料規格 + "、" + ZA8 : End If : End If : End If
  92. Else
  93. If 報價明細表_dgv.Rows(i).Cells("A1").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D1").Value = True Then
  94. ZA1 = 報價明細表_dgv.Rows(i).Cells("A1").Value.ToString : 物料規格 = ZA1 : End If : End If
  95. If 報價明細表_dgv.Rows(i).Cells("A2").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D2").Value = True Then
  96. ZA2 = 報價明細表_dgv.Rows(i).Cells("A2").Value : If 物料規格 = "" Then : 物料規格 = ZA2 : Else : 物料規格 = 物料規格 + "、" + ZA2 : End If : End If : End If
  97. If 報價明細表_dgv.Rows(i).Cells("A3").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D3").Value = True Then
  98. ZA3 = 報價明細表_dgv.Rows(i).Cells("A3").Value : If 物料規格 = "" Then : 物料規格 = ZA3 : Else : 物料規格 = 物料規格 + "、" + ZA3 : End If : End If : End If
  99. If 報價明細表_dgv.Rows(i).Cells("A4").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D4").Value = True Then
  100. ZA4 = 報價明細表_dgv.Rows(i).Cells("A4").Value : If 物料規格 = "" Then : 物料規格 = ZA4 : Else : 物料規格 = 物料規格 + "、" + ZA4 : End If : End If : End If
  101. If 報價明細表_dgv.Rows(i).Cells("A5").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D5").Value = True Then
  102. ZA5 = 報價明細表_dgv.Rows(i).Cells("A5").Value : If 物料規格 = "" Then : 物料規格 = ZA5 : Else : 物料規格 = 物料規格 + "、" + ZA5 : End If : End If : End If
  103. If 報價明細表_dgv.Rows(i).Cells("A6").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D6").Value = True Then
  104. ZA6 = 報價明細表_dgv.Rows(i).Cells("A6").Value : If 物料規格 = "" Then : 物料規格 = ZA6 : Else : 物料規格 = 物料規格 + "、" + ZA6 : End If : End If : End If
  105. If 報價明細表_dgv.Rows(i).Cells("A7").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D7").Value = True Then
  106. ZA7 = 報價明細表_dgv.Rows(i).Cells("A7").Value : If 物料規格 = "" Then : 物料規格 = ZA7 : Else : 物料規格 = 物料規格 + "、" + ZA7 : End If : End If : End If
  107. If 報價明細表_dgv.Rows(i).Cells("A8").Value.ToString <> "" Then : If 報價明細表_dgv.Rows(i).Cells("D8").Value = True Then
  108. ZA8 = 報價明細表_dgv.Rows(i).Cells("A8").Value : If 物料規格 = "" Then : 物料規格 = ZA8 : Else : 物料規格 = 物料規格 + "、" + ZA8 : End If : End If : End If
  109. End If
  110. If 報價明細表_dgv.Rows(i).Cells("料號").Value.ToString <> "" Then
  111. 報價明細表_dgv.Rows(i).Cells("DESCRIPTION").Value = 報價明細表_dgv.Rows(i).Cells("品名").Value.ToString & " " & 物料規格
  112. End If
  113. End If : 報價明細表_dgv.Rows(i).Cells("預設").Value = False
  114. Next
  115. End Sub
  116. Private Sub Set_報價係數_dgv_勾選項()
  117. Dim Col As New DataGridViewCheckBoxColumn With {
  118. .FillWeight = 50,
  119. .DataPropertyName = "選擇"
  120. }
  121. Col.HeaderText = "選擇" : Col.Name = "選擇"
  122. 報價明細表_dgv.Columns.Insert(0, Col)
  123. End Sub
  124. Private Sub Set_BOM表控制()
  125. Dim ds6 As New DataSet
  126. BOM表控制_dgv.DataSource = Nothing : ds6.Clear()
  127. BOM表控制_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  128. BOM表控制_dgv.ColumnHeadersHeight = 25 : BOM表控制_dgv.AllowUserToAddRows = False : BOM表控制_dgv.RowTemplate.Height = 45
  129. SQL_BOM表控制()
  130. da.Fill(ds6) : BOM表控制_dgv.DataSource = ds6.Tables(0) : conn.Close()
  131. BOM表控制_dgv.Columns(0).Visible = False : BOM表控制_dgv.Columns(1).FillWeight = 100
  132. BOM表控制_dgv.Columns(0).ReadOnly = True : BOM表控制_dgv.Columns(1).ReadOnly = True
  133. End Sub
  134. Private Sub Set_BOM表明細()
  135. Dim ds6 As New DataSet
  136. BOM表明細_dgv.DataSource = Nothing : ds6.Clear()
  137. BOM表明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  138. BOM表明細_dgv.ColumnHeadersHeight = 25 : BOM表明細_dgv.AllowUserToAddRows = False : BOM表明細_dgv.RowTemplate.Height = 45
  139. SQL_BOM表明細()
  140. da.Fill(ds6) : BOM表明細_dgv.DataSource = ds6.Tables(0) : conn.Close()
  141. BOM表明細_dgv.Columns(0).FillWeight = 30 : BOM表明細_dgv.Columns(0).Visible = False : BOM表明細_dgv.Columns(1).FillWeight = 30
  142. BOM表明細_dgv.Columns(2).FillWeight = 200 : BOM表明細_dgv.Columns(3).FillWeight = 30 : BOM表明細_dgv.Columns(4).FillWeight = 30
  143. BOM表明細_dgv.Columns(5).FillWeight = 50 : BOM表明細_dgv.Columns(6).Visible = False
  144. For i As Integer = 7 To 34 : BOM表明細_dgv.Columns(i).Visible = False : Next
  145. BOM表明細_dgv.Columns("數量").DefaultCellStyle.Format = "#,##0"
  146. BOM表明細_dgv.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  147. BOM表明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  148. BOM表明細_dgv.Columns(1).ReadOnly = True : BOM表明細_dgv.Columns(5).ReadOnly = True
  149. For i As Integer = 3 To 4 : BOM表明細_dgv.Columns(i).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : Next
  150. For i As Integer = 0 To BOM表明細_dgv.Rows.Count - 1
  151. BOM表明細_dgv.Rows(i).Cells("項次").Value = i + 1
  152. If BOM表明細_dgv.Rows(i).Cells("料號").Value.ToString <> "" Then
  153. Dim ZA1, ZA2, ZA3, ZA4, ZA5, ZA6, ZA7, ZA8 As String : 物料規格 = ""
  154. If 詳細資料2_ch.Checked = True Then
  155. If BOM表明細_dgv.Rows(i).Cells("A1").Value.ToString <> "" Then
  156. ZA1 = BOM表明細_dgv.Rows(i).Cells("AA1").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A1").Value.ToString : 物料規格 = ZA1 : End If
  157. If BOM表明細_dgv.Rows(i).Cells("A2").Value.ToString <> "" Then
  158. ZA2 = BOM表明細_dgv.Rows(i).Cells("AA2").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A2").Value
  159. If 物料規格 = "" Then : 物料規格 = ZA2 : Else : 物料規格 = 物料規格 + "、" + ZA2 : End If : End If
  160. If BOM表明細_dgv.Rows(i).Cells("A3").Value.ToString <> "" Then
  161. ZA3 = BOM表明細_dgv.Rows(i).Cells("AA3").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A3").Value
  162. If 物料規格 = "" Then : 物料規格 = ZA3 : Else : 物料規格 = 物料規格 + "、" + ZA3 : End If : End If
  163. If BOM表明細_dgv.Rows(i).Cells("A4").Value.ToString <> "" Then
  164. ZA4 = BOM表明細_dgv.Rows(i).Cells("AA4").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A4").Value
  165. If 物料規格 = "" Then : 物料規格 = ZA4 : Else : 物料規格 = 物料規格 + "、" + ZA4 : End If : End If
  166. If BOM表明細_dgv.Rows(i).Cells("A5").Value.ToString <> "" Then
  167. ZA5 = BOM表明細_dgv.Rows(i).Cells("AA5").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A5").Value
  168. If 物料規格 = "" Then : 物料規格 = ZA5 : Else : 物料規格 = 物料規格 + "、" + ZA5 : End If : End If
  169. If BOM表明細_dgv.Rows(i).Cells("A6").Value.ToString <> "" Then
  170. ZA6 = BOM表明細_dgv.Rows(i).Cells("AA6").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A6").Value
  171. If 物料規格 = "" Then : 物料規格 = ZA6 : Else : 物料規格 = 物料規格 + "、" + ZA6 : End If : End If
  172. If BOM表明細_dgv.Rows(i).Cells("A7").Value.ToString <> "" Then
  173. ZA7 = BOM表明細_dgv.Rows(i).Cells("AA7").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A7").Value
  174. If 物料規格 = "" Then : 物料規格 = ZA7 : Else : 物料規格 = 物料規格 + "、" + ZA7 : End If : End If
  175. If BOM表明細_dgv.Rows(i).Cells("A8").Value.ToString <> "" Then
  176. ZA8 = BOM表明細_dgv.Rows(i).Cells("AA8").Value.ToString & "=" & BOM表明細_dgv.Rows(i).Cells("A8").Value
  177. If 物料規格 = "" Then : 物料規格 = ZA8 : Else : 物料規格 = 物料規格 + "、" + ZA8 : End If : End If
  178. Else
  179. If BOM表明細_dgv.Rows(i).Cells("A1").Value.ToString <> "" Then : ZA1 = BOM表明細_dgv.Rows(i).Cells("A1").Value.ToString : 物料規格 = ZA1 : End If
  180. If BOM表明細_dgv.Rows(i).Cells("A2").Value.ToString <> "" Then
  181. ZA2 = BOM表明細_dgv.Rows(i).Cells("A2").Value : If 物料規格 = "" Then : 物料規格 = ZA2 : Else : 物料規格 = 物料規格 + "、" + ZA2 : End If : End If
  182. If BOM表明細_dgv.Rows(i).Cells("A3").Value.ToString <> "" Then
  183. ZA3 = BOM表明細_dgv.Rows(i).Cells("A3").Value : If 物料規格 = "" Then : 物料規格 = ZA3 : Else : 物料規格 = 物料規格 + "、" + ZA3 : End If : End If
  184. If BOM表明細_dgv.Rows(i).Cells("A4").Value.ToString <> "" Then
  185. ZA4 = BOM表明細_dgv.Rows(i).Cells("A4").Value : If 物料規格 = "" Then : 物料規格 = ZA4 : Else : 物料規格 = 物料規格 + "、" + ZA4 : End If : End If
  186. If BOM表明細_dgv.Rows(i).Cells("A5").Value.ToString <> "" Then
  187. ZA5 = BOM表明細_dgv.Rows(i).Cells("A5").Value : If 物料規格 = "" Then : 物料規格 = ZA5 : Else : 物料規格 = 物料規格 + "、" + ZA5 : End If : End If
  188. If BOM表明細_dgv.Rows(i).Cells("A6").Value.ToString <> "" Then
  189. ZA6 = BOM表明細_dgv.Rows(i).Cells("A6").Value : If 物料規格 = "" Then : 物料規格 = ZA6 : Else : 物料規格 = 物料規格 + "、" + ZA6 : End If : End If
  190. If BOM表明細_dgv.Rows(i).Cells("A7").Value.ToString <> "" Then
  191. ZA7 = BOM表明細_dgv.Rows(i).Cells("A7").Value : If 物料規格 = "" Then : 物料規格 = ZA7 : Else : 物料規格 = 物料規格 + "、" + ZA7 : End If : End If
  192. If BOM表明細_dgv.Rows(i).Cells("A8").Value.ToString <> "" Then
  193. ZA8 = BOM表明細_dgv.Rows(i).Cells("A8").Value : If 物料規格 = "" Then : 物料規格 = ZA8 : Else : 物料規格 = 物料規格 + "、" + ZA8 : End If : End If
  194. End If
  195. If BOM表明細_dgv.Rows(i).Cells("料號").Value.ToString <> "" Then
  196. BOM表明細_dgv.Rows(i).Cells("項目").Value = BOM表明細_dgv.Rows(i).Cells("品名").Value.ToString & " " & 物料規格
  197. End If
  198. End If
  199. Next
  200. End Sub
  201. Private Sub Set_DGV1載入前設定()
  202. 物料清單_dgv.DataSource = Nothing : ds4.Clear()
  203. 物料清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  204. 物料清單_dgv.ColumnHeadersHeight = 25 : 物料清單_dgv.AllowUserToAddRows = False
  205. If 小間距_ch.Checked = False And 中間距_ch.Checked = False And 大間距_ch.Checked = True Then : 物料清單_dgv.RowTemplate.Height = 65
  206. ElseIf 小間距_ch.Checked = False And 中間距_ch.Checked = True And 大間距_ch.Checked = False Then : 物料清單_dgv.RowTemplate.Height = 45
  207. ElseIf 小間距_ch.Checked = True And 中間距_ch.Checked = False And 大間距_ch.Checked = False Then : 物料清單_dgv.RowTemplate.Height = 25
  208. End If : ConnOpen_ERP()
  209. End Sub
  210. Private Sub Set_清單1()
  211. PA1 = 群組碼_tb.Text : Set_DGV1載入前設定() : SQL_合約試算分表_物料清單一() : Set_DG1載入後設定()
  212. End Sub
  213. Private Sub Set_DG1載入後設定()
  214. CmdSet_For_DGV() : da.Fill(ds4) : 物料清單_dgv.DataSource = ds4.Tables(0) : conn.Close()
  215. 物料清單_dgv.Columns(0).Visible = False : 物料清單_dgv.Columns(1).FillWeight = 80 : 物料清單_dgv.Columns(2).FillWeight = 175 : 物料清單_dgv.Columns(3).Visible = False
  216. 物料清單_dgv.Columns(4).Visible = False : 物料清單_dgv.Columns(5).FillWeight = 45
  217. 物料清單_dgv.Columns(0).ReadOnly = True : 物料清單_dgv.Columns(1).ReadOnly = True : 物料清單_dgv.Columns(2).ReadOnly = True
  218. For i As Integer = 0 To 物料清單_dgv.Rows.Count - 1 : 物料清單_dgv(0, i).Value = i + 1 : Next
  219. If 低網速模式 = False Then
  220. 物料清單_dgv.Columns(6).FillWeight = 50 : 物料清單_dgv.Columns(6).Visible = True
  221. Dim mycol As DataGridViewImageColumn = 物料清單_dgv.Columns("圖檔") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom
  222. Else
  223. If 物料清單_dgv.Columns.Count = 7 Then : 物料清單_dgv.Columns(6).Visible = False : End If
  224. End If
  225. End Sub
  226. Private Sub 群組碼_cb_語轉_下拉表單資料載入()
  227. SQL_群組碼_語轉_下拉清單() : 新群組1_cb.Items.Clear() : While (dr.Read()) : 新群組1_cb.Items.Add(dr("群組")) : End While : conn.Close()
  228. End Sub
  229. Private Sub 群組編碼_cb_下拉表單資料載入()
  230. SQL_群組碼_下拉清單() : 群組編碼_cb.Items.Clear() : While (dr.Read()) : 群組編碼_cb.Items.Add(dr("群組碼")) : End While : conn.Close()
  231. End Sub
  232. Private Sub 甲方條件下拉清單讀取()
  233. SQL合約條件讀取() : 合約編號1_cb.Items.Clear() : 合約編號1_cb.Items.Add("") : While (dr.Read()) : 合約編號1_cb.Items.Add(dr("約號甲方")) : End While : conn.Close()
  234. End Sub
  235. Private Sub 工程項目BOM表_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  236. Me.MdiParent = GCM_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  237. 物料清單_dgv.BringToFront() : Me.KeyPreview = True
  238. End Sub
  239. Private Sub 工程項目BOM表_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown
  240. 甲方條件下拉清單讀取() : Set_合約清單() : Set_BOM表控制() : 群組碼_cb_語轉_下拉表單資料載入() : SQL_群組碼_語轉_下拉清單()
  241. 群組編碼_cb_下拉表單資料載入() : 新群組1_cb.SelectedIndex = 0
  242. 合約報價單_Siz()
  243. End Sub
  244. Private Sub 合約報價單_SizeChanged(sender As Object, e As EventArgs) Handles MyBase.SizeChanged
  245. 合約報價單_Siz()
  246. End Sub
  247. Private Sub 合約報價單_Siz()
  248. MyModule1.清單字體大小調整()
  249. 合約_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", 7.6)
  250. BOM表控制_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value)
  251. BOM表明細_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value)
  252. 物料清單_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value)
  253. 物料規格_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value)
  254. 報價明細表_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value)
  255. End Sub
  256. Private Sub 工程項目BOM表_Closed(sender As Object, e As EventArgs) Handles MyBase.Closed
  257. End Sub
  258. Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove
  259. timeNow = 0 : GCM_ERP_SYS.Timer1.Enabled = False : GCM_ERP_SYS.Timer1.Enabled = True
  260. End Sub
  261. Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress
  262. timeNow = 0 : GCM_ERP_SYS.Timer1.Enabled = False : GCM_ERP_SYS.Timer1.Enabled = True
  263. End Sub
  264. Private Sub Form_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown
  265. If e.Control And e.KeyCode = Keys.S Then : If TabControl1.SelectedIndex = 0 Then : 存檔_bt.PerformClick() : End If : End If
  266. End Sub
  267. Private Sub 物料清單_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 物料清單_dgv.CellClick
  268. If e.RowIndex = -1 Then : Else
  269. PA = 物料清單_dgv(1, e.RowIndex).Value.ToString
  270. PA1 = 物料清單_dgv.Rows(e.RowIndex).Cells("群組碼").Value : PA2 = 物料清單_dgv.Rows(e.RowIndex).Cells("料號原則").Value
  271. SQL_物料圖庫_圖檔讀取()
  272. While dr.Read() = True
  273. Dim unused As Byte() = New Byte(-1) {}
  274. Dim bytes As Byte() = DirectCast(dr.Item("圖檔"), Byte())
  275. Dim oStream As New MemoryStream(bytes)
  276. 物料圖1_pb.Image = Bitmap.FromStream(oStream)
  277. End While : conn.Close() : 物料圖1_pb.SizeMode = 4
  278. '------------------------------------------------------------------------------------------------------------------------------------------
  279. SQL_建築物料請購單申請_物料規格讀取()
  280. If dr.Read() Then : KKK2 = dr("規格庫編號") : PA3 = dr("規格庫抬頭指定") : PA4 = dr("群組碼") : End If : conn.Close()
  281. '------------------------------------------------------------------------------------------------------------------------------------------
  282. SQL_規格庫抬頭讀取()
  283. If dr.Read() Then : AAA1 = dr("A1") : AAA2 = dr("A2") : AAA3 = dr("A3") : AAA4 = dr("A4") : AAA5 = dr("A5") : AAA6 = dr("A6") : AAA7 = dr("A7") : AAA8 = dr("A8") : End If
  284. conn.Close()
  285. '------------------------------------------------------------------------------------------------------------------------------------------
  286. Dim ds3 As New DataSet
  287. 物料規格_dgv.DataSource = Nothing : ds3.Clear()
  288. 物料規格_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  289. 物料規格_dgv.ColumnHeadersHeight = 25 : 物料規格_dgv.AllowUserToAddRows = False : 物料規格_dgv.RowTemplate.Height = 20
  290. If KKK2 = "SQLB03" Then : SQL_物料規格_SQLB03() : ElseIf KKK2 = "SQLB04" Then : SQL_物料規格_SQLB04() : ElseIf KKK2 = "SQLB05" Then : SQL_物料規格_SQLB05()
  291. ElseIf KKK2 = "SQLB06" Then : SQL_物料規格_SQLB06() : ElseIf KKK2 = "SQLB07" Then : SQL_物料規格_SQLB07() : ElseIf KKK2 = "SQLB08" Then : SQL_物料規格_SQLB08() : End If
  292. da.Fill(ds3) : 物料規格_dgv.DataSource = ds3.Tables(0) : conn.Close() : 料號1_tb.Text = ""
  293. 物料規格_dgv.Columns(0).Visible = False : 物料規格_dgv.Columns(1).Visible = False : 物料規格_dgv.Columns(3).Visible = False
  294. 物料規格_dgv.Columns(2).Width = 17 : 物料規格_dgv.Columns(12).Visible = False : 物料規格_dgv.Columns(13).Visible = False : 物料規格_dgv.Columns(14).Visible = False
  295. 物料規格_dgv.Columns(15).Visible = False
  296. If KKK2 = "SQLB03" Then
  297. 物料規格_dgv.Columns(7).Visible = False : 物料規格_dgv.Columns(8).Visible = False : 物料規格_dgv.Columns(9).Visible = False : 物料規格_dgv.Columns(10).Visible = False
  298. 物料規格_dgv.Columns(11).Visible = False
  299. 物料規格_dgv.Columns(4).FillWeight = 213 : 物料規格_dgv.Columns(5).FillWeight = 213 : 物料規格_dgv.Columns(6).FillWeight = 214
  300. ElseIf KKK2 = "SQLB04" Then
  301. 物料規格_dgv.Columns(7).Visible = True : 物料規格_dgv.Columns(8).Visible = False : 物料規格_dgv.Columns(9).Visible = False : 物料規格_dgv.Columns(10).Visible = False
  302. 物料規格_dgv.Columns(11).Visible = False
  303. 物料規格_dgv.Columns(4).FillWeight = 160 : 物料規格_dgv.Columns(5).FillWeight = 160 : 物料規格_dgv.Columns(6).FillWeight = 160 : 物料規格_dgv.Columns(7).FillWeight = 160
  304. ElseIf KKK2 = "SQLB05" Then
  305. 物料規格_dgv.Columns(7).Visible = True : 物料規格_dgv.Columns(8).Visible = True : 物料規格_dgv.Columns(9).Visible = False : 物料規格_dgv.Columns(10).Visible = False
  306. 物料規格_dgv.Columns(11).Visible = False
  307. 物料規格_dgv.Columns(4).FillWeight = 128 : 物料規格_dgv.Columns(5).FillWeight = 128 : 物料規格_dgv.Columns(6).FillWeight = 128 : 物料規格_dgv.Columns(7).FillWeight = 128
  308. 物料規格_dgv.Columns(8).FillWeight = 128
  309. ElseIf KKK2 = "SQLB06" Then
  310. 物料規格_dgv.Columns(7).Visible = True : 物料規格_dgv.Columns(8).Visible = True : 物料規格_dgv.Columns(9).Visible = True : 物料規格_dgv.Columns(10).Visible = False
  311. 物料規格_dgv.Columns(11).Visible = False
  312. 物料規格_dgv.Columns(4).FillWeight = 106 : 物料規格_dgv.Columns(5).FillWeight = 107 : 物料規格_dgv.Columns(6).FillWeight = 106 : 物料規格_dgv.Columns(7).FillWeight = 107
  313. 物料規格_dgv.Columns(8).FillWeight = 106 : 物料規格_dgv.Columns(9).FillWeight = 108
  314. ElseIf KKK2 = "SQLB07" Then
  315. 物料規格_dgv.Columns(7).Visible = True : 物料規格_dgv.Columns(8).Visible = True : 物料規格_dgv.Columns(9).Visible = True : 物料規格_dgv.Columns(10).Visible = True
  316. 物料規格_dgv.Columns(11).Visible = False
  317. 物料規格_dgv.Columns(4).FillWeight = 91 : 物料規格_dgv.Columns(5).FillWeight = 92 : 物料規格_dgv.Columns(6).FillWeight = 91 : 物料規格_dgv.Columns(7).FillWeight = 92
  318. 物料規格_dgv.Columns(8).FillWeight = 91 : 物料規格_dgv.Columns(9).FillWeight = 92 : 物料規格_dgv.Columns(10).FillWeight = 91
  319. ElseIf KKK2 = "SQLB08" Then
  320. 物料規格_dgv.Columns(7).Visible = True : 物料規格_dgv.Columns(8).Visible = True : 物料規格_dgv.Columns(9).Visible = True : 物料規格_dgv.Columns(10).Visible = True
  321. 物料規格_dgv.Columns(11).Visible = True
  322. 物料規格_dgv.Columns(4).FillWeight = 80 : 物料規格_dgv.Columns(5).FillWeight = 80 : 物料規格_dgv.Columns(6).FillWeight = 80 : 物料規格_dgv.Columns(7).FillWeight = 80
  323. 物料規格_dgv.Columns(8).FillWeight = 80 : 物料規格_dgv.Columns(9).FillWeight = 80 : 物料規格_dgv.Columns(10).FillWeight = 80 : 物料規格_dgv.Columns(11).FillWeight = 80
  324. End If
  325. 物料規格_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  326. For i As Integer = 0 To 11 : 物料規格_dgv.Columns(i).ReadOnly = True : Next
  327. For i As Integer = 0 To 物料規格_dgv.Rows.Count - 1
  328. 物料規格_dgv.Rows(i).Cells("No").Value = i + 1 : 物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value = 0
  329. If Not IsNumeric(物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value) Then
  330. If 系統語言 = "繁體中文" Then : MsgBox("欄位輸入必須為數值!!") : Else : MsgBox("Input bidang harus numerik!!") : End If
  331. ElseIf Val(物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value) > 0 Then : 物料規格_dgv.Rows(i).Cells("Pilih").Value = True
  332. ElseIf Val(物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value) <= 0 Then : 物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value = "0"
  333. 物料規格_dgv.Rows(i).Cells("Pilih").Value = False
  334. End If
  335. Next i
  336. End If
  337. End Sub
  338. Private Sub 合約_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 合約_dgv.CellClick
  339. If e.RowIndex = -1 Then : Else
  340. 合約編號_tb.Text = 合約_dgv.Rows(e.RowIndex).Cells("合約編號").Value : Set_合約報價明細表()
  341. If 放大 = True Then : 縮放2_bt.PerformClick() : End If
  342. End If
  343. End Sub
  344. Private Sub 報價明細表_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 報價明細表_dgv.CellClick
  345. If e.RowIndex = -1 Then : Else : DGV位置2.Value = e.RowIndex
  346. If 開始選擇_ch.Checked = True Then
  347. If 選取主項_tb.Text = "" Then
  348. If 報價明細表_dgv.Rows(e.RowIndex).Cells("料號").Value.ToString() = "" And CInt(報價明細表_dgv.Rows(e.RowIndex).Cells("QTY").Value.ToString()) = 0 Then
  349. 選取主項_tb.Text = 報價明細表_dgv.Rows(e.RowIndex).Cells("DESCRIPTION").Value.ToString()
  350. Else : If 系統語言 = "繁體中文" Then : MsgBox("物料無法變成BOM表項目!!") : Else : MsgBox("Materi tidak dapat diubah menjadi item BOM!!") : End If : End If
  351. Else
  352. 報價明細表_dgv.Rows(e.RowIndex).Cells("選擇").Value = True
  353. End If
  354. End If
  355. 物料圖1_pb.Image = Nothing
  356. If 報價明細表_dgv.Rows(e.RowIndex).Cells("料號原則").Value.ToString = "" Then : Else
  357. PA2 = 報價明細表_dgv.Rows(e.RowIndex).Cells("料號原則").Value.ToString : SQL_物料圖庫_圖檔讀取一()
  358. While dr.Read() = True
  359. Dim unused As Byte() = New Byte(-1) {}
  360. Dim bytes As Byte() = DirectCast(dr.Item("圖檔"), Byte())
  361. Dim oStream As New MemoryStream(bytes)
  362. 物料圖1_pb.Image = Bitmap.FromStream(oStream)
  363. End While : conn.Close() : 物料圖1_pb.SizeMode = 4
  364. End If
  365. '------------數字為0隱藏-----------------------------------------------------------------------------------------------
  366. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  367. If IsDBNull(報價明細表_dgv.Rows(i).Cells("QTY").Value) Then : 報價明細表_dgv.Rows(i).Cells("QTY").Style.ForeColor = Color.White : Else
  368. If 報價明細表_dgv.Rows(i).Cells("QTY").Value = 0 Then : 報價明細表_dgv.Rows(i).Cells("QTY").Style.ForeColor = Color.White
  369. Else : 報價明細表_dgv.Rows(i).Cells("QTY").Style.ForeColor = Color.Black : End If : End If
  370. Next
  371. End If
  372. End Sub
  373. Private Sub 報價明細表_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 報價明細表_dgv.RowPostPaint
  374. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  375. If 報價明細表_dgv.Rows(i).Cells("選擇").Value = True Then
  376. 報價明細表_dgv.Rows(i).DefaultCellStyle.BackColor = Color.LightGreen
  377. Else : 報價明細表_dgv.Rows(i).DefaultCellStyle.BackColor = Color.White : End If
  378. Next
  379. End Sub
  380. Private Sub 物料規格_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 物料規格_dgv.CellClick
  381. If e.RowIndex = -1 Then : Else
  382. 料號1_tb.Text = 物料規格_dgv.Rows(e.RowIndex).Cells("Nomor_Bagian").Value.ToString : 料號1_tb.Text = 物料規格_dgv.Rows(e.RowIndex).Cells("Nomor_Bagian").Value.ToString
  383. End If
  384. End Sub
  385. Private Sub 物料規格_dgv_CellContentCl(sender As Object, e As DataGridViewCellEventArgs) Handles 物料規格_dgv.CellEnter
  386. For i As Integer = 0 To 物料規格_dgv.Rows.Count - 1
  387. If Not IsNumeric(物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value) Then
  388. If 系統語言 = "繁體中文" Then : MsgBox("欄位輸入必須為數值!!") : Else : MsgBox("Input bidang harus numerik!!") : End If
  389. 物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value = "0" : 物料規格_dgv.Rows(i).Cells("Pilih").Value = False
  390. ElseIf Val(物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value) > 0 Then : 物料規格_dgv.Rows(i).Cells("Pilih").Value = True
  391. ElseIf Val(物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value) <= 0 Then : 物料規格_dgv.Rows(i).Cells("申請數 Terapkan").Value = "0"
  392. 物料規格_dgv.Rows(i).Cells("Pilih").Value = False
  393. End If
  394. Next i
  395. End Sub
  396. Private Sub BOM表控制_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles BOM表控制_dgv.CellClick
  397. If e.RowIndex = -1 Then : Else
  398. 主項目_tb.Text = BOM表控制_dgv.Rows(e.RowIndex).Cells("項目").Value.ToString : 項目流水_tb.Text = BOM表控制_dgv.Rows(e.RowIndex).Cells("流水號").Value.ToString
  399. PA = 項目流水_tb.Text : Set_BOM表明細()
  400. End If
  401. End Sub
  402. Private Sub BOM表明細_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles BOM表明細_dgv.CellClick
  403. If e.RowIndex = -1 Then : Else
  404. 項目_tb.Text = BOM表明細_dgv.Rows(e.RowIndex).Cells("項目").Value.ToString : 料號_tb.Text = BOM表明細_dgv.Rows(e.RowIndex).Cells("料號").Value.ToString
  405. 申請數_nud.Visible = BOM表明細_dgv.Rows(e.RowIndex).Cells("數量").Value.ToString : 選擇項1_tb.Text = e.RowIndex
  406. 選擇項2_tb.Text = BOM表明細_dgv.Rows(e.RowIndex).Cells("排序").Value.ToString() : 明細流水_tb.Text = BOM表明細_dgv.Rows(e.RowIndex).Cells("明細流水").Value.ToString()
  407. 物料圖1_pb.Image = Nothing
  408. If BOM表明細_dgv.Rows(e.RowIndex).Cells("料號原則").Value.ToString = "" Then : Else
  409. PA2 = BOM表明細_dgv.Rows(e.RowIndex).Cells("料號原則").Value.ToString : SQL_物料圖庫_圖檔讀取一()
  410. While dr.Read() = True
  411. Dim unused As Byte() = New Byte(-1) {}
  412. Dim bytes As Byte() = DirectCast(dr.Item("圖檔"), Byte())
  413. Dim oStream As New MemoryStream(bytes)
  414. 物料圖1_pb.Image = Bitmap.FromStream(oStream)
  415. End While : conn.Close() : 物料圖1_pb.SizeMode = 4
  416. End If
  417. End If
  418. End Sub
  419. Private Sub 合約編號1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 合約編號1_cb.SelectedIndexChanged
  420. 條件選擇 = 合約編號1_cb.Text : Set_合約清單()
  421. End Sub
  422. Private Sub 新群組1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 新群組1_cb.SelectedIndexChanged
  423. PA = 新群組1_cb.Text : SQL_群組碼_語轉_選擇() : If dr.Read Then : 群組編碼_cb.Text = dr("群組碼").ToString : End If : PA = ""
  424. End Sub
  425. Private Sub 群組編碼_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 群組編碼_cb.SelectedIndexChanged
  426. 群組碼_tb.Text = 群組編碼_cb.Text : Set_清單1()
  427. End Sub
  428. Private Sub TabControl1_ChangeUICues(ByVal sender As Object, ByVal e As EventArgs) Handles TabControl1.SelectedIndexChanged
  429. If TabControl1.SelectedIndex = 0 Then : Set_BOM表控制() : End If
  430. End Sub
  431. Private Sub 準備讀取_bt_Click(sender As Object, e As EventArgs) Handles 準備讀取_bt.Click
  432. 開始選擇_ch.Checked = True
  433. End Sub
  434. Private Sub 取消選取_bt_Click(sender As Object, e As EventArgs) Handles 取消選取_bt.Click
  435. 開始選擇_ch.Checked = False : 選取主項_tb.Text = ""
  436. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  437. 報價明細表_dgv.Rows(i).Cells("選擇").Value = False : 報價明細表_dgv.Rows(i).DefaultCellStyle.BackColor = Color.Wheat
  438. Next
  439. End Sub
  440. Private Sub 搜尋_bt_Click(sender As Object, e As EventArgs) Handles 搜尋_bt.Click
  441. If 系統語言 = "繁體中文" Then : PA = InputBox("請輸入關鍵字!!!") : Else : PA = InputBox("Silakan masukkan kata kunci!!!") : End If
  442. If PA = "" Then : Else : Set_DGV1載入前設定() : SQL_建築物料請購單申請_物料清單三() : Set_DG1載入後設定() : 料號1_tb.Text = "" : End If
  443. End Sub
  444. Private Sub 小間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 小間距_ch.Click
  445. 小間距_ch.Checked = True : 中間距_ch.Checked = False : 中間距_ch.Checked = False : Set_清單1()
  446. End Sub
  447. Private Sub 中間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 中間距_ch.Click
  448. 小間距_ch.Checked = False : 中間距_ch.Checked = True : 中間距_ch.Checked = False : Set_清單1()
  449. End Sub
  450. Private Sub 大間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 大間距_ch.Click
  451. 小間距_ch.Checked = False : 中間距_ch.Checked = False : 中間距_ch.Checked = True : Set_清單1()
  452. End Sub
  453. Private Sub 縮放2_bt_Click(sender As Object, e As EventArgs) Handles 縮放2_bt.Click
  454. Dim NX, NY As Integer : NX = 合約_dgv.Size.Width : NY = 合約_dgv.Size.Height
  455. If 放大 = True Then
  456. 合約_dgv.Size = New System.Drawing.Point(NX - 400, NY) : 放大 = False : 合約_dgv.Columns("工程名稱_中").Visible = False
  457. Else
  458. 合約_dgv.Size = New System.Drawing.Point(NX + 400, NY) : 放大 = True : 合約_dgv.Columns("工程名稱_中").Visible = True
  459. End If
  460. End Sub
  461. Private Sub 排序2_bt_Click(sender As Object, e As EventArgs) Handles 排序2_bt.Click
  462. If BOM表明細_dgv.Rows.Count > 0 Then
  463. If BOM表明細_dgv.Columns(0).Visible = False Then : BOM表明細_dgv.Columns(0).Visible = True : Else : BOM表明細_dgv.Columns(0).Visible = False : End If
  464. End If
  465. End Sub
  466. Private Sub 新建主項()
  467. SQL_BOM表控制_項目查詢()
  468. If dr.Read Then
  469. If 系統語言 = "繁體中文" Then : MsgBox("主項目名稱重複,無法存檔!!") : Else : MsgBox("Nama proyek utama diduplikasi dan tidak dapat diarsipkan!!") : End If
  470. 不再動作1 = True : Exit Sub : Else : 不再動作1 = False : End If
  471. SQL_BOM表控制流水號查詢()
  472. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("流水號").ToString, 8)) : Else : EDR = 0 : End If : conn.Close() : EDR += 1
  473. If EDR < 10 Then : ESTR = "BOM0000000" & EDR
  474. ElseIf EDR > 9 And EDR < 100 Then : ESTR = "BOM000000" & EDR
  475. ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "BOM00000" & EDR
  476. ElseIf EDR > 9999 And EDR < 10000 Then : ESTR = "BOM0000" & EDR
  477. ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "BOM000" & EDR
  478. ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "BOM00" & EDR
  479. ElseIf EDR > 9999999 And EDR < 10000000 Then : ESTR = "BOM0" & EDR
  480. ElseIf EDR <= 10000000 Then : ESTR = "BOM" & EDR : End If : PA = ESTR
  481. SQL_BOM表控制_新增()
  482. End Sub
  483. Private Sub 明細流水()
  484. SQL_BOM表明細流水號查詢1()
  485. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("明細流水").ToString, 8)) : Else : EDR = 0 : End If : conn.Close() : EDR += 1
  486. If EDR < 10 Then : ESTR = "BOW0000000" & EDR
  487. ElseIf EDR > 9 And EDR < 100 Then : ESTR = "BOW000000" & EDR
  488. ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "BOW00000" & EDR
  489. ElseIf EDR > 9999 And EDR < 10000 Then : ESTR = "BOW0000" & EDR
  490. ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "BOW000" & EDR
  491. ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "BOW00" & EDR
  492. ElseIf EDR > 9999999 And EDR < 10000000 Then : ESTR = "BOW0" & EDR
  493. ElseIf EDR <= 10000000 Then : ESTR = "BOW" & EDR : End If : PA7 = ESTR
  494. End Sub
  495. Private Sub 新建_bt_Click(sender As Object, e As EventArgs) Handles 新建_bt.Click
  496. PA1 = InputBox("請輸入BOM表主項目名稱!!") : 主項目_tb.Text = PA1 : 項目流水_tb.Text = PA : 新建主項() : Set_BOM表控制()
  497. End Sub
  498. Private Sub 選擇存檔_bt_Click(sender As Object, e As EventArgs) Handles 選擇存檔_bt.Click
  499. If 開始選擇_ch.Checked = True And 選取主項_tb.Text <> "" Then
  500. Dim 選擇確認 As Boolean = False
  501. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1 : If 報價明細表_dgv.Rows(i).Cells("選擇").Value = True Then : 選擇確認 = True : Exit For : End If : Next
  502. If 選擇確認 = False Then
  503. If 系統語言 = "繁體中文" Then : MsgBox("最少要再報價單中選擇一項物料,不然無法存檔!!")
  504. Else : MsgBox("Setidaknya satu materi harus dipilih dalam kutipan, jika tidak maka tidak dapat diarsipkan!!") : End If
  505. Else
  506. Dim SS As String
  507. If 系統語言 = "繁體中文" Then : SS = "確定細項物料選擇完畢了嗎? (存檔後無法用報價單做更動,只能回BOM表中修改)"
  508. Else : SS = "Apakah Anda yakin telah menyelesaikan pemilihan materi terperinci? (Setelah pengarsipan, Anda tidak " &
  509. "dapat menggunakan kutipan untuk membuat perubahan, Anda hanya dapat memodifikasinya di tabel BOM)" : End If
  510. Dim aa As MsgBoxResult = MsgBox(SS, MsgBoxStyle.OkCancel)
  511. If aa = MsgBoxResult.Ok Then
  512. PA1 = 選取主項_tb.Text
  513. 新建主項()
  514. If 不再動作1 = False Then
  515. For i As Integer = 0 To 報價明細表_dgv.Rows.Count - 1
  516. If 報價明細表_dgv.Rows(i).Cells("選擇").Value = True Then
  517. PA2 = 報價明細表_dgv.Rows(i).Cells("DESCRIPTION").Value.ToString : PA3 = 報價明細表_dgv.Rows(i).Cells("料號").Value.ToString
  518. PA4 = 報價明細表_dgv.Rows(i).Cells("QTY").Value.ToString : PA5 = 報價明細表_dgv.Rows(i).Cells("UNIT").Value.ToString
  519. 明細流水() : SQL_BOM表明細流水號查詢()
  520. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("排序").ToString, 2)) : Else : EDR = 0 : End If : conn.Close() : EDR += 1
  521. If EDR < 10 Then : ESTR = "B0" & EDR : ElseIf EDR > 9 And EDR < 100 Then : ESTR = "B" & EDR : End If : PA6 = ESTR
  522. SQL_BOM表明細_新增()
  523. End If
  524. Next : If 系統語言 = "繁體中文" Then : MsgBox("BOM表新增完成!!") : Else : MsgBox("Tabel BOM baru selesai!!") : End If
  525. End If
  526. End If
  527. End If
  528. Else : If 系統語言 = "繁體中文" Then : MsgBox("請先確認要新增BOM表的項目!!") : Else : MsgBox("Mohon konfirmasi item yang akan ditambahkan BOM terlebih dahulu!!") : End If : End If
  529. End Sub
  530. Private Sub 刪除專案_bt_Click(sender As Object, e As EventArgs) Handles 刪除專案_bt.Click
  531. If 項目流水_tb.Text <> "" Then
  532. Dim SS As String
  533. If 系統語言 = "繁體中文" Then : SS = "是否要刪除這筆資料?" : Else : SS = "Apakah Anda ingin menghapus data ini?" : End If
  534. Dim aa As MsgBoxResult = MsgBox(SS, MsgBoxStyle.OkCancel)
  535. If aa = MsgBoxResult.Ok Then
  536. Dim SS1 As String
  537. If 系統語言 = "繁體中文" Then : SS1 = "確定刪除資料請輸入 [YES] !!" : Else : SS1 = "Silakan masukkan [YES] untuk mengonfirmasi penghapusan data!!" : End If
  538. Dim SSA As String = InputBox(SS1)
  539. If SSA = "YES" Then
  540. PA = 項目流水_tb.Text : SQL_BOM表控制_刪除() : SQL_BOM表明細_刪除_全部()
  541. 主項目_tb.Text = "" : 項目流水_tb.Text = "" : BOM表明細_dgv.DataSource = Nothing : Set_BOM表控制()
  542. End If
  543. End If
  544. Else : If 系統語言 = "繁體中文" Then : MsgBox("請先選擇要刪除的專案!!") : Else : MsgBox("Silakan pilih proyek yang akan dihapus terlebih dahulu!!") : End If : End If
  545. End Sub
  546. Private Sub 總表選擇刪除1_bt_Click(sender As Object, e As EventArgs) Handles 總表選擇刪除1_bt.Click
  547. If 明細流水_tb.Text <> "" Then
  548. Dim SS As String
  549. If 系統語言 = "繁體中文" Then : SS = "是否要刪除這筆資料?" : Else : SS = "Apakah Anda ingin menghapus data ini?" : End If
  550. Dim aa As MsgBoxResult = MsgBox(SS, MsgBoxStyle.OkCancel)
  551. If aa = MsgBoxResult.Ok Then
  552. PA7 = 明細流水_tb.Text : SQL_BOM表明細_刪除() : PA = 項目流水_tb.Text : Set_BOM表明細()
  553. End If
  554. Else : If 系統語言 = "繁體中文" Then : MsgBox("請先選擇要刪除的物料/資料!!") : Else : MsgBox("Silahkan pilih materi/data yang akan dihapus terlebih dahulu!!") : End If : End If
  555. End Sub
  556. Private Sub 存檔_bt_Click(sender As Object, e As EventArgs) Handles 存檔_bt.Click
  557. If 主項目_tb.Text <> "" And 項目流水_tb.Text <> "" Then
  558. PA1 = 主項目_tb.Text : PA = 項目流水_tb.Text : SQL_BOM表控制_存檔() : 明細表存檔()
  559. If 系統語言 = "繁體中文" Then : MsgBox("存檔完成!!") : Else : MsgBox("Arsip selesai!!") : End If
  560. End If
  561. End Sub
  562. Private Sub 查詢_bt_Click(sender As Object, e As EventArgs) Handles 查詢_bt.Click
  563. If 系統語言 = "繁體中文" Then : MsgBox("功能製作中!!") : Else : MsgBox("Sistem dalam pengembangan!!") : End If
  564. End Sub
  565. Private Sub 明細表存檔()
  566. PA = 項目流水_tb.Text
  567. For i As Integer = 0 To BOM表明細_dgv.Rows.Count - 1
  568. PA1 = BOM表明細_dgv.Rows(i).Cells("排序").Value.ToString : PA2 = BOM表明細_dgv.Rows(i).Cells("項目").Value.ToString
  569. PA3 = BOM表明細_dgv.Rows(i).Cells("料號").Value.ToString : PA4 = BOM表明細_dgv.Rows(i).Cells("數量").Value.ToString
  570. PA5 = BOM表明細_dgv.Rows(i).Cells("單位").Value.ToString : PA7 = BOM表明細_dgv.Rows(i).Cells("明細流水").Value.ToString : SQL_BOM表明細_存檔()
  571. Next
  572. End Sub
  573. Private Sub 新增資料2_bt_Click(sender As Object, e As EventArgs) Handles 新增資料2_bt.Click
  574. If 項目流水_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("沒有選擇項目!!") : Else : MsgBox("Tidak ada item yang dipilih!!") : End If : Else
  575. 明細表存檔()
  576. Dim SS, SS1 As String
  577. If 系統語言 = "繁體中文" Then : SS = "請輸入要新增幾行空白欄未!! (請輸入數字)?" : SS1 = "你輸入的不是數字"
  578. Else : SS = "Silakan tulis kolom kosong yang ingin Anda tambahkan!! (Silakan masukkan angka)?" : SS1 = "yang kamu masukkan bukan angka" : End If
  579. PA20 = InputBox(SS)
  580. If IsNumeric(PA20) = False Then : MsgBox(SS1) : Else
  581. For ia As Integer = 1 To PA20
  582. PA = 項目流水_tb.Text : PA2 = "" : PA3 = "" : PA4 = "0" : PA5 = "" : 明細流水()
  583. If 選擇項1_tb.Text = "" Then
  584. SQL_BOM表明細流水號查詢()
  585. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("排序").ToString, 2)) : Else : EDR = 0 : End If : conn.Close() : EDR += 1
  586. If EDR < 10 Then : ESTR = "B0" & EDR : ElseIf EDR > 9 And EDR < 100 Then : ESTR = "B" & EDR : End If : PA6 = ESTR
  587. Else
  588. PA6 = 選擇項2_tb.Text & "-1"
  589. End If
  590. SQL_BOM表明細_新增()
  591. Next : PA = 項目流水_tb.Text : Set_BOM表明細()
  592. For I As Integer = 0 To BOM表明細_dgv.Rows.Count - 1
  593. If I < 10 Then : BOM表明細_dgv.Rows(I).Cells("排序").Value = "B0" & I
  594. ElseIf I > 9 And I < 100 Then : 報價明細表_dgv.Rows(I).Cells("排序").Value = "B" & I
  595. End If
  596. Next : 明細表存檔()
  597. End If
  598. End If
  599. End Sub
  600. Private Sub 選擇材料新增到明細表_bt_Click(sender As Object, e As EventArgs) Handles 選擇材料新增到明細表_bt.Click
  601. If 項目流水_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("沒有選擇合約!!") : Else : MsgBox("Silakan pilih kontrak!!") : End If : Else
  602. If 料號1_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("沒有選擇物料!!") : Else : MsgBox("Tidak ada bahan yang dipilih!!") : End If : Else
  603. 明細表存檔()
  604. PA = 項目流水_tb.Text : PA2 = "" : PA3 = 料號1_tb.Text : PA4 = "0" : PA5 = "" : 明細流水()
  605. If 選擇項1_tb.Text = "" Then
  606. SQL_BOM表明細流水號查詢()
  607. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("排序").ToString, 2)) : Else : EDR = 0 : End If : conn.Close() : EDR += 1
  608. If EDR < 10 Then : ESTR = "B0" & EDR : ElseIf EDR > 9 And EDR < 100 Then : ESTR = "B" & EDR : End If : PA6 = ESTR
  609. Else
  610. PA6 = 選擇項2_tb.Text & "-1"
  611. End If
  612. SQL_BOM表明細_新增()
  613. PA = 項目流水_tb.Text : Set_BOM表明細()
  614. For I As Integer = 0 To BOM表明細_dgv.Rows.Count - 1
  615. If I < 10 Then : BOM表明細_dgv.Rows(I).Cells("排序").Value = "B0" & I
  616. ElseIf I > 9 And I < 100 Then : 報價明細表_dgv.Rows(I).Cells("排序").Value = "B" & I
  617. End If
  618. Next : 明細表存檔()
  619. End If
  620. End If
  621. End Sub
  622. Private Sub 修改明細表上的材料指定_bt_Click(sender As Object, e As EventArgs) Handles 修改明細表上的材料指定_bt.Click
  623. If 項目流水_tb.Text = "" Then
  624. If 系統語言 = "繁體中文" Then : MsgBox("請先選擇要修改的資料是哪一筆!!") : Else : MsgBox("Silakan pilih data mana yang akan dimodifikasi terlebih dahulu!!") : End If : Else
  625. If 料號1_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("沒有選擇物料!!") : Else : MsgBox("Tidak ada bahan yang dipilih!!") : End If : Else
  626. 明細表存檔() : PA7 = 明細流水_tb.Text : PA3 = 料號1_tb.Text : SQL_BOM表明細_存檔_料號() : Set_BOM表明細()
  627. End If
  628. End If
  629. End Sub
  630. Private Sub 翻譯1_bt_Click(sender As Object, e As EventArgs) Handles 翻譯1_bt.Click
  631. If 主項目_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("沒有資料!!") : Else : MsgBox("Tidak ada Informasi!!") : End If : Else
  632. 翻譯 = Replace(主項目_tb.Text, vbCrLf, " ") : MyModule2.執行翻譯() : 等待翻譯1_tim.Enabled = True
  633. End If
  634. End Sub
  635. Private Sub 等待翻譯1_tim_Tick(sender As Object, e As EventArgs) Handles 等待翻譯1_tim.Tick
  636. Dim Str2 As String = System.Windows.Forms.Application.StartupPath : Dim stringReader As String : Dim fileReader As StreamReader
  637. If File.Exists("ch.txt") Then
  638. 等待翻譯1_tim.Enabled = False
  639. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\ch.txt") : stringReader = fileReader.ReadLine() : 主項目_tb.Text = stringReader : fileReader.Close()
  640. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\en.txt") : stringReader = fileReader.ReadLine()
  641. 主項目_tb.Text = 主項目_tb.Text & " - " & stringReader : fileReader.Close()
  642. For I As Integer = 0 To BOM表控制_dgv.Rows.Count - 1
  643. If BOM表控制_dgv.Rows(I).Cells("流水號").Value.ToString = 項目流水_tb.Text Then : BOM表控制_dgv.Rows(I).Cells("項目").Value = 主項目_tb.Text : End If
  644. Next
  645. If 系統語言 = "繁體中文" Then : MsgBox("翻譯完成!!") : Else : MsgBox("Terjemahan Selesai!!") : End If
  646. ElseIf File.Exists(Str2 & "\ch.txt") Then
  647. 等待翻譯1_tim.Enabled = False
  648. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\ch.txt") : stringReader = fileReader.ReadLine() : 主項目_tb.Text = stringReader : fileReader.Close()
  649. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\en.txt") : stringReader = fileReader.ReadLine()
  650. 主項目_tb.Text = 主項目_tb.Text & " - " & stringReader : fileReader.Close()
  651. For I As Integer = 0 To BOM表控制_dgv.Rows.Count - 1
  652. If BOM表控制_dgv.Rows(I).Cells("流水號").Value.ToString = 項目流水_tb.Text Then : BOM表控制_dgv.Rows(I).Cells("項目").Value = 主項目_tb.Text : End If
  653. Next
  654. If 系統語言 = "繁體中文" Then : MsgBox("翻譯完成!!") : Else : MsgBox("Terjemahan Selesai!!") : End If
  655. End If
  656. End Sub
  657. Private Sub 翻譯_bt_Click(sender As Object, e As EventArgs) Handles 翻譯_bt.Click
  658. If 項目_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("沒有資料!!") : Else : MsgBox("Tidak ada Informasi!!") : End If : Else
  659. 翻譯 = Replace(項目_tb.Text, vbCrLf, " ") : MyModule2.執行翻譯() : 等待翻譯_tim.Enabled = True
  660. End If
  661. End Sub
  662. Private Sub 等待翻譯_tim_Tick(sender As Object, e As EventArgs) Handles 等待翻譯_tim.Tick
  663. Dim Str2 As String = System.Windows.Forms.Application.StartupPath : Dim stringReader As String : Dim fileReader As StreamReader
  664. If File.Exists("ch.txt") Then
  665. 等待翻譯_tim.Enabled = False
  666. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\ch.txt") : stringReader = fileReader.ReadLine() : 項目_tb.Text = stringReader : fileReader.Close()
  667. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\en.txt") : stringReader = fileReader.ReadLine()
  668. 項目_tb.Text = 項目_tb.Text & vbCrLf & stringReader : fileReader.Close()
  669. For I As Integer = 0 To BOM表明細_dgv.Rows.Count - 1
  670. If BOM表明細_dgv.Rows(I).Cells("明細流水").Value.ToString = 明細流水_tb.Text Then : BOM表明細_dgv.Rows(I).Cells("項目").Value = 項目_tb.Text : End If
  671. Next
  672. If 系統語言 = "繁體中文" Then : MsgBox("翻譯完成!!") : Else : MsgBox("Terjemahan Selesai!!") : End If
  673. ElseIf File.Exists(Str2 & "\ch.txt") Then
  674. 等待翻譯_tim.Enabled = False
  675. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\ch.txt") : stringReader = fileReader.ReadLine() : 項目_tb.Text = stringReader : fileReader.Close()
  676. fileReader = My.Computer.FileSystem.OpenTextFileReader(Str2 & "\en.txt") : stringReader = fileReader.ReadLine()
  677. 項目_tb.Text = 項目_tb.Text & vbCrLf & stringReader : fileReader.Close()
  678. For I As Integer = 0 To BOM表明細_dgv.Rows.Count - 1
  679. If BOM表明細_dgv.Rows(I).Cells("明細流水").Value.ToString = 明細流水_tb.Text Then : BOM表明細_dgv.Rows(I).Cells("項目").Value = 項目_tb.Text : End If
  680. Next
  681. If 系統語言 = "繁體中文" Then : MsgBox("翻譯完成!!") : Else : MsgBox("Terjemahan Selesai!!") : End If
  682. End If
  683. End Sub
  684. Private Sub TW_ch_CheckedChanged(sender As Object, e As EventArgs) Handles TW_ch.Click
  685. TW_ch.Checked = True : IN_ch.Checked = False : TW = TW_ch.Visible : EN = IN_ch.Visible
  686. End Sub
  687. Private Sub IN_ch_CheckedChanged(sender As Object, e As EventArgs) Handles IN_ch.Click
  688. TW_ch.Checked = False : IN_ch.Checked = True : TW = TW_ch.Visible : EN = IN_ch.Visible
  689. End Sub
  690. Private Sub 詳細資料2_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 詳細資料2_ch.Click
  691. If TabControl1.SelectedIndex = 0 Then
  692. If 詳細資料2_ch.Checked = True Then : 詳細資料2_ch.Checked = True : Else : 詳細資料2_ch.Checked = False : End If : Set_BOM表明細()
  693. Else
  694. If 詳細資料2_ch.Checked = True Then : 詳細資料2_ch.Checked = True : Else : 詳細資料2_ch.Checked = False : End If : Set_合約報價明細表()
  695. End If
  696. End Sub
  697. End Class