Brak opisu
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.

SQL_業務系統管理.vb 38KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451
  1. Module SQL_業務系統管理
  2. '---------------------客戶資料表-----------------------------------------------------------------------------------------------------------------
  3. Friend Sub SQL_客戶資料表_清單()
  4. ConnOpen()
  5. If 客戶資料表.查詢_tb.Text = "" Then
  6. If 客戶資料表.業務_cb.Text = "" Then
  7. SQL1 = "SELECT 流水號, 流水號 AS 項次, 舊編 AS 編號, 名稱 AS 客戶, 電話1, 電話2, 公司名稱, 統編, 地址 FROM 客戶資料表
  8. ORDER BY 舊編"
  9. Else
  10. SQL1 = "SELECT 流水號, 流水號 AS 項次, 舊編 AS 編號, 名稱 AS 客戶, 電話1, 電話2, 公司名稱, 統編, 地址 FROM 客戶資料表
  11. WHERE 舊編 LIKE N'" & 客戶資料表.業務_cb.Text & "%' ORDER BY 舊編"
  12. End If
  13. Else
  14. If 客戶資料表.業務_cb.Text = "" Then
  15. SQL1 = "SELECT 流水號, 流水號 AS 項次, 舊編 AS 編號, 名稱 AS 客戶, 電話1, 電話2, 公司名稱, 統編, 地址 FROM 客戶資料表
  16. WHERE (名稱 LIKE N'%" & PA & "%' OR 電話1 LIKE N'%" & PA & "%' OR 電話2 LIKE N'%" & PA & "%' OR 地址 LIKE N'%" & PA & "%') ORDER BY 舊編"
  17. Else
  18. SQL1 = "SELECT 流水號, 流水號 AS 項次, 舊編 AS 編號, 名稱 AS 客戶, 電話1, 電話2, 公司名稱, 統編, 地址 FROM 客戶資料表
  19. WHERE (舊編 LIKE N'" & 客戶資料表.業務_cb.Text & "%') AND (名稱 LIKE N'%" & PA & "%' OR 電話1 LIKE N'%" & PA & "%' OR
  20. 電話2 LIKE N'%" & PA & "%' OR 地址 LIKE N'%" & PA & "%')
  21. ORDER BY 舊編"
  22. End If
  23. End If
  24. CmdSet_For_DGV()
  25. End Sub
  26. '---------------------銷售單申請-----------------------------------------------------------------------------------------------------------------
  27. Friend Sub SQL_銷售控制表_最後一筆資料()
  28. ConnOpen() : SQL1 = "SELECT TOP (1) 流水號 FROM 銷售控制表 ORDER BY 流水號 DESC" : CmdSet_For_dr()
  29. End Sub
  30. Friend Sub SQL_銷售控制表_單號是否重複()
  31. ConnOpen() : SQL1 = "SELECT TOP (1) 單號 FROM 銷售控制表 WHERE 單號 LIKE '" & PA & "'" : CmdSet_For_dr()
  32. End Sub
  33. Friend Sub SQL_銷售控制表_新增()
  34. ConnOpen()
  35. SQL1 = "INSERT INTO 銷售控制表 (流水號, 單號, 開單日期, 客戶編號, 交貨日期, 含稅, 單位主管, 審核日期, 業務人員, 稅金)
  36. VALUES (N'" & PA1 & "', '" & PA & "', '" & DTP & "', N'', '" & DTP2 & "', N'0', N'', N'', N'" & gUserName & "', '0')"
  37. CmdSet_For_dr()
  38. End Sub
  39. Friend Sub SQL_銷售控制表_新增_無須審核()
  40. ConnOpen()
  41. SQL1 = "INSERT INTO 銷售控制表 (流水號, 單號, 開單日期, 客戶編號, 交貨日期, 含稅, 單位主管, 審核日期, 業務人員, 稅金)
  42. VALUES (N'" & PA1 & "', '" & PA & "', '" & DTP & "', N'', '" & DTP2 & "', N'0', N'呂宜嫺', N'" & DTP & "', N'" & gUserName & "', '0')"
  43. CmdSet_For_dr()
  44. End Sub
  45. Friend Sub SQL_銷售收款事項_新增()
  46. ConnOpen()
  47. SQL1 = "INSERT INTO 銷售收款事項 (資料流水號, 單號, 項次, 內容, 金額) VALUES (N'" & PA1 & "', '" & PA & "', N'0', N'未收餘額', N'0')"
  48. CmdSet_For_dr()
  49. End Sub
  50. Friend Sub SQL_銷售控制表()
  51. If 銷售單申請.已審核資料_ch.Checked = True Then
  52. SQL2 = " WHERE 單號 LIKE '" & PA19 & "%' AND 單位主管 NOT LIKE '作廢%' "
  53. Else
  54. SQL2 = " WHERE 單號 LIKE '" & PA19 & "%' AND 單位主管 LIKE '' "
  55. End If
  56. ConnOpen()
  57. SQL1 = "SELECT 流水號, 單號, 開單日期, 客戶編號, 交貨日期, 含稅, 單位主管, 審核日期, 業務人員, 送貨地點, 運費, 稅金
  58. FROM 銷售控制表 " & SQL2 & " ORDER BY 單號 DESC"
  59. CmdSet_For_DGV()
  60. End Sub
  61. Friend Sub SQL料號查詢簡稱()
  62. ConnOpen() : SQL1 = "SELECT 簡稱 FROM 供應商資料表 WHERE (編號 LIKE N'" & PA30 & "')" : CmdSet_For_dr()
  63. End Sub
  64. '---------------------銷售單審核-----------------------------------------------------------------------------------------------------------------
  65. Friend Sub SQL_銷售控制表_審核()
  66. If 銷售單審核.已審核資料_ch.Checked = True Then
  67. SQL2 = " WHERE 單號 LIKE '" & PA19 & "%' AND 客戶編號 NOT LIKE '' AND 單位主管 NOT LIKE '作廢%' "
  68. Else
  69. SQL2 = " WHERE 單號 LIKE '" & PA19 & "%' AND 客戶編號 NOT LIKE '' AND 單位主管 LIKE '' "
  70. End If
  71. ConnOpen()
  72. SQL1 = "SELECT 流水號, 單號, 開單日期, 客戶編號, 交貨日期, 含稅, 單位主管, 審核日期, 業務人員, 送貨地點, 運費, 稅金
  73. FROM 銷售控制表 " & SQL2 & " ORDER BY 單號 DESC"
  74. CmdSet_For_DGV()
  75. End Sub
  76. Friend Sub SQL_銷售控制表_審核確認()
  77. ConnOpen()
  78. SQL1 = "UPDATE 銷售控制表 SET 單位主管 = N'" & PA & "', 審核日期 = N'" & DTP & "' WHERE 單號 LIKE '" & PA1 & "%'"
  79. CmdSet_For_dr()
  80. End Sub
  81. Friend Sub SQL_銷售單審核_連帶作廢倉儲明細表()
  82. ConnOpen()
  83. SQL1 = "UPDATE 倉儲明細表 SET 審核人 = N'" & PA10 & "', 審核日期 = N'" & DTP & "', 倉庫作業 = N'" & PA9 & "', 作業日期 = N'" & DTP2 & "' WHERE (採購單號 LIKE N'" & PA11 & "')"
  84. CmdSet_For_dr()
  85. End Sub
  86. '---------------------訂單控制表-----------------------------------------------------------------------------------------------------------------
  87. Friend Sub SQL_銷售控制表_訂單控制表()
  88. ConnOpen()
  89. SQL1 = "SELECT 銷售控制表.流水號, 銷售控制表.單號, 客戶資料表.名稱, 銷售控制表.開單日期, 銷售控制表.交貨日期,
  90. 銷售控制表.含稅, 銷售控制表.單位主管, 銷售控制表.審核日期, 銷售收款事項.內容, 銷售收款事項.金額,
  91. 銷售控制表.送貨地點, 銷售控制表.運費, 銷售控制表.客戶編號, 客戶資料表.電話1, 客戶資料表.電話2,
  92. 客戶資料表.地址, 客戶資料表.公司名稱, 客戶資料表.統編, 銷售控制表.稅金
  93. FROM 銷售控制表 INNER JOIN
  94. 客戶資料表 ON 銷售控制表.客戶編號 = 客戶資料表.舊編 INNER JOIN
  95. (SELECT 銷售明細表.單號
  96. FROM 銷售明細表 INNER JOIN
  97. 物料資料庫 ON 銷售明細表.料號 = 物料資料庫.料號
  98. WHERE (銷售明細表.料號 LIKE N'%" & PA21 & "%') OR
  99. (銷售明細表.備註 LIKE N'%" & PA21 & "%') OR
  100. (物料資料庫.品名 LIKE N'%" & PA21 & "%')
  101. GROUP BY 銷售明細表.單號) AS QQQ ON 銷售控制表.單號 = QQQ.單號 LEFT OUTER JOIN
  102. 銷售收款事項 ON 銷售控制表.單號 = 銷售收款事項.單號
  103. WHERE (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售收款事項.內容 LIKE '未收餘額') AND (客戶資料表.名稱 LIKE N'%" & PA20 & "%') OR
  104. (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售收款事項.內容 LIKE '未收餘額') AND (客戶資料表.電話1 LIKE N'%" & PA20 & "%') OR
  105. (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售收款事項.內容 LIKE '未收餘額') AND (客戶資料表.電話2 LIKE N'%" & PA20 & "%') OR
  106. (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售收款事項.內容 LIKE '未收餘額') AND (客戶資料表.地址 LIKE N'%" & PA20 & "%') OR
  107. (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售收款事項.內容 LIKE '未收餘額') AND (客戶資料表.公司名稱 LIKE N'%" & PA20 & "%') OR
  108. (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售收款事項.內容 LIKE '未收餘額') AND (客戶資料表.統編 LIKE N'%" & PA20 & "%')
  109. ORDER BY 銷售控制表.單號 DESC"
  110. CmdSet_For_DGV()
  111. End Sub
  112. '---------------------銷售分析表-----------------------------------------------------------------------------------------------------------------
  113. Friend Sub SQL_銷售分析表_物料明細()
  114. If 銷售分析表.依開單日期_ch.Checked = False Then
  115. SQL2 = "(銷售控制表.交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  116. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  117. SQL2 = "(銷售控制表.開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  118. End If
  119. ConnOpen()
  120. SQL1 = "SELECT 銷售控制表.單號 AS 項次, 銷售控制表.單號, 銷售明細表.料號, 供應商資料表.簡稱 AS 供應商, 物料資料庫.品名, 倉儲分區控制表.倉名,
  121. 物料訂製狀態.訂製, 倉儲狀態.狀態, 銷售明細表.備註, 銷售明細表.數量, 銷售明細表.成本, 銷售明細表.售價 AS 單價, 銷售明細表.含稅, 銷售明細表.售價,
  122. 銷售明細表.狀態 AS 倉儲情況
  123. FROM 倉儲狀態 RIGHT OUTER JOIN
  124. 銷售明細表 ON 倉儲狀態.編碼 = 銷售明細表.物料狀態 LEFT OUTER JOIN
  125. 物料訂製狀態 ON 銷售明細表.訂製狀態 = 物料訂製狀態.編碼 LEFT OUTER JOIN
  126. 倉儲分區控制表 ON 銷售明細表.倉儲狀態 = 倉儲分區控制表.倉名編號 LEFT OUTER JOIN
  127. 物料資料庫 INNER JOIN
  128. 供應商資料表 ON 物料資料庫.供應商編號 = 供應商資料表.編號 ON
  129. 銷售明細表.料號 = 物料資料庫.料號 LEFT OUTER JOIN
  130. 銷售控制表 ON 銷售明細表.單號 = 銷售控制表.單號
  131. WHERE (銷售控制表.單號 NOT LIKE '4%') AND (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售明細表.料號 NOT LIKE '1001%') AND " & SQL2 & "
  132. ORDER BY 銷售控制表.單號 DESC"
  133. CmdSet_For_DGV()
  134. End Sub
  135. Friend Sub SQL_銷售分析表_物料明細1()
  136. If 銷售分析表.依開單日期_ch.Checked = False Then
  137. SQL2 = "(銷售控制表.交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  138. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  139. SQL2 = "(銷售控制表.開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  140. End If
  141. ConnOpen()
  142. SQL1 = "SELECT LEFT(銷售控制表.單號, 1) AS 項次, LEFT(銷售控制表.單號, 1) AS 業務, SUM(銷售明細表.數量 * 銷售明細表.售價) AS 銷售
  143. FROM 倉儲狀態 RIGHT OUTER JOIN
  144. 銷售明細表 ON 倉儲狀態.編碼 = 銷售明細表.物料狀態 LEFT OUTER JOIN
  145. 物料訂製狀態 ON 銷售明細表.訂製狀態 = 物料訂製狀態.編碼 LEFT OUTER JOIN
  146. 倉儲分區控制表 ON 銷售明細表.倉儲狀態 = 倉儲分區控制表.倉名編號 LEFT OUTER JOIN
  147. 物料資料庫 INNER JOIN
  148. 供應商資料表 ON 物料資料庫.供應商編號 = 供應商資料表.編號 ON
  149. 銷售明細表.料號 = 物料資料庫.料號 LEFT OUTER JOIN
  150. 銷售控制表 ON 銷售明細表.單號 = 銷售控制表.單號
  151. WHERE (銷售控制表.單號 NOT LIKE '4%') AND (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售明細表.料號 NOT LIKE '1001%') AND " & SQL2 & "
  152. GROUP BY LEFT(銷售控制表.單號, 1)
  153. ORDER BY 銷售 DESC"
  154. CmdSet_For_DGV()
  155. End Sub
  156. Friend Sub SQL_銷售分析表_它項明細()
  157. If 銷售分析表.依開單日期_ch.Checked = False Then
  158. SQL2 = "(銷售控制表.交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  159. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  160. SQL2 = "(銷售控制表.開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  161. End If
  162. ConnOpen()
  163. SQL1 = "SELECT 銷售控制表.單號 AS 項次, 銷售控制表.單號, 銷售明細表.料號, 供應商資料表.簡稱 AS 供應商, 物料資料庫.品名, 倉儲分區控制表.倉名,
  164. 物料訂製狀態.訂製, 倉儲狀態.狀態, 銷售明細表.備註, 銷售明細表.數量, 銷售明細表.成本, 銷售明細表.售價 AS 單價, 銷售明細表.含稅, 銷售明細表.售價,
  165. 銷售明細表.狀態 AS 倉儲情況
  166. FROM 倉儲狀態 RIGHT OUTER JOIN
  167. 銷售明細表 ON 倉儲狀態.編碼 = 銷售明細表.物料狀態 LEFT OUTER JOIN
  168. 物料訂製狀態 ON 銷售明細表.訂製狀態 = 物料訂製狀態.編碼 LEFT OUTER JOIN
  169. 倉儲分區控制表 ON 銷售明細表.倉儲狀態 = 倉儲分區控制表.倉名編號 LEFT OUTER JOIN
  170. 物料資料庫 INNER JOIN
  171. 供應商資料表 ON 物料資料庫.供應商編號 = 供應商資料表.編號 ON
  172. 銷售明細表.料號 = 物料資料庫.料號 LEFT OUTER JOIN
  173. 銷售控制表 ON 銷售明細表.單號 = 銷售控制表.單號
  174. WHERE (銷售控制表.單號 NOT LIKE '4%') AND (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售明細表.料號 LIKE '1001%') AND (銷售明細表.成本 > 0) AND " & SQL2 & "
  175. ORDER BY 銷售控制表.單號 DESC"
  176. CmdSet_For_DGV()
  177. End Sub
  178. Friend Sub SQL_銷售分析表_它項明細1()
  179. If 銷售分析表.依開單日期_ch.Checked = False Then
  180. SQL2 = "(銷售控制表.交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  181. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  182. SQL2 = "(銷售控制表.開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  183. End If
  184. ConnOpen()
  185. SQL1 = "SELECT 供應商資料表.簡稱 AS 項次, 供應商資料表.簡稱 AS 銷售它項, SUM((銷售明細表.數量 * 銷售明細表.售價) - (銷售明細表.數量 * 銷售明細表.成本)) AS 它項收支
  186. FROM 倉儲狀態 RIGHT OUTER JOIN
  187. 銷售明細表 ON 倉儲狀態.編碼 = 銷售明細表.物料狀態 LEFT OUTER JOIN
  188. 物料訂製狀態 ON 銷售明細表.訂製狀態 = 物料訂製狀態.編碼 LEFT OUTER JOIN
  189. 倉儲分區控制表 ON 銷售明細表.倉儲狀態 = 倉儲分區控制表.倉名編號 LEFT OUTER JOIN
  190. 物料資料庫 INNER JOIN
  191. 供應商資料表 ON 物料資料庫.供應商編號 = 供應商資料表.編號 ON
  192. 銷售明細表.料號 = 物料資料庫.料號 LEFT OUTER JOIN
  193. 銷售控制表 ON 銷售明細表.單號 = 銷售控制表.單號
  194. WHERE (銷售控制表.單號 NOT LIKE '4%') AND (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售明細表.料號 LIKE '1001%') AND (銷售明細表.成本 > 0) AND " & SQL2 & "
  195. GROUP BY 供應商資料表.簡稱
  196. ORDER BY 它項收支"
  197. CmdSet_For_DGV()
  198. End Sub
  199. Friend Sub SQL_銷售分析表_銷售備註()
  200. If 銷售分析表.依開單日期_ch.Checked = False Then
  201. SQL2 = "(銷售控制表.交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  202. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  203. SQL2 = "(銷售控制表.開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  204. End If
  205. ConnOpen()
  206. SQL1 = "SELECT 銷售控制表.單號 AS 項次, 銷售備註表.單號, 銷售備註表.備註, 銷售備註表.收入, 銷售備註表.支出
  207. FROM 銷售備註表 INNER JOIN 銷售控制表 ON 銷售備註表.單號 = 銷售控制表.單號
  208. WHERE (銷售控制表.單號 Not Like '4%') AND (銷售控制表.單號 LIKE '" & PA19 & "%') AND ((銷售備註表.收入 > 0) OR (銷售備註表.支出 > 0)) AND " & SQL2 & "
  209. ORDER BY 銷售控制表.單號 DESC"
  210. CmdSet_For_DGV()
  211. End Sub
  212. Friend Sub SQL_銷售分析表_銷售備註1()
  213. If 銷售分析表.依開單日期_ch.Checked = False Then
  214. SQL2 = "(銷售控制表.交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  215. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  216. SQL2 = "(銷售控制表.開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  217. End If
  218. ConnOpen()
  219. SQL1 = "SELECT LEFT(銷售控制表.單號, 1) AS 項次, LEFT(銷售控制表.單號, 1) AS 業務, SUM(銷售備註表.收入 - 銷售備註表.支出) AS 其他收支
  220. FROM 銷售備註表 INNER JOIN 銷售控制表 ON 銷售備註表.單號 = 銷售控制表.單號
  221. WHERE (銷售控制表.單號 Not Like '4%') AND (銷售控制表.單號 LIKE '" & PA19 & "%') AND ((銷售備註表.收入 > 0) OR (銷售備註表.支出 > 0)) AND " & SQL2 & "
  222. GROUP BY LEFT(銷售控制表.單號, 1)
  223. ORDER BY 其他收支"
  224. CmdSet_For_DGV()
  225. End Sub
  226. Friend Sub SQL_銷售分析表_稅金()
  227. If 銷售分析表.依開單日期_ch.Checked = False Then
  228. SQL2 = "(銷售控制表.交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  229. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  230. SQL2 = "(銷售控制表.開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  231. End If
  232. ConnOpen()
  233. SQL1 = "SELECT 單號 AS 項次, 單號, 稅金
  234. FROM 銷售控制表
  235. WHERE (單號 Not Like '4%') AND (單號 LIKE '" & PA19 & "%') AND (稅金 > 0) AND " & SQL2 & "
  236. ORDER BY 單號 DESC"
  237. CmdSet_For_DGV()
  238. End Sub
  239. Friend Sub SQL_銷售分析表_稅金1()
  240. If 銷售分析表.依開單日期_ch.Checked = False Then
  241. SQL2 = "(銷售控制表.交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  242. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  243. SQL2 = "(銷售控制表.開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  244. End If
  245. ConnOpen()
  246. SQL1 = "SELECT LEFT(單號,1) AS 項次, LEFT(單號,1) AS 業務, SUM(稅金) AS 稅金
  247. FROM 銷售控制表
  248. WHERE (單號 Not Like '4%') AND (單號 LIKE '" & PA19 & "%') AND (稅金 > 0) AND " & SQL2 & "
  249. GROUP BY LEFT(單號,1)
  250. ORDER BY 稅金 DESC"
  251. CmdSet_For_DGV()
  252. End Sub
  253. Friend Sub SQL_銷售分析表_運費()
  254. If 銷售分析表.依開單日期_ch.Checked = False Then
  255. SQL2 = "(交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  256. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  257. SQL2 = "(開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  258. End If
  259. ConnOpen()
  260. SQL1 = "SELECT 單號 AS 項次, 單號, 送貨地點, 運費 FROM 銷售控制表 WHERE (單號 Not Like '4%') AND (單號 LIKE '" & PA19 & "%') AND (運費 > 0) AND " & SQL2 & " ORDER BY 單號 DESC"
  261. CmdSet_For_DGV()
  262. End Sub
  263. Friend Sub SQL_銷售分析表_運費1()
  264. If 銷售分析表.依開單日期_ch.Checked = False Then
  265. SQL2 = "(交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  266. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  267. SQL2 = "(開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  268. End If
  269. ConnOpen()
  270. SQL1 = "SELECT 送貨地點 AS 項次, 送貨地點, SUM(運費) AS 運費 FROM 銷售控制表 WHERE (單號 Not Like '4%') AND (單號 LIKE '" & PA19 & "%') AND (運費 > 0) AND " & SQL2 & "
  271. GROUP BY 送貨地點 ORDER BY 運費 DESC"
  272. CmdSet_For_DGV()
  273. End Sub
  274. Friend Sub SQL_銷售分析表_廠商彙總()
  275. If 銷售分析表.依開單日期_ch.Checked = False Then
  276. SQL2 = "(交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  277. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  278. SQL2 = "(開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  279. End If
  280. ConnOpen()
  281. SQL1 = "SELECT AAA.項次, AAA.編號, AAA.供應商, AAA.成本預估, 系統比例用空白圖片.圖片 AS 成本佔比
  282. FROM 系統比例用空白圖片 RIGHT OUTER JOIN
  283. (SELECT 物料資料庫.供應商編號 AS 項次, 物料資料庫.供應商編號 AS 編號, 供應商資料表.簡稱 AS 供應商,
  284. SUM(銷售明細表.數量 * 銷售明細表.成本) AS 成本預估, 物料資料庫.進度條用空白
  285. FROM 銷售明細表 LEFT OUTER JOIN
  286. 物料資料庫 INNER JOIN
  287. 供應商資料表 ON 物料資料庫.供應商編號 = 供應商資料表.編號 ON
  288. 銷售明細表.料號 = 物料資料庫.料號 LEFT OUTER JOIN
  289. 銷售控制表 ON 銷售明細表.單號 = 銷售控制表.單號
  290. WHERE (銷售控制表.單號 Not Like '4%') AND (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售明細表.料號 NOT LIKE '1001%') AND (銷售明細表.成本 > 0) AND
  291. (銷售明細表.售價 > 0) AND " & SQL2 & "
  292. GROUP BY 供應商資料表.簡稱, 物料資料庫.供應商編號, 物料資料庫.進度條用空白) AS AAA ON
  293. 系統比例用空白圖片.選擇 = AAA.進度條用空白
  294. ORDER BY AAA.成本預估 DESC"
  295. CmdSet_For_DGV()
  296. End Sub
  297. '---------------------貨款試算表-----------------------------------------------------------------------------------------------------------------
  298. Friend Sub SQL_貨款試算表_廠商彙總()
  299. If 貨款試算表.依開單日期_ch.Checked = False Then
  300. SQL2 = "(交貨日期 BETWEEN '" & Format(貨款試算表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(貨款試算表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  301. ElseIf 貨款試算表.依開單日期_ch.Checked = True Then
  302. SQL2 = "(開單日期 BETWEEN '" & Format(貨款試算表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(貨款試算表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  303. End If
  304. ConnOpen()
  305. SQL1 = "SELECT AAA.項次, AAA.編號, AAA.供應商, AAA.預估進貨, 系統比例用空白圖片.圖片 AS 成本佔比
  306. FROM 系統比例用空白圖片 RIGHT OUTER JOIN
  307. (SELECT 物料資料庫.供應商編號 AS 項次, 物料資料庫.供應商編號 AS 編號, 供應商資料表.簡稱 AS 供應商,
  308. SUM(銷售明細表.數量 * 銷售明細表.成本) AS 預估進貨, 物料資料庫.進度條用空白
  309. FROM 銷售明細表 LEFT OUTER JOIN
  310. 物料資料庫 INNER JOIN
  311. 供應商資料表 ON 物料資料庫.供應商編號 = 供應商資料表.編號 ON
  312. 銷售明細表.料號 = 物料資料庫.料號 LEFT OUTER JOIN
  313. 銷售控制表 ON 銷售明細表.單號 = 銷售控制表.單號
  314. WHERE (銷售控制表.單號 Not Like '4%') AND (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售明細表.料號 NOT LIKE '1001%') AND (銷售明細表.成本 > 0) AND
  315. (銷售明細表.售價 > 0) AND (銷售明細表.倉儲狀態 LIKE 'N03') AND " & SQL2 & "
  316. GROUP BY 供應商資料表.簡稱, 物料資料庫.供應商編號, 物料資料庫.進度條用空白) AS AAA ON
  317. 系統比例用空白圖片.選擇 = AAA.進度條用空白
  318. ORDER BY AAA.預估進貨 DESC"
  319. CmdSet_For_DGV()
  320. End Sub
  321. Friend Sub SQL_貨款試算表_物料明細()
  322. If 貨款試算表.依開單日期_ch.Checked = False Then
  323. SQL2 = "(銷售控制表.交貨日期 BETWEEN '" & Format(貨款試算表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(貨款試算表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  324. ElseIf 貨款試算表.依開單日期_ch.Checked = True Then
  325. SQL2 = "(銷售控制表.開單日期 BETWEEN '" & Format(貨款試算表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(貨款試算表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  326. End If
  327. ConnOpen()
  328. SQL1 = "SELECT 銷售控制表.單號 AS 項次, 銷售控制表.單號, 銷售明細表.料號, 供應商資料表.簡稱 AS 供應商, 物料資料庫.品名, 倉儲分區控制表.倉名,
  329. 物料訂製狀態.訂製, 倉儲狀態.狀態, 銷售明細表.備註, 銷售明細表.數量, 銷售明細表.成本, 銷售明細表.售價 AS 單價, 銷售明細表.含稅, 銷售明細表.售價 AS 金額,
  330. 銷售明細表.狀態 AS 倉儲情況
  331. FROM 倉儲狀態 RIGHT OUTER JOIN
  332. 銷售明細表 ON 倉儲狀態.編碼 = 銷售明細表.物料狀態 LEFT OUTER JOIN
  333. 物料訂製狀態 ON 銷售明細表.訂製狀態 = 物料訂製狀態.編碼 LEFT OUTER JOIN
  334. 倉儲分區控制表 ON 銷售明細表.倉儲狀態 = 倉儲分區控制表.倉名編號 LEFT OUTER JOIN
  335. 物料資料庫 INNER JOIN
  336. 供應商資料表 ON 物料資料庫.供應商編號 = 供應商資料表.編號 ON
  337. 銷售明細表.料號 = 物料資料庫.料號 LEFT OUTER JOIN
  338. 銷售控制表 ON 銷售明細表.單號 = 銷售控制表.單號
  339. WHERE (銷售控制表.單號 NOT LIKE '4%') AND (銷售控制表.單號 LIKE '" & PA20 & "%')AND (銷售明細表.料號 LIKE '" & PA19 & "%') AND (銷售明細表.料號 NOT LIKE '1001%') AND
  340. (銷售明細表.成本 > 0) AND (銷售明細表.售價 > 0) AND (銷售明細表.倉儲狀態 LIKE 'N03') AND " & SQL2 & "
  341. ORDER BY 銷售控制表.單號 DESC"
  342. CmdSet_For_DGV()
  343. End Sub
  344. '---------------------應收帳款未收-----------------------------------------------------------------------------------------------------------------
  345. Friend Sub SQL_應收帳款未收_訂單控制表()
  346. ConnOpen()
  347. SQL1 = "SELECT 銷售控制表.流水號, 銷售控制表.單號, 客戶資料表.名稱, 銷售控制表.開單日期, 銷售控制表.交貨日期,
  348. 銷售控制表.含稅, 銷售控制表.單位主管, 銷售控制表.審核日期, 銷售收款事項_1.內容, 銷售收款事項_1.金額,
  349. 銷售控制表.送貨地點, 銷售控制表.運費, 銷售控制表.客戶編號, 客戶資料表.電話1, 客戶資料表.電話2,
  350. 客戶資料表.地址, 客戶資料表.公司名稱, 客戶資料表.統編, 銷售控制表.稅金, QQQ.收支單號, QQQ.轉財務
  351. FROM 銷售控制表 LEFT OUTER JOIN
  352. 客戶資料表 ON 銷售控制表.客戶編號 = 客戶資料表.舊編 LEFT OUTER JOIN
  353. (SELECT 單號, 收支單號, 轉財務
  354. FROM 銷售收款事項
  355. WHERE (收支單號 IS NOT NULL) OR (收支單號 NOT LIKE '')
  356. GROUP BY 單號, 收支單號, 轉財務) AS QQQ ON 銷售控制表.單號 = QQQ.單號 LEFT OUTER JOIN
  357. 銷售收款事項 AS 銷售收款事項_1 ON 銷售控制表.單號 = 銷售收款事項_1.單號
  358. WHERE (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售收款事項_1.內容 LIKE '未收餘額') AND (銷售收款事項_1.金額 > 0) AND (客戶資料表.名稱 LIKE N'%" & PA20 & "%' OR
  359. 客戶資料表.電話1 LIKE N'%" & PA20 & "%' OR 客戶資料表.電話2 LIKE N'%" & PA20 & "%' OR 客戶資料表.地址 LIKE N'%" & PA20 & "%' OR
  360. 客戶資料表.公司名稱 LIKE N'%" & PA20 & "%' OR 客戶資料表.統編 LIKE N'%" & PA20 & "%') " & SQL2 & "
  361. ORDER BY 銷售控制表.單號 DESC"
  362. CmdSet_For_DGV()
  363. End Sub
  364. Friend Sub SQL_應收帳款未收_查詢公帳控制表會計科目()
  365. ConnOpen()
  366. SQL1 = "SELECT 會計科目, 編號 FROM 會計科目 WHERE (LEFT(編號, 7) LIKE N'" & 應收帳款未收.ComboBox4.Text & "') AND (停用 = 0) AND (統制科目 = 0) ORDER BY 編號"
  367. CmdSet_For_dr()
  368. End Sub
  369. Friend Sub SQL_應收帳款未收_查詢最後一筆公帳控制表會計科目()
  370. ConnOpen()
  371. SQL1 = "SELECT 第一階, LEFT(編號, 4) AS 編號 FROM 會計科目 WHERE (停用 = 0) GROUP BY 第一階, LEFT(編號, 4) ORDER BY 編號"
  372. CmdSet_For_dr()
  373. End Sub
  374. Friend Sub SQL_應收帳款未收_查詢最左邊公帳控制表會計科目()
  375. ConnOpen()
  376. SQL1 = "SELECT LEFT(編號, 7) AS 編號, 第二階, 層級 FROM 會計科目 WHERE (LEFT(編號, 4) LIKE N'" & 應收帳款未收.會科碼1_ch.Text & "') AND (層級 NOT LIKE '3') AND (停用 = 0)
  377. GROUP BY LEFT(編號, 7), 第二階, 層級 ORDER BY 編號"
  378. CmdSet_For_dr()
  379. End Sub
  380. Friend Sub SQL_應收帳款未收_轉財務Null為False()
  381. ConnOpen()
  382. SQL1 = "UPDATE 銷售收款事項 SET 轉財務 = 0 WHERE (轉財務 Is NULL)"
  383. CmdSet_For_dr()
  384. End Sub
  385. Friend Sub SQL_應收帳款未收_新增公帳流水帳資料()
  386. ConnOpen()
  387. SQL1 = "INSERT INTO 公帳流水帳 (流水號, 銀行, 日期, 類別, 收入, 支出, 明細, 人員, 支付單號, 項次, 會計, 出納, 現金, 備用金, 公帳, 支票,
  388. 出納日期, 零用金, 支票數, 匯率, 備註, 含稅) " &
  389. "VALUES (N'" & PA19 & "', N'" & 應收帳款未收.幣別_cb.Text & "', N'" & DTP & "', N'" & 應收帳款未收.ComboBox6.Text & "', N'0', N'0', N'', N'" & gUserName & "', N'" & 應收帳款未收.營運成本收支單號_tb.Text & "', N'" & PA15 &
  390. "', N'0', N'0', N'0', N'0', N'0', N'0', N'" & DTP & "', N'0', N'0', N'" & PA16 & "', N'' ,'0')"
  391. CmdSet_For_dr()
  392. End Sub
  393. Friend Sub SQL_應收帳款未收_查詢最後一筆公帳支付單號()
  394. ConnOpen()
  395. SQL1 = "SELECT TOP(1) 項次 FROM 公帳流水帳 WHERE 支付單號 LIKE '" & 應收帳款未收.營運成本收支單號_tb.Text & "' ORDER BY 項次 DESC"
  396. CmdSet_For_dr()
  397. End Sub
  398. Friend Sub SQL_應收帳款未收_轉財務()
  399. ConnOpen()
  400. SQL1 = "UPDATE 銷售收款事項 SET 收支單號 = N'" & PA & "', 轉財務 = 1 WHERE (資料流水號 LIKE '" & PA12 & "')"
  401. CmdSet_For_dr()
  402. End Sub
  403. '---------------------應收帳款已收-----------------------------------------------------------------------------------------------------------------
  404. Friend Sub SQL_應收帳款已收_訂單控制表()
  405. ConnOpen()
  406. SQL1 = "SELECT 銷售控制表.流水號, 銷售控制表.單號, 客戶資料表.名稱, 銷售控制表.開單日期, 銷售控制表.交貨日期,
  407. 銷售控制表.含稅, 銷售控制表.單位主管, 銷售控制表.審核日期, 銷售收款事項_1.內容, 銷售收款事項_1.金額,
  408. 銷售控制表.送貨地點, 銷售控制表.運費, 銷售控制表.客戶編號, 客戶資料表.電話1, 客戶資料表.電話2,
  409. 客戶資料表.地址, 客戶資料表.公司名稱, 客戶資料表.統編, 銷售控制表.稅金, QQQ.收支單號, QQQ.轉財務
  410. FROM 銷售控制表 LEFT OUTER JOIN
  411. 客戶資料表 ON 銷售控制表.客戶編號 = 客戶資料表.舊編 LEFT OUTER JOIN
  412. (SELECT 單號, 收支單號, 轉財務
  413. FROM 銷售收款事項
  414. WHERE (收支單號 IS NOT NULL) OR (收支單號 NOT LIKE '')
  415. GROUP BY 單號, 收支單號, 轉財務) AS QQQ ON 銷售控制表.單號 = QQQ.單號 LEFT OUTER JOIN
  416. 銷售收款事項 AS 銷售收款事項_1 ON 銷售控制表.單號 = 銷售收款事項_1.單號
  417. WHERE (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售收款事項_1.內容 LIKE '未收餘額') AND (銷售收款事項_1.金額 = 0) AND (客戶資料表.名稱 LIKE N'%" & PA20 & "%' OR
  418. 客戶資料表.電話1 LIKE N'%" & PA20 & "%' OR 客戶資料表.電話2 LIKE N'%" & PA20 & "%' OR 客戶資料表.地址 LIKE N'%" & PA20 & "%' OR
  419. 客戶資料表.公司名稱 LIKE N'%" & PA20 & "%' OR 客戶資料表.統編 LIKE N'%" & PA20 & "%') " & SQL2 & "
  420. ORDER BY 銷售控制表.單號 DESC"
  421. CmdSet_For_DGV()
  422. End Sub
  423. Friend Sub SQL_應收帳款已收_轉財務Null為False()
  424. ConnOpen()
  425. SQL1 = "UPDATE 銷售收款事項 SET 轉財務 = 0 WHERE (轉財務 Is NULL)"
  426. CmdSet_For_dr()
  427. End Sub
  428. Friend Sub SQL_應收帳款已收_轉財務()
  429. ConnOpen()
  430. SQL1 = "UPDATE 銷售收款事項 SET 收支單號 = N'" & PA & "', 轉財務 = 1 WHERE (資料流水號 LIKE '" & PA12 & "')"
  431. CmdSet_For_dr()
  432. End Sub
  433. Friend Sub SQL_應收帳款已收_查詢最左邊公帳控制表會計科目()
  434. ConnOpen()
  435. SQL1 = "SELECT LEFT(編號, 7) AS 編號, 第二階, 層級 FROM 會計科目 WHERE (LEFT(編號, 4) LIKE N'" & 應收帳款已收.會科碼1_ch.Text & "') AND (層級 NOT LIKE '3') AND (停用 = 0)
  436. GROUP BY LEFT(編號, 7), 第二階, 層級 ORDER BY 編號"
  437. CmdSet_For_dr()
  438. End Sub
  439. Friend Sub SQL_應收帳款已收_查詢最後一筆公帳控制表會計科目()
  440. ConnOpen()
  441. SQL1 = "SELECT 第一階, LEFT(編號, 4) AS 編號 FROM 會計科目 WHERE (停用 = 0) GROUP BY 第一階, LEFT(編號, 4) ORDER BY 編號"
  442. CmdSet_For_dr()
  443. End Sub
  444. Friend Sub SQL_應收帳款已收_查詢公帳控制表會計科目()
  445. ConnOpen()
  446. SQL1 = "SELECT 會計科目, 編號 FROM 會計科目 WHERE (LEFT(編號, 7) LIKE N'" & 應收帳款已收.ComboBox4.Text & "') AND (停用 = 0) AND (統制科目 = 0) ORDER BY 編號"
  447. CmdSet_For_dr()
  448. End Sub
  449. End Module