Aftersales_Rechnungen_neu.sql 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419
  1. SELECT "Invoice Type",
  2. "Type_Invoice_Types",
  3. "Description_Invoice_Types",
  4. "Invoice Number_2",
  5. "Subsidiary",
  6. "Paying Customer",
  7. "Order Customer",
  8. "Invoice Date",
  9. "Service Date",
  10. "Is Canceled",
  11. "Cancelation Number",
  12. "Cancelation Date",
  13. "Cancelation Employee",
  14. "Is Own Vehicle",
  15. "Is Credit",
  16. "Credit Invoice Type",
  17. "Credit Invoice Number",
  18. "Odometer Reading",
  19. "Creating Employee",
  20. "Internal Cost Account",
  21. "Vehicle Number",
  22. "Full Vat Basevalue",
  23. "Full Vat Percentage",
  24. "Full Vat Value",
  25. "Reduced Vat Basevalue",
  26. "Reduced Vat Percentage",
  27. "Reduced Vat Value",
  28. "Used Part Vat Value",
  29. "Job Amount Net",
  30. "Job Amount Gross",
  31. "Job Rebate",
  32. "Part Amount Net",
  33. "Part Amount Gross",
  34. "Part Rebate",
  35. "Part Disposal",
  36. "Total Gross",
  37. "Total Net",
  38. "Inv_Type_Invoice_Number",
  39. "Accounting Date",
  40. "Document Type",
  41. "Document Number",
  42. "Position In Document",
  43. "Customer Number",
  44. "Nominal Account Number",
  45. "Is Balanced",
  46. "Clearing Number",
  47. "Document Date",
  48. "Posted Value",
  49. "Debit Or Credit",
  50. "Posted Count",
  51. "Branch Number",
  52. "Customer Contra Account",
  53. "Nominal Contra Account",
  54. "Contra Account Text",
  55. "Account Form Page Number",
  56. "Account Form Page Line",
  57. "Serial Number Each Month",
  58. "Employee Number",
  59. "Invoice Date_falsch",
  60. "Invoice Number",
  61. "Dunning Level",
  62. "Last Dunning Date",
  63. "Journal Page",
  64. "Journal Line",
  65. "Cash Discount",
  66. "Term Of Payment",
  67. "Posting Text",
  68. "Vehicle Reference",
  69. "Vat Id Number",
  70. "Account Statement Number",
  71. "Account Statement Page",
  72. "Vat Key",
  73. "Days For Cash Discount",
  74. "Day Of Actual Accounting",
  75. "Skr51 Branch",
  76. "Skr51 Make",
  77. "Skr51 Cost Center",
  78. "Skr51 Sales Channel",
  79. "Skr51 Cost Unit",
  80. "Previously Used Account No",
  81. "Free Form Accounting Text",
  82. "Free Form Document Text",
  83. "Hauptbetrieb",
  84. "Standort",
  85. "Accounting Date" AS "Invoice Date_accounting",
  86. "Employee Number_Employees",
  87. "Name_Employees",
  88. "Mechanic Number_Employees",
  89. "Salesman Number_Employees",
  90. "Is Business Executive_Employees",
  91. "Is Master Craftsman_Employees",
  92. "Serviceberater_Rg_Steller",
  93. "Customer Number_Customers_Suppliers",
  94. "First Name_Customers_Suppliers",
  95. "Family Name_Customers_Suppliers",
  96. "Kunde",
  97. "Betrag",
  98. "Kostenstelle",
  99. "Skr51 Make" AS "Marke",
  100. "Kundenart",
  101. "KST_1_Stelle",
  102. "Umsatzart",
  103. "Auftragsart",
  104. '' AS "Gesch�ftsart",
  105. "Make Number",
  106. "Free Form Make Text",
  107. "Model Code",
  108. "Free Form Model Text",
  109. "Description_Makes",
  110. "Description_Models",
  111. "Description_Makes" AS "Fabrikat",
  112. "Description_Models" AS "Model_Detail",
  113. "Model",
  114. (0) AS "Umsatz Lohn",
  115. (0) AS "Umsatz FL",
  116. (0) AS "Einsatz FL",
  117. (0) AS "Umsatz Teile",
  118. (0) AS "Einsatz Teile",
  119. (0) AS "Umsatz MW",
  120. (0) AS "Einsatz MW",
  121. (0) AS "Umsatz Sonst.",
  122. (0) AS "Einsatz Sonst.",
  123. 1 AS "DG_1",
  124. COUNT("Invoice Type") OVER (PARTITION BY "Order Number") AS "DG_2",
  125. 1 / (COUNT("Invoice Type") OVER (PARTITION BY "Order Number")) AS "DG",
  126. "Fahrzeug",
  127. "Order Number",
  128. "Invoice_Date_Uhrzeit",
  129. "Order Number_Rg_Ausg",
  130. '' AS "Konto Nr",
  131. '' AS "Konto Bezeichnung",
  132. '' AS "Ebene1",
  133. '' AS "Ebene2",
  134. '' AS "Ebene3",
  135. '' AS "Ebene4",
  136. "Serviceberater_order_pos",
  137. "Serviceberater"
  138. FROM (
  139. SELECT (
  140. CASE
  141. WHEN (
  142. (
  143. CASE
  144. WHEN (T1."invoice_type" = 5)
  145. THEN (((left((((T5."employee_number"))), 4)) + ' - ' + T5."name"))
  146. ELSE (T10."Serviceberater")
  147. END
  148. ) IS NOT NULL
  149. )
  150. THEN (
  151. ((left((((T1."invoice_type"))), 1)) + (left((((T1."invoice_number"))), 9))) + ' - ' + (
  152. CASE
  153. WHEN (T1."invoice_type" = 5)
  154. THEN (((left((((T5."employee_number"))), 4)) + ' - ' + T5."name"))
  155. ELSE (T10."Serviceberater")
  156. END
  157. ) + ' - ' + (
  158. CASE
  159. WHEN (T4."first_name" IS NULL)
  160. THEN ((left((((T4."customer_number"))), 7)) + ' - ' + T4."family_name")
  161. ELSE ((left((((T4."customer_number"))), 7)) + ' - ' + T4."first_name" + ' ' + T4."family_name")
  162. END
  163. )
  164. )
  165. ELSE (
  166. ((left((((T1."invoice_type"))), 1)) + (left((((T1."invoice_number"))), 9))) + ' - ' + (
  167. CASE
  168. WHEN (T4."first_name" IS NULL)
  169. THEN ((left((((T4."customer_number"))), 7)) + ' - ' + T4."family_name")
  170. ELSE ((left((((T4."customer_number"))), 7)) + ' - ' + T4."first_name" + ' ' + T4."family_name")
  171. END
  172. )
  173. )
  174. END
  175. ) AS "Order Number",
  176. CASE
  177. WHEN (T1."invoice_type" = 5)
  178. THEN (((left((((T5."employee_number"))), 4)) + ' - ' + T5."name"))
  179. ELSE (T10."Serviceberater")
  180. END AS "Serviceberater",
  181. T10."Serviceberater" AS "Serviceberater_order_pos",
  182. CASE
  183. WHEN ((- 1 * datediff(day, (getdate()), ((convert(DATETIME, T1."invoice_date"))))) <= 4)
  184. THEN (
  185. (
  186. CASE
  187. WHEN (
  188. (
  189. CASE
  190. WHEN (T1."invoice_type" = 5)
  191. THEN (((left((((T5."employee_number"))), 4)) + ' - ' + T5."name"))
  192. ELSE (T10."Serviceberater")
  193. END
  194. ) IS NOT NULL
  195. )
  196. THEN (
  197. ((left((((T1."invoice_type"))), 1)) + (left((((T1."invoice_number"))), 9))) + ' - ' + (
  198. CASE
  199. WHEN (T1."invoice_type" = 5)
  200. THEN (((left((((T5."employee_number"))), 4)) + ' - ' + T5."name"))
  201. ELSE (T10."Serviceberater")
  202. END
  203. ) + ' - ' + (
  204. CASE
  205. WHEN (T4."first_name" IS NULL)
  206. THEN ((left((((T4."customer_number"))), 7)) + ' - ' + T4."family_name")
  207. ELSE ((left((((T4."customer_number"))), 7)) + ' - ' + T4."first_name" + ' ' + T4."family_name")
  208. END
  209. )
  210. )
  211. ELSE (
  212. ((left((((T1."invoice_type"))), 1)) + (left((((T1."invoice_number"))), 9))) + ' - ' + (
  213. CASE
  214. WHEN (T4."first_name" IS NULL)
  215. THEN ((left((((T4."customer_number"))), 7)) + ' - ' + T4."family_name")
  216. ELSE ((left((((T4."customer_number"))), 7)) + ' - ' + T4."first_name" + ' ' + T4."family_name")
  217. END
  218. )
  219. )
  220. END
  221. )
  222. )
  223. ELSE NULL
  224. END AS "Order Number_Rg_Ausg",
  225. (convert(DATETIME, T1."invoice_date")) AS "Invoice_Date_Uhrzeit",
  226. (left((left((((T1."vehicle_number"))), 5)) + ' - ' + T9."description", 100)) AS "Fahrzeug",
  227. (left((ucase(T9."description")), 3)) AS "Model",
  228. T9."description" AS "Description_Models",
  229. T8."description" AS "Description_Makes",
  230. T7."free_form_model_text" AS "Free Form Model Text",
  231. T7."model_code" AS "Model Code",
  232. T7."free_form_make_text" AS "Free Form Make Text",
  233. T7."make_number" AS "Make Number",
  234. CASE
  235. WHEN (T1."invoice_type" = 5)
  236. THEN ('Teile')
  237. ELSE ('Service')
  238. END AS "Auftragsart",
  239. CASE
  240. WHEN (T1."invoice_type" = 6)
  241. THEN ('GWL')
  242. WHEN (
  243. (T1."invoice_type" = 4)
  244. OR (T4."customer_number" IN (1000000, 1000001, 1000002, 1000003, 1000010))
  245. )
  246. THEN ('intern')
  247. ELSE ('extern')
  248. END AS "Umsatzart",
  249. (left(((rtrim((((T3."skr51_cost_center"))))) + ' - ' + T6."skr51_cost_center_name"), 1)) AS "KST_1_Stelle",
  250. (rtrim((((T3."skr51_sales_channel"))))) + ' - ' + T6."skr51_sales_channel_name" AS "Kundenart",
  251. T3."skr51_make" AS "Skr51 Make",
  252. (rtrim((((T3."skr51_cost_center"))))) + ' - ' + T6."skr51_cost_center_name" AS "Kostenstelle",
  253. CASE
  254. WHEN (T3."debit_or_credit" = 'H')
  255. THEN (((convert(FLOAT, T3."posted_value"))) / 100 * - 1)
  256. ELSE (((convert(FLOAT, T3."posted_value"))) / 100)
  257. END AS "Betrag",
  258. CASE
  259. WHEN (T4."first_name" IS NULL)
  260. THEN ((left((((T4."customer_number"))), 7)) + ' - ' + T4."family_name")
  261. ELSE ((left((((T4."customer_number"))), 7)) + ' - ' + T4."first_name" + ' ' + T4."family_name")
  262. END AS "Kunde",
  263. T4."family_name" AS "Family Name_Customers_Suppliers",
  264. T4."first_name" AS "First Name_Customers_Suppliers",
  265. T4."customer_number" AS "Customer Number_Customers_Suppliers",
  266. (left((((T5."employee_number"))), 4)) + ' - ' + T5."name" AS "Serviceberater_Rg_Steller",
  267. T5."is_master_craftsman" AS "Is Master Craftsman_Employees",
  268. T5."is_business_executive" AS "Is Business Executive_Employees",
  269. T5."salesman_number" AS "Salesman Number_Employees",
  270. T5."mechanic_number" AS "Mechanic Number_Employees",
  271. T5."name" AS "Name_Employees",
  272. T5."employee_number" AS "Employee Number_Employees",
  273. T3."accounting_date" AS "Accounting Date",
  274. (((T3."branch_number"))) AS "Standort",
  275. T3."subsidiary_to_company_ref" AS "Hauptbetrieb",
  276. CASE
  277. WHEN (T3."skr51_cost_unit" BETWEEN 1 AND 49)
  278. THEN ('Neuwagen')
  279. WHEN (T3."skr51_cost_unit" BETWEEN 50 AND 59)
  280. THEN ('Gebrauchtwagen')
  281. WHEN (T3."skr51_cost_unit" BETWEEN 60 AND 69)
  282. THEN ('Teile & Zubeh�r')
  283. WHEN (T3."skr51_cost_unit" BETWEEN 70 AND 79)
  284. THEN ('Service')
  285. WHEN (T3."skr51_cost_unit" = 0)
  286. THEN ('Ohne Kostentr�ger')
  287. ELSE NULL
  288. END AS "Free Form Document Text",
  289. T4."zip_code" AS "Free Form Accounting Text",
  290. T3."previously_used_account_no" AS "Previously Used Account No",
  291. T3."skr51_cost_unit" AS "Skr51 Cost Unit",
  292. T3."skr51_sales_channel" AS "Skr51 Sales Channel",
  293. T3."skr51_cost_center" AS "Skr51 Cost Center",
  294. T3."skr51_branch" AS "Skr51 Branch",
  295. T3."day_of_actual_accounting" AS "Day Of Actual Accounting",
  296. T3."days_for_cash_discount" AS "Days For Cash Discount",
  297. T3."vat_key" AS "Vat Key",
  298. T3."account_statement_page" AS "Account Statement Page",
  299. T3."account_statement_number" AS "Account Statement Number",
  300. T3."vat_id_number" AS "Vat Id Number",
  301. T3."vehicle_reference" AS "Vehicle Reference",
  302. T3."posting_text" AS "Posting Text",
  303. T3."term_of_payment" AS "Term Of Payment",
  304. T3."cash_discount" AS "Cash Discount",
  305. T3."journal_line" AS "Journal Line",
  306. T3."journal_page" AS "Journal Page",
  307. T3."last_dunning_date" AS "Last Dunning Date",
  308. T3."dunning_level" AS "Dunning Level",
  309. T3."invoice_number" AS "Invoice Number",
  310. T3."invoice_date" AS "Invoice Date_falsch",
  311. T3."employee_number" AS "Employee Number",
  312. T3."serial_number_each_month" AS "Serial Number Each Month",
  313. T3."account_form_page_line" AS "Account Form Page Line",
  314. T3."account_form_page_number" AS "Account Form Page Number",
  315. CASE
  316. WHEN (T3."nominal_account_number" = 5701)
  317. THEN ((rtrim((((T3."nominal_account_number"))))) + '_' + (rtrim((((T3."skr51_cost_center"))))))
  318. ELSE ((rtrim((((T3."nominal_account_number"))))))
  319. END AS "Contra Account Text",
  320. T3."nominal_contra_account" AS "Nominal Contra Account",
  321. T3."customer_contra_account" AS "Customer Contra Account",
  322. T3."branch_number" AS "Branch Number",
  323. T3."posted_count" AS "Posted Count",
  324. T3."debit_or_credit" AS "Debit Or Credit",
  325. (convert(FLOAT, T3."posted_value")) AS "Posted Value",
  326. T3."document_date" AS "Document Date",
  327. T3."clearing_number" AS "Clearing Number",
  328. T3."is_balanced" AS "Is Balanced",
  329. T3."nominal_account_number" AS "Nominal Account Number",
  330. T3."customer_number" AS "Customer Number",
  331. T3."position_in_document" AS "Position In Document",
  332. T3."document_number" AS "Document Number",
  333. T3."document_type" AS "Document Type",
  334. (left((((T1."invoice_type"))), 1)) + (left((((T1."invoice_number"))), 9)) AS "Inv_Type_Invoice_Number",
  335. T1."total_net" AS "Total Net",
  336. T1."total_gross" AS "Total Gross",
  337. T1."part_disposal" AS "Part Disposal",
  338. T1."part_rebate" AS "Part Rebate",
  339. T1."part_amount_gross" AS "Part Amount Gross",
  340. T1."part_amount_net" AS "Part Amount Net",
  341. T1."job_rebate" AS "Job Rebate",
  342. T1."job_amount_gross" AS "Job Amount Gross",
  343. T1."job_amount_net" AS "Job Amount Net",
  344. T1."used_part_vat_value" AS "Used Part Vat Value",
  345. T1."reduced_vat_value" AS "Reduced Vat Value",
  346. T1."reduced_vat_percentage" AS "Reduced Vat Percentage",
  347. T1."reduced_vat_basevalue" AS "Reduced Vat Basevalue",
  348. T1."full_vat_value" AS "Full Vat Value",
  349. T1."full_vat_percentage" AS "Full Vat Percentage",
  350. T1."full_vat_basevalue" AS "Full Vat Basevalue",
  351. T1."vehicle_number" AS "Vehicle Number",
  352. T1."internal_cost_account" AS "Internal Cost Account",
  353. T1."creating_employee" AS "Creating Employee",
  354. T1."odometer_reading" AS "Odometer Reading",
  355. T1."credit_invoice_number" AS "Credit Invoice Number",
  356. T1."credit_invoice_type" AS "Credit Invoice Type",
  357. T1."is_credit" AS "Is Credit",
  358. T1."is_own_vehicle" AS "Is Own Vehicle",
  359. T1."cancelation_employee" AS "Cancelation Employee",
  360. T1."cancelation_date" AS "Cancelation Date",
  361. T1."cancelation_number" AS "Cancelation Number",
  362. T1."is_canceled" AS "Is Canceled",
  363. T1."service_date" AS "Service Date",
  364. T1."invoice_date" AS "Invoice Date",
  365. T1."order_customer" AS "Order Customer",
  366. T1."paying_customer" AS "Paying Customer",
  367. T1."subsidiary" AS "Subsidiary",
  368. T1."invoice_number" AS "Invoice Number_2",
  369. T2."description" AS "Description_Invoice_Types",
  370. T2."type" AS "Type_Invoice_Types",
  371. T1."invoice_type" AS "Invoice Type"
  372. FROM (
  373. (
  374. (
  375. (
  376. (
  377. (
  378. (
  379. (
  380. (
  381. "dbo"."invoices" T1 LEFT JOIN "dbo"."invoice_types" T2 ON T2."type" = T1."invoice_type"
  382. ) LEFT JOIN "dbo"."journal_accountings" T3 ON T3."invoice_number" = T1."invtype_invnr"
  383. ) LEFT JOIN "dbo"."customers_suppliers" T4 ON T4."customer_number" = T1."paying_customer"
  384. ) LEFT JOIN "dbo"."employees" T5 ON T1."creating_employee" = T5."employee_number"
  385. ) LEFT JOIN "dbo"."accounts_characteristics" T6 ON (
  386. (
  387. (
  388. (
  389. (T6."skr51_branch" = T3."skr51_branch")
  390. AND (T6."skr51_make" = T3."skr51_make")
  391. )
  392. AND (T6."skr51_cost_center" = T3."skr51_cost_center")
  393. )
  394. AND (T6."skr51_sales_channel" = T3."skr51_sales_channel")
  395. )
  396. AND (T6."skr51_cost_unit" = T3."skr51_cost_unit")
  397. )
  398. AND (T6."subsidiary_to_company_ref" = T3."subsidiary_to_company_ref")
  399. ) LEFT JOIN "dbo"."vehicles" T7 ON T1."vehicle_number" = T7."internal_number"
  400. ) LEFT JOIN "dbo"."makes" T8 ON T7."make_number" = T8."make_number"
  401. ) LEFT JOIN "dbo"."models" T9 ON (T7."make_number" = T9."make_number")
  402. AND (T7."model_code" = T9."model_code")
  403. ) LEFT JOIN "ims"."Serviceberater_Rechnung" T10 ON T1."invtype_invnr" = T10."invtype_invnr"
  404. )
  405. WHERE (
  406. (
  407. (
  408. (
  409. (T1."invoice_type" BETWEEN 2 AND 6)
  410. AND ((left((((T3."nominal_account_number"))), 1)) IN ('4', '5', '7', '8'))
  411. )
  412. AND (T1."invoice_date" >= convert(DATE, '2019-01-01'))
  413. )
  414. AND (T1."is_canceled" <> 1)
  415. )
  416. AND (((len((rtrim((((T3."nominal_account_number"))))) + 'Z') - 1)) = 4)
  417. )
  418. -- order by "Order Number" asc,"Document Number" asc,"Position In Document" asc,"Inv_Type_Invoice_Number" asc
  419. ) D1