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

SQL_業務系統管理.vb 19KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219
  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 & "')"
  37. CmdSet_For_dr()
  38. End Sub
  39. Friend Sub SQL_銷售收款事項_新增()
  40. ConnOpen()
  41. SQL1 = "INSERT INTO 銷售收款事項 (資料流水號, 單號, 項次, 內容, 金額) VALUES (N'" & PA1 & "', '" & PA & "', N'0', N'未收餘額', N'0')"
  42. CmdSet_For_dr()
  43. End Sub
  44. Friend Sub SQL_銷售控制表()
  45. ConnOpen()
  46. SQL1 = "SELECT 流水號, 單號, 開單日期, 客戶編號, 交貨日期, 含稅, 單位主管, 審核日期, 業務人員, 送貨地點, 運費
  47. FROM 銷售控制表 WHERE 單號 LIKE '" & PA19 & "%' AND 單位主管 LIKE '' ORDER BY 單號 DESC"
  48. CmdSet_For_DGV()
  49. End Sub
  50. '---------------------銷售單審核-----------------------------------------------------------------------------------------------------------------
  51. Friend Sub SQL_銷售控制表_審核()
  52. ConnOpen()
  53. SQL1 = "SELECT 流水號, 單號, 開單日期, 客戶編號, 交貨日期, 含稅, 單位主管, 審核日期, 業務人員, 送貨地點, 運費
  54. FROM 銷售控制表 WHERE 單號 LIKE '" & PA19 & "%' AND 客戶編號 NOT LIKE '' AND 單位主管 LIKE '' ORDER BY 單號 DESC"
  55. CmdSet_For_DGV()
  56. End Sub
  57. Friend Sub SQL_銷售控制表_審核確認()
  58. ConnOpen()
  59. SQL1 = "UPDATE 銷售控制表 SET 單位主管 = N'" & PA & "', 審核日期 = N'" & DTP & "' WHERE 單號 LIKE '" & PA1 & "%'"
  60. CmdSet_For_dr()
  61. End Sub
  62. Friend Sub SQL_銷售單審核_連帶作廢倉儲明細表()
  63. ConnOpen()
  64. SQL1 = "UPDATE 倉儲明細表 SET 審核人 = N'" & PA10 & "', 審核日期 = N'" & DTP & "', 倉庫作業 = N'" & PA9 & "', 作業日期 = N'" & DTP2 & "' WHERE (採購單號 LIKE N'" & PA11 & "')"
  65. CmdSet_For_dr()
  66. End Sub
  67. '---------------------訂單控制表-----------------------------------------------------------------------------------------------------------------
  68. Friend Sub SQL_銷售控制表_訂單控制表()
  69. ConnOpen()
  70. SQL1 = "SELECT 銷售控制表.流水號, 銷售控制表.單號, 客戶資料表.名稱, 銷售控制表.開單日期, 銷售控制表.交貨日期,
  71. 銷售控制表.含稅, 銷售控制表.單位主管, 銷售控制表.審核日期, 銷售收款事項.內容, 銷售收款事項.金額,
  72. 銷售控制表.送貨地點, 銷售控制表.運費, 銷售控制表.客戶編號
  73. FROM 銷售控制表 INNER JOIN
  74. 客戶資料表 ON 銷售控制表.客戶編號 = 客戶資料表.舊編 LEFT OUTER JOIN
  75. 銷售收款事項 ON 銷售控制表.單號 = 銷售收款事項.單號
  76. WHERE (銷售控制表.單號 LIKE '" & PA19 & "%') AND (客戶資料表.名稱 LIKE N'%" & PA20 & "%') AND (銷售收款事項.內容 LIKE '未收餘額')
  77. ORDER BY 銷售控制表.單號 DESC"
  78. CmdSet_For_DGV()
  79. End Sub
  80. '---------------------銷售分析表-----------------------------------------------------------------------------------------------------------------
  81. Friend Sub SQL_銷售分析表_物料明細()
  82. If 銷售分析表.依開單日期_ch.Checked = False Then
  83. SQL2 = "(銷售控制表.交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  84. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  85. SQL2 = "(銷售控制表.開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  86. End If
  87. ConnOpen()
  88. SQL1 = "SELECT 銷售控制表.單號 AS 項次, 銷售控制表.單號, 銷售明細表.料號, 供應商資料表.簡稱 AS 供應商, 物料資料庫.品名, 倉儲分區控制表.倉名,
  89. 物料訂製狀態.訂製, 倉儲狀態.狀態, 銷售明細表.備註, 銷售明細表.數量, 銷售明細表.成本, 銷售明細表.售價 AS 單價, 銷售明細表.含稅, 銷售明細表.售價,
  90. 銷售明細表.狀態 AS 倉儲情況
  91. FROM 倉儲狀態 RIGHT OUTER JOIN
  92. 銷售明細表 ON 倉儲狀態.編碼 = 銷售明細表.物料狀態 LEFT OUTER JOIN
  93. 物料訂製狀態 ON 銷售明細表.訂製狀態 = 物料訂製狀態.編碼 LEFT OUTER JOIN
  94. 倉儲分區控制表 ON 銷售明細表.倉儲狀態 = 倉儲分區控制表.倉名編號 LEFT OUTER JOIN
  95. 物料資料庫 INNER JOIN
  96. 供應商資料表 ON 物料資料庫.供應商編號 = 供應商資料表.編號 ON
  97. 銷售明細表.料號 = 物料資料庫.料號 LEFT OUTER JOIN
  98. 銷售控制表 ON 銷售明細表.單號 = 銷售控制表.單號
  99. WHERE (銷售控制表.單號 NOT LIKE '4%') AND (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售明細表.料號 NOT LIKE '1%') AND (銷售明細表.成本 > 0) AND
  100. (銷售明細表.售價 > 0) AND " & SQL2 & "
  101. ORDER BY 銷售控制表.單號 DESC"
  102. CmdSet_For_DGV()
  103. End Sub
  104. Friend Sub SQL_銷售分析表_它項明細()
  105. If 銷售分析表.依開單日期_ch.Checked = False Then
  106. SQL2 = "(銷售控制表.交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  107. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  108. SQL2 = "(銷售控制表.開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  109. End If
  110. ConnOpen()
  111. SQL1 = "SELECT 銷售控制表.單號 AS 項次, 銷售控制表.單號, 銷售明細表.料號, 供應商資料表.簡稱 AS 供應商, 物料資料庫.品名, 倉儲分區控制表.倉名,
  112. 物料訂製狀態.訂製, 倉儲狀態.狀態, 銷售明細表.備註, 銷售明細表.數量, 銷售明細表.成本, 銷售明細表.售價 AS 單價, 銷售明細表.含稅, 銷售明細表.售價,
  113. 銷售明細表.狀態 AS 倉儲情況
  114. FROM 倉儲狀態 RIGHT OUTER JOIN
  115. 銷售明細表 ON 倉儲狀態.編碼 = 銷售明細表.物料狀態 LEFT OUTER JOIN
  116. 物料訂製狀態 ON 銷售明細表.訂製狀態 = 物料訂製狀態.編碼 LEFT OUTER JOIN
  117. 倉儲分區控制表 ON 銷售明細表.倉儲狀態 = 倉儲分區控制表.倉名編號 LEFT OUTER JOIN
  118. 物料資料庫 INNER JOIN
  119. 供應商資料表 ON 物料資料庫.供應商編號 = 供應商資料表.編號 ON
  120. 銷售明細表.料號 = 物料資料庫.料號 LEFT OUTER JOIN
  121. 銷售控制表 ON 銷售明細表.單號 = 銷售控制表.單號
  122. WHERE (銷售控制表.單號 NOT LIKE '4%') AND (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售明細表.料號 LIKE '1%') AND (銷售明細表.成本 > 0) AND " & SQL2 & "
  123. ORDER BY 銷售控制表.單號 DESC"
  124. CmdSet_For_DGV()
  125. End Sub
  126. Friend Sub SQL_銷售分析表_銷售備註()
  127. If 銷售分析表.依開單日期_ch.Checked = False Then
  128. SQL2 = "(銷售控制表.交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  129. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  130. SQL2 = "(銷售控制表.開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  131. End If
  132. ConnOpen()
  133. SQL1 = "SELECT 銷售控制表.單號 AS 項次, 銷售備註表.單號, 銷售備註表.備註, 銷售備註表.收入, 銷售備註表.支出
  134. FROM 銷售備註表 INNER JOIN 銷售控制表 ON 銷售備註表.單號 = 銷售控制表.單號
  135. WHERE (銷售控制表.單號 Not Like '4%') AND (銷售控制表.單號 LIKE '" & PA19 & "%') AND ((銷售備註表.收入 > 0) OR (銷售備註表.支出 > 0)) AND " & SQL2 & "
  136. ORDER BY 銷售控制表.單號 DESC"
  137. CmdSet_For_DGV()
  138. End Sub
  139. Friend Sub SQL_銷售分析表_運費()
  140. If 銷售分析表.依開單日期_ch.Checked = False Then
  141. SQL2 = "(交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  142. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  143. SQL2 = "(開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  144. End If
  145. ConnOpen()
  146. SQL1 = "SELECT 單號 AS 項次, 單號, 送貨地點, 運費 FROM 銷售控制表 WHERE (單號 Not Like '4%') AND (單號 LIKE '" & PA19 & "%') AND (運費 > 0) AND " & SQL2 & " ORDER BY 單號 DESC"
  147. CmdSet_For_DGV()
  148. End Sub
  149. Friend Sub SQL_銷售分析表_廠商彙總()
  150. If 銷售分析表.依開單日期_ch.Checked = False Then
  151. SQL2 = "(交貨日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  152. ElseIf 銷售分析表.依開單日期_ch.Checked = True Then
  153. SQL2 = "(開單日期 BETWEEN '" & Format(銷售分析表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(銷售分析表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  154. End If
  155. ConnOpen()
  156. SQL1 = "SELECT AAA.項次, AAA.編號, AAA.供應商, AAA.成本預估, 系統比例用空白圖片.圖片 AS 成本佔比
  157. FROM 系統比例用空白圖片 RIGHT OUTER JOIN
  158. (SELECT 物料資料庫.供應商編號 AS 項次, 物料資料庫.供應商編號 AS 編號, 供應商資料表.簡稱 AS 供應商,
  159. SUM(銷售明細表.數量 * 銷售明細表.成本) AS 成本預估, 物料資料庫.進度條用空白
  160. FROM 銷售明細表 LEFT OUTER JOIN
  161. 物料資料庫 INNER JOIN
  162. 供應商資料表 ON 物料資料庫.供應商編號 = 供應商資料表.編號 ON
  163. 銷售明細表.料號 = 物料資料庫.料號 LEFT OUTER JOIN
  164. 銷售控制表 ON 銷售明細表.單號 = 銷售控制表.單號
  165. WHERE (銷售控制表.單號 Not Like '4%') AND (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售明細表.料號 NOT LIKE '1%') AND (銷售明細表.成本 > 0) AND
  166. (銷售明細表.售價 > 0) AND " & SQL2 & "
  167. GROUP BY 供應商資料表.簡稱, 物料資料庫.供應商編號, 物料資料庫.進度條用空白) AS AAA ON
  168. 系統比例用空白圖片.選擇 = AAA.進度條用空白
  169. ORDER BY AAA.編號"
  170. CmdSet_For_DGV()
  171. End Sub
  172. '---------------------貨款試算表-----------------------------------------------------------------------------------------------------------------
  173. Friend Sub SQL_貨款試算表_廠商彙總()
  174. If 貨款試算表.依開單日期_ch.Checked = False Then
  175. SQL2 = "(交貨日期 BETWEEN '" & Format(貨款試算表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(貨款試算表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  176. ElseIf 貨款試算表.依開單日期_ch.Checked = True Then
  177. SQL2 = "(開單日期 BETWEEN '" & Format(貨款試算表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(貨款試算表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  178. End If
  179. ConnOpen()
  180. SQL1 = "SELECT AAA.項次, AAA.編號, AAA.供應商, AAA.預估進貨, 系統比例用空白圖片.圖片 AS 成本佔比
  181. FROM 系統比例用空白圖片 RIGHT OUTER JOIN
  182. (SELECT 物料資料庫.供應商編號 AS 項次, 物料資料庫.供應商編號 AS 編號, 供應商資料表.簡稱 AS 供應商,
  183. SUM(銷售明細表.數量 * 銷售明細表.成本) AS 預估進貨, 物料資料庫.進度條用空白
  184. FROM 銷售明細表 LEFT OUTER JOIN
  185. 物料資料庫 INNER JOIN
  186. 供應商資料表 ON 物料資料庫.供應商編號 = 供應商資料表.編號 ON
  187. 銷售明細表.料號 = 物料資料庫.料號 LEFT OUTER JOIN
  188. 銷售控制表 ON 銷售明細表.單號 = 銷售控制表.單號
  189. WHERE (銷售控制表.單號 Not Like '4%') AND (銷售控制表.單號 LIKE '" & PA19 & "%') AND (銷售明細表.料號 NOT LIKE '1%') AND (銷售明細表.成本 > 0) AND
  190. (銷售明細表.售價 > 0) AND (銷售明細表.倉儲狀態 LIKE 'N03') AND " & SQL2 & "
  191. GROUP BY 供應商資料表.簡稱, 物料資料庫.供應商編號, 物料資料庫.進度條用空白) AS AAA ON
  192. 系統比例用空白圖片.選擇 = AAA.進度條用空白
  193. ORDER BY AAA.編號"
  194. CmdSet_For_DGV()
  195. End Sub
  196. Friend Sub SQL_貨款試算表_物料明細()
  197. If 貨款試算表.依開單日期_ch.Checked = False Then
  198. SQL2 = "(銷售控制表.交貨日期 BETWEEN '" & Format(貨款試算表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(貨款試算表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  199. ElseIf 貨款試算表.依開單日期_ch.Checked = True Then
  200. SQL2 = "(銷售控制表.開單日期 BETWEEN '" & Format(貨款試算表.開始日期_dtp.Value, "yyyy/MM/dd") & "' AND '" & Format(貨款試算表.結束日期_dtp.Value, "yyyy/MM/dd") & "')"
  201. End If
  202. ConnOpen()
  203. SQL1 = "SELECT 銷售控制表.單號 AS 項次, 銷售控制表.單號, 銷售明細表.料號, 供應商資料表.簡稱 AS 供應商, 物料資料庫.品名, 倉儲分區控制表.倉名,
  204. 物料訂製狀態.訂製, 倉儲狀態.狀態, 銷售明細表.備註, 銷售明細表.數量, 銷售明細表.成本, 銷售明細表.售價 AS 單價, 銷售明細表.含稅, 銷售明細表.售價 AS 金額,
  205. 銷售明細表.狀態 AS 倉儲情況
  206. FROM 倉儲狀態 RIGHT OUTER JOIN
  207. 銷售明細表 ON 倉儲狀態.編碼 = 銷售明細表.物料狀態 LEFT OUTER JOIN
  208. 物料訂製狀態 ON 銷售明細表.訂製狀態 = 物料訂製狀態.編碼 LEFT OUTER JOIN
  209. 倉儲分區控制表 ON 銷售明細表.倉儲狀態 = 倉儲分區控制表.倉名編號 LEFT OUTER JOIN
  210. 物料資料庫 INNER JOIN
  211. 供應商資料表 ON 物料資料庫.供應商編號 = 供應商資料表.編號 ON
  212. 銷售明細表.料號 = 物料資料庫.料號 LEFT OUTER JOIN
  213. 銷售控制表 ON 銷售明細表.單號 = 銷售控制表.單號
  214. WHERE (銷售控制表.單號 NOT LIKE '4%') AND (銷售控制表.單號 LIKE '" & PA20 & "%')AND (銷售明細表.料號 LIKE '" & PA19 & "%') AND (銷售明細表.料號 NOT LIKE '1%') AND
  215. (銷售明細表.成本 > 0) AND (銷售明細表.售價 > 0) AND (銷售明細表.倉儲狀態 LIKE 'N03') AND " & SQL2 & "
  216. ORDER BY 銷售控制表.單號 DESC"
  217. CmdSet_For_DGV()
  218. End Sub
  219. End Module