Ei kuvausta
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 33KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449
  1. Option Strict Off
  2. Public Class 訂單控制表
  3. ReadOnly ds1, ds2, ds4, ds5, ds6, ds7 As New DataSet
  4. Dim 首次開啟 As Boolean = False : Dim 運費 As Integer : Dim 稅金存檔 As Integer
  5. Private Sub Set_清單1()
  6. 銷售單據_dgv.DataSource = Nothing : ds1.Clear()
  7. 銷售單據_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  8. 銷售單據_dgv.ColumnHeadersHeight = 25
  9. 銷售單據_dgv.AllowUserToAddRows = False
  10. 銷售單據_dgv.RowTemplate.Height = 35
  11. PA19 = 業務_cb.Text : PA20 = 客戶1_tb.Text
  12. SQL_銷售控制表_訂單控制表()
  13. da.Fill(ds1) : 銷售單據_dgv.DataSource = ds1.Tables(0) : conn.Close()
  14. 銷售單據_dgv.Columns(0).Visible = False : 銷售單據_dgv.Columns(1).FillWeight = 85 : 銷售單據_dgv.Columns(2).FillWeight = 100 : 銷售單據_dgv.Columns(3).FillWeight = 110
  15. 銷售單據_dgv.Columns(4).FillWeight = 110 : 銷售單據_dgv.Columns(5).FillWeight = 50 : 銷售單據_dgv.Columns(6).Visible = False : 銷售單據_dgv.Columns(7).FillWeight = 110
  16. 銷售單據_dgv.Columns(8).FillWeight = 85 : 銷售單據_dgv.Columns(9).FillWeight = 100 : 銷售單據_dgv.Columns(10).Visible = False : 銷售單據_dgv.Columns(11).Visible = False
  17. 銷售單據_dgv.Columns(12).Visible = False : 銷售單據_dgv.Columns(13).Visible = False : 銷售單據_dgv.Columns(14).Visible = False : 銷售單據_dgv.Columns(15).Visible = False
  18. 銷售單據_dgv.Columns(16).Visible = False : 銷售單據_dgv.Columns(17).Visible = False : 銷售單據_dgv.Columns(18).Visible = False
  19. 銷售單據_dgv.Columns("金額").DefaultCellStyle.Format = "#,##0"
  20. 銷售單據_dgv.Columns("金額").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  21. 銷售單據_dgv.Columns("金額").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  22. End Sub
  23. Private Sub Set_清單2()
  24. 客戶資料_dgv.DataSource = Nothing : ds2.Clear()
  25. 客戶資料_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  26. 客戶資料_dgv.ColumnHeadersHeight = 25
  27. 客戶資料_dgv.AllowUserToAddRows = False
  28. 客戶資料_dgv.RowTemplate.Height = 25
  29. PA16 = 客戶_tb.Text
  30. SQL_銷售單申請_客戶資料驗證()
  31. da.Fill(ds2) : 客戶資料_dgv.DataSource = ds2.Tables(0) : conn.Close()
  32. End Sub
  33. Private Sub Set_清單4()
  34. 銷售明細_dgv.DataSource = Nothing : ds4.Clear()
  35. 銷售明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  36. 銷售明細_dgv.ColumnHeadersHeight = 40
  37. 銷售明細_dgv.AllowUserToAddRows = False
  38. If 小間距_ch.Checked = False And 中間距_ch.Checked = False And 大間距_ch.Checked = True Then
  39. 銷售明細_dgv.RowTemplate.Height = 95
  40. ElseIf 小間距_ch.Checked = False And 中間距_ch.Checked = True And 大間距_ch.Checked = False Then
  41. 銷售明細_dgv.RowTemplate.Height = 60
  42. ElseIf 小間距_ch.Checked = True And 中間距_ch.Checked = False And 大間距_ch.Checked = False Then
  43. 銷售明細_dgv.RowTemplate.Height = 25
  44. End If
  45. PA2 = "" : PA2 = 單號_tb.Text
  46. SQL_銷售明細表()
  47. da.Fill(ds4) : 銷售明細_dgv.DataSource = ds4.Tables(0) : conn.Close()
  48. 銷售明細_dgv.Columns(0).Visible = False : 銷售明細_dgv.Columns(1).FillWeight = 40 : 銷售明細_dgv.Columns(2).FillWeight = 110 : 銷售明細_dgv.Columns(3).FillWeight = 200
  49. 銷售明細_dgv.Columns(4).FillWeight = 120 : 銷售明細_dgv.Columns(5).FillWeight = 120 : 銷售明細_dgv.Columns(6).FillWeight = 120 : 銷售明細_dgv.Columns(7).FillWeight = 190
  50. 銷售明細_dgv.Columns(8).FillWeight = 80 : 銷售明細_dgv.Columns(9).FillWeight = 80 : 銷售明細_dgv.Columns(10).FillWeight = 80 : 銷售明細_dgv.Columns(11).FillWeight = 50
  51. 銷售明細_dgv.Columns(12).FillWeight = 80 : 銷售明細_dgv.Columns(13).Visible = False : 銷售明細_dgv.Columns(14).Visible = False : 銷售明細_dgv.Columns(15).Visible = False
  52. 銷售明細_dgv.Columns(16).Visible = False : 銷售明細_dgv.Columns(17).Visible = False : 銷售明細_dgv.Columns(18).FillWeight = 50
  53. 銷售明細_dgv.Columns(1).ReadOnly = True : 銷售明細_dgv.Columns(2).ReadOnly = True : 銷售明細_dgv.Columns(3).ReadOnly = True : 銷售明細_dgv.Columns(4).ReadOnly = True
  54. 銷售明細_dgv.Columns(5).ReadOnly = True : 銷售明細_dgv.Columns(6).ReadOnly = True : 銷售明細_dgv.Columns(8).ReadOnly = True : 銷售明細_dgv.Columns(12).ReadOnly = True
  55. 銷售明細_dgv.Columns(13).ReadOnly = True
  56. 銷售明細_dgv.Columns("數量").DefaultCellStyle.Format = "#,##0" : 銷售明細_dgv.Columns("成本").DefaultCellStyle.Format = "#,##0"
  57. 銷售明細_dgv.Columns("單價").DefaultCellStyle.Format = "#,##0.0" : 銷售明細_dgv.Columns("售價").DefaultCellStyle.Format = "#,##0"
  58. 銷售明細_dgv.Columns("數量").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  59. 銷售明細_dgv.Columns("數量").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  60. 銷售明細_dgv.Columns("成本").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  61. 銷售明細_dgv.Columns("成本").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  62. 銷售明細_dgv.Columns("單價").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  63. 銷售明細_dgv.Columns("單價").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  64. 銷售明細_dgv.Columns("售價").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  65. 銷售明細_dgv.Columns("售價").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  66. 銷售明細_dgv.Columns("項次").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  67. 銷售明細_dgv.Columns("項次").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  68. 銷售明細_dgv.Columns("倉儲情況").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  69. 銷售明細_dgv.Columns("倉儲情況").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  70. 銷售明細_dgv.Columns("料號").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  71. 銷售明細_dgv.Columns("料號").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  72. For i As Integer = 0 To 銷售明細_dgv.Rows.Count - 1
  73. If 銷售明細_dgv("含稅", i).Value = False Then
  74. 銷售明細_dgv("售價", i).Value = 銷售明細_dgv("數量", i).Value * 銷售明細_dgv("單價", i).Value
  75. ElseIf 銷售明細_dgv("含稅", i).Value = True Then
  76. 銷售明細_dgv("售價", i).Value = 銷售明細_dgv("數量", i).Value * 銷售明細_dgv("單價", i).Value * 1.05
  77. End If
  78. 銷售明細_dgv("項次", i).Value = i + 1
  79. Next
  80. 銷售明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  81. End Sub
  82. Private Sub Set_清單5()
  83. 銷售備註_dgv.DataSource = Nothing : ds5.Clear()
  84. 銷售備註_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  85. 銷售備註_dgv.ColumnHeadersHeight = 25
  86. 銷售備註_dgv.AllowUserToAddRows = False
  87. 銷售備註_dgv.RowTemplate.Height = 45
  88. PA2 = "" : PA2 = 單號_tb.Text : SQL_銷售備註表()
  89. da.Fill(ds5) : 銷售備註_dgv.DataSource = ds5.Tables(0) : conn.Close()
  90. 銷售備註_dgv.Columns(0).Visible = False : 銷售備註_dgv.Columns(1).FillWeight = 120 : 銷售備註_dgv.Columns(2).FillWeight = 910 : 銷售備註_dgv.Columns(3).FillWeight = 120
  91. 銷售備註_dgv.Columns(4).FillWeight = 120
  92. 銷售備註_dgv.Columns(0).ReadOnly = True : 銷售備註_dgv.Columns(1).ReadOnly = True
  93. 銷售備註_dgv.Columns("收入").DefaultCellStyle.Format = "#,##0" : 銷售備註_dgv.Columns("支出").DefaultCellStyle.Format = "#,##0"
  94. 銷售備註_dgv.Columns("收入").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  95. 銷售備註_dgv.Columns("收入").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  96. 銷售備註_dgv.Columns("支出").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  97. 銷售備註_dgv.Columns("支出").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  98. 銷售備註_dgv.Columns("項次").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  99. 銷售備註_dgv.Columns("項次").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  100. For i As Integer = 0 To 銷售備註_dgv.Rows.Count - 1
  101. 銷售備註_dgv("項次", i).Value = i + 1
  102. Next
  103. 銷售備註_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  104. Set_合記計算()
  105. End Sub
  106. Private Sub Set_清單6()
  107. 收款事項_dgv.DataSource = Nothing : ds6.Clear()
  108. 收款事項_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  109. 收款事項_dgv.ColumnHeadersHeight = 25
  110. 收款事項_dgv.AllowUserToAddRows = False
  111. 收款事項_dgv.RowTemplate.Height = 25
  112. PA2 = "" : PA2 = 單號_tb.Text : SQL_銷售收款事項()
  113. da.Fill(ds6) : 收款事項_dgv.DataSource = ds6.Tables(0) : conn.Close()
  114. 收款事項_dgv.Columns(0).Visible = False : 收款事項_dgv.Columns(1).Visible = False : 收款事項_dgv.Columns(2).Visible = False : 收款事項_dgv.Columns(3).FillWeight = 120
  115. 收款事項_dgv.Columns(4).FillWeight = 960 : 收款事項_dgv.Columns(5).FillWeight = 180
  116. 收款事項_dgv.Columns(2).ReadOnly = True
  117. 收款事項_dgv.Columns("金額").DefaultCellStyle.Format = "#,##0"
  118. 收款事項_dgv.Columns("金額").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  119. 收款事項_dgv.Columns("金額").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  120. 收款事項_dgv.Columns("項次").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  121. 收款事項_dgv.Columns("項次").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  122. For i As Integer = 0 To 收款事項_dgv.Rows.Count - 1
  123. 收款事項_dgv("項次", i).Value = i + 1
  124. Next
  125. 收款事項_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  126. Set_合記計算()
  127. End Sub
  128. Private Sub Set_清單7()
  129. 銷售衍生運費_dgv.DataSource = Nothing : ds7.Clear()
  130. 銷售衍生運費_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  131. 銷售衍生運費_dgv.ColumnHeadersHeight = 25
  132. 銷售衍生運費_dgv.AllowUserToAddRows = False
  133. 銷售衍生運費_dgv.RowTemplate.Height = 45
  134. PA2 = "" : PA2 = 單號_tb.Text : SQL_銷售衍生費用()
  135. da.Fill(ds7) : 銷售衍生運費_dgv.DataSource = ds7.Tables(0) : conn.Close()
  136. 銷售衍生運費_dgv.Columns(0).Visible = False : 銷售衍生運費_dgv.Columns(1).FillWeight = 30 : 銷售衍生運費_dgv.Columns(2).Visible = False : 銷售衍生運費_dgv.Columns(3).FillWeight = 160
  137. 銷售衍生運費_dgv.Columns(4).FillWeight = 30
  138. 銷售衍生運費_dgv.Columns(0).ReadOnly = True : 銷售衍生運費_dgv.Columns(1).ReadOnly = True
  139. 銷售衍生運費_dgv.Columns("支出").DefaultCellStyle.Format = "#,##0"
  140. 銷售衍生運費_dgv.Columns("支出").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  141. 銷售衍生運費_dgv.Columns("支出").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  142. 銷售衍生運費_dgv.Columns("項次").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  143. 銷售衍生運費_dgv.Columns("項次").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  144. For i As Integer = 0 To 銷售衍生運費_dgv.Rows.Count - 1
  145. 銷售衍生運費_dgv("項次", i).Value = i + 1
  146. Next
  147. 銷售衍生運費_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  148. Set_合記計算()
  149. End Sub
  150. Private Sub 送貨地點_cb_下拉表單資料載入()
  151. SQL_送貨地點_下拉清單() : 送貨地點_cb.Items.Clear() : 最低運費_cb.Items.Clear() : 最低售價_cb.Items.Clear() : 司機運費_tb.Text = "0"
  152. While (dr.Read()) : 送貨地點_cb.Items.Add(dr("地區")) : 最低運費_cb.Items.Add(dr("起車")) : 最低售價_cb.Items.Add(dr("最低售額")) : End While : conn.Close()
  153. End Sub
  154. Private Sub Set_日期格式轉換()
  155. DTP = Format(開單日期_dtp.Value, "yyyy/MM/dd") : DTP1 = Format(Today(), "yyyyMMdd")
  156. End Sub
  157. Private Sub Set_合記計算()
  158. Dim 不含1類銷售小記 As Integer : Dim 金額1 As Integer = 0 : Dim 無管物料 As Integer
  159. 售價小計_tb.Text = "0" : 稅金_tb.Text = "0" : 銷售合計_tb.Text = "0" : 收入小計_tb.Text = "0" : 支出小計_tb.Text = "0" : 額外收支_tb.Text = "0" : 物料成本_tb.Text = "0"
  160. 司機運費_tb.Text = "0" : 管銷費用_tb.Text = "0" : 其他成本_tb.Text = "0" : 刷卡總和_tb.Text = "0" : 刷卡稅金_tb.Text = "0" : 刷卡傭金_tb.Text = "0"
  161. '-------001-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  162. For i As Integer = 0 To 收款事項_dgv.Rows.Count - 1
  163. If 收款事項_dgv("真項次", i).Value.ToString = "0" And 收款事項_dgv("內容", i).Value.ToString <> "未收餘額" Then
  164. 刷卡總和_tb.Text = Val(刷卡總和_tb.Text) + 收款事項_dgv("金額", i).Value
  165. End If
  166. Next
  167. 刷卡稅金_tb.Text = CInt(Val(Val(刷卡總和_tb.Text) * 0.05)) : 刷卡傭金_tb.Text = CInt(Val(Val(刷卡總和_tb.Text) * 0.02))
  168. '-------002-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  169. For i As Integer = 0 To 銷售明細_dgv.Rows.Count - 1
  170. 銷售合計_tb.Text = Val(銷售合計_tb.Text) + 銷售明細_dgv("售價", i).Value
  171. 售價小計_tb.Text = Val(售價小計_tb.Text) + (銷售明細_dgv("數量", i).Value * 銷售明細_dgv("單價", i).Value)
  172. If 銷售明細_dgv("無管銷", i).Value = False Then
  173. If Strings.Left(銷售明細_dgv("料號", i).Value.ToString, 1) <> "1" Then
  174. 無管物料 = 無管物料 + (銷售明細_dgv("數量", i).Value * 銷售明細_dgv("成本", i).Value)
  175. End If
  176. End If
  177. If Strings.Left(銷售明細_dgv("料號", i).Value.ToString, 1) <> "1" Then
  178. 物料成本_tb.Text = Val(物料成本_tb.Text) + (銷售明細_dgv("數量", i).Value * 銷售明細_dgv("成本", i).Value)
  179. 不含1類銷售小記 = 不含1類銷售小記 + 銷售明細_dgv("售價", i).Value
  180. End If
  181. If Strings.Left(銷售明細_dgv("料號", i).Value.ToString, 1) = "1" Then
  182. 其他成本_tb.Text = Val(其他成本_tb.Text) + (銷售明細_dgv("數量", i).Value * 銷售明細_dgv("成本", i).Value)
  183. End If
  184. If 銷售明細_dgv("含稅", i).Value = True Then
  185. 稅金_tb.Text = Val(稅金_tb.Text) + ((銷售明細_dgv("數量", i).Value * 銷售明細_dgv("單價", i).Value * 1.05) - (銷售明細_dgv("數量", i).Value * 銷售明細_dgv("單價", i).Value))
  186. End If
  187. Next
  188. 管銷費用_tb.Text = 無管物料 * 1.06 - 無管物料
  189. If Val(稅金_tb.Text) = 0 And Val(刷卡稅金_tb.Text) = 0 Then
  190. 通知_lb.Text = "無稅金"
  191. ElseIf Val(稅金_tb.Text) = 0 And Val(刷卡稅金_tb.Text) <> 0 Then
  192. 通知_lb.Text = "應刷卡稅金小,有刷卡帶入的稅金,所以拆售價以未稅顯示" : 稅金_tb.Text = Val(稅金_tb.Text) : 售價小計_tb.Text = Val(銷售合計_tb.Text) - Val(稅金_tb.Text)
  193. ElseIf Val(稅金_tb.Text) <> 0 And Val(刷卡稅金_tb.Text) <> 0 And Val(稅金_tb.Text) > Val(刷卡稅金_tb.Text) Then
  194. 通知_lb.Text = "應所拆售價稅金大於刷卡稅金,計算正常,利潤中扣除刷卡傭金"
  195. ElseIf Val(稅金_tb.Text) <> 0 And Val(刷卡稅金_tb.Text) <> 0 And Val(稅金_tb.Text) < Val(刷卡稅金_tb.Text) Then
  196. 通知_lb.Text = "刷卡稅金大於自動計算後的稅金,邏輯有誤,請從新拆售價。"
  197. End If
  198. If 稅金存檔 <> Val(稅金_tb.Text) Then
  199. 稅金_tb.Text = 稅金存檔
  200. 售價小計_tb.Text = Val(銷售合計_tb.Text) - Val(稅金_tb.Text)
  201. 銷售合計_tb.Text = Val(售價小計_tb.Text) + Val(稅金_tb.Text)
  202. ElseIf 稅金存檔 = Val(稅金_tb.Text) Then
  203. 稅金_tb.Text = 稅金存檔
  204. 銷售合計_tb.Text = Val(售價小計_tb.Text) + Val(稅金_tb.Text)
  205. 售價小計_tb.Text = Val(銷售合計_tb.Text) - Val(稅金_tb.Text)
  206. End If
  207. '-------003-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  208. For i As Integer = 0 To 銷售備註_dgv.Rows.Count - 1
  209. 收入小計_tb.Text = Val(收入小計_tb.Text) + 銷售備註_dgv("收入", i).Value
  210. 支出小計_tb.Text = Val(支出小計_tb.Text) + 銷售備註_dgv("支出", i).Value
  211. Next
  212. 額外收支_tb.Text = Val(收入小計_tb.Text) - Val(支出小計_tb.Text)
  213. '-------004-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  214. Dim 金額 As Integer = 0
  215. For i As Integer = 0 To 收款事項_dgv.Rows.Count - 1
  216. If 收款事項_dgv("真項次", i).Value.ToString <> "0" And 收款事項_dgv("內容", i).Value.ToString <> "未收餘額" Then
  217. 金額 = 金額 + 收款事項_dgv("金額", i).Value
  218. ElseIf 收款事項_dgv("真項次", i).Value.ToString = "0" And 收款事項_dgv("內容", i).Value.ToString <> "未收餘額" Then
  219. 金額 = 金額 + 收款事項_dgv("金額", i).Value
  220. ElseIf 收款事項_dgv("真項次", i).Value.ToString = "0" And 收款事項_dgv("內容", i).Value.ToString = "未收餘額" Then
  221. 收款事項_dgv("金額", i).Value = CInt(Val(銷售合計_tb.Text)) - 金額
  222. End If
  223. Next
  224. '-------005-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  225. If 送貨地點_cb.Text = "" Or 送貨地點_cb.Text = "自取" Or 最低運費_cb.Text = "" Or 最低售價_cb.Text = "" Then
  226. 司機運費_tb.Text = "0"
  227. Else
  228. If 運費 = 0 Then
  229. If (不含1類銷售小記 - Val(其他成本_tb.Text)) <= Val(最低售價_cb.Text) Then
  230. 司機運費_tb.Text = 最低運費_cb.Text
  231. ElseIf (不含1類銷售小記 - Val(其他成本_tb.Text)) > Val(最低售價_cb.Text) Then
  232. 司機運費_tb.Text = (不含1類銷售小記 - Val(稅金_tb.Text) - Val(刷卡傭金_tb.Text) - Val(其他成本_tb.Text)) / 100 * 3
  233. End If
  234. Else
  235. 司機運費_tb.Text = 運費
  236. End If
  237. End If
  238. '-------006-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  239. 預估利潤_tb.Text = Val(售價小計_tb.Text) + Val(額外收支_tb.Text) - Val(其他成本_tb.Text) - Val(物料成本_tb.Text) - Val(司機運費_tb.Text) - Val(管銷費用_tb.Text) - Val(刷卡傭金_tb.Text)
  240. If 銷售衍生運費_dgv.Rows.Count > 0 Then
  241. For i As Integer = 0 To 銷售衍生運費_dgv.Rows.Count - 1
  242. 預估利潤_tb.Text = Val(預估利潤_tb.Text) - 銷售衍生運費_dgv.Rows(i).Cells("支出").Value
  243. Next
  244. End If
  245. '-------007-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  246. 售價小計_tb.Text = Format(Val(售價小計_tb.Text), "#,##0") : 稅金_tb.Text = Format(Val(稅金_tb.Text), "#,##0") : 銷售合計_tb.Text = Format(Val(銷售合計_tb.Text), "#,##0")
  247. 收入小計_tb.Text = Format(Val(收入小計_tb.Text), "#,##0") : 支出小計_tb.Text = Format(Val(支出小計_tb.Text), "#,##0") : 額外收支_tb.Text = Format(Val(額外收支_tb.Text), "#,##0")
  248. 司機運費_tb.Text = Format(Val(司機運費_tb.Text), "#,##0") : 管銷費用_tb.Text = Format(Val(管銷費用_tb.Text), "#,##0") : 預估利潤_tb.Text = Format(Val(預估利潤_tb.Text), "#,##0")
  249. 物料成本_tb.Text = Format(Val(物料成本_tb.Text), "#,##0") : 其他成本_tb.Text = Format(Val(其他成本_tb.Text), "#,##0") : 刷卡總和_tb.Text = Format(Val(刷卡總和_tb.Text), "#,##0")
  250. 刷卡稅金_tb.Text = Format(Val(刷卡稅金_tb.Text), "#,##0") : 刷卡傭金_tb.Text = Format(Val(刷卡傭金_tb.Text), "#,##0")
  251. End Sub
  252. Private Sub 訂單控制表_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  253. Me.MdiParent = YD_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  254. 顯示_bt.Enabled = False : 隱藏_bt.Enabled = True
  255. 中間距_ch.Checked = True '--------------------控件隱藏、操作許可設定與其他基本顯示設定
  256. 送貨地點_cb_下拉表單資料載入()
  257. 首次開啟 = False : 業務_cb.Text = 業務號碼 : Set_清單1() : 首次開啟 = True '--------------------資料讀取
  258. End Sub
  259. Private Sub 銷售單申請_SizeChanged(sender As Object, e As EventArgs) Handles MyBase.SizeChanged
  260. If 單號_tb.Text = "" Then : Else
  261. Set_清單4() : Set_清單5() : Set_清單6() : Set_清單7()
  262. End If
  263. End Sub
  264. Private Sub 收款事項_dgv_CellEndEdit(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 收款事項_dgv.CellEndEdit
  265. Set_合記計算()
  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. 銷售收款流水號_tb.Text = 收款事項_dgv("資料流水號", e.RowIndex).Value.ToString : 項次2_tb.Text = 收款事項_dgv("項次", e.RowIndex).Value.ToString
  270. 項次3_tb.Text = 收款事項_dgv("真項次", e.RowIndex).Value.ToString
  271. End If
  272. End Sub
  273. Private Sub 銷售備註_dgvCellEndEdit(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 銷售備註_dgv.CellEndEdit
  274. If (Val(銷售備註_dgv.Rows(e.RowIndex).Cells("收入").Value) <> 0 And Val(銷售備註_dgv.Rows(e.RowIndex).Cells("支出").Value) <> 0) Then
  275. MsgBox("支出與收入不能同時有金額")
  276. Set_清單5()
  277. Exit Sub
  278. End If
  279. Set_合記計算()
  280. End Sub
  281. Private Sub 銷售備註_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 銷售備註_dgv.CellClick
  282. If e.RowIndex = -1 Then : Else
  283. 銷售備註流水號_tb.Text = 銷售備註_dgv("資料流水號", e.RowIndex).Value.ToString : 項次1_tb.Text = 銷售備註_dgv("項次", e.RowIndex).Value.ToString
  284. End If
  285. End Sub
  286. Private Sub 銷售衍生運費_dgv_CellEndEdit(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 銷售衍生運費_dgv.CellEndEdit
  287. Set_合記計算()
  288. End Sub
  289. Private Sub 銷售衍生運費_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 銷售衍生運費_dgv.CellClick
  290. If e.RowIndex = -1 Then : Else
  291. 項次4_tb.Text = 銷售備註_dgv("項次", e.RowIndex).Value.ToString
  292. End If
  293. End Sub
  294. Private Sub 銷售明細_dgv_CellEndEdit(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 銷售明細_dgv.CellEndEdit
  295. For i As Integer = 0 To 銷售明細_dgv.Rows.Count - 1
  296. If 銷售明細_dgv("含稅", i).Value = False Then
  297. 銷售明細_dgv("售價", i).Value = 銷售明細_dgv("數量", i).Value * 銷售明細_dgv("單價", i).Value
  298. ElseIf 銷售明細_dgv("含稅", i).Value = True Then
  299. 銷售明細_dgv("售價", i).Value = 銷售明細_dgv("數量", i).Value * 銷售明細_dgv("單價", i).Value * 1.05
  300. End If
  301. Next
  302. Set_合記計算()
  303. End Sub
  304. Private Sub 銷售明細_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 銷售明細_dgv.CellClick
  305. If e.RowIndex = -1 Then : Else
  306. 銷售資料流水號_tb.Text = 銷售明細_dgv("資料流水號", e.RowIndex).Value.ToString : 倉儲資料流水號_tb.Text = 銷售明細_dgv("倉儲流水號", e.RowIndex).Value.ToString
  307. 項次_tb.Text = 銷售明細_dgv("項次", e.RowIndex).Value.ToString
  308. 物料圖1_pb.Image = Nothing : PA1 = 銷售明細_dgv("料號", e.RowIndex).Value : SQL_物料檔案_是否有圖()
  309. If dr.Read() Then
  310. If dr("是否有圖") = True Then
  311. PA = 銷售明細_dgv("料號", e.RowIndex).Value : SQL_物料圖庫_圖片顯示() '--------------------圖片顯示
  312. While dr.Read() = True
  313. Dim unused As Byte() = New Byte(-1) {}
  314. Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte())
  315. Dim oStream As New MemoryStream(bytes)
  316. 物料圖1_pb.Image = Bitmap.FromStream(oStream)
  317. End While
  318. conn.Close()
  319. 物料圖1_pb.SizeMode = 4
  320. Else
  321. 物料圖1_pb.Image = Nothing
  322. End If
  323. End If : conn.Close()
  324. End If
  325. End Sub
  326. Private Sub 銷售單據_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 銷售單據_dgv.CellClick
  327. If e.RowIndex = -1 Then : Else
  328. 稅金存檔 = 銷售單據_dgv.Rows(e.RowIndex).Cells("稅金").Value
  329. 流水號_tb.Text = 銷售單據_dgv.Rows(e.RowIndex).Cells("流水號").Value : 單號_tb.Text = 銷售單據_dgv.Rows(e.RowIndex).Cells("單號").Value
  330. 開單日期_dtp.Value = 銷售單據_dgv.Rows(e.RowIndex).Cells("開單日期").Value : 客戶編號_tb.Text = 銷售單據_dgv.Rows(e.RowIndex).Cells("客戶編號").Value
  331. 交貨日期_dtp.Value = 銷售單據_dgv.Rows(e.RowIndex).Cells("交貨日期").Value : 含稅_ch.Checked = 銷售單據_dgv.Rows(e.RowIndex).Cells("含稅").Value
  332. 送貨地點_cb_下拉表單資料載入() : 送貨地點_cb.Text = 銷售單據_dgv.Rows(e.RowIndex).Cells("送貨地點").Value.ToString
  333. 運費 = 銷售單據_dgv.Rows(e.RowIndex).Cells("運費").Value
  334. '業務_cb.Text = Strings.Left(銷售單據_dgv.Rows(e.RowIndex).Cells("單號").Value, 1)
  335. Set_清單4() : Set_清單5()
  336. Set_清單6() : Set_清單7()
  337. PA = 單號_tb.Text : SQL_銷售單號串聯倉儲表取得倉儲單號()
  338. If dr.Read() Then : 調庫單號_tb.Text = dr("執行單號") : Else : 調庫單號_tb.Text = "" : End If
  339. End If
  340. End Sub
  341. Private Sub 窄間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 小間距_ch.Click
  342. 小間距_ch.Checked = True : 中間距_ch.Checked = False : 大間距_ch.Checked = False
  343. Set_清單4()
  344. End Sub
  345. Private Sub 中間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 中間距_ch.Click
  346. 小間距_ch.Checked = False : 中間距_ch.Checked = True : 大間距_ch.Checked = False
  347. Set_清單4()
  348. End Sub
  349. Private Sub 大間距_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 大間距_ch.Click
  350. 小間距_ch.Checked = False : 中間距_ch.Checked = False : 大間距_ch.Checked = True
  351. Set_清單4()
  352. End Sub
  353. Private Sub 送貨地點_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 送貨地點_cb.SelectedIndexChanged
  354. 最低運費_cb.SelectedIndex = 送貨地點_cb.SelectedIndex : 最低售價_cb.SelectedIndex = 送貨地點_cb.SelectedIndex : Set_合記計算()
  355. End Sub
  356. Private Sub 最低運費_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 最低運費_cb.SelectedIndexChanged
  357. 送貨地點_cb.SelectedIndex = 最低運費_cb.SelectedIndex : 最低售價_cb.SelectedIndex = 最低運費_cb.SelectedIndex
  358. End Sub
  359. Private Sub 最低售價_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 最低售價_cb.SelectedIndexChanged
  360. 送貨地點_cb.SelectedIndex = 最低售價_cb.SelectedIndex : 最低運費_cb.SelectedIndex = 最低售價_cb.SelectedIndex
  361. End Sub
  362. Private Sub 業務_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 業務_cb.SelectedIndexChanged
  363. Set_清單1()
  364. End Sub
  365. Private Sub 含稅_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 含稅_ch.CheckedChanged
  366. For i As Integer = 0 To 銷售明細_dgv.Rows.Count - 1
  367. If 含稅_ch.Checked = False Then : 銷售明細_dgv("含稅", i).Value = False
  368. ElseIf 含稅_ch.Checked = True Then : 銷售明細_dgv("含稅", i).Value = True
  369. End If
  370. If 銷售明細_dgv("含稅", i).Value = False Then
  371. 銷售明細_dgv("售價", i).Value = 銷售明細_dgv("數量", i).Value * 銷售明細_dgv("單價", i).Value
  372. ElseIf 銷售明細_dgv("含稅", i).Value = True Then
  373. 銷售明細_dgv("售價", i).Value = 銷售明細_dgv("數量", i).Value * 銷售明細_dgv("單價", i).Value * 1.05
  374. End If
  375. Next
  376. Set_合記計算()
  377. End Sub
  378. Private Sub 字體_NUD_ValueChanged(sender As Object, e As EventArgs) Handles 字體_NUD.ValueChanged
  379. 銷售單據_dgv.RowsDefaultCellStyle.Font = New Font("微軟正黑體", 字體_NUD.Value)
  380. 銷售明細_dgv.RowsDefaultCellStyle.Font = New Font("微軟正黑體", 字體_NUD.Value)
  381. 銷售備註_dgv.RowsDefaultCellStyle.Font = New Font("微軟正黑體", 字體_NUD.Value)
  382. 銷售衍生運費_dgv.RowsDefaultCellStyle.Font = New Font("微軟正黑體", 字體_NUD.Value)
  383. 收款事項_dgv.RowsDefaultCellStyle.Font = New Font("微軟正黑體", 字體_NUD.Value)
  384. End Sub
  385. Private Sub 客戶編號_tb_TextChanged(sender As Object, e As EventArgs) Handles 客戶編號_tb.TextChanged
  386. PA15 = 客戶編號_tb.Text
  387. SQL_銷售單申請_客戶資料()
  388. If dr.Read() Then
  389. 客戶_tb.Text = dr("名稱") : 公司_tb.Text = dr("公司名稱") : 統編_tb.Text = dr("統編") : 住址_tb.Text = dr("地址") : 電話1_tb.Text = dr("電話1") : 電話2_tb.Text = dr("電話2")
  390. Else
  391. 客戶_tb.Text = "" : 公司_tb.Text = "" : 統編_tb.Text = "" : 住址_tb.Text = "" : 電話1_tb.Text = "" : 電話2_tb.Text = ""
  392. End If
  393. End Sub
  394. Private Sub 客戶1_tb_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles 客戶1_tb.KeyPress
  395. If e.KeyChar = Chr(13) Then
  396. Set_清單1()
  397. End If
  398. End Sub
  399. Private Sub 重新整理_tsm_Click(sender As Object, e As EventArgs) Handles 重新整理_tsm.Click
  400. Set_清單4() : Set_清單5() : Set_清單6() : Set_清單7()
  401. End Sub
  402. Private Sub 隱藏_bt_Click(sender As Object, e As EventArgs) Handles 隱藏_bt.Click
  403. 顯示_bt.Enabled = True : 隱藏_bt.Enabled = False
  404. Panel2.Visible = False
  405. Panel3.Location = New Point(2, 2)
  406. NU1 = Panel3.Size.Width
  407. NU2 = Panel3.Size.Height
  408. NU1 = Panel3.Size.Width + 556
  409. Panel3.Size = New Size(NU1, NU2)
  410. End Sub
  411. Private Sub 顯示_bt_Click(sender As Object, e As EventArgs) Handles 顯示_bt.Click
  412. 顯示_bt.Enabled = False : 隱藏_bt.Enabled = True
  413. Panel2.Visible = True
  414. Panel3.Location = New Point(559, 2)
  415. NU1 = Panel3.Size.Width
  416. NU2 = Panel3.Size.Height
  417. NU1 = Panel3.Size.Width - 556
  418. Panel3.Size = New Size(NU1, NU2)
  419. End Sub
  420. End Class