Browse Source

Neue SQL-Exporte

Zumbuelt 1 year ago
parent
commit
a1242a90f0
58 changed files with 5962 additions and 2078 deletions
  1. 2 2
      System/LOCOSOFT/IQD/Belege/current_date_Prognose.sql
  2. 2 2
      System/LOCOSOFT/IQD/Belege/current_date_Prognose_operativ_VJ-2.sql
  3. 13 13
      System/LOCOSOFT/IQD/Belege/loc_belege.sql
  4. 14 14
      System/LOCOSOFT/IQD/Belege/loc_belege_bilanz.sql
  5. 253 253
      System/LOCOSOFT/IQD/NW/LOC_Belege_NW_GW_VK.sql
  6. 250 250
      System/LOCOSOFT/IQD/NW/LOC_Belege_NW_GW_VK_Stk_FIBU.sql
  7. 184 184
      System/LOCOSOFT/IQD/NW/NW_GW_BE_auf_NW_GW_Bestand_Cat.sql
  8. 77 107
      System/LOCOSOFT/IQD/OP/Kreditorenbewegungen.sql
  9. 2 2
      System/LOCOSOFT/IQD/OP/OP_aus_LOC_Belege_8520.sql
  10. 77 107
      System/LOCOSOFT/IQD/OP/OP_aus_LOC_Belege_Deb_Saldo.sql
  11. 151 151
      System/LOCOSOFT/IQD/OP/OP_aus_LOC_Belege_nur_8520.sql
  12. 77 107
      System/LOCOSOFT/IQD/OP/OP_aus_LOC_Belege_ohne_8520.sql
  13. 57 57
      System/LOCOSOFT/IQD/Serv_Teile/Aftersales_Rechnungen_ben_AW_final.sql
  14. 234 234
      System/LOCOSOFT/IQD/Serv_Teile/Aftersales_Rechnungen_neu.sql
  15. 8 8
      System/LOCOSOFT/IQD/Serv_Teile/Aftersales_Rechnungen_verk_AW_final.sql
  16. 2 2
      System/LOCOSOFT/IQD/Serv_Teile/Imvoice_No_Order_No.sql
  17. 1 1
      System/LOCOSOFT/IQD/Serv_Teile/Serviceberater_Rechnung.sql
  18. 87 87
      System/LOCOSOFT/IQD/Serv_Teile/offene_Auftraege_DG_Anz_Tage.sql
  19. 89 89
      System/LOCOSOFT/IQD/Serv_Teile/offene_Auftraege_Teile.sql
  20. 97 97
      System/LOCOSOFT/IQD/Serv_Teile/offene_Auftraege_Ums_ben_AW.sql
  21. 7 7
      System/LOCOSOFT/IQD/Serv_Teile/offene_Auftraege_Ums_ben_AW_fuer_Monteure.sql
  22. 65 65
      System/LOCOSOFT/IQD/Zeit/Zeit_Abwesenheit_neu.sql
  23. 100 100
      System/LOCOSOFT/IQD/Zeit/Zeit_Stempelungen_Pausen.sql
  24. 102 102
      System/LOCOSOFT/IQD/Zeit/Zeit_Stempelungen_Pausen_produktiv.sql
  25. 3 3
      System/LOCOSOFT/IQD/Zeit/Zeit_Stempelungen_neu.sql
  26. 32 32
      System/LOCOSOFT/IQD/Zeit/Zeit_ben_Std_LG.sql
  27. 2 2
      System/LOCOSOFT/IQD/Zeit/Zeit_verk_Std.sql
  28. 20 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/ims.Imvoice_No_Order_No.sql
  29. 121 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/ims.Kontenrahmen.sql
  30. 26 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/ims.OP_aus_LOC_Belege_8520.sql
  31. 24 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/ims.Serviceberater_Rechnung.sql
  32. 19 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/ims.ben_AW_Order_Number.sql
  33. 31 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/ims.offene_Auftraege_Ums_ben_AW_fuer_Monteure.sql
  34. 82 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.aftersales_rechnungen_ben_aw_final_imr.sql
  35. 268 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.aftersales_rechnungen_neu_imr.sql
  36. 45 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.aftersales_rechnungen_verk_aw_final_imr.sql
  37. 43 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.current_date_prognose_imr.sql
  38. 43 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.current_date_prognose_operativ_vj-2_imr.sql
  39. 121 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.kontenrahmen_gc_struct_skr_imr.sql
  40. 117 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.kreditorenbewegungen_imr.sql
  41. 83 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.loc_belege_bilanz_imr.sql
  42. 82 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.loc_belege_imr.sql
  43. 419 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.loc_belege_nw_gw_vk_imr.sql
  44. 558 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.loc_belege_nw_gw_vk_stk_fibu_imr.sql
  45. 265 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.nw_gw_be_auf_nw_gw_bestand_cat_imr.sql
  46. 106 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.offene_auftraege_dg_anz_tage_imr.sql
  47. 113 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.offene_auftraege_teile_imr.sql
  48. 117 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.offene_auftraege_ums_ben_aw_imr.sql
  49. 26 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.op_aus_loc_belege_8520_imr.sql
  50. 196 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.op_aus_loc_belege_deb_saldo_imr.sql
  51. 173 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.op_aus_loc_belege_nur_8520_imr.sql
  52. 196 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.op_aus_loc_belege_ohne_8520_imr.sql
  53. 130 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.zeit_abwesenheit_neu_imr.sql
  54. 88 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.zeit_ben_std_lg_imr.sql
  55. 48 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.zeit_stempelungen_neu_imr.sql
  56. 181 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.zeit_stempelungen_pausen_imr.sql
  57. 184 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.zeit_stempelungen_pausen_produktiv_imr.sql
  58. 49 0
      System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.zeit_verk_std_imr.sql

+ 2 - 2
System/LOCOSOFT/IQD/Belege/current_date_Prognose.sql

@@ -22,9 +22,9 @@ from
 	   T1."zaehler_mosa" as "Zaehler Mosa",
 	   T1."zaehler_mosa" as "Zaehler Mosa",
 	   T1."summe_mosa" as "Summe Mosa",
 	   T1."summe_mosa" as "Summe Mosa",
 	   T1."feiertage_id" as "Feiertage Id",
 	   T1."feiertage_id" as "Feiertage Id",
-	   (@CURRENT_DATE) - INTERVAL '001 00:00:00.000' as "Jahr",
+	   (getdate()) - 1 as "Jahr",
 	   CASE WHEN (T1."datum" BETWEEN convert(datetime, '2008-01-01 00:00:00.000') AND convert(datetime, '2008-12-31 00:00:00.000')) THEN (252) WHEN (T1."datum" BETWEEN convert(datetime, '2009-01-01 00:00:00.000') AND convert(datetime, '2009-12-31 00:00:00.000')) THEN (252) WHEN (T1."datum" BETWEEN convert(datetime, '2010-01-01 00:00:00.000') AND convert(datetime, '2010-12-31 00:00:00.000')) THEN (253) WHEN (T1."datum" BETWEEN convert(datetime, '2011-01-01 00:00:00.000') AND convert(datetime, '2011-12-31 00:00:00.000')) THEN (250) WHEN (T1."datum" BETWEEN convert(datetime, '2012-01-01 00:00:00.000') AND convert(datetime, '2012-12-31 00:00:00.000')) THEN (249) ELSE (250) END as "Gesamt Arbeitstage"
 	   CASE WHEN (T1."datum" BETWEEN convert(datetime, '2008-01-01 00:00:00.000') AND convert(datetime, '2008-12-31 00:00:00.000')) THEN (252) WHEN (T1."datum" BETWEEN convert(datetime, '2009-01-01 00:00:00.000') AND convert(datetime, '2009-12-31 00:00:00.000')) THEN (252) WHEN (T1."datum" BETWEEN convert(datetime, '2010-01-01 00:00:00.000') AND convert(datetime, '2010-12-31 00:00:00.000')) THEN (253) WHEN (T1."datum" BETWEEN convert(datetime, '2011-01-01 00:00:00.000') AND convert(datetime, '2011-12-31 00:00:00.000')) THEN (250) WHEN (T1."datum" BETWEEN convert(datetime, '2012-01-01 00:00:00.000') AND convert(datetime, '2012-12-31 00:00:00.000')) THEN (249) ELSE (250) END as "Gesamt Arbeitstage"
 from "Arbeitstage" T1
 from "Arbeitstage" T1
-where (((((T1."bundeslaender_id" = '2') and (T1."arbeitstag_mofr" = 1)) and ((od_year(T1."datum")) = (year(((@CURRENT_DATE) - INTERVAL '001 00:00:00.000'))))) and (T1."datum" <= ((@CURRENT_DATE) - INTERVAL '001 00:00:00.000'))) or ((((T1."bundeslaender_id" = '2') and ((od_year(T1."datum")) = (year(((@CURRENT_DATE) - INTERVAL '001 00:00:00.000'))))) and (T1."datum" <= ((@CURRENT_DATE) - INTERVAL '001 00:00:00.000'))) and (T1."datum" IN (convert(datetime, '2022-01-01 00:00:00.000'),convert(datetime, '2023-01-01 00:00:00.000'),convert(datetime, '2024-01-01 00:00:00.000'),convert(datetime, '2025-01-01 00:00:00.000'),convert(datetime, '2026-01-01 00:00:00.000')))))
+where (((((T1."bundeslaender_id" = '2') and (T1."arbeitstag_mofr" = 1)) and ((year(T1."datum")) = (year(((getdate()) - 1))))) and (T1."datum" <= ((getdate()) - 1))) or ((((T1."bundeslaender_id" = '2') and ((year(T1."datum")) = (year(((getdate()) - 1))))) and (T1."datum" <= ((getdate()) - 1))) and (T1."datum" IN (convert(datetime, '2022-01-01 00:00:00.000'),convert(datetime, '2023-01-01 00:00:00.000'),convert(datetime, '2024-01-01 00:00:00.000'),convert(datetime, '2025-01-01 00:00:00.000'),convert(datetime, '2026-01-01 00:00:00.000')))))
 -- order by "Bundeslaender Id" asc,"Datum" asc,"Wochentage Id" asc,"Arbeitstag Mofr" asc,"Zaehler Mofr" asc,"Summe Mofr" asc,"Arbeitstag Mosa" asc,"Zaehler Mosa" asc,"Summe Mosa" asc,"Feiertage Id" asc,"Gesamt Arbeitstage" asc
 -- order by "Bundeslaender Id" asc,"Datum" asc,"Wochentage Id" asc,"Arbeitstag Mofr" asc,"Zaehler Mofr" asc,"Summe Mofr" asc,"Arbeitstag Mosa" asc,"Zaehler Mosa" asc,"Summe Mosa" asc,"Feiertage Id" asc,"Gesamt Arbeitstage" asc
 ) D1
 ) D1

+ 2 - 2
System/LOCOSOFT/IQD/Belege/current_date_Prognose_operativ_VJ-2.sql

@@ -22,9 +22,9 @@ from
 	   T1."zaehler_mosa" as "Zaehler Mosa",
 	   T1."zaehler_mosa" as "Zaehler Mosa",
 	   T1."summe_mosa" as "Summe Mosa",
 	   T1."summe_mosa" as "Summe Mosa",
 	   T1."feiertage_id" as "Feiertage Id",
 	   T1."feiertage_id" as "Feiertage Id",
-	   (@CURRENT_DATE) - INTERVAL '000 00:00:00.000' as "Jahr",
+	   (getdate()) - INTERVAL '000 00:00:00.000' as "Jahr",
 	   CASE WHEN (T1."datum" BETWEEN convert(datetime, '2008-01-01 00:00:00.000') AND convert(datetime, '2008-12-31 00:00:00.000')) THEN (252) WHEN (T1."datum" BETWEEN convert(datetime, '2009-01-01 00:00:00.000') AND convert(datetime, '2009-12-31 00:00:00.000')) THEN (252) WHEN (T1."datum" BETWEEN convert(datetime, '2010-01-01 00:00:00.000') AND convert(datetime, '2010-12-31 00:00:00.000')) THEN (253) WHEN (T1."datum" BETWEEN convert(datetime, '2011-01-01 00:00:00.000') AND convert(datetime, '2011-12-31 00:00:00.000')) THEN (250) WHEN (T1."datum" BETWEEN convert(datetime, '2012-01-01 00:00:00.000') AND convert(datetime, '2012-12-31 00:00:00.000')) THEN (249) ELSE (250) END as "Gesamt Arbeitstage"
 	   CASE WHEN (T1."datum" BETWEEN convert(datetime, '2008-01-01 00:00:00.000') AND convert(datetime, '2008-12-31 00:00:00.000')) THEN (252) WHEN (T1."datum" BETWEEN convert(datetime, '2009-01-01 00:00:00.000') AND convert(datetime, '2009-12-31 00:00:00.000')) THEN (252) WHEN (T1."datum" BETWEEN convert(datetime, '2010-01-01 00:00:00.000') AND convert(datetime, '2010-12-31 00:00:00.000')) THEN (253) WHEN (T1."datum" BETWEEN convert(datetime, '2011-01-01 00:00:00.000') AND convert(datetime, '2011-12-31 00:00:00.000')) THEN (250) WHEN (T1."datum" BETWEEN convert(datetime, '2012-01-01 00:00:00.000') AND convert(datetime, '2012-12-31 00:00:00.000')) THEN (249) ELSE (250) END as "Gesamt Arbeitstage"
 from "Arbeitstage" T1
 from "Arbeitstage" T1
-where ((((T1."bundeslaender_id" = '4') and ((od_year(T1."datum")) = ((year(((@CURRENT_DATE) - INTERVAL '000 00:00:00.000'))) - 2))) and (T1."datum" <= ((@CURRENT_DATE) - INTERVAL '000 00:00:00.000'))) or ((((T1."bundeslaender_id" = '4') and ((od_year(T1."datum")) = ((year(((@CURRENT_DATE) - INTERVAL '000 00:00:00.000'))) - 2))) and (T1."datum" <= ((@CURRENT_DATE) - INTERVAL '000 00:00:00.000'))) and (T1."datum" IN (convert(datetime, '2012-01-01 00:00:00.000'),convert(datetime, '2013-01-01 00:00:00.000'),convert(datetime, '2014-01-01 00:00:00.000'),convert(datetime, '2015-01-01 00:00:00.000'),convert(datetime, '2016-01-01 00:00:00.000'),convert(datetime, '2017-01-01 00:00:00.000')))))
+where ((((T1."bundeslaender_id" = '4') and ((year(T1."datum")) = ((year(((getdate()) - INTERVAL '000 00:00:00.000'))) - 2))) and (T1."datum" <= ((getdate()) - INTERVAL '000 00:00:00.000'))) or ((((T1."bundeslaender_id" = '4') and ((year(T1."datum")) = ((year(((getdate()) - INTERVAL '000 00:00:00.000'))) - 2))) and (T1."datum" <= ((getdate()) - INTERVAL '000 00:00:00.000'))) and (T1."datum" IN (convert(datetime, '2012-01-01 00:00:00.000'),convert(datetime, '2013-01-01 00:00:00.000'),convert(datetime, '2014-01-01 00:00:00.000'),convert(datetime, '2015-01-01 00:00:00.000'),convert(datetime, '2016-01-01 00:00:00.000'),convert(datetime, '2017-01-01 00:00:00.000')))))
 -- order by "Bundeslaender Id" asc,"Datum" asc,"Wochentage Id" asc,"Arbeitstag Mofr" asc,"Zaehler Mofr" asc,"Summe Mofr" asc,"Arbeitstag Mosa" asc,"Zaehler Mosa" asc,"Summe Mosa" asc,"Feiertage Id" asc,"Gesamt Arbeitstage" asc
 -- order by "Bundeslaender Id" asc,"Datum" asc,"Wochentage Id" asc,"Arbeitstag Mofr" asc,"Zaehler Mofr" asc,"Summe Mofr" asc,"Arbeitstag Mosa" asc,"Zaehler Mosa" asc,"Summe Mosa" asc,"Feiertage Id" asc,"Gesamt Arbeitstage" asc
 ) D1
 ) D1

+ 13 - 13
System/LOCOSOFT/IQD/Belege/loc_belege.sql

@@ -44,24 +44,24 @@ select T1."accounting_date" as "Accounting Date",
 	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T1."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T1."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T1."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T1."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as "Free Form Document Text",
 	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T1."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T1."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T1."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T1."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as "Free Form Document Text",
 	   T2."is_profit_loss_account" as "Nom_Account_Is Profit Loss Account",
 	   T2."is_profit_loss_account" as "Nom_Account_Is Profit Loss Account",
 	   T1."subsidiary_to_company_ref" as "Rechtseinheit",
 	   T1."subsidiary_to_company_ref" as "Rechtseinheit",
-	   '0' + ((convert(varchar(50), T1."skr51_branch"))) as "Betrieb",
+	   '0' + (((T1."skr51_branch"))) as "Betrieb",
 	   CASE WHEN (((CASE WHEN (T1."posting_text" IS NULL) THEN (' - ') ELSE (T1."posting_text") END) = 'Saldenübernahme CDK') or (T1."accounting_date" = convert(date, '2019-01-01'))) THEN (convert(date, '2019-12-01')) ELSE (T1."accounting_date") END as "Bookkeep Date",
 	   CASE WHEN (((CASE WHEN (T1."posting_text" IS NULL) THEN (' - ') ELSE (T1."posting_text") END) = 'Saldenübernahme CDK') or (T1."accounting_date" = convert(date, '2019-01-01'))) THEN (convert(date, '2019-12-01')) ELSE (T1."accounting_date") END as "Bookkeep Date",
-	   (rtrim(((convert(varchar(50), T1."skr51_make"))))) + ' - ' + T3."skr51_make_description" as "Marke",
-	   CASE WHEN ((day((getdate()) - (convert(datetime, (CASE WHEN (((CASE WHEN (T1."posting_text" IS NULL) THEN (' - ') ELSE (T1."posting_text") END) = 'Saldenübernahme CDK') or (T1."accounting_date" = convert(date, '2019-01-01'))) THEN (convert(date, '2019-12-01')) ELSE (T1."accounting_date") END))))) <= 90) THEN ((convert(varchar(50), ((T1."document_number")))) + ' - ' + (CASE WHEN (T1."posting_text" IS NULL) THEN (' - ') ELSE (T1."posting_text") END) + '/' + (CASE WHEN (T1."vehicle_reference" IS NULL) THEN (' - ') ELSE (T1."vehicle_reference") END) + ' - ' + (left(((convert(varchar(50), T1."employee_number")))))) ELSE ('Buchungen älter 90 Tage') END as "Text",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + T3."skr51_make_description" as "Marke",
+	   CASE WHEN ((-1 * datediff(day, (getdate()), (convert(datetime, (CASE WHEN (((CASE WHEN (T1."posting_text" IS NULL) THEN (' - ') ELSE (T1."posting_text") END) = 'Saldenübernahme CDK') or (T1."accounting_date" = convert(date, '2019-01-01'))) THEN (convert(date, '2019-12-01')) ELSE (T1."accounting_date") END))))) <= 90) THEN ((convert(varchar(50), ((T1."document_number")))) + ' - ' + (CASE WHEN (T1."posting_text" IS NULL) THEN (' - ') ELSE (T1."posting_text") END) + '/' + (CASE WHEN (T1."vehicle_reference" IS NULL) THEN (' - ') ELSE (T1."vehicle_reference") END) + ' - ' + (left((((T1."employee_number")))))) ELSE ('Buchungen älter 90 Tage') END as "Text",
 	   '1' as "Mandant",
 	   '1' as "Mandant",
 	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END as "Betrag",
 	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END as "Betrag",
-	   (left(((convert(varchar(50), T1."nominal_account_number"))))) + ' - ' + T2."account_description" as "Konto_mit_Bezeichnung",
+	   (left((((T1."nominal_account_number"))),4)) + ' - ' + T2."account_description" as "Konto_mit_Bezeichnung",
 	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as "Menge",
 	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as "Menge",
-	   (len(((convert(varchar(50), T1."skr51_cost_center"))) + 'Z') - 1) as "Stellen Cost Center",
-	   (rtrim(((convert(varchar(50), T1."skr51_cost_center"))))) + ' - ' + T3."skr51_cost_center_name" as "KST",
-	   (len(((convert(varchar(50), T1."skr51_sales_channel"))) + 'Z') - 1) as "Stellen Sales Channel",
-	   (rtrim(((convert(varchar(50), T1."skr51_sales_channel"))))) + ' - ' + T3."skr51_sales_channel_name" as "Absatzkanal",
-	   (len(((convert(varchar(50), T1."skr51_cost_unit"))) + 'Z') - 1) as "Stellen Cost Unit",
-	   (rtrim(((convert(varchar(50), T1."skr51_make"))))) + ' - ' + (rtrim(((convert(varchar(50), T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name") as "Kostenträger_mit_Null",
-	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN (((rtrim(((convert(varchar(50), T1."skr51_make"))))) + ' - ' + (rtrim(((convert(varchar(50), T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name"))) ELSE ((rtrim(((convert(varchar(50), T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name")) END as "Kostenträger",
+	   (len((((T1."skr51_cost_center"))) + 'Z') - 1) as "Stellen Cost Center",
+	   (rtrim((((T1."skr51_cost_center"))))) + ' - ' + T3."skr51_cost_center_name" as "KST",
+	   (len((((T1."skr51_sales_channel"))) + 'Z') - 1) as "Stellen Sales Channel",
+	   (rtrim((((T1."skr51_sales_channel"))))) + ' - ' + T3."skr51_sales_channel_name" as "Absatzkanal",
+	   (len((((T1."skr51_cost_unit"))) + 'Z') - 1) as "Stellen Cost Unit",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name") as "Kostenträger_mit_Null",
+	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN (((rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name"))) ELSE ((rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name")) END as "Kostenträger",
 	   CASE WHEN (T2."is_profit_loss_account" = 'J') THEN ('2') ELSE ('1') END as "GuV_Bilanz",
 	   CASE WHEN (T2."is_profit_loss_account" = 'J') THEN ('2') ELSE ('1') END as "GuV_Bilanz",
-	   (left(((convert(varchar(50), T1."nominal_account_number"))))) as "Susa",
-	   CASE WHEN (T1."skr51_cost_center" <> 0) THEN ((rtrim(((convert(varchar(50), T1."nominal_account_number"))))) + '_' + (rtrim(((convert(varchar(50), T1."skr51_cost_center")))))) ELSE (((convert(varchar(50), T1."nominal_account_number")))) END as "Acct Nr"
+	   (left((((T1."nominal_account_number"))),1)) as "Susa",
+	   CASE WHEN (T1."skr51_cost_center" <> 0) THEN ((rtrim((((T1."nominal_account_number"))))) + '_' + (rtrim((((T1."skr51_cost_center")))))) ELSE ((((T1."nominal_account_number")))) END as "Acct Nr"
 from "dbo"."nominal_accounts" T2,
 from "dbo"."nominal_accounts" T2,
 	("dbo"."journal_accountings" T1 left outer join "dbo"."accounts_characteristics" T3 on (((((T3."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref") and (T3."skr51_branch" = T1."skr51_branch")) and (T3."skr51_make" = T1."skr51_make")) and (T3."skr51_cost_center" = T1."skr51_cost_center")) and (T3."skr51_sales_channel" = T1."skr51_sales_channel")) and (T3."skr51_cost_unit" = T1."skr51_cost_unit"))
 	("dbo"."journal_accountings" T1 left outer join "dbo"."accounts_characteristics" T3 on (((((T3."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref") and (T3."skr51_branch" = T1."skr51_branch")) and (T3."skr51_make" = T1."skr51_make")) and (T3."skr51_cost_center" = T1."skr51_cost_center")) and (T3."skr51_sales_channel" = T1."skr51_sales_channel")) and (T3."skr51_cost_unit" = T1."skr51_cost_unit"))
 where ((T2."nominal_account_number" = T1."nominal_account_number") and (T2."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref"))
 where ((T2."nominal_account_number" = T1."nominal_account_number") and (T2."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref"))

+ 14 - 14
System/LOCOSOFT/IQD/Belege/loc_belege_bilanz.sql

@@ -44,27 +44,27 @@ select T1."accounting_date" as "Accounting Date",
 	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T1."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T1."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T1."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T1."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as "Free Form Document Text",
 	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T1."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T1."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T1."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T1."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as "Free Form Document Text",
 	   T2."is_profit_loss_account" as "Nom_Account_Is Profit Loss Account",
 	   T2."is_profit_loss_account" as "Nom_Account_Is Profit Loss Account",
 	   T1."subsidiary_to_company_ref" as "Rechtseinheit",
 	   T1."subsidiary_to_company_ref" as "Rechtseinheit",
-	   ('0' + ((convert(varchar(50), T1."skr51_branch")))) as "Betrieb",
+	   ('0' + (((T1."skr51_branch")))) as "Betrieb",
 	   T1."accounting_date" as "Bookkeep Date",
 	   T1."accounting_date" as "Bookkeep Date",
-	   (rtrim(((convert(varchar(50), T1."skr51_make"))))) + ' - ' + T3."skr51_make_description" as "Marke",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + T3."skr51_make_description" as "Marke",
 	   '' as "Text",
 	   '' as "Text",
 	   '1' as "Mandant",
 	   '1' as "Mandant",
 	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END as "Betrag",
 	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END as "Betrag",
-	   (rtrim((CASE WHEN (((len((rtrim(((convert(varchar(50), T1."nominal_account_number"))))) + 'Z') - 1)) = 1) THEN ('000' + (rtrim(((convert(varchar(50), T1."nominal_account_number")))))) WHEN (((len((rtrim(((convert(varchar(50), T1."nominal_account_number"))))) + 'Z') - 1)) = 2) THEN ('00' + (rtrim(((convert(varchar(50), T1."nominal_account_number")))))) WHEN (((len((rtrim(((convert(varchar(50), T1."nominal_account_number"))))) + 'Z') - 1)) = 3) THEN ('0' + (rtrim(((convert(varchar(50), T1."nominal_account_number")))))) ELSE ((rtrim(((convert(varchar(50), T1."nominal_account_number")))))) END))) + ' - ' + T2."account_description" as "Konto_mit_Bezeichnung",
+	   (rtrim((CASE WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 1) THEN ('000' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 2) THEN ('00' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 3) THEN ('0' + (rtrim((((T1."nominal_account_number")))))) ELSE ((rtrim((((T1."nominal_account_number")))))) END))) + ' - ' + T2."account_description" as "Konto_mit_Bezeichnung",
 	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as "Menge",
 	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as "Menge",
-	   (len(((convert(varchar(50), T1."skr51_cost_center"))) + 'Z') - 1) as "Stellen Cost Center",
-	   (rtrim(((convert(varchar(50), T1."skr51_cost_center"))))) + ' - ' + T3."skr51_cost_center_name" as "KST",
-	   (len(((convert(varchar(50), T1."skr51_sales_channel"))) + 'Z') - 1) as "Stellen Sales Channel",
-	   (rtrim(((convert(varchar(50), T1."skr51_sales_channel"))))) + ' - ' + T3."skr51_sales_channel_name" as "Absatzkanal",
-	   (len(((convert(varchar(50), T1."skr51_cost_unit"))) + 'Z') - 1) as "Stellen Cost Unit",
-	   (rtrim(((convert(varchar(50), T1."skr51_make"))))) + ' - ' + (rtrim(((convert(varchar(50), T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name") as "Kostenträger_mit_Null",
-	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN (((rtrim(((convert(varchar(50), T1."skr51_make"))))) + ' - ' + (rtrim(((convert(varchar(50), T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name"))) ELSE ((rtrim(((convert(varchar(50), T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name")) END as "Kostenträger",
+	   (len((((T1."skr51_cost_center"))) + 'Z') - 1) as "Stellen Cost Center",
+	   (rtrim((((T1."skr51_cost_center"))))) + ' - ' + T3."skr51_cost_center_name" as "KST",
+	   (len((((T1."skr51_sales_channel"))) + 'Z') - 1) as "Stellen Sales Channel",
+	   (rtrim((((T1."skr51_sales_channel"))))) + ' - ' + T3."skr51_sales_channel_name" as "Absatzkanal",
+	   (len((((T1."skr51_cost_unit"))) + 'Z') - 1) as "Stellen Cost Unit",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name") as "Kostenträger_mit_Null",
+	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN (((rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name"))) ELSE ((rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name")) END as "Kostenträger",
 	   CASE WHEN (T2."is_profit_loss_account" = 'J') THEN ('2') ELSE ('1') END as "GuV_Bilanz",
 	   CASE WHEN (T2."is_profit_loss_account" = 'J') THEN ('2') ELSE ('1') END as "GuV_Bilanz",
-	   (substring((CASE WHEN (((len((rtrim(((convert(varchar(50), T1."nominal_account_number"))))) + 'Z') - 1)) = 1) THEN ('000' + (rtrim(((convert(varchar(50), T1."nominal_account_number")))))) WHEN (((len((rtrim(((convert(varchar(50), T1."nominal_account_number"))))) + 'Z') - 1)) = 2) THEN ('00' + (rtrim(((convert(varchar(50), T1."nominal_account_number")))))) WHEN (((len((rtrim(((convert(varchar(50), T1."nominal_account_number"))))) + 'Z') - 1)) = 3) THEN ('0' + (rtrim(((convert(varchar(50), T1."nominal_account_number")))))) ELSE ((rtrim(((convert(varchar(50), T1."nominal_account_number")))))) END), 1, 1)) as "Susa",
-	   CASE WHEN (((len((rtrim(((convert(varchar(50), T1."nominal_account_number"))))) + 'Z') - 1)) = 1) THEN ('000' + (rtrim(((convert(varchar(50), T1."nominal_account_number")))))) WHEN (((len((rtrim(((convert(varchar(50), T1."nominal_account_number"))))) + 'Z') - 1)) = 2) THEN ('00' + (rtrim(((convert(varchar(50), T1."nominal_account_number")))))) WHEN (((len((rtrim(((convert(varchar(50), T1."nominal_account_number"))))) + 'Z') - 1)) = 3) THEN ('0' + (rtrim(((convert(varchar(50), T1."nominal_account_number")))))) ELSE ((rtrim(((convert(varchar(50), T1."nominal_account_number")))))) END as "Acct Nr",
-	   (len((rtrim(((convert(varchar(50), T1."nominal_account_number"))))) + 'Z') - 1) as "Stellen_Konto_Nr"
+	   (substring((CASE WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 1) THEN ('000' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 2) THEN ('00' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 3) THEN ('0' + (rtrim((((T1."nominal_account_number")))))) ELSE ((rtrim((((T1."nominal_account_number")))))) END), 1, 1)) as "Susa",
+	   CASE WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 1) THEN ('000' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 2) THEN ('00' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 3) THEN ('0' + (rtrim((((T1."nominal_account_number")))))) ELSE ((rtrim((((T1."nominal_account_number")))))) END as "Acct Nr",
+	   (len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1) as "Stellen_Konto_Nr"
 from "dbo"."nominal_accounts" T2,
 from "dbo"."nominal_accounts" T2,
 	("dbo"."journal_accountings" T1 left outer join "dbo"."accounts_characteristics" T3 on (((((T3."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref") and (T3."skr51_branch" = T1."skr51_branch")) and (T3."skr51_make" = T1."skr51_make")) and (T3."skr51_cost_center" = T1."skr51_cost_center")) and (T3."skr51_sales_channel" = T1."skr51_sales_channel")) and (T3."skr51_cost_unit" = T1."skr51_cost_unit"))
 	("dbo"."journal_accountings" T1 left outer join "dbo"."accounts_characteristics" T3 on (((((T3."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref") and (T3."skr51_branch" = T1."skr51_branch")) and (T3."skr51_make" = T1."skr51_make")) and (T3."skr51_cost_center" = T1."skr51_cost_center")) and (T3."skr51_sales_channel" = T1."skr51_sales_channel")) and (T3."skr51_cost_unit" = T1."skr51_cost_unit"))
 where ((T2."nominal_account_number" = T1."nominal_account_number") and (T2."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref"))
 where ((T2."nominal_account_number" = T1."nominal_account_number") and (T2."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref"))
-and ((T2."is_profit_loss_account" = 'N') and (not ((rtrim((CASE WHEN (((len((rtrim(((convert(varchar(50), T1."nominal_account_number"))))) + 'Z') - 1)) = 1) THEN ('000' + (rtrim(((convert(varchar(50), T1."nominal_account_number")))))) WHEN (((len((rtrim(((convert(varchar(50), T1."nominal_account_number"))))) + 'Z') - 1)) = 2) THEN ('00' + (rtrim(((convert(varchar(50), T1."nominal_account_number")))))) WHEN (((len((rtrim(((convert(varchar(50), T1."nominal_account_number"))))) + 'Z') - 1)) = 3) THEN ('0' + (rtrim(((convert(varchar(50), T1."nominal_account_number")))))) ELSE ((rtrim(((convert(varchar(50), T1."nominal_account_number")))))) END))) + ' - ' + T2."account_description") LIKE '9%'))
+and ((T2."is_profit_loss_account" = 'N') and (not ((rtrim((CASE WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 1) THEN ('000' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 2) THEN ('00' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 3) THEN ('0' + (rtrim((((T1."nominal_account_number")))))) ELSE ((rtrim((((T1."nominal_account_number")))))) END))) + ' - ' + T2."account_description") LIKE '9%'))
 -- order by "Nominal Account Number" asc
 -- order by "Nominal Account Number" asc

+ 253 - 253
System/LOCOSOFT/IQD/NW/LOC_Belege_NW_GW_VK.sql

@@ -51,7 +51,7 @@ select "Accounting Date" as "Accounting Date",
 	   "Mandant" as "Mandant",
 	   "Mandant" as "Mandant",
 	   "Betrag" as "Betrag",
 	   "Betrag" as "Betrag",
 	   "Konto_mit_Bezeichnung" as "Konto_mit_Bezeichnung",
 	   "Konto_mit_Bezeichnung" as "Konto_mit_Bezeichnung",
-	   "Menge" as "Menge",
+	   "Menge_2" as "Menge_2",
 	   "Stellen Cost Center" as "Stellen Cost Center",
 	   "Stellen Cost Center" as "Stellen Cost Center",
 	   "KST" as "KST",
 	   "KST" as "KST",
 	   "Stellen Sales Channel" as "Stellen Sales Channel",
 	   "Stellen Sales Channel" as "Stellen Sales Channel",
@@ -140,264 +140,264 @@ select "Accounting Date" as "Accounting Date",
 	   "Dealer Vehicle Type_Vehicles" as "Dealer Vehicle Type_Vehicles",
 	   "Dealer Vehicle Type_Vehicles" as "Dealer Vehicle Type_Vehicles",
 	   "Dealer Vehicle Number_Vehicles" as "Dealer Vehicle Number_Vehicles"
 	   "Dealer Vehicle Number_Vehicles" as "Dealer Vehicle Number_Vehicles"
 from 
 from 
-(select c230 as "Accounting Date",
-	   c271 as "Document Type",
-	   c270 as "Document Number",
-	   c269 as "Position In Document",
-	   c216 as "Nominal Account Number",
-	   c268 as "Is Balanced",
-	   c267 as "Clearing Number",
-	   c266 as "Document Date",
-	   c265 as "Posted Value",
-	   c264 as "Debit Or Credit",
-	   c263 as "Posted Count",
-	   c262 as "Branch Number",
-	   c261 as "Customer Contra Account",
-	   c260 as "Nominal Contra Account",
-	   c259 as "Contra Account Text",
-	   c258 as "Account Form Page Number",
-	   c257 as "Account Form Page Line",
-	   c256 as "Serial Number Each Month",
-	   c255 as "Employee Number",
-	   c151 as "Invoice Date_journal_accountings",
-	   c254 as "Invoice Number",
-	   c253 as "Dunning Level",
-	   c252 as "Last Dunning Date",
-	   c251 as "Journal Page",
-	   c250 as "Journal Line",
-	   c249 as "Cash Discount",
-	   c248 as "Term Of Payment",
-	   c247 as "Posting Text",
-	   c246 as "Vehicle Reference",
-	   c245 as "Vat Id Number",
-	   c244 as "Account Statement Number",
-	   c243 as "Account Statement Page",
-	   c242 as "Vat Key",
-	   c241 as "Days For Cash Discount",
-	   c240 as "Day Of Actual Accounting",
-	   c239 as "Skr51 Branch",
-	   c238 as "Skr51 Make",
-	   c237 as "Skr51 Cost Center",
-	   c236 as "Skr51 Sales Channel",
-	   c235 as "Skr51 Cost Unit",
-	   c234 as "Previously Used Account No",
-	   c233 as "Free Form Accounting Text",
-	   c232 as "Free Form Document Text",
-	   c231 as "Nom_Account_Is Profit Loss Account",
-	   c187 as "Rechtseinheit",
-	   c186 as "Betrieb",
-	   c230 as "Bookkeep Date",
-	   c229 as "Marke",
-	   c228 as "Text",
+(select "Accounting Date",
+	   "Document Type",
+	   "Document Number",
+	   "Position In Document",
+	   "Nominal Account Number",
+	   "Is Balanced",
+	   "Clearing Number",
+	   "Document Date",
+	   "Posted Value",
+	   "Debit Or Credit",
+	   "Posted Count",
+	   "Branch Number",
+	   "Customer Contra Account",
+	   "Nominal Contra Account",
+	   "Contra Account Text",
+	   "Account Form Page Number",
+	   "Account Form Page Line",
+	   "Serial Number Each Month",
+	   "Employee Number",
+	   "Invoice Date_journal_accountings",
+	   "Invoice Number",
+	   "Dunning Level",
+	   "Last Dunning Date",
+	   "Journal Page",
+	   "Journal Line",
+	   "Cash Discount",
+	   "Term Of Payment",
+	   "Posting Text",
+	   "Vehicle Reference",
+	   "Vat Id Number",
+	   "Account Statement Number",
+	   "Account Statement Page",
+	   "Vat Key",
+	   "Days For Cash Discount",
+	   "Day Of Actual Accounting",
+	   "Skr51 Branch",
+	   "Skr51 Make",
+	   "Skr51 Cost Center",
+	   "Skr51 Sales Channel",
+	   "Skr51 Cost Unit",
+	   "Previously Used Account No",
+	   "Free Form Accounting Text",
+	   "Free Form Document Text",
+	   "Nom_Account_Is Profit Loss Account",
+	   "Rechtseinheit",
+	   "Betrieb",
+	   "Accounting Date" as "Bookkeep Date",
+	   "Marke",
+	   "Text",
 	   '1' as "Mandant",
 	   '1' as "Mandant",
-	   c227 as "Betrag",
-	   c178 as "Konto_mit_Bezeichnung",
-	   c226 as "Menge",
-	   c225 as "Stellen Cost Center",
-	   c224 as "KST",
-	   c223 as "Stellen Sales Channel",
-	   c222 as "Absatzkanal",
-	   c221 as "Stellen Cost Unit",
-	   c220 as "Kostenträger_mit_Null",
-	   c219 as "Kostenträger",
-	   c218 as "GuV_Bilanz",
-	   c217 as "Susa",
-	   c216 as "Acct Nr",
-	   c215 as "Document Type In Journal",
-	   c214 as "Document Type Description",
-	   c213 as "FZG_ja_nein",
-	   c212 as "Invoice Type_Invoices",
-	   c211 as "Invoice Number_Invoices",
-	   c210 as "Invoice Date_Invoices",
-	   c209 as "Is Canceled_Invoices",
-	   c208 as "Vehicle Number_Invoices",
-	   c207 as "Invoice_Date_1",
-	   c206 as "Internal Number_Vehicles",
-	   c205 as "Vin_Vehicles",
-	   c204 as "Dealer Vehicle Type",
-	   c203 as "Fahrzeugtyp",
-	   c202 as "Fahrzeugart",
-	   c201 as "Make Number_Vehicles",
-	   c200 as "Description_Make",
-	   c199 as "Fabrikat",
-	   c198 as "Model Code_Models",
-	   c197 as "Model_Detail",
-	   c196 as "Model",
-	   c195 as "Owner Number_Vehicles",
-	   c194 as "Holder Number_Vehicles",
-	   c193 as "First Name_Owner_Customer",
-	   c192 as "Family Name_Owner_Customer",
-	   c191 as "First Name_Holder_Customer",
-	   c190 as "Family Name_Holder_Customer",
-	   c189 as "Kunde",
-	   c188 as "Sales_Channel_FZG",
-	   c187 as "Hauptbetrieb",
-	   c186 as "Standort_alt",
-	   c185 as "Salesman Number_Vehicles",
-	   c184 as "Employee Number_Employees_Salesman",
-	   c183 as "Name_Employees_Salesman",
-	   c182 as "Verkäufer",
-	   c181 as "Standort_FZG_Verkauf",
-	   c180 as "Standort",
-	   c179 as "FZG",
-	   c178 as "Konto",
-	   c177 as "Body Paint Code",
-	   c176 as "Body Paint Description",
-	   c176 as "Farbe",
-	   c175 as "Erlös FZG",
-	   c174 as "Nachlass",
-	   c173 as "VAK FZG",
-	   c172 as "Erlös Zulass.",
-	   c171 as "VAK Zulass.",
-	   c170 as "Erlös Gar.",
-	   c169 as "VAK Gar.",
-	   c168 as "Erlös Nachr./Aufb.",
-	   c167 as "VAK Nachr./Aufb.",
-	   c166 as "VAK Fertigm.",
-	   c165 as "Erlös Überf.",
-	   c164 as "VAK Überf.",
-	   c163 as "Erlös Sonst._8900",
-	   c162 as "Erlös Sonst.",
-	   c161 as "VAK Sonst.",
-	   c160 as "VAK intern",
-	   c159 as "Erlös Prov.",
-	   c158 as "Boni/VK-Hilfen",
-	   c157 as "Erlös ges.",
-	   c156 as "VAK ges.",
+	   "Betrag",
+	   "Konto_mit_Bezeichnung",
+	   "Menge_2",
+	   "Stellen Cost Center",
+	   "KST",
+	   "Stellen Sales Channel",
+	   "Absatzkanal",
+	   "Stellen Cost Unit",
+	   "Kostenträger_mit_Null",
+	   "Kostenträger",
+	   "GuV_Bilanz",
+	   "Susa",
+	   "Nominal Account Number" as "Acct Nr",
+	   "Document Type In Journal",
+	   "Document Type Description",
+	   "FZG_ja_nein",
+	   "Invoice Type_Invoices",
+	   "Invoice Number_Invoices",
+	   "Invoice Date_Invoices",
+	   "Is Canceled_Invoices",
+	   "Vehicle Number_Invoices",
+	   "Invoice_Date_1",
+	   "Internal Number_Vehicles",
+	   "Vin_Vehicles",
+	   "Dealer Vehicle Type",
+	   "Fahrzeugtyp",
+	   "Fahrzeugart",
+	   "Make Number_Vehicles",
+	   "Description_Make",
+	   "Fabrikat",
+	   "Model Code_Models",
+	   "Model_Detail",
+	   "Model",
+	   "Owner Number_Vehicles",
+	   "Holder Number_Vehicles",
+	   "First Name_Owner_Customer",
+	   "Family Name_Owner_Customer",
+	   "First Name_Holder_Customer",
+	   "Family Name_Holder_Customer",
+	   "Kunde",
+	   "Sales_Channel_FZG",
+	   "Rechtseinheit" as "Hauptbetrieb",
+	   "Betrieb" as "Standort_alt",
+	   "Salesman Number_Vehicles",
+	   "Employee Number_Employees_Salesman",
+	   "Name_Employees_Salesman",
+	   "Verkäufer",
+	   "Standort_FZG_Verkauf",
+	   "Standort",
+	   "FZG",
+	   "Konto_mit_Bezeichnung" as "Konto",
+	   "Body Paint Code",
+	   "Body Paint Description",
+	   "Body Paint Description" as "Farbe",
+	   "Erlös FZG",
+	   "Nachlass",
+	   "VAK FZG",
+	   "Erlös Zulass.",
+	   "VAK Zulass.",
+	   "Erlös Gar.",
+	   "VAK Gar.",
+	   "Erlös Nachr./Aufb.",
+	   "VAK Nachr./Aufb.",
+	   "VAK Fertigm.",
+	   "Erlös Überf.",
+	   "VAK Überf.",
+	   "Erlös Sonst._8900",
+	   "Erlös Sonst.",
+	   "VAK Sonst.",
+	   "VAK intern",
+	   "Erlös Prov.",
+	   "Boni/VK-Hilfen",
+	   "Erlös ges.",
+	   "VAK ges.",
 	   1 as "Menge_1",
 	   1 as "Menge_1",
-	   c150 as "Vehicle Reference_berechnet",
-	   c155 as "var. Kosten",
-	   c154 as "Dealer Vehicle Type_Vehicles",
-	   c153 as "Dealer Vehicle Number_Vehicles",
+	   "Vehicle Reference_berechnet",
+	   "var. Kosten",
+	   "Dealer Vehicle Type_Vehicles",
+	   "Dealer Vehicle Number_Vehicles",
 	   c152 as c142,
 	   c152 as c142,
-	   MAX(c208) OVER (partition by c150) as c143,
-	   (CASE WHEN ((MAX(c207) OVER (partition by c150)) IS NULL) THEN ((c151)) ELSE ((MAX(c207) OVER (partition by c150))) END) as c144,
-	   (CASE WHEN ((SUM(c213) OVER (partition by c150)) > 0) THEN ('FZG-Geschäft') ELSE ('Buchungen ohne FZG-Geschäft') END) as c145
+	   MAX("Vehicle Number_Invoices") OVER (partition by "Vehicle Reference_berechnet") as c143,
+	   (CASE WHEN ((MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet")) IS NULL) THEN (("Invoice Date_journal_accountings")) ELSE ((MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet"))) END) as c144,
+	   (CASE WHEN ((SUM("FZG_ja_nein") OVER (partition by "Vehicle Reference_berechnet")) > 0) THEN ('FZG-Geschäft') ELSE ('Buchungen ohne FZG-Geschäft') END) as c145
 from 
 from 
-(select (left(T1."vehicle_reference",7)) + '_' + (od_right(T1."vehicle_reference",17)) as c150,
-	   (cdate((nconvert((left(T1."invoice_date",4)) + (substring(T1."invoice_date", 6, 2)) + (substring(T1."invoice_date", 9, 2)))))) as c151,
+(select (left(T1."vehicle_reference",7)) + '_' + (right(T1."vehicle_reference",17)) as "Vehicle Reference_berechnet",
+	   (((nconvert((left(T1."invoice_date",4)) + (substring(T1."invoice_date", 6, 2)) + (substring(T1."invoice_date", 9, 2)))))) as "Invoice Date_journal_accountings",
 	   T2."in_buy_invoice_no_date" as c152,
 	   T2."in_buy_invoice_no_date" as c152,
-	   T8."dealer_vehicle_number" as c153,
-	   T8."dealer_vehicle_type" as c154,
-	   CASE WHEN (T1."nominal_account_number" IN (4300,4560,4580,4530,4540,4590,4591,4690,4621,4622,4623,4500,4501,4502,4503,4504,5501)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c155,
-	   (CASE WHEN (T1."nominal_account_number" IN (7000,7010,7100,7101,7110,7111,7120,7510)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + ((CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END)) + (CASE WHEN (T1."nominal_account_number" IN (5001,5005,5006,5007,5008,5003,5004)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7800,7850)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) as c156,
-	   (CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8111,8112,8510,8928,8934)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + ((CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END)) + (CASE WHEN (T1."nominal_account_number" IN (8800,8801,8870,8820,8830)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8001,8011,5002)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) as c157,
-	   CASE WHEN (T1."nominal_account_number" IN (7800,7850)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c158,
-	   CASE WHEN (T1."nominal_account_number" IN (8800,8801,8870,8820,8830)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c159,
-	   CASE WHEN (T1."nominal_account_number" IN (5001,5005,5006,5007,5008,5003,5004)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c160,
-	   (CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) as c161,
-	   (CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) as c162,
-	   CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c163,
-	   CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c164,
-	   CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c165,
-	   CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c166,
-	   CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c167,
-	   CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c168,
-	   CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c169,
-	   CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c170,
-	   CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c171,
-	   CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c172,
-	   CASE WHEN (T1."nominal_account_number" IN (7000,7010,7100,7101,7110,7111,7120,7510)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c173,
-	   CASE WHEN (T1."nominal_account_number" IN (8001,8011,5002)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c174,
-	   CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8111,8112,8510,8928,8934)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c175,
-	   T8."body_paint_description" as c176,
-	   T8."body_paint_code" as c177,
-	   ((left(((convert(varchar(50), T1."nominal_account_number"))))) + ' - ' + T4."account_description") as c178,
-	   (left(((left(T1."vehicle_reference",7)) + '_' + (od_right(T1."vehicle_reference",17))),7)) + ' / ' + ((left(((convert(varchar(50), T8."internal_number")))))) + ' - ' + T10."description" + ' - ' + (((left(((convert(varchar(50), T8."holder_number"))))) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ('') ELSE (T3."first_name") END) + ' ' + T3."family_name")) as c179,
-	   CASE WHEN (T2."out_subsidiary" IS NULL) THEN ((('0' + ((convert(varchar(50), T1."skr51_branch")))))) ELSE ('0' + ((convert(varchar(50), T2."out_subsidiary")))) END as c180,
-	   T2."out_subsidiary" as c181,
-	   (left(((convert(varchar(50), T8."salesman_number"))))) + ' - ' + T12."name" as c182,
-	   T12."name" as c183,
-	   T12."employee_number" as c184,
-	   T8."salesman_number" as c185,
-	   ('0' + ((convert(varchar(50), T1."skr51_branch")))) as c186,
-	   T1."subsidiary_to_company_ref" as c187,
-	   CASE WHEN (((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) and (T7."is_canceled" <> '1')) THEN (T1."skr51_sales_channel") ELSE null END as c188,
-	   ((left(((convert(varchar(50), T8."holder_number"))))) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ('') ELSE (T3."first_name") END) + ' ' + T3."family_name") as c189,
-	   T3."family_name" as c190,
-	   CASE WHEN (T3."first_name" IS NULL) THEN ('') ELSE (T3."first_name") END as c191,
-	   T11."family_name" as c192,
-	   T11."first_name" as c193,
-	   T8."holder_number" as c194,
-	   T8."owner_number" as c195,
-	   (left((ucase(T10."description")),3)) as c196,
-	   T10."description" as c197,
-	   T10."model_code" as c198,
-	   CASE WHEN (((rtrim(((convert(varchar(50), T1."skr51_make"))))) + ' - ' + T5."skr51_make_description") = '3 - Husqvarna') THEN ('Husqvarna') ELSE (T9."description") END as c199,
-	   T9."description" as c200,
-	   T8."make_number" as c201,
-	   CASE WHEN ((CASE WHEN (((left(T1."vehicle_reference",1))) IN ('N')) THEN ('NW') WHEN (((left(T1."vehicle_reference",1))) IN ('V')) THEN ('VFW') WHEN (((left(T1."vehicle_reference",1))) IN ('G','D')) THEN ('GW') WHEN (((left(T1."vehicle_reference",1))) IN ('T')) THEN ('TZ') ELSE null END) IN ('VFW','TZ','NW')) THEN ('Neuwagen') ELSE ('Gebrauchtwagen') END as c202,
-	   CASE WHEN (((left(T1."vehicle_reference",1))) IN ('N')) THEN ('NW') WHEN (((left(T1."vehicle_reference",1))) IN ('V')) THEN ('VFW') WHEN (((left(T1."vehicle_reference",1))) IN ('G','D')) THEN ('GW') WHEN (((left(T1."vehicle_reference",1))) IN ('T')) THEN ('TZ') ELSE null END as c203,
-	   (left(T1."vehicle_reference",1)) as c204,
-	   T8."vin" as c205,
-	   T8."internal_number" as c206,
-	   CASE WHEN ((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) THEN (((cdate((nconvert((left(T1."invoice_date",4)) + (substring(T1."invoice_date", 6, 2)) + (substring(T1."invoice_date", 9, 2)))))))) ELSE null END as c207,
-	   T7."vehicle_number" as c208,
-	   T7."is_canceled" as c209,
-	   T7."invoice_date" as c210,
-	   T7."invoice_number" as c211,
-	   T7."invoice_type" as c212,
-	   CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END as c213,
-	   T6."document_type_description" as c214,
-	   T6."document_type_in_journal" as c215,
-	   T1."nominal_account_number" as c216,
-	   (left(((convert(varchar(50), T1."nominal_account_number"))))) as c217,
-	   CASE WHEN (T4."is_profit_loss_account" = 'J') THEN ('2') ELSE ('1') END as c218,
-	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN (((rtrim(((convert(varchar(50), T1."skr51_make"))))) + ' - ' + (rtrim(((convert(varchar(50), T1."skr51_cost_unit"))))) + ' - ' + (T5."skr51_cost_unit_name"))) ELSE ((rtrim(((convert(varchar(50), T1."skr51_cost_unit"))))) + ' - ' + (T5."skr51_cost_unit_name")) END as c219,
-	   (rtrim(((convert(varchar(50), T1."skr51_make"))))) + ' - ' + (rtrim(((convert(varchar(50), T1."skr51_cost_unit"))))) + ' - ' + (T5."skr51_cost_unit_name") as c220,
-	   (len(((convert(varchar(50), T1."skr51_cost_unit"))) + 'Z') - 1) as c221,
-	   (rtrim(((convert(varchar(50), T1."skr51_sales_channel"))))) + ' - ' + T5."skr51_sales_channel_name" as c222,
-	   (len(((convert(varchar(50), T1."skr51_sales_channel"))) + 'Z') - 1) as c223,
-	   (rtrim(((convert(varchar(50), T1."skr51_cost_center"))))) + ' - ' + T5."skr51_cost_center_name" as c224,
-	   (len(((convert(varchar(50), T1."skr51_cost_center"))) + 'Z') - 1) as c225,
-	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as c226,
-	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END as c227,
-	   CASE WHEN ((day((getdate()) - (convert(datetime, T1."accounting_date")))) <= 360) THEN (T1."invoice_number" + ' - ' + T1."posting_text" + '/' + T1."vehicle_reference" + ' - ' + (rtrim(((convert(varchar(50), T1."employee_number")))))) ELSE ('Buchungen älter 360 Tage') END as c228,
-	   (rtrim(((convert(varchar(50), T1."skr51_make"))))) + ' - ' + T5."skr51_make_description" as c229,
-	   T1."accounting_date" as c230,
-	   T4."is_profit_loss_account" as c231,
-	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T1."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T1."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T1."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T1."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as c232,
-	   T3."zip_code" as c233,
-	   T1."previously_used_account_no" as c234,
-	   T1."skr51_cost_unit" as c235,
-	   T1."skr51_sales_channel" as c236,
-	   T1."skr51_cost_center" as c237,
-	   T1."skr51_make" as c238,
-	   T1."skr51_branch" as c239,
-	   T1."day_of_actual_accounting" as c240,
-	   T1."days_for_cash_discount" as c241,
-	   T1."vat_key" as c242,
-	   T1."account_statement_page" as c243,
-	   T1."account_statement_number" as c244,
-	   T1."vat_id_number" as c245,
-	   T1."vehicle_reference" as c246,
-	   T1."posting_text" as c247,
-	   T1."term_of_payment" as c248,
-	   T1."cash_discount" as c249,
-	   T1."journal_line" as c250,
-	   T1."journal_page" as c251,
-	   T1."last_dunning_date" as c252,
-	   T1."dunning_level" as c253,
-	   T1."invoice_number" as c254,
-	   T1."employee_number" as c255,
-	   T1."serial_number_each_month" as c256,
-	   T1."account_form_page_line" as c257,
-	   T1."account_form_page_number" as c258,
-	   T1."contra_account_text" as c259,
-	   T1."nominal_contra_account" as c260,
-	   T1."customer_contra_account" as c261,
-	   T1."branch_number" as c262,
-	   T1."posted_count" as c263,
-	   T1."debit_or_credit" as c264,
-	   T1."posted_value" as c265,
-	   T1."document_date" as c266,
-	   T1."clearing_number" as c267,
-	   T1."is_balanced" as c268,
-	   T1."position_in_document" as c269,
-	   T1."document_number" as c270,
-	   T1."document_type" as c271
+	   T8."dealer_vehicle_number" as "Dealer Vehicle Number_Vehicles",
+	   T8."dealer_vehicle_type" as "Dealer Vehicle Type_Vehicles",
+	   CASE WHEN (T1."nominal_account_number" IN (4300,4560,4580,4530,4540,4590,4591,4690,4621,4622,4623,4500,4501,4502,4503,4504,5501)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "var. Kosten",
+	   (CASE WHEN (T1."nominal_account_number" IN (7000,7010,7100,7101,7110,7111,7120,7510)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + ((CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END)) + (CASE WHEN (T1."nominal_account_number" IN (5001,5005,5006,5007,5008,5003,5004)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7800,7850)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) as "VAK ges.",
+	   (CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8111,8112,8510,8928,8934)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + ((CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END)) + (CASE WHEN (T1."nominal_account_number" IN (8800,8801,8870,8820,8830)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8001,8011,5002)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) as "Erlös ges.",
+	   CASE WHEN (T1."nominal_account_number" IN (7800,7850)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "Boni/VK-Hilfen",
+	   CASE WHEN (T1."nominal_account_number" IN (8800,8801,8870,8820,8830)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Prov.",
+	   CASE WHEN (T1."nominal_account_number" IN (5001,5005,5006,5007,5008,5003,5004)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK intern",
+	   (CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) as "VAK Sonst.",
+	   (CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) as "Erlös Sonst.",
+	   CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Sonst._8900",
+	   CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Überf.",
+	   CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Überf.",
+	   CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Fertigm.",
+	   CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Nachr./Aufb.",
+	   CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Nachr./Aufb.",
+	   CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Gar.",
+	   CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Gar.",
+	   CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Zulass.",
+	   CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Zulass.",
+	   CASE WHEN (T1."nominal_account_number" IN (7000,7010,7100,7101,7110,7111,7120,7510)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK FZG",
+	   CASE WHEN (T1."nominal_account_number" IN (8001,8011,5002)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Nachlass",
+	   CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8111,8112,8510,8928,8934)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös FZG",
+	   T8."body_paint_description" as "Body Paint Description",
+	   T8."body_paint_code" as "Body Paint Code",
+	   ((left((((T1."nominal_account_number"))),4)) + ' - ' + T4."account_description") as "Konto_mit_Bezeichnung",
+	   (left(((left(T1."vehicle_reference",7)) + '_' + (right(T1."vehicle_reference",17))),7)) + ' / ' + ((left((((T8."internal_number"))),5))) + ' - ' + T10."description" + ' - ' + (((left((((T8."holder_number"))),7)) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ('') ELSE (T3."first_name") END) + ' ' + T3."family_name")) as "FZG",
+	   CASE WHEN (T2."out_subsidiary" IS NULL) THEN ((('0' + (((T1."skr51_branch")))))) ELSE ('0' + (((T2."out_subsidiary")))) END as "Standort",
+	   T2."out_subsidiary" as "Standort_FZG_Verkauf",
+	   (left((((T8."salesman_number"))),4)) + ' - ' + T12."name" as "Verkäufer",
+	   T12."name" as "Name_Employees_Salesman",
+	   T12."employee_number" as "Employee Number_Employees_Salesman",
+	   T8."salesman_number" as "Salesman Number_Vehicles",
+	   ('0' + (((T1."skr51_branch")))) as "Betrieb",
+	   T1."subsidiary_to_company_ref" as "Rechtseinheit",
+	   CASE WHEN (((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) and (T7."is_canceled" <> '1')) THEN (T1."skr51_sales_channel") ELSE null END as "Sales_Channel_FZG",
+	   ((left((((T8."holder_number"))),7)) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ('') ELSE (T3."first_name") END) + ' ' + T3."family_name") as "Kunde",
+	   T3."family_name" as "Family Name_Holder_Customer",
+	   CASE WHEN (T3."first_name" IS NULL) THEN ('') ELSE (T3."first_name") END as "First Name_Holder_Customer",
+	   T11."family_name" as "Family Name_Owner_Customer",
+	   T11."first_name" as "First Name_Owner_Customer",
+	   T8."holder_number" as "Holder Number_Vehicles",
+	   T8."owner_number" as "Owner Number_Vehicles",
+	   (left((ucase(T10."description")),3)) as "Model",
+	   T10."description" as "Model_Detail",
+	   T10."model_code" as "Model Code_Models",
+	   CASE WHEN (((rtrim((((T1."skr51_make"))))) + ' - ' + T5."skr51_make_description") = '3 - Husqvarna') THEN ('Husqvarna') ELSE (T9."description") END as "Fabrikat",
+	   T9."description" as "Description_Make",
+	   T8."make_number" as "Make Number_Vehicles",
+	   CASE WHEN ((CASE WHEN (((left(T1."vehicle_reference",1))) IN ('N')) THEN ('NW') WHEN (((left(T1."vehicle_reference",1))) IN ('V')) THEN ('VFW') WHEN (((left(T1."vehicle_reference",1))) IN ('G','D')) THEN ('GW') WHEN (((left(T1."vehicle_reference",1))) IN ('T')) THEN ('TZ') ELSE null END) IN ('VFW','TZ','NW')) THEN ('Neuwagen') ELSE ('Gebrauchtwagen') END as "Fahrzeugart",
+	   CASE WHEN (((left(T1."vehicle_reference",1))) IN ('N')) THEN ('NW') WHEN (((left(T1."vehicle_reference",1))) IN ('V')) THEN ('VFW') WHEN (((left(T1."vehicle_reference",1))) IN ('G','D')) THEN ('GW') WHEN (((left(T1."vehicle_reference",1))) IN ('T')) THEN ('TZ') ELSE null END as "Fahrzeugtyp",
+	   (left(T1."vehicle_reference",1)) as "Dealer Vehicle Type",
+	   T8."vin" as "Vin_Vehicles",
+	   T8."internal_number" as "Internal Number_Vehicles",
+	   CASE WHEN ((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) THEN (((((nconvert((left(T1."invoice_date",4)) + (substring(T1."invoice_date", 6, 2)) + (substring(T1."invoice_date", 9, 2)))))))) ELSE null END as "Invoice_Date_1",
+	   T7."vehicle_number" as "Vehicle Number_Invoices",
+	   T7."is_canceled" as "Is Canceled_Invoices",
+	   T7."invoice_date" as "Invoice Date_Invoices",
+	   T7."invoice_number" as "Invoice Number_Invoices",
+	   T7."invoice_type" as "Invoice Type_Invoices",
+	   CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END as "FZG_ja_nein",
+	   T6."document_type_description" as "Document Type Description",
+	   T6."document_type_in_journal" as "Document Type In Journal",
+	   T1."nominal_account_number" as "Nominal Account Number",
+	   (left((((T1."nominal_account_number"))),1)) as "Susa",
+	   CASE WHEN (T4."is_profit_loss_account" = 'J') THEN ('2') ELSE ('1') END as "GuV_Bilanz",
+	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN (((rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T5."skr51_cost_unit_name"))) ELSE ((rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T5."skr51_cost_unit_name")) END as "Kostenträger",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T5."skr51_cost_unit_name") as "Kostenträger_mit_Null",
+	   (len((((T1."skr51_cost_unit"))) + 'Z') - 1) as "Stellen Cost Unit",
+	   (rtrim((((T1."skr51_sales_channel"))))) + ' - ' + T5."skr51_sales_channel_name" as "Absatzkanal",
+	   (len((((T1."skr51_sales_channel"))) + 'Z') - 1) as "Stellen Sales Channel",
+	   (rtrim((((T1."skr51_cost_center"))))) + ' - ' + T5."skr51_cost_center_name" as "KST",
+	   (len((((T1."skr51_cost_center"))) + 'Z') - 1) as "Stellen Cost Center",
+	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as "Menge_2",
+	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END as "Betrag",
+	   CASE WHEN ((-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date")))) <= 360) THEN (T1."invoice_number" + ' - ' + T1."posting_text" + '/' + T1."vehicle_reference" + ' - ' + (rtrim((((T1."employee_number")))))) ELSE ('Buchungen älter 360 Tage') END as "Text",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + T5."skr51_make_description" as "Marke",
+	   T1."accounting_date" as "Accounting Date",
+	   T4."is_profit_loss_account" as "Nom_Account_Is Profit Loss Account",
+	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T1."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T1."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T1."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T1."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as "Free Form Document Text",
+	   T3."zip_code" as "Free Form Accounting Text",
+	   T1."previously_used_account_no" as "Previously Used Account No",
+	   T1."skr51_cost_unit" as "Skr51 Cost Unit",
+	   T1."skr51_sales_channel" as "Skr51 Sales Channel",
+	   T1."skr51_cost_center" as "Skr51 Cost Center",
+	   T1."skr51_make" as "Skr51 Make",
+	   T1."skr51_branch" as "Skr51 Branch",
+	   T1."day_of_actual_accounting" as "Day Of Actual Accounting",
+	   T1."days_for_cash_discount" as "Days For Cash Discount",
+	   T1."vat_key" as "Vat Key",
+	   T1."account_statement_page" as "Account Statement Page",
+	   T1."account_statement_number" as "Account Statement Number",
+	   T1."vat_id_number" as "Vat Id Number",
+	   T1."vehicle_reference" as "Vehicle Reference",
+	   T1."posting_text" as "Posting Text",
+	   T1."term_of_payment" as "Term Of Payment",
+	   T1."cash_discount" as "Cash Discount",
+	   T1."journal_line" as "Journal Line",
+	   T1."journal_page" as "Journal Page",
+	   T1."last_dunning_date" as "Last Dunning Date",
+	   T1."dunning_level" as "Dunning Level",
+	   T1."invoice_number" as "Invoice Number",
+	   T1."employee_number" as "Employee Number",
+	   T1."serial_number_each_month" as "Serial Number Each Month",
+	   T1."account_form_page_line" as "Account Form Page Line",
+	   T1."account_form_page_number" as "Account Form Page Number",
+	   T1."contra_account_text" as "Contra Account Text",
+	   T1."nominal_contra_account" as "Nominal Contra Account",
+	   T1."customer_contra_account" as "Customer Contra Account",
+	   T1."branch_number" as "Branch Number",
+	   T1."posted_count" as "Posted Count",
+	   T1."debit_or_credit" as "Debit Or Credit",
+	   T1."posted_value" as "Posted Value",
+	   T1."document_date" as "Document Date",
+	   T1."clearing_number" as "Clearing Number",
+	   T1."is_balanced" as "Is Balanced",
+	   T1."position_in_document" as "Position In Document",
+	   T1."document_number" as "Document Number",
+	   T1."document_type" as "Document Type"
 from "nominal_accounts" T4,
 from "nominal_accounts" T4,
-	(((((((((("journal_accountings" T1 left outer join "vehicles" T8 on (od_right(T1."vehicle_reference",17)) = T8."vin") left outer join "LOCOSOFT"."dbo"."dealer_vehicles" T2 on (T8."dealer_vehicle_type" = T2."dealer_vehicle_type") and (T8."dealer_vehicle_number" = T2."dealer_vehicle_number")) left outer join "customers_suppliers" T3 on T3."customer_number" = T8."holder_number") left outer join "accounts_characteristics" T5 on (((((T5."skr51_make" = T1."skr51_make") and (T5."skr51_cost_center" = T1."skr51_cost_center")) and (T5."skr51_sales_channel" = T1."skr51_sales_channel")) and (T5."skr51_cost_unit" = T1."skr51_cost_unit")) and (T5."skr51_branch" = T1."skr51_branch")) and (T5."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref")) left outer join "document_types" T6 on T6."document_type_in_journal" = T1."document_type") left outer join "invoices" T7 on T7."invtype_invnr" = T1."invoice_number") left outer join "makes" T9 on T8."make_number" = T9."make_number") left outer join "models" T10 on (T8."make_number" = T10."make_number") and (T8."model_code" = T10."model_code")) left outer join "customers_suppliers" T11 on T11."customer_number" = T8."owner_number") left outer join "employees" T12 on (T8."salesman_number" <> 0) and (T8."salesman_number" = T12."salesman_number"))
+	(((((((((("journal_accountings" T1 left outer join "vehicles" T8 on (right(T1."vehicle_reference",17)) = T8."vin") left outer join "LOCOSOFT"."dbo"."dealer_vehicles" T2 on (T8."dealer_vehicle_type" = T2."dealer_vehicle_type") and (T8."dealer_vehicle_number" = T2."dealer_vehicle_number")) left outer join "customers_suppliers" T3 on T3."customer_number" = T8."holder_number") left outer join "accounts_characteristics" T5 on (((((T5."skr51_make" = T1."skr51_make") and (T5."skr51_cost_center" = T1."skr51_cost_center")) and (T5."skr51_sales_channel" = T1."skr51_sales_channel")) and (T5."skr51_cost_unit" = T1."skr51_cost_unit")) and (T5."skr51_branch" = T1."skr51_branch")) and (T5."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref")) left outer join "document_types" T6 on T6."document_type_in_journal" = T1."document_type") left outer join "invoices" T7 on T7."invtype_invnr" = T1."invoice_number") left outer join "makes" T9 on T8."make_number" = T9."make_number") left outer join "models" T10 on (T8."make_number" = T10."make_number") and (T8."model_code" = T10."model_code")) left outer join "customers_suppliers" T11 on T11."customer_number" = T8."owner_number") left outer join "employees" T12 on (T8."salesman_number" <> 0) and (T8."salesman_number" = T12."salesman_number"))
 where ((T4."nominal_account_number" = T1."nominal_account_number") and (T4."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref"))
 where ((T4."nominal_account_number" = T1."nominal_account_number") and (T4."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref"))
 and (((T4."is_profit_loss_account" = 'J') and (T1."vehicle_reference" <> ' ')) and (T1."nominal_account_number" IN (8000,8001,8010,8011,5002,8100,8110,8111,8200,8210,8510,8800,8820,8830,8870,8928,8934,7000,7010,7100,7101,7110,7111,7120,7200,7210,7240,7510,5001,5005,5006,5007,5008,5003,5004,4300,4560,4580,4530,4540,4590,4591,4690,4621,4622,4623,4500,4501,4502,4503,4504,5501,7220,7800,7850,7801,7802,7803,7804,7805,7806,7807,7820,7825,7827,7808,8030,7030,8870,8871,8872,8220,7220)))
 and (((T4."is_profit_loss_account" = 'J') and (T1."vehicle_reference" <> ' ')) and (T1."nominal_account_number" IN (8000,8001,8010,8011,5002,8100,8110,8111,8200,8210,8510,8800,8820,8830,8870,8928,8934,7000,7010,7100,7101,7110,7111,7120,7200,7210,7240,7510,5001,5005,5006,5007,5008,5003,5004,4300,4560,4580,4530,4540,4590,4591,4690,4621,4622,4623,4500,4501,4502,4503,4504,5501,7220,7800,7850,7801,7802,7803,7804,7805,7806,7807,7820,7825,7827,7808,8030,7030,8870,8871,8872,8220,7220)))
 ) D2
 ) D2

+ 250 - 250
System/LOCOSOFT/IQD/NW/LOC_Belege_NW_GW_VK_Stk_FIBU.sql

@@ -281,261 +281,261 @@ from
 	   "Dealer Vehicle Type_Vehicles" as "Dealer Vehicle Type_Vehicles",
 	   "Dealer Vehicle Type_Vehicles" as "Dealer Vehicle Type_Vehicles",
 	   "Dealer Vehicle Number_Vehicles" as "Dealer Vehicle Number_Vehicles"
 	   "Dealer Vehicle Number_Vehicles" as "Dealer Vehicle Number_Vehicles"
 from 
 from 
-(select c225 as "Accounting Date",
-	   c268 as "Document Type",
-	   c267 as "Document Number",
-	   c266 as "Position In Document",
-	   c265 as "Customer Number",
-	   c264 as "Nominal Account Number",
-	   c263 as "Is Balanced",
-	   c262 as "Clearing Number",
-	   c261 as "Document Date",
-	   c260 as "Posted Value",
-	   c259 as "Debit Or Credit",
-	   c258 as "Posted Count",
-	   c257 as "Branch Number",
-	   c256 as "Customer Contra Account",
-	   c255 as "Nominal Contra Account",
-	   c254 as "Contra Account Text",
-	   c253 as "Account Form Page Number",
-	   c252 as "Account Form Page Line",
-	   c251 as "Serial Number Each Month",
-	   c250 as "Employee Number",
-	   c150 as "Invoice Date_journal_accountings",
-	   c249 as "Invoice Number",
-	   c248 as "Dunning Level",
-	   c247 as "Last Dunning Date",
-	   c246 as "Journal Page",
-	   c245 as "Journal Line",
-	   c244 as "Cash Discount",
-	   c243 as "Term Of Payment",
-	   c242 as "Posting Text",
-	   c241 as "Vehicle Reference",
-	   c240 as "Vat Id Number",
-	   c239 as "Account Statement Number",
-	   c238 as "Account Statement Page",
-	   c237 as "Vat Key",
-	   c236 as "Days For Cash Discount",
-	   c235 as "Day Of Actual Accounting",
-	   c234 as "Skr51 Branch",
-	   c233 as "Skr51 Make",
-	   c232 as "Skr51 Cost Center",
-	   c231 as "Skr51 Sales Channel",
-	   c230 as "Skr51 Cost Unit",
-	   c229 as "Previously Used Account No",
-	   c228 as "Free Form Accounting Text",
-	   c227 as "Free Form Document Text",
-	   c226 as "Nom_Account_Is Profit Loss Account",
-	   c184 as "Rechtseinheit",
-	   c183 as "Betrieb",
-	   c225 as "Bookkeep Date",
-	   c224 as "Marke",
-	   c223 as "Text",
+(select "Accounting Date",
+	   "Document Type",
+	   "Document Number",
+	   "Position In Document",
+	   "Customer Number",
+	   "Nominal Account Number",
+	   "Is Balanced",
+	   "Clearing Number",
+	   "Document Date",
+	   "Posted Value",
+	   "Debit Or Credit",
+	   "Posted Count",
+	   "Branch Number",
+	   "Customer Contra Account",
+	   "Nominal Contra Account",
+	   "Contra Account Text",
+	   "Account Form Page Number",
+	   "Account Form Page Line",
+	   "Serial Number Each Month",
+	   "Employee Number",
+	   "Invoice Date_journal_accountings",
+	   "Invoice Number",
+	   "Dunning Level",
+	   "Last Dunning Date",
+	   "Journal Page",
+	   "Journal Line",
+	   "Cash Discount",
+	   "Term Of Payment",
+	   "Posting Text",
+	   "Vehicle Reference",
+	   "Vat Id Number",
+	   "Account Statement Number",
+	   "Account Statement Page",
+	   "Vat Key",
+	   "Days For Cash Discount",
+	   "Day Of Actual Accounting",
+	   "Skr51 Branch",
+	   "Skr51 Make",
+	   "Skr51 Cost Center",
+	   "Skr51 Sales Channel",
+	   "Skr51 Cost Unit",
+	   "Previously Used Account No",
+	   "Free Form Accounting Text",
+	   "Free Form Document Text",
+	   "Nom_Account_Is Profit Loss Account",
+	   "Rechtseinheit",
+	   "Betrieb",
+	   "Accounting Date" as "Bookkeep Date",
+	   "Marke",
+	   "Text",
 	   '1' as "Mandant",
 	   '1' as "Mandant",
-	   c222 as "Betrag_ori",
-	   c176 as "Konto_mit_Bezeichnung",
-	   c221 as "Menge",
-	   c220 as "Stellen Cost Center",
-	   c219 as "KST",
-	   c218 as "Stellen Sales Channel",
-	   c217 as "Absatzkanal",
-	   c216 as "Stellen Cost Unit",
-	   c215 as "Kostenträger_mit_Null",
-	   c214 as "Kostenträger",
-	   c213 as "GuV_Bilanz",
+	   "Betrag_ori",
+	   "Konto_mit_Bezeichnung",
+	   "Menge",
+	   "Stellen Cost Center",
+	   "KST",
+	   "Stellen Sales Channel",
+	   "Absatzkanal",
+	   "Stellen Cost Unit",
+	   "Kostenträger_mit_Null",
+	   "Kostenträger",
+	   "GuV_Bilanz",
 	   '3' as "Susa",
 	   '3' as "Susa",
-	   c212 as "Acct Nr_ori",
-	   c211 as "Document Type In Journal",
-	   c210 as "Document Type Description",
-	   c209 as "FZG_ja_nein",
-	   c208 as "Invoice Type_Invoices",
-	   c207 as "Invoice Number_Invoices",
-	   c206 as "Invoice Date_Invoices",
-	   c205 as "Is Canceled_Invoices",
-	   c204 as "Vehicle Number_Invoices",
-	   c203 as "Invoice_Date_1",
-	   c202 as "Internal Number_Vehicles",
-	   c201 as "Vin_Vehicles",
-	   c200 as "Dealer Vehicle Type",
-	   c199 as "Fahrzeugtyp",
-	   c198 as "Fahrzeugart",
-	   c197 as "Make Number_Vehicles",
-	   c196 as "Description_Make",
-	   c196 as "Fabrikat",
-	   c195 as "Model Code_Models",
-	   c194 as "Model_Detail",
-	   c193 as "Model",
-	   c192 as "Owner Number_Vehicles",
-	   c191 as "Holder Number_Vehicles",
-	   c190 as "First Name_Owner_Customer",
-	   c189 as "Family Name_Owner_Customer",
-	   c188 as "First Name_Holder_Customer",
-	   c187 as "Family Name_Holder_Customer",
-	   c186 as "Kunde",
-	   c185 as "Sales_Channel_FZG",
-	   c184 as "Hauptbetrieb",
-	   c183 as "Standort_alt",
-	   c182 as "Salesman Number_Vehicles",
-	   c181 as "Employee Number_Employees_Salesman",
-	   c180 as "Name_Employees_Salesman",
-	   c179 as "Verkäufer",
-	   c178 as "Standort_FZG_Verkauf",
-	   c177 as "FZG",
-	   c176 as "Konto",
-	   c175 as "Body Paint Code",
-	   c174 as "Body Paint Description",
-	   c174 as "Farbe",
-	   c173 as "Erlös FZG",
-	   c172 as "Nachlass",
-	   c171 as "VAK FZG",
-	   c170 as "Erlös Zulass.",
-	   c169 as "VAK Zulass.",
-	   c168 as "Erlös Gar.",
-	   c167 as "VAK Gar.",
-	   c166 as "Erlös Nachr./Aufb.",
-	   c165 as "VAK Nachr./Aufb.",
-	   c164 as "VAK Fertigm.",
-	   c163 as "Erlös Überf.",
-	   c162 as "VAK Überf.",
-	   c161 as "Erlös Sonst._8900",
-	   c160 as "Erlös Sonst.",
-	   c159 as "VAK Sonst.",
-	   c158 as "VAK intern",
-	   c157 as "Erlös Prov.",
-	   c156 as "Boni/VK-Hilfen",
-	   c155 as "Erlös ges.",
-	   c154 as "VAK ges.",
+	   "Acct Nr_ori",
+	   "Document Type In Journal",
+	   "Document Type Description",
+	   "FZG_ja_nein",
+	   "Invoice Type_Invoices",
+	   "Invoice Number_Invoices",
+	   "Invoice Date_Invoices",
+	   "Is Canceled_Invoices",
+	   "Vehicle Number_Invoices",
+	   "Invoice_Date_1",
+	   "Internal Number_Vehicles",
+	   "Vin_Vehicles",
+	   "Dealer Vehicle Type",
+	   "Fahrzeugtyp",
+	   "Fahrzeugart",
+	   "Make Number_Vehicles",
+	   "Description_Make",
+	   "Description_Make" as "Fabrikat",
+	   "Model Code_Models",
+	   "Model_Detail",
+	   "Model",
+	   "Owner Number_Vehicles",
+	   "Holder Number_Vehicles",
+	   "First Name_Owner_Customer",
+	   "Family Name_Owner_Customer",
+	   "First Name_Holder_Customer",
+	   "Family Name_Holder_Customer",
+	   "Kunde",
+	   "Sales_Channel_FZG",
+	   "Rechtseinheit" as "Hauptbetrieb",
+	   "Betrieb" as "Standort_alt",
+	   "Salesman Number_Vehicles",
+	   "Employee Number_Employees_Salesman",
+	   "Name_Employees_Salesman",
+	   "Verkäufer",
+	   "Standort_FZG_Verkauf",
+	   "FZG",
+	   "Konto_mit_Bezeichnung" as "Konto",
+	   "Body Paint Code",
+	   "Body Paint Description",
+	   "Body Paint Description" as "Farbe",
+	   "Erlös FZG",
+	   "Nachlass",
+	   "VAK FZG",
+	   "Erlös Zulass.",
+	   "VAK Zulass.",
+	   "Erlös Gar.",
+	   "VAK Gar.",
+	   "Erlös Nachr./Aufb.",
+	   "VAK Nachr./Aufb.",
+	   "VAK Fertigm.",
+	   "Erlös Überf.",
+	   "VAK Überf.",
+	   "Erlös Sonst._8900",
+	   "Erlös Sonst.",
+	   "VAK Sonst.",
+	   "VAK intern",
+	   "Erlös Prov.",
+	   "Boni/VK-Hilfen",
+	   "Erlös ges.",
+	   "VAK ges.",
 	   1 as "Menge_1",
 	   1 as "Menge_1",
-	   c149 as "Vehicle Reference_berechnet",
-	   c153 as "Acct Nr",
-	   c152 as "Dealer Vehicle Type_Vehicles",
-	   c151 as "Dealer Vehicle Number_Vehicles",
-	   MAX(c204) OVER (partition by c149) as c142,
-	   (CASE WHEN ((MAX(c203) OVER (partition by c149)) IS NULL) THEN ((c150)) ELSE ((MAX(c203) OVER (partition by c149))) END) as c143,
-	   (CASE WHEN ((SUM(c209) OVER (partition by c149)) > 0) THEN ('FZG-Geschäft') ELSE ('Buchungen ohne FZG-Geschäft') END) as c144
+	   "Vehicle Reference_berechnet",
+	   "Acct Nr",
+	   "Dealer Vehicle Type_Vehicles",
+	   "Dealer Vehicle Number_Vehicles",
+	   MAX("Vehicle Number_Invoices") OVER (partition by "Vehicle Reference_berechnet") as c142,
+	   (CASE WHEN ((MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet")) IS NULL) THEN (("Invoice Date_journal_accountings")) ELSE ((MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet"))) END) as c143,
+	   (CASE WHEN ((SUM("FZG_ja_nein") OVER (partition by "Vehicle Reference_berechnet")) > 0) THEN ('FZG-Geschäft') ELSE ('Buchungen ohne FZG-Geschäft') END) as c144
 from 
 from 
-(select (left(T1."vehicle_reference",8)) + '_' + (od_right(T1."vehicle_reference",17)) as c149,
-	   (cdate((nconvert((left(T1."invoice_date",4)) + (substring(T1."invoice_date", 6, 2)) + (substring(T1."invoice_date", 9, 2)))))) as c150,
-	   T6."dealer_vehicle_number" as c151,
-	   T6."dealer_vehicle_type" as c152,
-	   (ltrim(((left(((convert(varchar(50), T1."nominal_account_number"))))) + '_STK'))) as c153,
-	   (CASE WHEN (T1."nominal_account_number" IN (7000,7010,7100,7101,7110,7111,7120,7510)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + ((CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END)) + (CASE WHEN (T1."nominal_account_number" IN (5001,5005,5006,5007,5008,5003,5004)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7800,7850)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) as c154,
-	   (CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8111,8112,8510,8928,8934)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + ((CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END)) + (CASE WHEN (T1."nominal_account_number" IN (8800,8801,8870,8820,8830)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8001,8011,5002)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) as c155,
-	   CASE WHEN (T1."nominal_account_number" IN (7800,7850)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c156,
-	   CASE WHEN (T1."nominal_account_number" IN (8800,8801,8870,8820,8830)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c157,
-	   CASE WHEN (T1."nominal_account_number" IN (5001,5005,5006,5007,5008,5003,5004)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c158,
-	   (CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) as c159,
-	   (CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) as c160,
-	   CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c161,
-	   CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c162,
-	   CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c163,
-	   CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c164,
-	   CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c165,
-	   CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c166,
-	   CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c167,
-	   CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c168,
-	   CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c169,
-	   CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c170,
-	   CASE WHEN (T1."nominal_account_number" IN (7000,7010,7100,7101,7110,7111,7120,7510)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as c171,
-	   CASE WHEN (T1."nominal_account_number" IN (8001,8011,5002)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c172,
-	   CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8111,8112,8510,8928,8934)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as c173,
-	   T6."body_paint_description" as c174,
-	   T6."body_paint_code" as c175,
-	   ((left(((convert(varchar(50), T1."nominal_account_number"))))) + ' - ' + T2."account_description") as c176,
-	   (od_right(T6."vin",5)) + ' / ' + ((left(((convert(varchar(50), T6."internal_number")))))) + ' - ' + T8."description" + ' - ' + (CASE WHEN (T10."first_name" <> ' ') THEN ((left(((convert(varchar(50), T6."holder_number"))))) + ' - ' + T10."first_name" + ' ' + T10."family_name") ELSE ((left(((convert(varchar(50), T6."holder_number"))))) + ' - ' + T10."family_name") END) as c177,
-	   CASE WHEN (((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) and (T5."is_canceled" <> '1')) THEN (T1."skr51_branch") ELSE null END as c178,
-	   (left(((convert(varchar(50), T6."salesman_number"))))) + ' - ' + T11."name" as c179,
-	   T11."name" as c180,
-	   T11."employee_number" as c181,
-	   T6."salesman_number" as c182,
-	   ('0' + ((convert(varchar(50), T1."skr51_branch")))) as c183,
-	   T1."subsidiary_to_company_ref" as c184,
-	   CASE WHEN (((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) and (T5."is_canceled" <> '1')) THEN (T1."skr51_sales_channel") ELSE null END as c185,
-	   CASE WHEN (T10."first_name" <> ' ') THEN ((left(((convert(varchar(50), T6."holder_number"))))) + ' - ' + T10."first_name" + ' ' + T10."family_name") ELSE ((left(((convert(varchar(50), T6."holder_number"))))) + ' - ' + T10."family_name") END as c186,
-	   T10."family_name" as c187,
-	   T10."first_name" as c188,
-	   T9."family_name" as c189,
-	   T9."first_name" as c190,
-	   T6."holder_number" as c191,
-	   T6."owner_number" as c192,
-	   (left((ucase(T8."description")),3)) as c193,
-	   T8."description" as c194,
-	   T8."model_code" as c195,
-	   T7."description" as c196,
-	   T6."make_number" as c197,
-	   CASE WHEN ((CASE WHEN (((left(T1."vehicle_reference",1))) IN ('N')) THEN ('NW') WHEN (((left(T1."vehicle_reference",1))) IN ('V')) THEN ('VFW') WHEN (((left(T1."vehicle_reference",1))) IN ('G','D')) THEN ('GW') WHEN (((left(T1."vehicle_reference",1))) IN ('T')) THEN ('TZ') ELSE null END) IN ('VFW','TZ','NW')) THEN ('Neuwagen') ELSE ('Gebrauchtwagen') END as c198,
-	   CASE WHEN (((left(T1."vehicle_reference",1))) IN ('N')) THEN ('NW') WHEN (((left(T1."vehicle_reference",1))) IN ('V')) THEN ('VFW') WHEN (((left(T1."vehicle_reference",1))) IN ('G','D')) THEN ('GW') WHEN (((left(T1."vehicle_reference",1))) IN ('T')) THEN ('TZ') ELSE null END as c199,
-	   (left(T1."vehicle_reference",1)) as c200,
-	   T6."vin" as c201,
-	   T6."internal_number" as c202,
-	   CASE WHEN ((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) THEN (((cdate((nconvert((left(T1."invoice_date",4)) + (substring(T1."invoice_date", 6, 2)) + (substring(T1."invoice_date", 9, 2)))))))) ELSE null END as c203,
-	   T5."vehicle_number" as c204,
-	   T5."is_canceled" as c205,
-	   T5."invoice_date" as c206,
-	   T5."invoice_number" as c207,
-	   T5."invoice_type" as c208,
-	   CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END as c209,
-	   T4."document_type_description" as c210,
-	   T4."document_type_in_journal" as c211,
-	   (left(((convert(varchar(50), T1."nominal_account_number"))))) + '_STK' as c212,
-	   CASE WHEN (T2."is_profit_loss_account" = 'J') THEN ('2') ELSE ('1') END as c213,
-	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN (((rtrim(((convert(varchar(50), T1."skr51_make"))))) + ' - ' + (rtrim(((convert(varchar(50), T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name"))) ELSE ((rtrim(((convert(varchar(50), T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name")) END as c214,
-	   (rtrim(((convert(varchar(50), T1."skr51_make"))))) + ' - ' + (rtrim(((convert(varchar(50), T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name") as c215,
-	   (len(((convert(varchar(50), T1."skr51_cost_unit"))) + 'Z') - 1) as c216,
-	   (rtrim(((convert(varchar(50), T1."skr51_sales_channel"))))) + ' - ' + T3."skr51_sales_channel_name" as c217,
-	   (len(((convert(varchar(50), T1."skr51_sales_channel"))) + 'Z') - 1) as c218,
-	   (rtrim(((convert(varchar(50), T1."skr51_cost_center"))))) + ' - ' + T3."skr51_cost_center_name" as c219,
-	   (len(((convert(varchar(50), T1."skr51_cost_center"))) + 'Z') - 1) as c220,
-	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as c221,
-	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END as c222,
-	   CASE WHEN ((day((getdate()) - (convert(datetime, T1."accounting_date")))) <= 360) THEN (T1."invoice_number" + ' - ' + T1."posting_text" + '/' + T1."vehicle_reference" + ' - ' + ((convert(varchar(50), T1."employee_number")))) ELSE ('Buchungen älter 360 Tage') END as c223,
-	   (rtrim(((convert(varchar(50), T1."skr51_make"))))) + ' - ' + T3."skr51_make_description" as c224,
-	   T1."accounting_date" as c225,
-	   T2."is_profit_loss_account" as c226,
-	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T1."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T1."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T1."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T1."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as c227,
-	   T1."free_form_accounting_text" as c228,
-	   T1."previously_used_account_no" as c229,
-	   T1."skr51_cost_unit" as c230,
-	   T1."skr51_sales_channel" as c231,
-	   T1."skr51_cost_center" as c232,
-	   T1."skr51_make" as c233,
-	   T1."skr51_branch" as c234,
-	   T1."day_of_actual_accounting" as c235,
-	   T1."days_for_cash_discount" as c236,
-	   T1."vat_key" as c237,
-	   T1."account_statement_page" as c238,
-	   T1."account_statement_number" as c239,
-	   T1."vat_id_number" as c240,
-	   T1."vehicle_reference" as c241,
-	   T1."posting_text" as c242,
-	   T1."term_of_payment" as c243,
-	   T1."cash_discount" as c244,
-	   T1."journal_line" as c245,
-	   T1."journal_page" as c246,
-	   T1."last_dunning_date" as c247,
-	   T1."dunning_level" as c248,
-	   T1."invoice_number" as c249,
-	   T1."employee_number" as c250,
-	   T1."serial_number_each_month" as c251,
-	   T1."account_form_page_line" as c252,
-	   T1."account_form_page_number" as c253,
-	   T1."contra_account_text" as c254,
-	   T1."nominal_contra_account" as c255,
-	   T1."customer_contra_account" as c256,
-	   T1."branch_number" as c257,
-	   T1."posted_count" as c258,
-	   T1."debit_or_credit" as c259,
-	   T1."posted_value" as c260,
-	   T1."document_date" as c261,
-	   T1."clearing_number" as c262,
-	   T1."is_balanced" as c263,
-	   T1."nominal_account_number" as c264,
-	   T1."customer_number" as c265,
-	   T1."position_in_document" as c266,
-	   T1."document_number" as c267,
-	   T1."document_type" as c268
+(select (left(T1."vehicle_reference",8)) + '_' + (right(T1."vehicle_reference",17)) as "Vehicle Reference_berechnet",
+	   (((nconvert((left(T1."invoice_date",4)) + (substring(T1."invoice_date", 6, 2)) + (substring(T1."invoice_date", 9, 2)))))) as "Invoice Date_journal_accountings",
+	   T6."dealer_vehicle_number" as "Dealer Vehicle Number_Vehicles",
+	   T6."dealer_vehicle_type" as "Dealer Vehicle Type_Vehicles",
+	   (ltrim(((left((((T1."nominal_account_number"))),4)) + '_STK'))) as "Acct Nr",
+	   (CASE WHEN (T1."nominal_account_number" IN (7000,7010,7100,7101,7110,7111,7120,7510)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + ((CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END)) + (CASE WHEN (T1."nominal_account_number" IN (5001,5005,5006,5007,5008,5003,5004)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7800,7850)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) as "VAK ges.",
+	   (CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8111,8112,8510,8928,8934)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + ((CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END)) + (CASE WHEN (T1."nominal_account_number" IN (8800,8801,8870,8820,8830)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8001,8011,5002)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) as "Erlös ges.",
+	   CASE WHEN (T1."nominal_account_number" IN (7800,7850)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "Boni/VK-Hilfen",
+	   CASE WHEN (T1."nominal_account_number" IN (8800,8801,8870,8820,8830)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Prov.",
+	   CASE WHEN (T1."nominal_account_number" IN (5001,5005,5006,5007,5008,5003,5004)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK intern",
+	   (CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) as "VAK Sonst.",
+	   (CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) as "Erlös Sonst.",
+	   CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Sonst._8900",
+	   CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Überf.",
+	   CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Überf.",
+	   CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Fertigm.",
+	   CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Nachr./Aufb.",
+	   CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Nachr./Aufb.",
+	   CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Gar.",
+	   CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Gar.",
+	   CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Zulass.",
+	   CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Zulass.",
+	   CASE WHEN (T1."nominal_account_number" IN (7000,7010,7100,7101,7110,7111,7120,7510)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK FZG",
+	   CASE WHEN (T1."nominal_account_number" IN (8001,8011,5002)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Nachlass",
+	   CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8111,8112,8510,8928,8934)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös FZG",
+	   T6."body_paint_description" as "Body Paint Description",
+	   T6."body_paint_code" as "Body Paint Code",
+	   ((left((((T1."nominal_account_number"))),4)) + ' - ' + T2."account_description") as "Konto_mit_Bezeichnung",
+	   (right(T6."vin",5)) + ' / ' + ((left((((T6."internal_number"))),5))) + ' - ' + T8."description" + ' - ' + (CASE WHEN (T10."first_name" <> ' ') THEN ((left((((T6."holder_number"))),6)) + ' - ' + T10."first_name" + ' ' + T10."family_name") ELSE ((left((((T6."holder_number"))),6)) + ' - ' + T10."family_name") END) as "FZG",
+	   CASE WHEN (((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) and (T5."is_canceled" <> '1')) THEN (T1."skr51_branch") ELSE null END as "Standort_FZG_Verkauf",
+	   (left((((T6."salesman_number"))),3)) + ' - ' + T11."name" as "Verkäufer",
+	   T11."name" as "Name_Employees_Salesman",
+	   T11."employee_number" as "Employee Number_Employees_Salesman",
+	   T6."salesman_number" as "Salesman Number_Vehicles",
+	   ('0' + (((T1."skr51_branch")))) as "Betrieb",
+	   T1."subsidiary_to_company_ref" as "Rechtseinheit",
+	   CASE WHEN (((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) and (T5."is_canceled" <> '1')) THEN (T1."skr51_sales_channel") ELSE null END as "Sales_Channel_FZG",
+	   CASE WHEN (T10."first_name" <> ' ') THEN ((left((((T6."holder_number"))),6)) + ' - ' + T10."first_name" + ' ' + T10."family_name") ELSE ((left((((T6."holder_number"))),6)) + ' - ' + T10."family_name") END as "Kunde",
+	   T10."family_name" as "Family Name_Holder_Customer",
+	   T10."first_name" as "First Name_Holder_Customer",
+	   T9."family_name" as "Family Name_Owner_Customer",
+	   T9."first_name" as "First Name_Owner_Customer",
+	   T6."holder_number" as "Holder Number_Vehicles",
+	   T6."owner_number" as "Owner Number_Vehicles",
+	   (left((ucase(T8."description")),3)) as "Model",
+	   T8."description" as "Model_Detail",
+	   T8."model_code" as "Model Code_Models",
+	   T7."description" as "Description_Make",
+	   T6."make_number" as "Make Number_Vehicles",
+	   CASE WHEN ((CASE WHEN (((left(T1."vehicle_reference",1))) IN ('N')) THEN ('NW') WHEN (((left(T1."vehicle_reference",1))) IN ('V')) THEN ('VFW') WHEN (((left(T1."vehicle_reference",1))) IN ('G','D')) THEN ('GW') WHEN (((left(T1."vehicle_reference",1))) IN ('T')) THEN ('TZ') ELSE null END) IN ('VFW','TZ','NW')) THEN ('Neuwagen') ELSE ('Gebrauchtwagen') END as "Fahrzeugart",
+	   CASE WHEN (((left(T1."vehicle_reference",1))) IN ('N')) THEN ('NW') WHEN (((left(T1."vehicle_reference",1))) IN ('V')) THEN ('VFW') WHEN (((left(T1."vehicle_reference",1))) IN ('G','D')) THEN ('GW') WHEN (((left(T1."vehicle_reference",1))) IN ('T')) THEN ('TZ') ELSE null END as "Fahrzeugtyp",
+	   (left(T1."vehicle_reference",1)) as "Dealer Vehicle Type",
+	   T6."vin" as "Vin_Vehicles",
+	   T6."internal_number" as "Internal Number_Vehicles",
+	   CASE WHEN ((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) THEN (((((nconvert((left(T1."invoice_date",4)) + (substring(T1."invoice_date", 6, 2)) + (substring(T1."invoice_date", 9, 2)))))))) ELSE null END as "Invoice_Date_1",
+	   T5."vehicle_number" as "Vehicle Number_Invoices",
+	   T5."is_canceled" as "Is Canceled_Invoices",
+	   T5."invoice_date" as "Invoice Date_Invoices",
+	   T5."invoice_number" as "Invoice Number_Invoices",
+	   T5."invoice_type" as "Invoice Type_Invoices",
+	   CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END as "FZG_ja_nein",
+	   T4."document_type_description" as "Document Type Description",
+	   T4."document_type_in_journal" as "Document Type In Journal",
+	   (left((((T1."nominal_account_number"))),4)) + '_STK' as "Acct Nr_ori",
+	   CASE WHEN (T2."is_profit_loss_account" = 'J') THEN ('2') ELSE ('1') END as "GuV_Bilanz",
+	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN (((rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name"))) ELSE ((rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name")) END as "Kostenträger",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name") as "Kostenträger_mit_Null",
+	   (len((((T1."skr51_cost_unit"))) + 'Z') - 1) as "Stellen Cost Unit",
+	   (rtrim((((T1."skr51_sales_channel"))))) + ' - ' + T3."skr51_sales_channel_name" as "Absatzkanal",
+	   (len((((T1."skr51_sales_channel"))) + 'Z') - 1) as "Stellen Sales Channel",
+	   (rtrim((((T1."skr51_cost_center"))))) + ' - ' + T3."skr51_cost_center_name" as "KST",
+	   (len((((T1."skr51_cost_center"))) + 'Z') - 1) as "Stellen Cost Center",
+	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as "Menge",
+	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END as "Betrag_ori",
+	   CASE WHEN ((-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date")))) <= 360) THEN (T1."invoice_number" + ' - ' + T1."posting_text" + '/' + T1."vehicle_reference" + ' - ' + (((T1."employee_number")))) ELSE ('Buchungen älter 360 Tage') END as "Text",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + T3."skr51_make_description" as "Marke",
+	   T1."accounting_date" as "Accounting Date",
+	   T2."is_profit_loss_account" as "Nom_Account_Is Profit Loss Account",
+	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T1."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T1."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T1."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T1."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as "Free Form Document Text",
+	   T1."free_form_accounting_text" as "Free Form Accounting Text",
+	   T1."previously_used_account_no" as "Previously Used Account No",
+	   T1."skr51_cost_unit" as "Skr51 Cost Unit",
+	   T1."skr51_sales_channel" as "Skr51 Sales Channel",
+	   T1."skr51_cost_center" as "Skr51 Cost Center",
+	   T1."skr51_make" as "Skr51 Make",
+	   T1."skr51_branch" as "Skr51 Branch",
+	   T1."day_of_actual_accounting" as "Day Of Actual Accounting",
+	   T1."days_for_cash_discount" as "Days For Cash Discount",
+	   T1."vat_key" as "Vat Key",
+	   T1."account_statement_page" as "Account Statement Page",
+	   T1."account_statement_number" as "Account Statement Number",
+	   T1."vat_id_number" as "Vat Id Number",
+	   T1."vehicle_reference" as "Vehicle Reference",
+	   T1."posting_text" as "Posting Text",
+	   T1."term_of_payment" as "Term Of Payment",
+	   T1."cash_discount" as "Cash Discount",
+	   T1."journal_line" as "Journal Line",
+	   T1."journal_page" as "Journal Page",
+	   T1."last_dunning_date" as "Last Dunning Date",
+	   T1."dunning_level" as "Dunning Level",
+	   T1."invoice_number" as "Invoice Number",
+	   T1."employee_number" as "Employee Number",
+	   T1."serial_number_each_month" as "Serial Number Each Month",
+	   T1."account_form_page_line" as "Account Form Page Line",
+	   T1."account_form_page_number" as "Account Form Page Number",
+	   T1."contra_account_text" as "Contra Account Text",
+	   T1."nominal_contra_account" as "Nominal Contra Account",
+	   T1."customer_contra_account" as "Customer Contra Account",
+	   T1."branch_number" as "Branch Number",
+	   T1."posted_count" as "Posted Count",
+	   T1."debit_or_credit" as "Debit Or Credit",
+	   T1."posted_value" as "Posted Value",
+	   T1."document_date" as "Document Date",
+	   T1."clearing_number" as "Clearing Number",
+	   T1."is_balanced" as "Is Balanced",
+	   T1."nominal_account_number" as "Nominal Account Number",
+	   T1."customer_number" as "Customer Number",
+	   T1."position_in_document" as "Position In Document",
+	   T1."document_number" as "Document Number",
+	   T1."document_type" as "Document Type"
 from "nominal_accounts" T2,
 from "nominal_accounts" T2,
-	((((((((("journal_accountings" T1 left outer join "accounts_characteristics" T3 on (((((T3."skr51_make" = T1."skr51_make") and (T3."skr51_cost_center" = T1."skr51_cost_center")) and (T3."skr51_sales_channel" = T1."skr51_sales_channel")) and (T3."skr51_cost_unit" = T1."skr51_cost_unit")) and (T3."skr51_branch" = T1."skr51_branch")) and (T3."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref")) left outer join "document_types" T4 on T4."document_type_in_journal" = T1."document_type") left outer join "invoices" T5 on T5."invtype_invnr" = T1."invoice_number") left outer join "vehicles" T6 on (od_right(T1."vehicle_reference",17)) = T6."vin") left outer join "makes" T7 on T6."make_number" = T7."make_number") left outer join "models" T8 on (T6."make_number" = T8."make_number") and (T6."model_code" = T8."model_code")) left outer join "customers_suppliers" T9 on T9."customer_number" = T6."owner_number") left outer join "customers_suppliers" T10 on T10."customer_number" = T6."holder_number") left outer join "employees" T11 on (T6."salesman_number" <> 0) and (T6."salesman_number" = T11."salesman_number"))
+	((((((((("journal_accountings" T1 left outer join "accounts_characteristics" T3 on (((((T3."skr51_make" = T1."skr51_make") and (T3."skr51_cost_center" = T1."skr51_cost_center")) and (T3."skr51_sales_channel" = T1."skr51_sales_channel")) and (T3."skr51_cost_unit" = T1."skr51_cost_unit")) and (T3."skr51_branch" = T1."skr51_branch")) and (T3."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref")) left outer join "document_types" T4 on T4."document_type_in_journal" = T1."document_type") left outer join "invoices" T5 on T5."invtype_invnr" = T1."invoice_number") left outer join "vehicles" T6 on (right(T1."vehicle_reference",17)) = T6."vin") left outer join "makes" T7 on T6."make_number" = T7."make_number") left outer join "models" T8 on (T6."make_number" = T8."make_number") and (T6."model_code" = T8."model_code")) left outer join "customers_suppliers" T9 on T9."customer_number" = T6."owner_number") left outer join "customers_suppliers" T10 on T10."customer_number" = T6."holder_number") left outer join "employees" T11 on (T6."salesman_number" <> 0) and (T6."salesman_number" = T11."salesman_number"))
 where ((T2."nominal_account_number" = T1."nominal_account_number") and (T2."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref"))
 where ((T2."nominal_account_number" = T1."nominal_account_number") and (T2."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref"))
 and ((((T2."is_profit_loss_account" = 'J') and (T1."vehicle_reference" <> ' ')) and (T1."nominal_account_number" IN (8000,8001,8010,8011,5002,8100,8110,8111,8200,8210,8510,8800,8820,8830,8870,8928,8934,7000,7010,7100,7101,7110,7111,7120,7200,7210,7240,7510,7800,7850,5001,5005,5006,5007,5008,5003,5004))) and ((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1))
 and ((((T2."is_profit_loss_account" = 'J') and (T1."vehicle_reference" <> ' ')) and (T1."nominal_account_number" IN (8000,8001,8010,8011,5002,8100,8110,8111,8200,8210,8510,8800,8820,8830,8870,8928,8934,7000,7010,7100,7101,7110,7111,7120,7200,7210,7240,7510,7800,7850,5001,5005,5006,5007,5008,5003,5004))) and ((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1))
 ) D2
 ) D2

+ 184 - 184
System/LOCOSOFT/IQD/NW/NW_GW_BE_auf_NW_GW_Bestand_Cat.sql

@@ -1,6 +1,6 @@
 select convert(date, '1900-01-01') as "Accounting Date",
 select convert(date, '1900-01-01') as "Accounting Date",
 	   '' as "Document Type",
 	   '' as "Document Type",
-	   0 as "Document Number",
+	   0 as "Document Number_2",
 	   0 as "Position In Document",
 	   0 as "Position In Document",
 	   0 as "Customer Number",
 	   0 as "Customer Number",
 	   0 as "Nominal Account Number",
 	   0 as "Nominal Account Number",
@@ -40,8 +40,8 @@ select convert(date, '1900-01-01') as "Accounting Date",
 	   0 as "Skr51 Sales Channel",
 	   0 as "Skr51 Sales Channel",
 	   0 as "Skr51 Cost Unit",
 	   0 as "Skr51 Cost Unit",
 	   '' as "Previously Used Account No",
 	   '' as "Previously Used Account No",
-	   c252 as "Free Form Accounting Text",
-	   c251 as "Free Form Document Text",
+	   "Free Form Accounting Text",
+	   "Free Form Document Text",
 	   '' as "Nom_Account_Is Profit Loss Account",
 	   '' as "Nom_Account_Is Profit Loss Account",
 	   '1' as "Rechtseinheit",
 	   '1' as "Rechtseinheit",
 	   '' as "Betrieb",
 	   '' as "Betrieb",
@@ -63,190 +63,190 @@ select convert(date, '1900-01-01') as "Accounting Date",
 	   '' as "Susa",
 	   '' as "Susa",
 	   '' as "Acct Nr",
 	   '' as "Acct Nr",
 	   0 as "Stellen_Konto_Nr",
 	   0 as "Stellen_Konto_Nr",
-	   SUM(0) OVER (partition by c166) as "Summe_Betrag",
-	   c167 as "Internal Number_ori",
-	   c250 as "Vin",
-	   c249 as "License Plate",
-	   c248 as "License Plate Country",
-	   c247 as "License Plate Season",
-	   c246 as "Make Number",
-	   c245 as "Free Form Make Text",
-	   c244 as "Model Code",
-	   c243 as "Free Form Model Text",
-	   c242 as "Is Roadworthy",
-	   c241 as "Is Customer Vehicle",
-	   c240 as "Dealer Vehicle Type",
-	   c239 as "Dealer Vehicle Number",
-	   c173 as "First Registration Date",
-	   c238 as "Readmission Date",
-	   c237 as "Next Service Date",
-	   c236 as "Next Service Km",
-	   c235 as "Next Service Miles",
-	   c234 as "Production Year",
-	   c233 as "Owner Number",
-	   c232 as "Holder Number",
-	   c231 as "Previous Owner Number",
-	   c230 as "Previous Owner Counter",
-	   c229 as "Last Holder Change Date",
-	   c228 as "German Kba Hsn",
-	   c227 as "German Kba Tsn",
-	   c226 as "Austria Nat Code",
-	   c225 as "Is Prefer Km",
-	   c224 as "Mileage Km",
-	   c223 as "Mileage Miles",
-	   c222 as "Odometer Reading Date",
-	   c221 as "Engine Number",
-	   c220 as "Gear Number",
-	   c219 as "Unloaded Weight",
-	   c218 as "Gross Vehicle Weight",
-	   c217 as "Power Kw",
-	   c216 as "Cubic Capacity",
-	   c215 as "Is All Accidents Repaired",
-	   c214 as "Accidents Counter",
-	   c213 as "Has Tyre Pressure Sensor",
-	   c212 as "Carkey Number",
-	   c211 as "Internal Source Flag",
-	   c210 as "Emission Code",
-	   c209 as "First Sold Country",
-	   c208 as "First Sold Dealer Code",
-	   c207 as "Body Paint Code",
-	   c178 as "Body Paint Description",
-	   c206 as "Is Body Paint Metallic",
-	   c205 as "Interior Paint Code",
-	   c204 as "Interior Paint Description",
-	   c203 as "Trim Code",
-	   c202 as "Trim Description",
-	   c201 as "Fine Dust Label",
-	   c200 as "Internal Assignment",
-	   c199 as "Ricambi Free Input",
-	   c198 as "Document Number",
-	   c197 as "Salesman Number",
-	   c196 as "Sale Date",
-	   c195 as "Next Emission Test Date",
-	   c194 as "Next General Inspection Date",
-	   c193 as "Next Rust Inspection Date",
-	   c192 as "Next Exceptional Inspection Da",
-	   c191 as "Last Change Date",
-	   c190 as "Last Change Employee No",
-	   c189 as "Created Date",
-	   c188 as "Created Employee No",
-	   c187 as "Last Change Subsidiary",
-	   MIN(convert(date, '1900-01-01')) OVER (partition by c166) as "Minimum_Accounting_Date",
-	   c186 as "Hauptbetrieb",
-	   c185 as "Standort",
-	   c184 as "Description_Makes",
-	   c184 as "Fabrikat",
-	   c183 as "Description_Models",
-	   c182 as "Model_Detail",
-	   c181 as "Model",
-	   c180 as "Fahrzeugtyp",
-	   c179 as "Fahrzeugart",
-	   c178 as "Farbe",
-	   c177 as "Customer Number_Vorbesitzer",
-	   c176 as "First Name_Vorbesitzer",
-	   c175 as "Family Name_Vorbesitzer",
-	   c174 as "Vorbesitzer",
-	   c173 as "Zulassungsdatum",
+	   SUM(0) OVER (partition by "Vehicle_Reference_berechnet") as "Summe_Betrag",
+	   "Internal Number_ori",
+	   "Vin",
+	   "License Plate",
+	   "License Plate Country",
+	   "License Plate Season",
+	   "Make Number",
+	   "Free Form Make Text",
+	   "Model Code",
+	   "Free Form Model Text",
+	   "Is Roadworthy",
+	   "Is Customer Vehicle",
+	   "Dealer Vehicle Type",
+	   "Dealer Vehicle Number",
+	   "First Registration Date",
+	   "Readmission Date",
+	   "Next Service Date",
+	   "Next Service Km",
+	   "Next Service Miles",
+	   "Production Year",
+	   "Owner Number",
+	   "Holder Number",
+	   "Previous Owner Number",
+	   "Previous Owner Counter",
+	   "Last Holder Change Date",
+	   "German Kba Hsn",
+	   "German Kba Tsn",
+	   "Austria Nat Code",
+	   "Is Prefer Km",
+	   "Mileage Km",
+	   "Mileage Miles",
+	   "Odometer Reading Date",
+	   "Engine Number",
+	   "Gear Number",
+	   "Unloaded Weight",
+	   "Gross Vehicle Weight",
+	   "Power Kw",
+	   "Cubic Capacity",
+	   "Is All Accidents Repaired",
+	   "Accidents Counter",
+	   "Has Tyre Pressure Sensor",
+	   "Carkey Number",
+	   "Internal Source Flag",
+	   "Emission Code",
+	   "First Sold Country",
+	   "First Sold Dealer Code",
+	   "Body Paint Code",
+	   "Body Paint Description",
+	   "Is Body Paint Metallic",
+	   "Interior Paint Code",
+	   "Interior Paint Description",
+	   "Trim Code",
+	   "Trim Description",
+	   "Fine Dust Label",
+	   "Internal Assignment",
+	   "Ricambi Free Input",
+	   "Document Number",
+	   "Salesman Number",
+	   "Sale Date",
+	   "Next Emission Test Date",
+	   "Next General Inspection Date",
+	   "Next Rust Inspection Date",
+	   "Next Exceptional Inspection Da",
+	   "Last Change Date",
+	   "Last Change Employee No",
+	   "Created Date",
+	   "Created Employee No",
+	   "Last Change Subsidiary",
+	   MIN(convert(date, '1900-01-01')) OVER (partition by "Vehicle_Reference_berechnet") as "Minimum_Accounting_Date",
+	   "Hauptbetrieb",
+	   "Standort",
+	   "Description_Makes",
+	   "Description_Makes" as "Fabrikat",
+	   "Description_Models",
+	   "Model_Detail",
+	   "Model",
+	   "Fahrzeugtyp",
+	   "Fahrzeugart",
+	   "Body Paint Description" as "Farbe",
+	   "Customer Number_Vorbesitzer",
+	   "First Name_Vorbesitzer",
+	   "Family Name_Vorbesitzer",
+	   "Vorbesitzer",
+	   "First Registration Date" as "Zulassungsdatum",
 	   1 as "Menge_1",
 	   1 as "Menge_1",
-	   COUNT(c239) OVER (partition by c166) as "Menge_2",
-	   1 / (COUNT(c239) OVER (partition by c166)) as "Menge",
-	   c172 as "Einsatz",
-	   CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT(c239) OVER (partition by c166))))) ELSE ((c169) / (COUNT(c239) OVER (partition by c166))) END as "Standtage_Berechnung",
-	   (c171) / (COUNT(c239) OVER (partition by c166)) as "Standtage",
-	   CASE WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT(c239) OVER (partition by c166))))) ELSE ((c169) / (COUNT(c239) OVER (partition by c166))) END) BETWEEN 0 AND 30) THEN ('0 - 30 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT(c239) OVER (partition by c166))))) ELSE ((c169) / (COUNT(c239) OVER (partition by c166))) END) BETWEEN 31 AND 60) THEN ('31 - 60 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT(c239) OVER (partition by c166))))) ELSE ((c169) / (COUNT(c239) OVER (partition by c166))) END) BETWEEN 61 AND 90) THEN ('61 - 90 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT(c239) OVER (partition by c166))))) ELSE ((c169) / (COUNT(c239) OVER (partition by c166))) END) BETWEEN 91 AND 180) THEN ('91 - 180 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT(c239) OVER (partition by c166))))) ELSE ((c169) / (COUNT(c239) OVER (partition by c166))) END) BETWEEN 181 AND 360) THEN ('181 - 360 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT(c239) OVER (partition by c166))))) ELSE ((c169) / (COUNT(c239) OVER (partition by c166))) END) > 360) THEN ('> 360 Tage') ELSE null END as "Standtagestaffel",
-	   (@CURRENT_DATE) as "Heute",
-	   c168 as "FZG",
-	   c166 as "Vehicle_Reference_berechnet",
-	   c167 as "Internal Number"
+	   COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet") as "Menge_2",
+	   1 / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet")) as "Menge",
+	   "Einsatz",
+	   CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))))) ELSE ((c169) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))) END as "Standtage_Berechnung",
+	   (c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet")) as "Standtage",
+	   CASE WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))))) ELSE ((c169) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))) END) BETWEEN 0 AND 30) THEN ('0 - 30 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))))) ELSE ((c169) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))) END) BETWEEN 31 AND 60) THEN ('31 - 60 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))))) ELSE ((c169) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))) END) BETWEEN 61 AND 90) THEN ('61 - 90 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))))) ELSE ((c169) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))) END) BETWEEN 91 AND 180) THEN ('91 - 180 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))))) ELSE ((c169) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))) END) BETWEEN 181 AND 360) THEN ('181 - 360 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))))) ELSE ((c169) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))) END) > 360) THEN ('> 360 Tage') ELSE null END as "Standtagestaffel",
+	   (getdate()) as "Heute",
+	   "FZG",
+	   "Vehicle_Reference_berechnet",
+	   "Internal Number_ori" as "Internal Number"
 from 
 from 
-(select ((T1."dealer_vehicle_type" + (rtrim(((convert(varchar(50), T1."dealer_vehicle_number"))))))) as c166,
-	   T2."internal_number" as c167,
-	   ((T1."dealer_vehicle_type" + (rtrim(((convert(varchar(50), T1."dealer_vehicle_number"))))))) + ' - ' + (substring((CASE WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) IS NULL) THEN ('keine Angabe') WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) LIKE '???%') THEN ('???') ELSE ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END)) END), 1, 170)) as c168,
-	   day((getdate()) - T1."in_buy_invoice_no_date") as c169,
+(select ((T1."dealer_vehicle_type" + (rtrim((((T1."dealer_vehicle_number"))))))) as "Vehicle_Reference_berechnet",
+	   T2."internal_number" as "Internal Number_ori",
+	   ((T1."dealer_vehicle_type" + (rtrim((((T1."dealer_vehicle_number"))))))) + ' - ' + (substring((CASE WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) IS NULL) THEN ('keine Angabe') WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) LIKE '???%') THEN ('???') ELSE ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END)) END), 1, 170)) as "FZG",
+	   -1 * datediff(day, (getdate()), T1."in_buy_invoice_no_date") as c169,
 	   T1."in_buy_invoice_no_date" as c170,
 	   T1."in_buy_invoice_no_date" as c170,
-	   day((getdate()) - T1."in_arrival_date") as c171,
-	   T1."calc_basic_charge" + T1."calc_accessory" + T1."calc_extra_expenses" + T1."calc_usage_value_encr_external" + T1."calc_usage_value_encr_internal" + T1."calc_usage_value_encr_other" + T1."calc_total_writedown" + T1."calc_commission_for_arranging" + T1."calc_cost_internal_invoices" + T1."calc_cost_other" + T1."calc_returns_workshop" + (T1."calc_sales_aid" + T1."calc_sales_aid_finish" + T1."calc_sales_aid_bonus") * -1 as c172,
-	   T2."first_registration_date" as c173,
-	   (left(((convert(varchar(50), T5."customer_number"))))) + ' - ' + T5."first_name" + ' ' + T5."family_name" as c174,
-	   T5."family_name" as c175,
-	   T5."first_name" as c176,
-	   T5."customer_number" as c177,
-	   T2."body_paint_description" as c178,
-	   CASE WHEN ((CASE WHEN ((left(T2."dealer_vehicle_type",1)) IN ('N')) THEN ('NW') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('V')) THEN ('VFW') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('D')) THEN ('GW diff.') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('G')) THEN ('GW regel.') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('T')) THEN ('TZ') ELSE null END) IN ('VFW','TZ','NW')) THEN ('Neuwagen') ELSE ('Gebrauchtwagen') END as c179,
-	   CASE WHEN ((left(T2."dealer_vehicle_type",1)) IN ('N')) THEN ('NW') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('V')) THEN ('VFW') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('D')) THEN ('GW diff.') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('G')) THEN ('GW regel.') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('T')) THEN ('TZ') ELSE null END as c180,
-	   (substring((upper((CASE WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) IS NULL) THEN ('keine Angabe') WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) LIKE '???%') THEN ('???') ELSE ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END)) END))), 1, 3)) as c181,
-	   CASE WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) IS NULL) THEN ('keine Angabe') WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) LIKE '???%') THEN ('???') ELSE ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END)) END as c182,
-	   CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END as c183,
-	   T3."description" as c184,
-	   '0' + ((convert(varchar(50), T1."in_subsidiary"))) as c185,
-	   CASE WHEN (('0' + ((convert(varchar(50), T1."in_subsidiary")))) = '015                                                                                                                                                                                                                                                            ') THEN ('15') ELSE (T1."client_db") END as c186,
-	   T2."last_change_subsidiary" as c187,
-	   T2."created_employee_no" as c188,
-	   T2."created_date" as c189,
-	   T2."last_change_employee_no" as c190,
-	   T2."last_change_date" as c191,
-	   T2."next_exceptional_inspection_da" as c192,
-	   T2."next_rust_inspection_date" as c193,
-	   T2."next_general_inspection_date" as c194,
-	   T2."next_emission_test_date" as c195,
-	   T2."sale_date" as c196,
-	   T2."salesman_number" as c197,
-	   T2."document_number" as c198,
-	   T2."ricambi_free_input" as c199,
-	   T2."internal_assignment" as c200,
-	   T2."fine_dust_label" as c201,
-	   T2."trim_description" as c202,
-	   T2."trim_code" as c203,
-	   T2."interior_paint_description" as c204,
-	   T2."interior_paint_code" as c205,
-	   T2."is_body_paint_metallic" as c206,
-	   T2."body_paint_code" as c207,
-	   T2."first_sold_dealer_code" as c208,
-	   T2."first_sold_country" as c209,
-	   T2."emission_code" as c210,
-	   T2."internal_source_flag" as c211,
-	   T2."carkey_number" as c212,
-	   T2."has_tyre_pressure_sensor" as c213,
-	   T2."accidents_counter" as c214,
-	   T2."is_all_accidents_repaired" as c215,
-	   T2."cubic_capacity" as c216,
-	   T2."power_kw" as c217,
-	   T2."gross_vehicle_weight" as c218,
-	   T2."unloaded_weight" as c219,
-	   T2."gear_number" as c220,
-	   T2."engine_number" as c221,
-	   T2."odometer_reading_date" as c222,
-	   T2."mileage_miles" as c223,
-	   T2."mileage_km" as c224,
-	   T2."is_prefer_km" as c225,
-	   T2."austria_nat_code" as c226,
-	   T2."german_kba_tsn" as c227,
-	   T2."german_kba_hsn" as c228,
-	   T2."last_holder_change_date" as c229,
-	   T2."previous_owner_counter" as c230,
-	   T2."previous_owner_number" as c231,
-	   T2."holder_number" as c232,
-	   T2."owner_number" as c233,
-	   T2."production_year" as c234,
-	   T2."next_service_miles" as c235,
-	   T2."next_service_km" as c236,
-	   T2."next_service_date" as c237,
-	   T2."readmission_date" as c238,
-	   T2."dealer_vehicle_number" as c239,
-	   T2."dealer_vehicle_type" as c240,
-	   T2."is_customer_vehicle" as c241,
-	   T2."is_roadworthy" as c242,
-	   T2."free_form_model_text" as c243,
-	   T2."model_code" as c244,
-	   T2."free_form_make_text" as c245,
-	   T2."make_number" as c246,
-	   T2."license_plate_season" as c247,
-	   T2."license_plate_country" as c248,
-	   T2."license_plate" as c249,
-	   T2."vin" as c250,
-	   (rtrim(((convert(varchar(50), T1."dealer_vehicle_number"))))) as c251,
-	   T1."dealer_vehicle_type" + (rtrim(((convert(varchar(50), T1."dealer_vehicle_number"))))) as c252
+	   -1 * datediff(day, (getdate()), T1."in_arrival_date") as c171,
+	   T1."calc_basic_charge" + T1."calc_accessory" + T1."calc_extra_expenses" + T1."calc_usage_value_encr_external" + T1."calc_usage_value_encr_internal" + T1."calc_usage_value_encr_other" + T1."calc_total_writedown" + T1."calc_commission_for_arranging" + T1."calc_cost_internal_invoices" + T1."calc_cost_other" + T1."calc_returns_workshop" + (T1."calc_sales_aid" + T1."calc_sales_aid_finish" + T1."calc_sales_aid_bonus") * -1 as "Einsatz",
+	   T2."first_registration_date" as "First Registration Date",
+	   (left((((T5."customer_number"))),7)) + ' - ' + T5."first_name" + ' ' + T5."family_name" as "Vorbesitzer",
+	   T5."family_name" as "Family Name_Vorbesitzer",
+	   T5."first_name" as "First Name_Vorbesitzer",
+	   T5."customer_number" as "Customer Number_Vorbesitzer",
+	   T2."body_paint_description" as "Body Paint Description",
+	   CASE WHEN ((CASE WHEN ((left(T2."dealer_vehicle_type",1)) IN ('N')) THEN ('NW') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('V')) THEN ('VFW') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('D')) THEN ('GW diff.') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('G')) THEN ('GW regel.') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('T')) THEN ('TZ') ELSE null END) IN ('VFW','TZ','NW')) THEN ('Neuwagen') ELSE ('Gebrauchtwagen') END as "Fahrzeugart",
+	   CASE WHEN ((left(T2."dealer_vehicle_type",1)) IN ('N')) THEN ('NW') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('V')) THEN ('VFW') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('D')) THEN ('GW diff.') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('G')) THEN ('GW regel.') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('T')) THEN ('TZ') ELSE null END as "Fahrzeugtyp",
+	   (substring((upper((CASE WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) IS NULL) THEN ('keine Angabe') WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) LIKE '???%') THEN ('???') ELSE ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END)) END))), 1, 3)) as "Model",
+	   CASE WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) IS NULL) THEN ('keine Angabe') WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) LIKE '???%') THEN ('???') ELSE ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END)) END as "Model_Detail",
+	   CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END as "Description_Models",
+	   T3."description" as "Description_Makes",
+	   '0' + (((T1."in_subsidiary"))) as "Standort",
+	   CASE WHEN (('0' + (((T1."in_subsidiary")))) = '015                                                                                                                                                                                                                                                            ') THEN ('15') ELSE (T1."client_db") END as "Hauptbetrieb",
+	   T2."last_change_subsidiary" as "Last Change Subsidiary",
+	   T2."created_employee_no" as "Created Employee No",
+	   T2."created_date" as "Created Date",
+	   T2."last_change_employee_no" as "Last Change Employee No",
+	   T2."last_change_date" as "Last Change Date",
+	   T2."next_exceptional_inspection_da" as "Next Exceptional Inspection Da",
+	   T2."next_rust_inspection_date" as "Next Rust Inspection Date",
+	   T2."next_general_inspection_date" as "Next General Inspection Date",
+	   T2."next_emission_test_date" as "Next Emission Test Date",
+	   T2."sale_date" as "Sale Date",
+	   T2."salesman_number" as "Salesman Number",
+	   T2."document_number" as "Document Number",
+	   T2."ricambi_free_input" as "Ricambi Free Input",
+	   T2."internal_assignment" as "Internal Assignment",
+	   T2."fine_dust_label" as "Fine Dust Label",
+	   T2."trim_description" as "Trim Description",
+	   T2."trim_code" as "Trim Code",
+	   T2."interior_paint_description" as "Interior Paint Description",
+	   T2."interior_paint_code" as "Interior Paint Code",
+	   T2."is_body_paint_metallic" as "Is Body Paint Metallic",
+	   T2."body_paint_code" as "Body Paint Code",
+	   T2."first_sold_dealer_code" as "First Sold Dealer Code",
+	   T2."first_sold_country" as "First Sold Country",
+	   T2."emission_code" as "Emission Code",
+	   T2."internal_source_flag" as "Internal Source Flag",
+	   T2."carkey_number" as "Carkey Number",
+	   T2."has_tyre_pressure_sensor" as "Has Tyre Pressure Sensor",
+	   T2."accidents_counter" as "Accidents Counter",
+	   T2."is_all_accidents_repaired" as "Is All Accidents Repaired",
+	   T2."cubic_capacity" as "Cubic Capacity",
+	   T2."power_kw" as "Power Kw",
+	   T2."gross_vehicle_weight" as "Gross Vehicle Weight",
+	   T2."unloaded_weight" as "Unloaded Weight",
+	   T2."gear_number" as "Gear Number",
+	   T2."engine_number" as "Engine Number",
+	   T2."odometer_reading_date" as "Odometer Reading Date",
+	   T2."mileage_miles" as "Mileage Miles",
+	   T2."mileage_km" as "Mileage Km",
+	   T2."is_prefer_km" as "Is Prefer Km",
+	   T2."austria_nat_code" as "Austria Nat Code",
+	   T2."german_kba_tsn" as "German Kba Tsn",
+	   T2."german_kba_hsn" as "German Kba Hsn",
+	   T2."last_holder_change_date" as "Last Holder Change Date",
+	   T2."previous_owner_counter" as "Previous Owner Counter",
+	   T2."previous_owner_number" as "Previous Owner Number",
+	   T2."holder_number" as "Holder Number",
+	   T2."owner_number" as "Owner Number",
+	   T2."production_year" as "Production Year",
+	   T2."next_service_miles" as "Next Service Miles",
+	   T2."next_service_km" as "Next Service Km",
+	   T2."next_service_date" as "Next Service Date",
+	   T2."readmission_date" as "Readmission Date",
+	   T2."dealer_vehicle_number" as "Dealer Vehicle Number",
+	   T2."dealer_vehicle_type" as "Dealer Vehicle Type",
+	   T2."is_customer_vehicle" as "Is Customer Vehicle",
+	   T2."is_roadworthy" as "Is Roadworthy",
+	   T2."free_form_model_text" as "Free Form Model Text",
+	   T2."model_code" as "Model Code",
+	   T2."free_form_make_text" as "Free Form Make Text",
+	   T2."make_number" as "Make Number",
+	   T2."license_plate_season" as "License Plate Season",
+	   T2."license_plate_country" as "License Plate Country",
+	   T2."license_plate" as "License Plate",
+	   T2."vin" as "Vin",
+	   (rtrim((((T1."dealer_vehicle_number"))))) as "Free Form Document Text",
+	   T1."dealer_vehicle_type" + (rtrim((((T1."dealer_vehicle_number"))))) as "Free Form Accounting Text"
 from (((("dbo"."vehicles" T2 left outer join "dbo"."makes" T3 on T2."make_number" = T3."make_number") left outer join "dbo"."models" T4 on (T2."make_number" = T4."make_number") and (T2."model_code" = T4."model_code")) left outer join "dbo"."customers_suppliers" T5 on T2."previous_owner_number" = T5."customer_number") left outer join "LOCOSOFT"."dbo"."dealer_vehicles" T1 on (T1."dealer_vehicle_type" = T2."dealer_vehicle_type") and (T1."dealer_vehicle_number" = T2."dealer_vehicle_number"))
 from (((("dbo"."vehicles" T2 left outer join "dbo"."makes" T3 on T2."make_number" = T3."make_number") left outer join "dbo"."models" T4 on (T2."make_number" = T4."make_number") and (T2."model_code" = T4."model_code")) left outer join "dbo"."customers_suppliers" T5 on T2."previous_owner_number" = T5."customer_number") left outer join "LOCOSOFT"."dbo"."dealer_vehicles" T1 on (T1."dealer_vehicle_type" = T2."dealer_vehicle_type") and (T1."dealer_vehicle_number" = T2."dealer_vehicle_number"))
 where ((T1."in_arrival_date" IS NOT NULL) and (T1."out_invoice_number" IS NULL))
 where ((T1."in_arrival_date" IS NOT NULL) and (T1."out_invoice_number" IS NULL))
--- order by c166 asc
+-- order by "Vehicle_Reference_berechnet" asc
 ) D1
 ) D1

File diff suppressed because it is too large
+ 77 - 107
System/LOCOSOFT/IQD/OP/Kreditorenbewegungen.sql


+ 2 - 2
System/LOCOSOFT/IQD/OP/OP_aus_LOC_Belege_8520.sql

@@ -4,10 +4,10 @@ select distinct T1."document_type" as "Document Type",
 	   T1."invoice_number" as "Invoice Number",
 	   T1."invoice_number" as "Invoice Number",
 	   T1."skr51_branch" as "Skr51 Branch",
 	   T1."skr51_branch" as "Skr51 Branch",
 	   '1' as "Rechtseinheit",
 	   '1' as "Rechtseinheit",
-	   '0' + ((convert(varchar(50), T1."skr51_branch"))) as "Betrieb",
+	   '0' + (((T1."skr51_branch"))) as "Betrieb",
 	   '1' as "Mandant",
 	   '1' as "Mandant",
 	   '1' as "Hauptbetrieb",
 	   '1' as "Hauptbetrieb",
-	   ('0' + ((convert(varchar(50), T1."skr51_branch")))) as "Standort"
+	   ('0' + (((T1."skr51_branch")))) as "Standort"
 from "journal_accountings" T1
 from "journal_accountings" T1
 where (((T1."nominal_account_number" IN (8520)) and (T1."document_type" = 'R')) and (T1."invoice_date" >= convert(date, '2016-01-01')))
 where (((T1."nominal_account_number" IN (8520)) and (T1."document_type" = 'R')) and (T1."invoice_date" >= convert(date, '2016-01-01')))
 -- order by "Invoice Number" asc,"Nominal Account Number" asc
 -- order by "Invoice Number" asc,"Nominal Account Number" asc

File diff suppressed because it is too large
+ 77 - 107
System/LOCOSOFT/IQD/OP/OP_aus_LOC_Belege_Deb_Saldo.sql


+ 151 - 151
System/LOCOSOFT/IQD/OP/OP_aus_LOC_Belege_nur_8520.sql

@@ -1,157 +1,157 @@
-select c113 as "Accounting Date",
-	   c155 as "Document Type",
-	   c154 as "Document Number",
-	   c153 as "Position In Document",
-	   c110 as "Nominal Account Number",
-	   c152 as "Customer Number",
-	   c151 as "Is Balanced",
-	   c150 as "Clearing Number",
-	   c149 as "Document Date",
-	   c148 as "Posted Value",
-	   c147 as "Debit Or Credit",
-	   c146 as "Posted Count",
-	   c145 as "Branch Number",
-	   c144 as "Customer Contra Account",
-	   c143 as "Nominal Contra Account",
-	   c142 as "Contra Account Text",
-	   c141 as "Account Form Page Number",
-	   c140 as "Account Form Page Line",
-	   c139 as "Serial Number Each Month",
-	   c138 as "Employee Number",
-	   c137 as "Invoice Date",
-	   c136 as "Invoice Number",
-	   c135 as "Dunning Level",
-	   c134 as "Last Dunning Date",
-	   c133 as "Journal Page",
-	   c132 as "Journal Line",
-	   c131 as "Cash Discount",
-	   c130 as "Term Of Payment",
-	   c129 as "Posting Text",
-	   c128 as "Vehicle Reference",
-	   c127 as "Vat Id Number",
-	   c126 as "Account Statement Number",
-	   c125 as "Account Statement Page",
-	   c124 as "Vat Key",
-	   c123 as "Days For Cash Discount",
-	   c122 as "Day Of Actual Accounting",
-	   c121 as "Skr51 Branch",
-	   c120 as "Skr51 Make",
-	   c119 as "Skr51 Cost Center",
-	   c118 as "Skr51 Sales Channel",
-	   c117 as "Skr51 Cost Unit",
-	   c116 as "Previously Used Account No",
-	   c115 as "Free Form Accounting Text",
-	   c114 as "Free Form Document Text",
+select "Accounting Date",
+	   "Document Type",
+	   "Document Number",
+	   "Position In Document",
+	   "Nominal Account Number",
+	   "Customer Number",
+	   "Is Balanced",
+	   "Clearing Number",
+	   "Document Date",
+	   "Posted Value",
+	   "Debit Or Credit",
+	   "Posted Count",
+	   "Branch Number",
+	   "Customer Contra Account",
+	   "Nominal Contra Account",
+	   "Contra Account Text",
+	   "Account Form Page Number",
+	   "Account Form Page Line",
+	   "Serial Number Each Month",
+	   "Employee Number",
+	   "Invoice Date",
+	   "Invoice Number",
+	   "Dunning Level",
+	   "Last Dunning Date",
+	   "Journal Page",
+	   "Journal Line",
+	   "Cash Discount",
+	   "Term Of Payment",
+	   "Posting Text",
+	   "Vehicle Reference",
+	   "Vat Id Number",
+	   "Account Statement Number",
+	   "Account Statement Page",
+	   "Vat Key",
+	   "Days For Cash Discount",
+	   "Day Of Actual Accounting",
+	   "Skr51 Branch",
+	   "Skr51 Make",
+	   "Skr51 Cost Center",
+	   "Skr51 Sales Channel",
+	   "Skr51 Cost Unit",
+	   "Previously Used Account No",
+	   "Free Form Accounting Text",
+	   "Free Form Document Text",
 	   '1' as "Rechtseinheit",
 	   '1' as "Rechtseinheit",
-	   c85 as "Betrieb",
-	   c113 as "Bookkeep Date",
-	   c112 as "Text",
+	   "Betrieb",
+	   "Accounting Date" as "Bookkeep Date",
+	   "Text",
 	   '1' as "Mandant",
 	   '1' as "Mandant",
-	   c97 as "Betrag",
-	   c111 as "Menge",
-	   c110 as "Acct Nr",
-	   c83 as "Customer Number_suctomer_supplier",
-	   c109 as "Is Supplier",
-	   c108 as "First Name",
-	   c107 as "Family Name",
-	   c106 as "Document Type In Journal",
-	   c105 as "Document Type Description",
-	   SUM(c97) OVER (partition by c83) as "Debitorsaldo_",
-	   c104 as "Invoice Type_Invoices",
-	   c103 as "Invoice Number_Invoices",
-	   c102 as "Subsidiary_Invoices",
-	   c101 as "Invoice Date_Invoices",
-	   c100 as "Hauptbetrieb",
-	   c99 as "Standort_ori",
-	   c98 as "Sel Name",
-	   c97 as "OP-Saldo",
-	   c96 as "Kostenstelle",
-	   c95 as "Tage",
-	   c94 as "Staffel",
-	   c93 as "Kunde",
-	   c92 as "Beleg",
-	   c91 as "Employee Number_Employees_journal_accountings",
-	   c90 as "Name_Employees_journal_accountings",
-	   c89 as "Anzahl_Stellen_Invoice_Number",
-	   c88 as "Forderungsart_aus_erste_Stelle_Inv_Number",
-	   c87 as "Forderungsart",
-	   c86 as "Standort_aus_2_Stelle_Invoice_Number",
-	   c85 as "Standort",
-	   c84 as "Standort_ims_8520"
+	   "Betrag",
+	   "Menge",
+	   "Nominal Account Number" as "Acct Nr",
+	   "Customer Number_suctomer_supplier",
+	   "Is Supplier",
+	   "First Name",
+	   "Family Name",
+	   "Document Type In Journal",
+	   "Document Type Description",
+	   SUM("Betrag") OVER (partition by "Customer Number_suctomer_supplier") as "Debitorsaldo_",
+	   "Invoice Type_Invoices",
+	   "Invoice Number_Invoices",
+	   "Subsidiary_Invoices",
+	   "Invoice Date_Invoices",
+	   "Hauptbetrieb",
+	   "Standort_ori",
+	   "Sel Name",
+	   "Betrag" as "OP-Saldo",
+	   "Kostenstelle",
+	   "Tage",
+	   "Staffel",
+	   "Kunde",
+	   "Beleg",
+	   "Employee Number_Employees_journal_accountings",
+	   "Name_Employees_journal_accountings",
+	   "Anzahl_Stellen_Invoice_Number",
+	   "Forderungsart_aus_erste_Stelle_Inv_Number",
+	   "Forderungsart",
+	   "Standort_aus_2_Stelle_Invoice_Number",
+	   "Betrieb" as "Standort",
+	   "Standort_ims_8520"
 from 
 from 
-(select T3."customer_number" as c83,
-	   T6."Standort" as c84,
-	   ('0' + ((convert(varchar(50), T1."subsidiary_to_company_ref")))) as c85,
-	   CASE WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((substring(T1."invoice_number", 2, 1)) BETWEEN '1' AND '4')) THEN ('0' + (substring(T1."invoice_number", 2, 1))) ELSE null END as c86,
-	   CASE WHEN (T1."dunning_level" = 'Gesperrt') THEN ('Versicherung') ELSE ((CASE WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('2','3','4'))) THEN ('Service') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('5'))) THEN ('Teile') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('6'))) THEN ('Garantie') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('7'))) THEN ('Neuwagen') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('8'))) THEN ('Gebrauchtwagen') WHEN (T1."document_type" = 'R') THEN ('Rent') ELSE ('nicht zuzuordnen') END)) END as c87,
-	   CASE WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('2','3','4'))) THEN ('Service') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('5'))) THEN ('Teile') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('6'))) THEN ('Garantie') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('7'))) THEN ('Neuwagen') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('8'))) THEN ('Gebrauchtwagen') WHEN (T1."document_type" = 'R') THEN ('Rent') ELSE ('nicht zuzuordnen') END as c88,
-	   (len(T1."invoice_number" + 'Z') - 1) as c89,
-	   T2."name" as c90,
-	   T2."employee_number" as c91,
-	   CASE WHEN (T1."posting_text" IS NOT NULL) THEN ((substring((convert(varchar(50), ((T1."document_number")))), 1, 7)) + ' - ' + T1."posting_text" + ' - ' + (convert(varchar(50), year(T1."document_date")) + '-' + convert(varchar(50), month(T1."document_date")) + '-' + convert(varchar(50), day(T1."document_date")))) ELSE ((convert(varchar(50), year(T1."document_date")) + '-' + convert(varchar(50), month(T1."document_date")) + '-' + convert(varchar(50), day(T1."document_date")))) END as c92,
-	   CASE WHEN (T3."first_name" <> ' ') THEN ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."first_name" + ' ' + T3."family_name") ELSE ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."family_name") END as c93,
-	   CASE WHEN (((day((getdate()) - (convert(datetime, T1."accounting_date"))))) BETWEEN 0 AND 14) THEN ('< 2 Wochen') WHEN (((day((getdate()) - (convert(datetime, T1."accounting_date"))))) BETWEEN 15 AND 28) THEN ('2 - 4 Wochen') WHEN (((day((getdate()) - (convert(datetime, T1."accounting_date"))))) BETWEEN 29 AND 42) THEN ('4 - 6 Wochen') WHEN (((day((getdate()) - (convert(datetime, T1."accounting_date"))))) BETWEEN 43 AND 84) THEN ('6 - 12 Wochen') WHEN (((day((getdate()) - (convert(datetime, T1."accounting_date"))))) > 84) THEN ('> 12 Wochen') ELSE null END as c94,
-	   (day((getdate()) - (convert(datetime, T1."accounting_date")))) as c95,
-	   CASE WHEN (T5."invoice_type" IN (2,4,6,3)) THEN ('3') WHEN (T5."invoice_type" IN (5)) THEN ('6') WHEN (T5."invoice_type" IN (7)) THEN ('1') WHEN (T5."invoice_type" IN (8)) THEN ('2') WHEN (T4."document_type_in_journal" = 'R') THEN ('7') ELSE null END as c96,
-	   (CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) as c97,
-	   (left(((convert(varchar(50), T2."employee_number"))))) + ' - ' + T2."name" as c98,
-	   CASE WHEN (T5."subsidiary" IS NOT NULL) THEN ('0' + (left(((convert(varchar(50), T5."subsidiary")))))) ELSE ('nicht zuzuordnen') END as c99,
-	   CASE WHEN ((('0' + ((convert(varchar(50), T1."subsidiary_to_company_ref"))))) IN ('015                                                                                                                                                                                                                                                            ')) THEN ('15') ELSE ('1') END as c100,
-	   T5."invoice_date" as c101,
-	   T5."subsidiary" as c102,
-	   T5."invoice_number" as c103,
-	   T5."invoice_type" as c104,
-	   T4."document_type_description" as c105,
-	   T4."document_type_in_journal" as c106,
-	   T3."family_name" as c107,
-	   T3."first_name" as c108,
-	   T3."is_supplier" as c109,
-	   T1."nominal_account_number" as c110,
-	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as c111,
-	   ((rtrim((convert(varchar(50), ((T1."document_number")))))) + ' - ' + T1."invoice_number" + ' - ' + T1."posting_text" + '/' + T1."vehicle_reference" + ' - ' + ((left(((convert(varchar(50), T2."employee_number"))))) + ' - ' + T2."name")) as c112,
-	   T1."accounting_date" as c113,
-	   T1."free_form_document_text" as c114,
-	   T1."free_form_accounting_text" as c115,
-	   T1."previously_used_account_no" as c116,
-	   T1."skr51_cost_unit" as c117,
-	   T1."skr51_sales_channel" as c118,
-	   T1."skr51_cost_center" as c119,
-	   T1."skr51_make" as c120,
-	   T1."skr51_branch" as c121,
-	   T1."day_of_actual_accounting" as c122,
-	   T1."days_for_cash_discount" as c123,
-	   T1."vat_key" as c124,
-	   T1."account_statement_page" as c125,
-	   T1."account_statement_number" as c126,
-	   T1."vat_id_number" as c127,
-	   T1."vehicle_reference" as c128,
-	   T1."posting_text" as c129,
-	   T1."term_of_payment" as c130,
-	   T1."cash_discount" as c131,
-	   T1."journal_line" as c132,
-	   T1."journal_page" as c133,
-	   T1."last_dunning_date" as c134,
-	   T1."dunning_level" as c135,
-	   T1."invoice_number" as c136,
-	   T1."invoice_date" as c137,
-	   T1."employee_number" as c138,
-	   T1."serial_number_each_month" as c139,
-	   T1."account_form_page_line" as c140,
-	   T1."account_form_page_number" as c141,
-	   T1."contra_account_text" as c142,
-	   T1."nominal_contra_account" as c143,
-	   T1."customer_contra_account" as c144,
-	   T1."branch_number" as c145,
-	   T1."posted_count" as c146,
-	   T1."debit_or_credit" as c147,
-	   T1."posted_value" as c148,
-	   T1."document_date" as c149,
-	   T1."clearing_number" as c150,
-	   T1."is_balanced" as c151,
-	   T1."customer_number" as c152,
-	   T1."position_in_document" as c153,
-	   (T1."document_number") as c154,
-	   T1."document_type" as c155
+(select T3."customer_number" as "Customer Number_suctomer_supplier",
+	   T6."Standort" as "Standort_ims_8520",
+	   ('0' + (((T1."subsidiary_to_company_ref")))) as "Betrieb",
+	   CASE WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((substring(T1."invoice_number", 2, 1)) BETWEEN '1' AND '4')) THEN ('0' + (substring(T1."invoice_number", 2, 1))) ELSE null END as "Standort_aus_2_Stelle_Invoice_Number",
+	   CASE WHEN (T1."dunning_level" = 'Gesperrt') THEN ('Versicherung') ELSE ((CASE WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('2','3','4'))) THEN ('Service') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('5'))) THEN ('Teile') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('6'))) THEN ('Garantie') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('7'))) THEN ('Neuwagen') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('8'))) THEN ('Gebrauchtwagen') WHEN (T1."document_type" = 'R') THEN ('Rent') ELSE ('nicht zuzuordnen') END)) END as "Forderungsart",
+	   CASE WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('2','3','4'))) THEN ('Service') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('5'))) THEN ('Teile') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('6'))) THEN ('Garantie') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('7'))) THEN ('Neuwagen') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('8'))) THEN ('Gebrauchtwagen') WHEN (T1."document_type" = 'R') THEN ('Rent') ELSE ('nicht zuzuordnen') END as "Forderungsart_aus_erste_Stelle_Inv_Number",
+	   (len(T1."invoice_number" + 'Z') - 1) as "Anzahl_Stellen_Invoice_Number",
+	   T2."name" as "Name_Employees_journal_accountings",
+	   T2."employee_number" as "Employee Number_Employees_journal_accountings",
+	   CASE WHEN (T1."posting_text" IS NOT NULL) THEN ((substring((convert(varchar(50), ((T1."document_number")))), 1, 7)) + ' - ' + T1."posting_text" + ' - ' + (convert(varchar(50), year(T1."document_date")) + '-' + convert(varchar(50), month(T1."document_date")) + '-' + convert(varchar(50), day(T1."document_date")))) ELSE ((convert(varchar(50), year(T1."document_date")) + '-' + convert(varchar(50), month(T1."document_date")) + '-' + convert(varchar(50), day(T1."document_date")))) END as "Beleg",
+	   CASE WHEN (T3."first_name" <> ' ') THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") END as "Kunde",
+	   CASE WHEN (((-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date"))))) BETWEEN 0 AND 14) THEN ('< 2 Wochen') WHEN (((-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date"))))) BETWEEN 15 AND 28) THEN ('2 - 4 Wochen') WHEN (((-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date"))))) BETWEEN 29 AND 42) THEN ('4 - 6 Wochen') WHEN (((-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date"))))) BETWEEN 43 AND 84) THEN ('6 - 12 Wochen') WHEN (((-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date"))))) > 84) THEN ('> 12 Wochen') ELSE null END as "Staffel",
+	   (-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date")))) as "Tage",
+	   CASE WHEN (T5."invoice_type" IN (2,4,6,3)) THEN ('3') WHEN (T5."invoice_type" IN (5)) THEN ('6') WHEN (T5."invoice_type" IN (7)) THEN ('1') WHEN (T5."invoice_type" IN (8)) THEN ('2') WHEN (T4."document_type_in_journal" = 'R') THEN ('7') ELSE null END as "Kostenstelle",
+	   (CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) as "Betrag",
+	   (left((((T2."employee_number"))),3)) + ' - ' + T2."name" as "Sel Name",
+	   CASE WHEN (T5."subsidiary" IS NOT NULL) THEN ('0' + (left((((T5."subsidiary"))),1))) ELSE ('nicht zuzuordnen') END as "Standort_ori",
+	   CASE WHEN ((('0' + (((T1."subsidiary_to_company_ref"))))) IN ('015                                                                                                                                                                                                                                                            ')) THEN ('15') ELSE ('1') END as "Hauptbetrieb",
+	   T5."invoice_date" as "Invoice Date_Invoices",
+	   T5."subsidiary" as "Subsidiary_Invoices",
+	   T5."invoice_number" as "Invoice Number_Invoices",
+	   T5."invoice_type" as "Invoice Type_Invoices",
+	   T4."document_type_description" as "Document Type Description",
+	   T4."document_type_in_journal" as "Document Type In Journal",
+	   T3."family_name" as "Family Name",
+	   T3."first_name" as "First Name",
+	   T3."is_supplier" as "Is Supplier",
+	   T1."nominal_account_number" as "Nominal Account Number",
+	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as "Menge",
+	   ((rtrim((convert(varchar(50), ((T1."document_number")))))) + ' - ' + T1."invoice_number" + ' - ' + T1."posting_text" + '/' + T1."vehicle_reference" + ' - ' + ((left((((T2."employee_number"))))) + ' - ' + T2."name")) as "Text",
+	   T1."accounting_date" as "Accounting Date",
+	   T1."free_form_document_text" as "Free Form Document Text",
+	   T1."free_form_accounting_text" as "Free Form Accounting Text",
+	   T1."previously_used_account_no" as "Previously Used Account No",
+	   T1."skr51_cost_unit" as "Skr51 Cost Unit",
+	   T1."skr51_sales_channel" as "Skr51 Sales Channel",
+	   T1."skr51_cost_center" as "Skr51 Cost Center",
+	   T1."skr51_make" as "Skr51 Make",
+	   T1."skr51_branch" as "Skr51 Branch",
+	   T1."day_of_actual_accounting" as "Day Of Actual Accounting",
+	   T1."days_for_cash_discount" as "Days For Cash Discount",
+	   T1."vat_key" as "Vat Key",
+	   T1."account_statement_page" as "Account Statement Page",
+	   T1."account_statement_number" as "Account Statement Number",
+	   T1."vat_id_number" as "Vat Id Number",
+	   T1."vehicle_reference" as "Vehicle Reference",
+	   T1."posting_text" as "Posting Text",
+	   T1."term_of_payment" as "Term Of Payment",
+	   T1."cash_discount" as "Cash Discount",
+	   T1."journal_line" as "Journal Line",
+	   T1."journal_page" as "Journal Page",
+	   T1."last_dunning_date" as "Last Dunning Date",
+	   T1."dunning_level" as "Dunning Level",
+	   T1."invoice_number" as "Invoice Number",
+	   T1."invoice_date" as "Invoice Date",
+	   T1."employee_number" as "Employee Number",
+	   T1."serial_number_each_month" as "Serial Number Each Month",
+	   T1."account_form_page_line" as "Account Form Page Line",
+	   T1."account_form_page_number" as "Account Form Page Number",
+	   T1."contra_account_text" as "Contra Account Text",
+	   T1."nominal_contra_account" as "Nominal Contra Account",
+	   T1."customer_contra_account" as "Customer Contra Account",
+	   T1."branch_number" as "Branch Number",
+	   T1."posted_count" as "Posted Count",
+	   T1."debit_or_credit" as "Debit Or Credit",
+	   T1."posted_value" as "Posted Value",
+	   T1."document_date" as "Document Date",
+	   T1."clearing_number" as "Clearing Number",
+	   T1."is_balanced" as "Is Balanced",
+	   T1."customer_number" as "Customer Number",
+	   T1."position_in_document" as "Position In Document",
+	   (T1."document_number") as "Document Number",
+	   T1."document_type" as "Document Type"
 from "ims"."OP_aus_LOC_Belege_8520" T6,
 from "ims"."OP_aus_LOC_Belege_8520" T6,
 	(((("journal_accountings" T1 left outer join "LOCOSOFT"."dbo"."employees" T2 on T1."employee_number" = T2."employee_number") left outer join "LOCOSOFT"."dbo"."customers_suppliers" T3 on T3."customer_number" = T1."customer_number") left outer join "document_types" T4 on T4."document_type_in_journal" = T1."document_type") left outer join "invoices" T5 on T5."invtype_invnr" = T1."invoice_number")
 	(((("journal_accountings" T1 left outer join "LOCOSOFT"."dbo"."employees" T2 on T1."employee_number" = T2."employee_number") left outer join "LOCOSOFT"."dbo"."customers_suppliers" T3 on T3."customer_number" = T1."customer_number") left outer join "document_types" T4 on T4."document_type_in_journal" = T1."document_type") left outer join "invoices" T5 on T5."invtype_invnr" = T1."invoice_number")
 where ((T1."invoice_number" = T6."invoice_number") and (T1."customer_number" = T6."customer_contra_account"))
 where ((T1."invoice_number" = T6."invoice_number") and (T1."customer_number" = T6."customer_contra_account"))

File diff suppressed because it is too large
+ 77 - 107
System/LOCOSOFT/IQD/OP/OP_aus_LOC_Belege_ohne_8520.sql


+ 57 - 57
System/LOCOSOFT/IQD/Serv_Teile/Aftersales_Rechnungen_ben_AW_final.sql

@@ -1,66 +1,66 @@
-select c64 as "Invoice Type",
-	   c63 as "Invoice Number",
-	   c62 as "Subsidiary",
-	   c61 as "Invoice Date",
-	   c60 as "Service Date",
-	   c59 as "Is Canceled",
-	   c58 as "Vehicle Number",
-	   c57 as "Invoice_Type_Invoice_Number",
+select "Invoice Type",
+	   "Invoice Number",
+	   "Subsidiary",
+	   "Invoice Date",
+	   "Service Date",
+	   "Is Canceled",
+	   "Vehicle Number",
+	   "Invoice_Type_Invoice_Number",
 	   '1' as "Hauptbetrieb",
 	   '1' as "Hauptbetrieb",
-	   c56 as "Standort",
-	   c55 as "Serviceberater",
-	   c54 as "Umsatzart",
-	   c53 as "Fabrikat",
-	   c53 as "Description_Makes",
-	   c52 as "Description_Models",
-	   c51 as "Model",
-	   c50 as "Fahrzeug",
-	   c49 as "Kostenstelle",
-	   c48 as "Marke",
+	   "Standort",
+	   "Serviceberater",
+	   "Umsatzart",
+	   "Fabrikat",
+	   "Fabrikat" as "Description_Makes",
+	   "Description_Models",
+	   "Model",
+	   "Fahrzeug",
+	   "Kostenstelle",
+	   "Marke",
 	   'Service' as "Auftragsart",
 	   'Service' as "Auftragsart",
-	   c47 as "Geschäftsart",
-	   c46 as "Kunde",
-	   c45 as "Time Units",
-	   c44 as "Time Units_Zahl",
+	   "Geschäftsart",
+	   "Kunde",
+	   "Time Units",
+	   "Time Units_Zahl",
 	   10 as "AW/Std.",
 	   10 as "AW/Std.",
-	   c43 as "verk. Std._",
-	   c37 as "Order Number",
-	   c42 as "Order Number_Rg_Ausg",
-	   c41 as "Kundenart",
-	   c40 as "Summe Duration Minutes",
-	   c39 as "Order Number_ben_AW",
+	   "verk. Std._",
+	   "Order Number",
+	   "Order Number_Rg_Ausg",
+	   "Kundenart",
+	   "Summe Duration Minutes",
+	   "Order Number_ben_AW",
 	   1 as "Anzahl_Datensätze_1",
 	   1 as "Anzahl_Datensätze_1",
-	   COUNT(c39) OVER (partition by c37) as "Anzahl_Datensätze_2",
-	   (c38) / (COUNT(c39) OVER (partition by c37)) as "ben. Std."
+	   COUNT("Order Number_ben_AW") OVER (partition by "Order Number") as "Anzahl_Datensätze_2",
+	   (c38) / (COUNT("Order Number_ben_AW") OVER (partition by "Order Number")) as "ben. Std."
 from 
 from 
-(select (CASE WHEN (T2."Serviceberater" IS NOT NULL) THEN ((left(((convert(varchar(50), T1."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number"))))) + ' - ' + T2."Serviceberater" + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."family_name") ELSE ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) ELSE ((left(((convert(varchar(50), T1."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number"))))) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."family_name") ELSE ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) END) as c37,
+(select (CASE WHEN (T2."Serviceberater" IS NOT NULL) THEN ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + T2."Serviceberater" + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) ELSE ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) END) as "Order Number",
 	   T9."Summe_Duration_Minutes" / 60 as c38,
 	   T9."Summe_Duration_Minutes" / 60 as c38,
-	   T9."order_number" as c39,
-	   T9."Summe_Duration_Minutes" as c40,
-	   (left(((convert(varchar(50), T8."employee_number"))))) + ' - ' + T8."name" as c41,
-	   CASE WHEN ((day((getdate()) - (convert(datetime, T1."invoice_date")))) <= 4) THEN ((CASE WHEN (T2."Serviceberater" IS NOT NULL) THEN ((left(((convert(varchar(50), T1."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number"))))) + ' - ' + T2."Serviceberater" + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."family_name") ELSE ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) ELSE ((left(((convert(varchar(50), T1."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number"))))) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."family_name") ELSE ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) END)) ELSE null END as c42,
-	   ((convert(float, T7."time_units"))) / 10 as c43,
-	   (convert(float, T7."time_units")) as c44,
-	   T7."time_units" as c45,
-	   CASE WHEN (T3."first_name" IS NULL) THEN ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."family_name") ELSE ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."first_name" + ' ' + T3."family_name") END as c46,
-	   T3."zip_code" as c47,
-	   CASE WHEN (T4."description" = 'Ford') THEN ('1') WHEN (T4."description" = 'Nissan') THEN ('3') WHEN (T4."description" = 'Suzuki') THEN ('2') ELSE ('9') END as c48,
-	   CASE WHEN ((left(((convert(varchar(50), T6."type"))))) IN ('1','6')) THEN ('41 - After Sales Kundendienst eigene Werkstatt') WHEN (T6."type" IN (40,41,44,45,46,47,48,49,88,89,50,90)) THEN ('41 - After Sales Kundendienst eigene Werkstatt') WHEN ((left(((convert(varchar(50), T6."type"))))) IN ('2')) THEN ('44 - After Sales Kundendienst eigene Karosserieabteilung') WHEN (T6."type" IN (42,92)) THEN ('44 - After Sales Kundendienst eigene Karosserieabteilung') WHEN ((left(((convert(varchar(50), T6."type"))))) IN ('3')) THEN ('45 - After Sales Kundendienst eigene Lackiererei') WHEN (T6."type" IN (43,93)) THEN ('45 - After Sales Kundendienst eigene Lackiererei') ELSE null END as c49,
-	   (left((left(((convert(varchar(50), T1."vehicle_number"))))) + ' - ' + T5."description",100)) as c50,
-	   (left((ucase(T5."description")),3)) as c51,
-	   T5."description" as c52,
-	   T4."description" as c53,
-	   CASE WHEN (T1."invoice_type" = 6) THEN ('GWL') WHEN ((T1."invoice_type" = 4) or (T3."customer_number" = 100001)) THEN ('intern') ELSE ('extern') END as c54,
-	   T2."Serviceberater" as c55,
-	   '0' + ((convert(varchar(50), T1."subsidiary"))) as c56,
-	   (left(((convert(varchar(50), T1."invoice_type"))))) + '_' + (left(((convert(varchar(50), T1."invoice_number"))))) as c57,
-	   T1."vehicle_number" as c58,
-	   T1."is_canceled" as c59,
-	   T1."service_date" as c60,
-	   T1."invoice_date" as c61,
-	   T1."subsidiary" as c62,
-	   T1."invoice_number" as c63,
-	   T1."invoice_type" as c64
+	   T9."order_number" as "Order Number_ben_AW",
+	   T9."Summe_Duration_Minutes" as "Summe Duration Minutes",
+	   (left((((T8."employee_number"))),4)) + ' - ' + T8."name" as "Kundenart",
+	   CASE WHEN ((-1 * datediff(day, (getdate()), (convert(datetime, T1."invoice_date")))) <= 4) THEN ((CASE WHEN (T2."Serviceberater" IS NOT NULL) THEN ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + T2."Serviceberater" + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) ELSE ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) END)) ELSE null END as "Order Number_Rg_Ausg",
+	   ((convert(float, T7."time_units"))) / 10 as "verk. Std._",
+	   (convert(float, T7."time_units")) as "Time Units_Zahl",
+	   T7."time_units" as "Time Units",
+	   CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END as "Kunde",
+	   T3."zip_code" as "Geschäftsart",
+	   CASE WHEN (T4."description" = 'Ford') THEN ('1') WHEN (T4."description" = 'Nissan') THEN ('3') WHEN (T4."description" = 'Suzuki') THEN ('2') ELSE ('9') END as "Marke",
+	   CASE WHEN ((left((((T6."type"))),1)) IN ('1','6')) THEN ('41 - After Sales Kundendienst eigene Werkstatt') WHEN (T6."type" IN (40,41,44,45,46,47,48,49,88,89,50,90)) THEN ('41 - After Sales Kundendienst eigene Werkstatt') WHEN ((left((((T6."type"))),1)) IN ('2')) THEN ('44 - After Sales Kundendienst eigene Karosserieabteilung') WHEN (T6."type" IN (42,92)) THEN ('44 - After Sales Kundendienst eigene Karosserieabteilung') WHEN ((left((((T6."type"))),1)) IN ('3')) THEN ('45 - After Sales Kundendienst eigene Lackiererei') WHEN (T6."type" IN (43,93)) THEN ('45 - After Sales Kundendienst eigene Lackiererei') ELSE null END as "Kostenstelle",
+	   (left((left((((T1."vehicle_number"))),5)) + ' - ' + T5."description",100)) as "Fahrzeug",
+	   (left((ucase(T5."description")),3)) as "Model",
+	   T5."description" as "Description_Models",
+	   T4."description" as "Fabrikat",
+	   CASE WHEN (T1."invoice_type" = 6) THEN ('GWL') WHEN ((T1."invoice_type" = 4) or (T3."customer_number" = 100001)) THEN ('intern') ELSE ('extern') END as "Umsatzart",
+	   T2."Serviceberater" as "Serviceberater",
+	   '0' + (((T1."subsidiary"))) as "Standort",
+	   (left((((T1."invoice_type"))),1)) + '_' + (left((((T1."invoice_number"))),9)) as "Invoice_Type_Invoice_Number",
+	   T1."vehicle_number" as "Vehicle Number",
+	   T1."is_canceled" as "Is Canceled",
+	   T1."service_date" as "Service Date",
+	   T1."invoice_date" as "Invoice Date",
+	   T1."subsidiary" as "Subsidiary",
+	   T1."invoice_number" as "Invoice Number",
+	   T1."invoice_type" as "Invoice Type"
 from "ims"."ben_AW_Order_Number" T9,
 from "ims"."ben_AW_Order_Number" T9,
 	(((((((("dbo"."invoices" T1 left outer join "dbo"."customers_suppliers" T3 on T3."customer_number" = T1."paying_customer") left outer join "dbo"."vehicles" T10 on T1."vehicle_number" = T10."internal_number") left outer join "dbo"."makes" T4 on T10."make_number" = T4."make_number") left outer join "dbo"."models" T5 on (T10."make_number" = T5."make_number") and (T10."model_code" = T5."model_code")) left outer join "dbo"."labours" T7 on (T7."invoice_number" = T1."invoice_number") and (T7."invoice_type" = T1."invoice_type")) left outer join "dbo"."charge_type_descriptions" T6 on T6."type" = T7."charge_type") left outer join "dbo"."employees" T8 on T1."creating_employee" = T8."employee_number") left outer join "ims"."Serviceberater_Rechnung" T2 on T1."invtype_invnr" = T2."invtype_invnr")
 	(((((((("dbo"."invoices" T1 left outer join "dbo"."customers_suppliers" T3 on T3."customer_number" = T1."paying_customer") left outer join "dbo"."vehicles" T10 on T1."vehicle_number" = T10."internal_number") left outer join "dbo"."makes" T4 on T10."make_number" = T4."make_number") left outer join "dbo"."models" T5 on (T10."make_number" = T5."make_number") and (T10."model_code" = T5."model_code")) left outer join "dbo"."labours" T7 on (T7."invoice_number" = T1."invoice_number") and (T7."invoice_type" = T1."invoice_type")) left outer join "dbo"."charge_type_descriptions" T6 on T6."type" = T7."charge_type") left outer join "dbo"."employees" T8 on T1."creating_employee" = T8."employee_number") left outer join "ims"."Serviceberater_Rechnung" T2 on T1."invtype_invnr" = T2."invtype_invnr")
 where (T7."order_number" = T9."order_number")
 where (T7."order_number" = T9."order_number")

+ 234 - 234
System/LOCOSOFT/IQD/Serv_Teile/Aftersales_Rechnungen_neu.sql

@@ -1,116 +1,116 @@
-select c253 as "Invoice Type",
-	   c252 as "Type_Invoice_Types",
-	   c251 as "Description_Invoice_Types",
-	   c250 as "Invoice Number",
-	   c249 as "Subsidiary",
-	   c248 as "Paying Customer",
-	   c247 as "Order Customer",
-	   c246 as "Invoice Date",
-	   c245 as "Service Date",
-	   c244 as "Is Canceled",
-	   c243 as "Cancelation Number",
-	   c242 as "Cancelation Date",
-	   c241 as "Cancelation Employee",
-	   c240 as "Is Own Vehicle",
-	   c239 as "Is Credit",
-	   c238 as "Credit Invoice Type",
-	   c237 as "Credit Invoice Number",
-	   c236 as "Odometer Reading",
-	   c235 as "Creating Employee",
-	   c234 as "Internal Cost Account",
-	   c233 as "Vehicle Number",
-	   c232 as "Full Vat Basevalue",
-	   c231 as "Full Vat Percentage",
-	   c230 as "Full Vat Value",
-	   c229 as "Reduced Vat Basevalue",
-	   c228 as "Reduced Vat Percentage",
-	   c227 as "Reduced Vat Value",
-	   c226 as "Used Part Vat Value",
-	   c225 as "Job Amount Net",
-	   c224 as "Job Amount Gross",
-	   c223 as "Job Rebate",
-	   c222 as "Part Amount Net",
-	   c221 as "Part Amount Gross",
-	   c220 as "Part Rebate",
-	   c219 as "Part Disposal",
-	   c218 as "Total Gross",
-	   c217 as "Total Net",
-	   c216 as "Inv_Type_Invoice_Number",
-	   c172 as "Accounting Date",
-	   c215 as "Document Type",
-	   c214 as "Document Number",
-	   c213 as "Position In Document",
-	   c212 as "Customer Number",
-	   c211 as "Nominal Account Number",
-	   c210 as "Is Balanced",
-	   c209 as "Clearing Number",
-	   c208 as "Document Date",
-	   c207 as "Posted Value",
-	   c206 as "Debit Or Credit",
-	   c205 as "Posted Count",
-	   c204 as "Branch Number",
-	   c203 as "Customer Contra Account",
-	   c202 as "Nominal Contra Account",
-	   c201 as "Contra Account Text",
-	   c200 as "Account Form Page Number",
-	   c199 as "Account Form Page Line",
-	   c198 as "Serial Number Each Month",
-	   c197 as "Employee Number",
-	   c196 as "Invoice Date_falsch",
-	   c195 as "Invoice Number",
-	   c194 as "Dunning Level",
-	   c193 as "Last Dunning Date",
-	   c192 as "Journal Page",
-	   c191 as "Journal Line",
-	   c190 as "Cash Discount",
-	   c189 as "Term Of Payment",
-	   c188 as "Posting Text",
-	   c187 as "Vehicle Reference",
-	   c186 as "Vat Id Number",
-	   c185 as "Account Statement Number",
-	   c184 as "Account Statement Page",
-	   c183 as "Vat Key",
-	   c182 as "Days For Cash Discount",
-	   c181 as "Day Of Actual Accounting",
-	   c180 as "Skr51 Branch",
-	   c158 as "Skr51 Make",
-	   c179 as "Skr51 Cost Center",
-	   c178 as "Skr51 Sales Channel",
-	   c177 as "Skr51 Cost Unit",
-	   c176 as "Previously Used Account No",
-	   c175 as "Free Form Accounting Text",
-	   c174 as "Free Form Document Text",
+select "Invoice Type",
+	   "Type_Invoice_Types",
+	   "Description_Invoice_Types",
+	   "Invoice Number_2",
+	   "Subsidiary",
+	   "Paying Customer",
+	   "Order Customer",
+	   "Invoice Date",
+	   "Service Date",
+	   "Is Canceled",
+	   "Cancelation Number",
+	   "Cancelation Date",
+	   "Cancelation Employee",
+	   "Is Own Vehicle",
+	   "Is Credit",
+	   "Credit Invoice Type",
+	   "Credit Invoice Number",
+	   "Odometer Reading",
+	   "Creating Employee",
+	   "Internal Cost Account",
+	   "Vehicle Number",
+	   "Full Vat Basevalue",
+	   "Full Vat Percentage",
+	   "Full Vat Value",
+	   "Reduced Vat Basevalue",
+	   "Reduced Vat Percentage",
+	   "Reduced Vat Value",
+	   "Used Part Vat Value",
+	   "Job Amount Net",
+	   "Job Amount Gross",
+	   "Job Rebate",
+	   "Part Amount Net",
+	   "Part Amount Gross",
+	   "Part Rebate",
+	   "Part Disposal",
+	   "Total Gross",
+	   "Total Net",
+	   "Inv_Type_Invoice_Number",
+	   "Accounting Date",
+	   "Document Type",
+	   "Document Number",
+	   "Position In Document",
+	   "Customer Number",
+	   "Nominal Account Number",
+	   "Is Balanced",
+	   "Clearing Number",
+	   "Document Date",
+	   "Posted Value",
+	   "Debit Or Credit",
+	   "Posted Count",
+	   "Branch Number",
+	   "Customer Contra Account",
+	   "Nominal Contra Account",
+	   "Contra Account Text",
+	   "Account Form Page Number",
+	   "Account Form Page Line",
+	   "Serial Number Each Month",
+	   "Employee Number",
+	   "Invoice Date_falsch",
+	   "Invoice Number",
+	   "Dunning Level",
+	   "Last Dunning Date",
+	   "Journal Page",
+	   "Journal Line",
+	   "Cash Discount",
+	   "Term Of Payment",
+	   "Posting Text",
+	   "Vehicle Reference",
+	   "Vat Id Number",
+	   "Account Statement Number",
+	   "Account Statement Page",
+	   "Vat Key",
+	   "Days For Cash Discount",
+	   "Day Of Actual Accounting",
+	   "Skr51 Branch",
+	   "Skr51 Make",
+	   "Skr51 Cost Center",
+	   "Skr51 Sales Channel",
+	   "Skr51 Cost Unit",
+	   "Previously Used Account No",
+	   "Free Form Accounting Text",
+	   "Free Form Document Text",
 	   '1' as "Hauptbetrieb",
 	   '1' as "Hauptbetrieb",
-	   c173 as "Standort",
-	   c172 as "Invoice Date_accounting",
-	   c171 as "Employee Number_Employees",
-	   c170 as "Name_Employees",
-	   c169 as "Mechanic Number_Employees",
-	   c168 as "Salesman Number_Employees",
-	   c167 as "Is Business Executive_Employees",
-	   c166 as "Is Master Craftsman_Employees",
-	   c165 as "Serviceberater_Rg_Steller",
-	   c164 as "Customer Number_Customers_Suppliers",
-	   c163 as "First Name_Customers_Suppliers",
-	   c162 as "Family Name_Customers_Suppliers",
-	   c161 as "Kunde",
-	   c160 as "Betrag",
-	   c159 as "Kostenstelle",
-	   c158 as "Marke",
-	   c157 as "Kundenart",
-	   c156 as "KST_1_Stelle",
-	   c155 as "Umsatzart",
-	   c154 as "Auftragsart",
+	   "Standort",
+	   "Accounting Date" as "Invoice Date_accounting",
+	   "Employee Number_Employees",
+	   "Name_Employees",
+	   "Mechanic Number_Employees",
+	   "Salesman Number_Employees",
+	   "Is Business Executive_Employees",
+	   "Is Master Craftsman_Employees",
+	   "Serviceberater_Rg_Steller",
+	   "Customer Number_Customers_Suppliers",
+	   "First Name_Customers_Suppliers",
+	   "Family Name_Customers_Suppliers",
+	   "Kunde",
+	   "Betrag",
+	   "Kostenstelle",
+	   "Skr51 Make" as "Marke",
+	   "Kundenart",
+	   "KST_1_Stelle",
+	   "Umsatzart",
+	   "Auftragsart",
 	   '' as "Geschäftsart",
 	   '' as "Geschäftsart",
-	   c153 as "Make Number",
-	   c152 as "Free Form Make Text",
-	   c151 as "Model Code",
-	   c150 as "Free Form Model Text",
-	   c149 as "Description_Makes",
-	   c148 as "Description_Models",
-	   c149 as "Fabrikat",
-	   c148 as "Model_Detail",
-	   c147 as "Model",
+	   "Make Number",
+	   "Free Form Make Text",
+	   "Model Code",
+	   "Free Form Model Text",
+	   "Description_Makes",
+	   "Description_Models",
+	   "Description_Makes" as "Fabrikat",
+	   "Description_Models" as "Model_Detail",
+	   "Model",
 	   (0) as "Umsatz Lohn",
 	   (0) as "Umsatz Lohn",
 	   (0) as "Umsatz FL",
 	   (0) as "Umsatz FL",
 	   (0) as "Einsatz FL",
 	   (0) as "Einsatz FL",
@@ -121,135 +121,135 @@ select c253 as "Invoice Type",
 	   (0) as "Umsatz Sonst.",
 	   (0) as "Umsatz Sonst.",
 	   (0) as "Einsatz Sonst.",
 	   (0) as "Einsatz Sonst.",
 	   1 as "DG_1",
 	   1 as "DG_1",
-	   COUNT(c253) OVER (partition by c141) as "DG_2",
-	   1 / (COUNT(c253) OVER (partition by c141)) as "DG",
-	   c146 as "Fahrzeug",
-	   c141 as "Order Number",
-	   c145 as "Invoice_Date_Uhrzeit",
-	   c144 as "Order Number_Rg_Ausg",
+	   COUNT("Invoice Type") OVER (partition by "Order Number") as "DG_2",
+	   1 / (COUNT("Invoice Type") OVER (partition by "Order Number")) as "DG",
+	   "Fahrzeug",
+	   "Order Number",
+	   "Invoice_Date_Uhrzeit",
+	   "Order Number_Rg_Ausg",
 	   '' as "Konto Nr",
 	   '' as "Konto Nr",
 	   '' as "Konto Bezeichnung",
 	   '' as "Konto Bezeichnung",
 	   '' as "Ebene1",
 	   '' as "Ebene1",
 	   '' as "Ebene2",
 	   '' as "Ebene2",
 	   '' as "Ebene3",
 	   '' as "Ebene3",
 	   '' as "Ebene4",
 	   '' as "Ebene4",
-	   c143 as "Serviceberater_order_pos",
-	   c142 as "Serviceberater"
+	   "Serviceberater_order_pos",
+	   "Serviceberater"
 from 
 from 
-(select (CASE WHEN ((CASE WHEN (T1."invoice_type" = 5) THEN (((left(((convert(varchar(50), T5."employee_number"))))) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END) IS NOT NULL) THEN (((left(((convert(varchar(50), T1."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number")))))) + ' - ' + (CASE WHEN (T1."invoice_type" = 5) THEN (((left(((convert(varchar(50), T5."employee_number"))))) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END) + ' - ' + (CASE WHEN (T4."first_name" IS NULL) THEN ((left(((convert(varchar(50), T4."customer_number"))))) + ' - ' + T4."family_name") ELSE ((left(((convert(varchar(50), T4."customer_number"))))) + ' - ' + T4."first_name" + ' ' + T4."family_name") END)) ELSE (((left(((convert(varchar(50), T1."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number")))))) + ' - ' + (CASE WHEN (T4."first_name" IS NULL) THEN ((left(((convert(varchar(50), T4."customer_number"))))) + ' - ' + T4."family_name") ELSE ((left(((convert(varchar(50), T4."customer_number"))))) + ' - ' + T4."first_name" + ' ' + T4."family_name") END)) END) as c141,
-	   CASE WHEN (T1."invoice_type" = 5) THEN (((left(((convert(varchar(50), T5."employee_number"))))) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END as c142,
-	   T10."Serviceberater" as c143,
-	   CASE WHEN ((day((getdate()) - ((convert(datetime, T1."invoice_date"))))) <= 4) THEN ((CASE WHEN ((CASE WHEN (T1."invoice_type" = 5) THEN (((left(((convert(varchar(50), T5."employee_number"))))) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END) IS NOT NULL) THEN (((left(((convert(varchar(50), T1."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number")))))) + ' - ' + (CASE WHEN (T1."invoice_type" = 5) THEN (((left(((convert(varchar(50), T5."employee_number"))))) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END) + ' - ' + (CASE WHEN (T4."first_name" IS NULL) THEN ((left(((convert(varchar(50), T4."customer_number"))))) + ' - ' + T4."family_name") ELSE ((left(((convert(varchar(50), T4."customer_number"))))) + ' - ' + T4."first_name" + ' ' + T4."family_name") END)) ELSE (((left(((convert(varchar(50), T1."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number")))))) + ' - ' + (CASE WHEN (T4."first_name" IS NULL) THEN ((left(((convert(varchar(50), T4."customer_number"))))) + ' - ' + T4."family_name") ELSE ((left(((convert(varchar(50), T4."customer_number"))))) + ' - ' + T4."first_name" + ' ' + T4."family_name") END)) END)) ELSE null END as c144,
-	   (convert(datetime, T1."invoice_date")) as c145,
-	   (left((left(((convert(varchar(50), T1."vehicle_number"))))) + ' - ' + T9."description",100)) as c146,
-	   (left((ucase(T9."description")),3)) as c147,
-	   T9."description" as c148,
-	   T8."description" as c149,
-	   T7."free_form_model_text" as c150,
-	   T7."model_code" as c151,
-	   T7."free_form_make_text" as c152,
-	   T7."make_number" as c153,
-	   CASE WHEN (T1."invoice_type" = 5) THEN ('Teile') ELSE ('Service') END as c154,
-	   CASE WHEN (T1."invoice_type" = 6) THEN ('GWL') WHEN ((T1."invoice_type" = 4) or (T4."customer_number" IN (1000000,1000001,1000002,1000003,1000010))) THEN ('intern') ELSE ('extern') END as c155,
-	   (left(((rtrim(((convert(varchar(50), T3."skr51_cost_center"))))) + ' - ' + T6."skr51_cost_center_name"))) as c156,
-	   (rtrim(((convert(varchar(50), T3."skr51_sales_channel"))))) + ' - ' + T6."skr51_sales_channel_name" as c157,
-	   T3."skr51_make" as c158,
-	   (rtrim(((convert(varchar(50), T3."skr51_cost_center"))))) + ' - ' + T6."skr51_cost_center_name" as c159,
-	   CASE WHEN (T3."debit_or_credit" = 'H') THEN (((convert(float, T3."posted_value"))) / 100 * -1) ELSE (((convert(float, T3."posted_value"))) / 100) END as c160,
-	   CASE WHEN (T4."first_name" IS NULL) THEN ((left(((convert(varchar(50), T4."customer_number"))))) + ' - ' + T4."family_name") ELSE ((left(((convert(varchar(50), T4."customer_number"))))) + ' - ' + T4."first_name" + ' ' + T4."family_name") END as c161,
-	   T4."family_name" as c162,
-	   T4."first_name" as c163,
-	   T4."customer_number" as c164,
-	   (left(((convert(varchar(50), T5."employee_number"))))) + ' - ' + T5."name" as c165,
-	   T5."is_master_craftsman" as c166,
-	   T5."is_business_executive" as c167,
-	   T5."salesman_number" as c168,
-	   T5."mechanic_number" as c169,
-	   T5."name" as c170,
-	   T5."employee_number" as c171,
-	   T3."accounting_date" as c172,
-	   '0' + ((convert(varchar(50), T3."branch_number"))) as c173,
-	   CASE WHEN (T3."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T3."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T3."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T3."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T3."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as c174,
-	   T4."zip_code" as c175,
-	   T3."previously_used_account_no" as c176,
-	   T3."skr51_cost_unit" as c177,
-	   T3."skr51_sales_channel" as c178,
-	   T3."skr51_cost_center" as c179,
-	   T3."skr51_branch" as c180,
-	   T3."day_of_actual_accounting" as c181,
-	   T3."days_for_cash_discount" as c182,
-	   T3."vat_key" as c183,
-	   T3."account_statement_page" as c184,
-	   T3."account_statement_number" as c185,
-	   T3."vat_id_number" as c186,
-	   T3."vehicle_reference" as c187,
-	   T3."posting_text" as c188,
-	   T3."term_of_payment" as c189,
-	   T3."cash_discount" as c190,
-	   T3."journal_line" as c191,
-	   T3."journal_page" as c192,
-	   T3."last_dunning_date" as c193,
-	   T3."dunning_level" as c194,
-	   T3."invoice_number" as c195,
-	   T3."invoice_date" as c196,
-	   T3."employee_number" as c197,
-	   T3."serial_number_each_month" as c198,
-	   T3."account_form_page_line" as c199,
-	   T3."account_form_page_number" as c200,
-	   CASE WHEN (T3."nominal_account_number" = 5701) THEN ((rtrim(((convert(varchar(50), T3."nominal_account_number"))))) + '_' + (rtrim(((convert(varchar(50), T3."skr51_cost_center")))))) ELSE ((rtrim(((convert(varchar(50), T3."nominal_account_number")))))) END as c201,
-	   T3."nominal_contra_account" as c202,
-	   T3."customer_contra_account" as c203,
-	   T3."branch_number" as c204,
-	   T3."posted_count" as c205,
-	   T3."debit_or_credit" as c206,
-	   (convert(float, T3."posted_value")) as c207,
-	   T3."document_date" as c208,
-	   T3."clearing_number" as c209,
-	   T3."is_balanced" as c210,
-	   T3."nominal_account_number" as c211,
-	   T3."customer_number" as c212,
-	   T3."position_in_document" as c213,
-	   T3."document_number" as c214,
-	   T3."document_type" as c215,
-	   (left(((convert(varchar(50), T1."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number"))))) as c216,
-	   T1."total_net" as c217,
-	   T1."total_gross" as c218,
-	   T1."part_disposal" as c219,
-	   T1."part_rebate" as c220,
-	   T1."part_amount_gross" as c221,
-	   T1."part_amount_net" as c222,
-	   T1."job_rebate" as c223,
-	   T1."job_amount_gross" as c224,
-	   T1."job_amount_net" as c225,
-	   T1."used_part_vat_value" as c226,
-	   T1."reduced_vat_value" as c227,
-	   T1."reduced_vat_percentage" as c228,
-	   T1."reduced_vat_basevalue" as c229,
-	   T1."full_vat_value" as c230,
-	   T1."full_vat_percentage" as c231,
-	   T1."full_vat_basevalue" as c232,
-	   T1."vehicle_number" as c233,
-	   T1."internal_cost_account" as c234,
-	   T1."creating_employee" as c235,
-	   T1."odometer_reading" as c236,
-	   T1."credit_invoice_number" as c237,
-	   T1."credit_invoice_type" as c238,
-	   T1."is_credit" as c239,
-	   T1."is_own_vehicle" as c240,
-	   T1."cancelation_employee" as c241,
-	   T1."cancelation_date" as c242,
-	   T1."cancelation_number" as c243,
-	   T1."is_canceled" as c244,
-	   T1."service_date" as c245,
-	   T1."invoice_date" as c246,
-	   T1."order_customer" as c247,
-	   T1."paying_customer" as c248,
-	   T1."subsidiary" as c249,
-	   T1."invoice_number" as c250,
-	   T2."description" as c251,
-	   T2."type" as c252,
-	   T1."invoice_type" as c253
+(select (CASE WHEN ((CASE WHEN (T1."invoice_type" = 5) THEN (((left((((T5."employee_number"))),4)) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END) IS NOT NULL) THEN (((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9))) + ' - ' + (CASE WHEN (T1."invoice_type" = 5) THEN (((left((((T5."employee_number"))),4)) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END) + ' - ' + (CASE WHEN (T4."first_name" IS NULL) THEN ((left((((T4."customer_number"))),7)) + ' - ' + T4."family_name") ELSE ((left((((T4."customer_number"))),7)) + ' - ' + T4."first_name" + ' ' + T4."family_name") END)) ELSE (((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9))) + ' - ' + (CASE WHEN (T4."first_name" IS NULL) THEN ((left((((T4."customer_number"))),7)) + ' - ' + T4."family_name") ELSE ((left((((T4."customer_number"))),7)) + ' - ' + T4."first_name" + ' ' + T4."family_name") END)) END) as "Order Number",
+	   CASE WHEN (T1."invoice_type" = 5) THEN (((left((((T5."employee_number"))),4)) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END as "Serviceberater",
+	   T10."Serviceberater" as "Serviceberater_order_pos",
+	   CASE WHEN ((-1 * datediff(day, (getdate()), ((convert(datetime, T1."invoice_date"))))) <= 4) THEN ((CASE WHEN ((CASE WHEN (T1."invoice_type" = 5) THEN (((left((((T5."employee_number"))),4)) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END) IS NOT NULL) THEN (((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9))) + ' - ' + (CASE WHEN (T1."invoice_type" = 5) THEN (((left((((T5."employee_number"))),4)) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END) + ' - ' + (CASE WHEN (T4."first_name" IS NULL) THEN ((left((((T4."customer_number"))),7)) + ' - ' + T4."family_name") ELSE ((left((((T4."customer_number"))),7)) + ' - ' + T4."first_name" + ' ' + T4."family_name") END)) ELSE (((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9))) + ' - ' + (CASE WHEN (T4."first_name" IS NULL) THEN ((left((((T4."customer_number"))),7)) + ' - ' + T4."family_name") ELSE ((left((((T4."customer_number"))),7)) + ' - ' + T4."first_name" + ' ' + T4."family_name") END)) END)) ELSE null END as "Order Number_Rg_Ausg",
+	   (convert(datetime, T1."invoice_date")) as "Invoice_Date_Uhrzeit",
+	   (left((left((((T1."vehicle_number"))),5)) + ' - ' + T9."description",100)) as "Fahrzeug",
+	   (left((ucase(T9."description")),3)) as "Model",
+	   T9."description" as "Description_Models",
+	   T8."description" as "Description_Makes",
+	   T7."free_form_model_text" as "Free Form Model Text",
+	   T7."model_code" as "Model Code",
+	   T7."free_form_make_text" as "Free Form Make Text",
+	   T7."make_number" as "Make Number",
+	   CASE WHEN (T1."invoice_type" = 5) THEN ('Teile') ELSE ('Service') END as "Auftragsart",
+	   CASE WHEN (T1."invoice_type" = 6) THEN ('GWL') WHEN ((T1."invoice_type" = 4) or (T4."customer_number" IN (1000000,1000001,1000002,1000003,1000010))) THEN ('intern') ELSE ('extern') END as "Umsatzart",
+	   (left(((rtrim((((T3."skr51_cost_center"))))) + ' - ' + T6."skr51_cost_center_name"),1)) as "KST_1_Stelle",
+	   (rtrim((((T3."skr51_sales_channel"))))) + ' - ' + T6."skr51_sales_channel_name" as "Kundenart",
+	   T3."skr51_make" as "Skr51 Make",
+	   (rtrim((((T3."skr51_cost_center"))))) + ' - ' + T6."skr51_cost_center_name" as "Kostenstelle",
+	   CASE WHEN (T3."debit_or_credit" = 'H') THEN (((convert(float, T3."posted_value"))) / 100 * -1) ELSE (((convert(float, T3."posted_value"))) / 100) END as "Betrag",
+	   CASE WHEN (T4."first_name" IS NULL) THEN ((left((((T4."customer_number"))),7)) + ' - ' + T4."family_name") ELSE ((left((((T4."customer_number"))),7)) + ' - ' + T4."first_name" + ' ' + T4."family_name") END as "Kunde",
+	   T4."family_name" as "Family Name_Customers_Suppliers",
+	   T4."first_name" as "First Name_Customers_Suppliers",
+	   T4."customer_number" as "Customer Number_Customers_Suppliers",
+	   (left((((T5."employee_number"))),4)) + ' - ' + T5."name" as "Serviceberater_Rg_Steller",
+	   T5."is_master_craftsman" as "Is Master Craftsman_Employees",
+	   T5."is_business_executive" as "Is Business Executive_Employees",
+	   T5."salesman_number" as "Salesman Number_Employees",
+	   T5."mechanic_number" as "Mechanic Number_Employees",
+	   T5."name" as "Name_Employees",
+	   T5."employee_number" as "Employee Number_Employees",
+	   T3."accounting_date" as "Accounting Date",
+	   '0' + (((T3."branch_number"))) as "Standort",
+	   CASE WHEN (T3."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T3."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T3."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T3."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T3."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as "Free Form Document Text",
+	   T4."zip_code" as "Free Form Accounting Text",
+	   T3."previously_used_account_no" as "Previously Used Account No",
+	   T3."skr51_cost_unit" as "Skr51 Cost Unit",
+	   T3."skr51_sales_channel" as "Skr51 Sales Channel",
+	   T3."skr51_cost_center" as "Skr51 Cost Center",
+	   T3."skr51_branch" as "Skr51 Branch",
+	   T3."day_of_actual_accounting" as "Day Of Actual Accounting",
+	   T3."days_for_cash_discount" as "Days For Cash Discount",
+	   T3."vat_key" as "Vat Key",
+	   T3."account_statement_page" as "Account Statement Page",
+	   T3."account_statement_number" as "Account Statement Number",
+	   T3."vat_id_number" as "Vat Id Number",
+	   T3."vehicle_reference" as "Vehicle Reference",
+	   T3."posting_text" as "Posting Text",
+	   T3."term_of_payment" as "Term Of Payment",
+	   T3."cash_discount" as "Cash Discount",
+	   T3."journal_line" as "Journal Line",
+	   T3."journal_page" as "Journal Page",
+	   T3."last_dunning_date" as "Last Dunning Date",
+	   T3."dunning_level" as "Dunning Level",
+	   T3."invoice_number" as "Invoice Number",
+	   T3."invoice_date" as "Invoice Date_falsch",
+	   T3."employee_number" as "Employee Number",
+	   T3."serial_number_each_month" as "Serial Number Each Month",
+	   T3."account_form_page_line" as "Account Form Page Line",
+	   T3."account_form_page_number" as "Account Form Page Number",
+	   CASE WHEN (T3."nominal_account_number" = 5701) THEN ((rtrim((((T3."nominal_account_number"))))) + '_' + (rtrim((((T3."skr51_cost_center")))))) ELSE ((rtrim((((T3."nominal_account_number")))))) END as "Contra Account Text",
+	   T3."nominal_contra_account" as "Nominal Contra Account",
+	   T3."customer_contra_account" as "Customer Contra Account",
+	   T3."branch_number" as "Branch Number",
+	   T3."posted_count" as "Posted Count",
+	   T3."debit_or_credit" as "Debit Or Credit",
+	   (convert(float, T3."posted_value")) as "Posted Value",
+	   T3."document_date" as "Document Date",
+	   T3."clearing_number" as "Clearing Number",
+	   T3."is_balanced" as "Is Balanced",
+	   T3."nominal_account_number" as "Nominal Account Number",
+	   T3."customer_number" as "Customer Number",
+	   T3."position_in_document" as "Position In Document",
+	   T3."document_number" as "Document Number",
+	   T3."document_type" as "Document Type",
+	   (left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) as "Inv_Type_Invoice_Number",
+	   T1."total_net" as "Total Net",
+	   T1."total_gross" as "Total Gross",
+	   T1."part_disposal" as "Part Disposal",
+	   T1."part_rebate" as "Part Rebate",
+	   T1."part_amount_gross" as "Part Amount Gross",
+	   T1."part_amount_net" as "Part Amount Net",
+	   T1."job_rebate" as "Job Rebate",
+	   T1."job_amount_gross" as "Job Amount Gross",
+	   T1."job_amount_net" as "Job Amount Net",
+	   T1."used_part_vat_value" as "Used Part Vat Value",
+	   T1."reduced_vat_value" as "Reduced Vat Value",
+	   T1."reduced_vat_percentage" as "Reduced Vat Percentage",
+	   T1."reduced_vat_basevalue" as "Reduced Vat Basevalue",
+	   T1."full_vat_value" as "Full Vat Value",
+	   T1."full_vat_percentage" as "Full Vat Percentage",
+	   T1."full_vat_basevalue" as "Full Vat Basevalue",
+	   T1."vehicle_number" as "Vehicle Number",
+	   T1."internal_cost_account" as "Internal Cost Account",
+	   T1."creating_employee" as "Creating Employee",
+	   T1."odometer_reading" as "Odometer Reading",
+	   T1."credit_invoice_number" as "Credit Invoice Number",
+	   T1."credit_invoice_type" as "Credit Invoice Type",
+	   T1."is_credit" as "Is Credit",
+	   T1."is_own_vehicle" as "Is Own Vehicle",
+	   T1."cancelation_employee" as "Cancelation Employee",
+	   T1."cancelation_date" as "Cancelation Date",
+	   T1."cancelation_number" as "Cancelation Number",
+	   T1."is_canceled" as "Is Canceled",
+	   T1."service_date" as "Service Date",
+	   T1."invoice_date" as "Invoice Date",
+	   T1."order_customer" as "Order Customer",
+	   T1."paying_customer" as "Paying Customer",
+	   T1."subsidiary" as "Subsidiary",
+	   T1."invoice_number" as "Invoice Number_2",
+	   T2."description" as "Description_Invoice_Types",
+	   T2."type" as "Type_Invoice_Types",
+	   T1."invoice_type" as "Invoice Type"
 from ((((((((("dbo"."invoices" T1 left outer join "dbo"."invoice_types" T2 on T2."type" = T1."invoice_type") left outer join "dbo"."journal_accountings" T3 on T3."invoice_number" = T1."invtype_invnr") left outer join "dbo"."customers_suppliers" T4 on T4."customer_number" = T1."paying_customer") left outer join "dbo"."employees" T5 on T1."creating_employee" = T5."employee_number") left outer join "dbo"."accounts_characteristics" T6 on (((((T6."skr51_branch" = T3."skr51_branch") and (T6."skr51_make" = T3."skr51_make")) and (T6."skr51_cost_center" = T3."skr51_cost_center")) and (T6."skr51_sales_channel" = T3."skr51_sales_channel")) and (T6."skr51_cost_unit" = T3."skr51_cost_unit")) and (T6."subsidiary_to_company_ref" = T3."subsidiary_to_company_ref")) left outer join "dbo"."vehicles" T7 on T1."vehicle_number" = T7."internal_number") left outer join "dbo"."makes" T8 on T7."make_number" = T8."make_number") left outer join "dbo"."models" T9 on (T7."make_number" = T9."make_number") and (T7."model_code" = T9."model_code")) left outer join "ims"."Serviceberater_Rechnung" T10 on T1."invtype_invnr" = T10."invtype_invnr")
 from ((((((((("dbo"."invoices" T1 left outer join "dbo"."invoice_types" T2 on T2."type" = T1."invoice_type") left outer join "dbo"."journal_accountings" T3 on T3."invoice_number" = T1."invtype_invnr") left outer join "dbo"."customers_suppliers" T4 on T4."customer_number" = T1."paying_customer") left outer join "dbo"."employees" T5 on T1."creating_employee" = T5."employee_number") left outer join "dbo"."accounts_characteristics" T6 on (((((T6."skr51_branch" = T3."skr51_branch") and (T6."skr51_make" = T3."skr51_make")) and (T6."skr51_cost_center" = T3."skr51_cost_center")) and (T6."skr51_sales_channel" = T3."skr51_sales_channel")) and (T6."skr51_cost_unit" = T3."skr51_cost_unit")) and (T6."subsidiary_to_company_ref" = T3."subsidiary_to_company_ref")) left outer join "dbo"."vehicles" T7 on T1."vehicle_number" = T7."internal_number") left outer join "dbo"."makes" T8 on T7."make_number" = T8."make_number") left outer join "dbo"."models" T9 on (T7."make_number" = T9."make_number") and (T7."model_code" = T9."model_code")) left outer join "ims"."Serviceberater_Rechnung" T10 on T1."invtype_invnr" = T10."invtype_invnr")
-where (((((T1."invoice_type" BETWEEN 2 AND 6) and ((left(((convert(varchar(50), T3."nominal_account_number"))))) IN ('4','5','7','8'))) and (T1."invoice_date" >= convert(date, '2019-01-01'))) and (T1."is_canceled" <> 1)) and (((len((rtrim(((convert(varchar(50), T3."nominal_account_number"))))) + 'Z') - 1)) = 4))
--- order by c141 asc,c214 asc,c213 asc,c216 asc
+where (((((T1."invoice_type" BETWEEN 2 AND 6) and ((left((((T3."nominal_account_number"))),1)) IN ('4','5','7','8'))) and (T1."invoice_date" >= convert(date, '2019-01-01'))) and (T1."is_canceled" <> 1)) and (((len((rtrim((((T3."nominal_account_number"))))) + 'Z') - 1)) = 4))
+-- order by "Order Number" asc,"Document Number" asc,"Position In Document" asc,"Inv_Type_Invoice_Number" asc
 ) D1
 ) D1

+ 8 - 8
System/LOCOSOFT/IQD/Serv_Teile/Aftersales_Rechnungen_verk_AW_final.sql

@@ -5,28 +5,28 @@ select T1."invoice_type" as "Invoice Type",
 	   T1."service_date" as "Service Date",
 	   T1."service_date" as "Service Date",
 	   T1."is_canceled" as "Is Canceled",
 	   T1."is_canceled" as "Is Canceled",
 	   T1."vehicle_number" as "Vehicle Number",
 	   T1."vehicle_number" as "Vehicle Number",
-	   (left(((convert(varchar(50), T1."invoice_type"))))) + '_' + (left(((convert(varchar(50), T1."invoice_number"))))) as "Invoice_Type_Invoice_Number",
+	   (left((((T1."invoice_type"))),1)) + '_' + (left((((T1."invoice_number"))),9)) as "Invoice_Type_Invoice_Number",
 	   '1' as "Hauptbetrieb",
 	   '1' as "Hauptbetrieb",
-	   '0' + ((convert(varchar(50), T1."subsidiary"))) as "Standort",
+	   '0' + (((T1."subsidiary"))) as "Standort",
 	   T2."Serviceberater" as "Serviceberater",
 	   T2."Serviceberater" as "Serviceberater",
 	   CASE WHEN (T1."invoice_type" = 6) THEN ('GWL') WHEN ((T1."invoice_type" = 4) or (T3."customer_number" = 100001)) THEN ('intern') ELSE ('extern') END as "Umsatzart",
 	   CASE WHEN (T1."invoice_type" = 6) THEN ('GWL') WHEN ((T1."invoice_type" = 4) or (T3."customer_number" = 100001)) THEN ('intern') ELSE ('extern') END as "Umsatzart",
 	   T4."description" as "Fabrikat",
 	   T4."description" as "Fabrikat",
 	   T4."description" as "Description_Makes",
 	   T4."description" as "Description_Makes",
 	   T5."description" as "Description_Models",
 	   T5."description" as "Description_Models",
 	   (left((ucase(T5."description")),3)) as "Model",
 	   (left((ucase(T5."description")),3)) as "Model",
-	   (left((left(((convert(varchar(50), T1."vehicle_number"))))) + ' - ' + T5."description",100)) as "Fahrzeug",
-	   CASE WHEN ((left(((convert(varchar(50), T6."type"))))) IN ('1','6')) THEN ('41 - After Sales Kundendienst eigene Werkstatt') WHEN (T6."type" IN (40,41,44,45,46,47,48,49,88,89,50,90)) THEN ('41 - After Sales Kundendienst eigene Werkstatt') WHEN ((left(((convert(varchar(50), T6."type"))))) IN ('2')) THEN ('44 - After Sales Kundendienst eigene Karosserieabteilung') WHEN (T6."type" IN (42,92)) THEN ('44 - After Sales Kundendienst eigene Karosserieabteilung') WHEN ((left(((convert(varchar(50), T6."type"))))) IN ('3')) THEN ('45 - After Sales Kundendienst eigene Lackiererei') WHEN (T6."type" IN (43,93)) THEN ('45 - After Sales Kundendienst eigene Lackiererei') ELSE null END as "Kostenstelle",
+	   (left((left((((T1."vehicle_number"))),5)) + ' - ' + T5."description",100)) as "Fahrzeug",
+	   CASE WHEN ((left((((T6."type"))),1)) IN ('1','6')) THEN ('41 - After Sales Kundendienst eigene Werkstatt') WHEN (T6."type" IN (40,41,44,45,46,47,48,49,88,89,50,90)) THEN ('41 - After Sales Kundendienst eigene Werkstatt') WHEN ((left((((T6."type"))),1)) IN ('2')) THEN ('44 - After Sales Kundendienst eigene Karosserieabteilung') WHEN (T6."type" IN (42,92)) THEN ('44 - After Sales Kundendienst eigene Karosserieabteilung') WHEN ((left((((T6."type"))),1)) IN ('3')) THEN ('45 - After Sales Kundendienst eigene Lackiererei') WHEN (T6."type" IN (43,93)) THEN ('45 - After Sales Kundendienst eigene Lackiererei') ELSE null END as "Kostenstelle",
 	   CASE WHEN (T4."description" = 'Ford') THEN ('1') WHEN (T4."description" = 'Nissan') THEN ('3') WHEN (T4."description" = 'Suzuki') THEN ('2') ELSE ('9') END as "Marke",
 	   CASE WHEN (T4."description" = 'Ford') THEN ('1') WHEN (T4."description" = 'Nissan') THEN ('3') WHEN (T4."description" = 'Suzuki') THEN ('2') ELSE ('9') END as "Marke",
 	   'Service' as "Auftragsart",
 	   'Service' as "Auftragsart",
 	   T3."zip_code" as "Geschäftsart",
 	   T3."zip_code" as "Geschäftsart",
-	   CASE WHEN (T3."first_name" IS NULL) THEN ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."family_name") ELSE ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."first_name" + ' ' + T3."family_name") END as "Kunde",
+	   CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END as "Kunde",
 	   T7."time_units" as "Time Units",
 	   T7."time_units" as "Time Units",
 	   (convert(float, T7."time_units")) as "Time Units_Zahl",
 	   (convert(float, T7."time_units")) as "Time Units_Zahl",
 	   10 as "AW/Std.",
 	   10 as "AW/Std.",
 	   ((convert(float, T7."time_units"))) / 10 as "verk. Std.",
 	   ((convert(float, T7."time_units"))) / 10 as "verk. Std.",
-	   CASE WHEN (T2."Serviceberater" IS NOT NULL) THEN ((left(((convert(varchar(50), T1."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number"))))) + ' - ' + T2."Serviceberater" + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."family_name") ELSE ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) ELSE ((left(((convert(varchar(50), T1."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number"))))) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."family_name") ELSE ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) END as "Order Number",
-	   CASE WHEN ((day((getdate()) - (convert(datetime, T1."invoice_date")))) <= 4) THEN ((CASE WHEN (T2."Serviceberater" IS NOT NULL) THEN ((left(((convert(varchar(50), T1."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number"))))) + ' - ' + T2."Serviceberater" + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."family_name") ELSE ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) ELSE ((left(((convert(varchar(50), T1."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number"))))) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."family_name") ELSE ((left(((convert(varchar(50), T3."customer_number"))))) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) END)) ELSE null END as "Order Number_Rg_Ausg",
-	   (left(((convert(varchar(50), T8."employee_number"))))) + ' - ' + T8."name" as "Kundenart"
+	   CASE WHEN (T2."Serviceberater" IS NOT NULL) THEN ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + T2."Serviceberater" + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) ELSE ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) END as "Order Number",
+	   CASE WHEN ((-1 * datediff(day, (getdate()), (convert(datetime, T1."invoice_date")))) <= 4) THEN ((CASE WHEN (T2."Serviceberater" IS NOT NULL) THEN ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + T2."Serviceberater" + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) ELSE ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) END)) ELSE null END as "Order Number_Rg_Ausg",
+	   (left((((T8."employee_number"))),4)) + ' - ' + T8."name" as "Kundenart"
 from (((((((("dbo"."invoices" T1 left outer join "dbo"."customers_suppliers" T3 on T3."customer_number" = T1."paying_customer") left outer join "dbo"."vehicles" T9 on T1."vehicle_number" = T9."internal_number") left outer join "dbo"."makes" T4 on T9."make_number" = T4."make_number") left outer join "dbo"."models" T5 on (T9."make_number" = T5."make_number") and (T9."model_code" = T5."model_code")) left outer join "dbo"."labours" T7 on (T7."invoice_number" = T1."invoice_number") and (T7."invoice_type" = T1."invoice_type")) left outer join "dbo"."charge_type_descriptions" T6 on T6."type" = T7."charge_type") left outer join "dbo"."employees" T8 on T1."creating_employee" = T8."employee_number") left outer join "ims"."Serviceberater_Rechnung" T2 on T1."invtype_invnr" = T2."invtype_invnr")
 from (((((((("dbo"."invoices" T1 left outer join "dbo"."customers_suppliers" T3 on T3."customer_number" = T1."paying_customer") left outer join "dbo"."vehicles" T9 on T1."vehicle_number" = T9."internal_number") left outer join "dbo"."makes" T4 on T9."make_number" = T4."make_number") left outer join "dbo"."models" T5 on (T9."make_number" = T5."make_number") and (T9."model_code" = T5."model_code")) left outer join "dbo"."labours" T7 on (T7."invoice_number" = T1."invoice_number") and (T7."invoice_type" = T1."invoice_type")) left outer join "dbo"."charge_type_descriptions" T6 on T6."type" = T7."charge_type") left outer join "dbo"."employees" T8 on T1."creating_employee" = T8."employee_number") left outer join "ims"."Serviceberater_Rechnung" T2 on T1."invtype_invnr" = T2."invtype_invnr")
 where (((((T1."invoice_type" BETWEEN 2 AND 6) and (T1."is_canceled" <> 1)) and (T1."invoice_date" >= convert(date, '2017-01-01'))) and ((((convert(float, T7."time_units"))) <> 0) and (((convert(float, T7."time_units"))) IS NOT NULL))) and (T7."mechanic_no" IS NOT NULL))
 where (((((T1."invoice_type" BETWEEN 2 AND 6) and (T1."is_canceled" <> 1)) and (T1."invoice_date" >= convert(date, '2017-01-01'))) and ((((convert(float, T7."time_units"))) <> 0) and (((convert(float, T7."time_units"))) IS NOT NULL))) and (T7."mechanic_no" IS NOT NULL))
 -- order by "Invoice_Type_Invoice_Number" asc,"Invoice Number" asc
 -- order by "Invoice_Type_Invoice_Number" asc,"Invoice Number" asc

+ 2 - 2
System/LOCOSOFT/IQD/Serv_Teile/Imvoice_No_Order_No.sql

@@ -1,7 +1,7 @@
 select distinct T1."order_number" as "Order Number",
 select distinct T1."order_number" as "Order Number",
 	   T1."invoice_number" as "Invoice Number_ohne_type",
 	   T1."invoice_number" as "Invoice Number_ohne_type",
 	   T2."invoice_type" as "Invoice Type",
 	   T2."invoice_type" as "Invoice Type",
-	   (left(((convert(varchar(50), T2."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number"))))) as "Invoice Number"
+	   (left((((T2."invoice_type"))),1)) + (left((((T1."invoice_number"))),6)) as "Invoice Number"
 from ("dbo"."invoices" T2 left outer join "dbo"."labours" T1 on (T1."invoice_number" = T2."invoice_number") and (T1."invoice_type" = T2."invoice_type"))
 from ("dbo"."invoices" T2 left outer join "dbo"."labours" T1 on (T1."invoice_number" = T2."invoice_number") and (T1."invoice_type" = T2."invoice_type"))
-where ((((left(((convert(varchar(50), T2."invoice_type"))))) + (left(((convert(varchar(50), T1."invoice_number")))))) <> '') and (T2."invoice_date" >= convert(date, '2019-01-01')))
+where ((((left((((T2."invoice_type"))),1)) + (left((((T1."invoice_number"))),6))) <> '') and (T2."invoice_date" >= convert(date, '2019-01-01')))
 -- order by "Order Number" asc
 -- order by "Order Number" asc

+ 1 - 1
System/LOCOSOFT/IQD/Serv_Teile/Serviceberater_Rechnung.sql

@@ -5,7 +5,7 @@ select distinct T1."invoice_type" as "Invoice Type",
 	   T1."invtype_invnr" as "Invoice_Type_Invoice_Number",
 	   T1."invtype_invnr" as "Invoice_Type_Invoice_Number",
 	   T3."employee_number" as "Employee Number_Employees",
 	   T3."employee_number" as "Employee Number_Employees",
 	   T3."name" as "Name_Employees",
 	   T3."name" as "Name_Employees",
-	   (left(((convert(varchar(50), T3."employee_number"))))) + ' - ' + T3."name" as "Serviceberater"
+	   (left((((T3."employee_number"))),4)) + ' - ' + T3."name" as "Serviceberater"
 from (("LOCOSOFT"."dbo"."order_positions" T2 left outer join "dbo"."invoices" T1 on T2."order_number" = T1."order_number") left outer join "LOCOSOFT"."dbo"."employees" T3 on T2."order_taking_employee_no" = T3."employee_number")
 from (("LOCOSOFT"."dbo"."order_positions" T2 left outer join "dbo"."invoices" T1 on T2."order_number" = T1."order_number") left outer join "LOCOSOFT"."dbo"."employees" T3 on T2."order_taking_employee_no" = T3."employee_number")
 where ((T1."invoice_type" BETWEEN 2 AND 6) and (T2."order_date" >= convert(datetime, '2019-01-01 00:00:00.000')))
 where ((T1."invoice_type" BETWEEN 2 AND 6) and (T2."order_date" >= convert(datetime, '2019-01-01 00:00:00.000')))
 -- order by "Invoice_Type_Invoice_Number" asc,"Invoice Number" asc
 -- order by "Invoice_Type_Invoice_Number" asc,"Invoice Number" asc

+ 87 - 87
System/LOCOSOFT/IQD/Serv_Teile/offene_Auftraege_DG_Anz_Tage.sql

@@ -1,93 +1,93 @@
-select c51 as "Order Number_ori",
-	   c91 as "Order Position",
-	   c90 as "Labour Type",
-	   c89 as "Subsidiary",
-	   c88 as "Is Invoiced",
-	   c87 as "Invoice Type",
-	   c86 as "Invoice Number",
-	   c85 as "Order Date",
-	   c84 as "Estimated Inbound Time",
-	   c83 as "Estimated Outbound Time",
-	   c82 as "Order Print Date",
-	   c81 as "Order Taking Employee No",
-	   c80 as "Order Delivery Employee No",
-	   c79 as "Vehicle Number",
-	   c78 as "Order Mileage",
-	   c77 as "Order Customer",
-	   c76 as "Paying Customer",
-	   c75 as "Holder Number",
-	   c74 as "Parts Rebate Group Sell",
-	   c73 as "Clearing Delay Type",
-	   c72 as "Code_Labour_Type",
-	   c71 as "Description_Labour_Type",
-	   c70 as "Hauptbetrieb",
-	   c69 as "Standort",
-	   c68 as "Name_Serviceberater",
-	   c67 as "Serviceberater",
-	   c66 as "Umsatzart",
-	   c65 as "Customer Number_Cust",
-	   c64 as "First Name_Cust",
-	   c63 as "Family Name_Cust",
-	   c62 as "Kunde",
-	   c61 as "Order Number",
-	   c60 as "Internal Number_Vehicle",
-	   c59 as "Vin_Vehicle",
-	   c58 as "License Plate_Vehicle",
-	   c57 as "Make Number_Vehicle",
+select "Order Number_ori",
+	   "Order Position",
+	   "Labour Type",
+	   "Subsidiary",
+	   "Is Invoiced",
+	   "Invoice Type",
+	   "Invoice Number",
+	   "Order Date",
+	   "Estimated Inbound Time",
+	   "Estimated Outbound Time",
+	   "Order Print Date",
+	   "Order Taking Employee No",
+	   "Order Delivery Employee No",
+	   "Vehicle Number",
+	   "Order Mileage",
+	   "Order Customer",
+	   "Paying Customer",
+	   "Holder Number",
+	   "Parts Rebate Group Sell",
+	   "Clearing Delay Type",
+	   "Code_Labour_Type",
+	   "Description_Labour_Type",
+	   "Hauptbetrieb",
+	   "Standort",
+	   "Name_Serviceberater",
+	   "Serviceberater",
+	   "Umsatzart",
+	   "Customer Number_Cust",
+	   "First Name_Cust",
+	   "Family Name_Cust",
+	   "Kunde",
+	   "Order Number",
+	   "Internal Number_Vehicle",
+	   "Vin_Vehicle",
+	   "License Plate_Vehicle",
+	   "Make Number_Vehicle",
 	   'Service' as "Auftragsart",
 	   'Service' as "Auftragsart",
-	   c56 as "Make Number_Makes",
-	   c55 as "Description_Makes",
-	   c55 as "Fabrikat",
-	   c54 as "Description_Models",
-	   c53 as "Model",
+	   "Make Number_Makes",
+	   "Description_Makes",
+	   "Description_Makes" as "Fabrikat",
+	   "Description_Models",
+	   "Model",
 	   1 as "DG_1",
 	   1 as "DG_1",
-	   COUNT(c89) OVER (partition by c51) as "DG_2",
-	   1 / (COUNT(c89) OVER (partition by c51)) as "DG",
-	   c52 as "Anzahl Tage_1",
-	   (c52) / (COUNT(c89) OVER (partition by c51)) as "Anzahl Tage"
+	   COUNT("Subsidiary") OVER (partition by "Order Number_ori") as "DG_2",
+	   1 / (COUNT("Subsidiary") OVER (partition by "Order Number_ori")) as "DG",
+	   "Anzahl Tage_1",
+	   ("Anzahl Tage_1") / (COUNT("Subsidiary") OVER (partition by "Order Number_ori")) as "Anzahl Tage"
 from 
 from 
-(select T1."order_number" as c51,
-	   (day((getdate()) - T1."order_date")) as c52,
-	   (left((ucase(T8."description")),3)) as c53,
-	   T8."description" as c54,
-	   T7."description" as c55,
-	   T7."make_number" as c56,
-	   T6."make_number" as c57,
-	   T6."license_plate" as c58,
-	   T6."vin" as c59,
-	   T6."internal_number" as c60,
-	   CASE WHEN (T6."license_plate" IS NOT NULL) THEN ((left(((convert(varchar(50), T1."order_number"))))) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left(((convert(varchar(50), T1."order_taking_employee_no"))))) + ' - ' + T4."name") END) + ' - ' + T5."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date"))) + ' - ' + T6."license_plate") ELSE ((left(((convert(varchar(50), T1."order_number"))))) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left(((convert(varchar(50), T1."order_taking_employee_no"))))) + ' - ' + T4."name") END) + ' - ' + T5."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date")))) END as c61,
-	   (left(((convert(varchar(50), T5."customer_number"))))) + ' - ' + T5."first_name" + ' ' + T5."family_name" as c62,
-	   T5."family_name" as c63,
-	   T5."first_name" as c64,
-	   T5."customer_number" as c65,
-	   T3."code" + ' - ' + T3."description" as c66,
-	   CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left(((convert(varchar(50), T1."order_taking_employee_no"))))) + ' - ' + T4."name") END as c67,
-	   T4."name" as c68,
-	   '0' + ((convert(varchar(50), T1."subsidiary"))) as c69,
-	   CASE WHEN (('0' + ((convert(varchar(50), T1."subsidiary")))) IN ('015                                                                                                                                                                                                                                                            ')) THEN ('15') ELSE ('1') END as c70,
-	   T3."description" as c71,
-	   T3."code" as c72,
-	   T1."clearing_delay_type" as c73,
-	   T1."parts_rebate_group_sell" as c74,
-	   T1."holder_number" as c75,
-	   T1."paying_customer" as c76,
-	   T1."order_customer" as c77,
-	   T1."order_mileage" as c78,
-	   T1."vehicle_number" as c79,
-	   T1."order_delivery_employee_no" as c80,
-	   T1."order_taking_employee_no" as c81,
-	   T1."order_print_date" as c82,
-	   T1."estimated_outbound_time" as c83,
-	   T1."estimated_inbound_time" as c84,
-	   T1."order_date" as c85,
-	   T2."invoice_number" as c86,
-	   T2."invoice_type" as c87,
-	   T2."is_invoiced" as c88,
-	   T1."subsidiary" as c89,
-	   T2."labour_type" as c90,
-	   T1."order_position" as c91
+(select T1."order_number" as "Order Number_ori",
+	   (-1 * datediff(day, (getdate()), T1."order_date")) as "Anzahl Tage_1",
+	   (left((ucase(T8."description")),3)) as "Model",
+	   T8."description" as "Description_Models",
+	   T7."description" as "Description_Makes",
+	   T7."make_number" as "Make Number_Makes",
+	   T6."make_number" as "Make Number_Vehicle",
+	   T6."license_plate" as "License Plate_Vehicle",
+	   T6."vin" as "Vin_Vehicle",
+	   T6."internal_number" as "Internal Number_Vehicle",
+	   CASE WHEN (T6."license_plate" IS NOT NULL) THEN ((left((((T1."order_number"))),6)) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T4."name") END) + ' - ' + T5."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date"))) + ' - ' + T6."license_plate") ELSE ((left((((T1."order_number"))))) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T4."name") END) + ' - ' + T5."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date")))) END as "Order Number",
+	   (left((((T5."customer_number"))),7)) + ' - ' + T5."first_name" + ' ' + T5."family_name" as "Kunde",
+	   T5."family_name" as "Family Name_Cust",
+	   T5."first_name" as "First Name_Cust",
+	   T5."customer_number" as "Customer Number_Cust",
+	   T3."code" + ' - ' + T3."description" as "Umsatzart",
+	   CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T4."name") END as "Serviceberater",
+	   T4."name" as "Name_Serviceberater",
+	   '0' + (((T1."subsidiary"))) as "Standort",
+	   CASE WHEN (('0' + (((T1."subsidiary")))) IN ('015                                                                                                                                                                                                                                                            ')) THEN ('15') ELSE ('1') END as "Hauptbetrieb",
+	   T3."description" as "Description_Labour_Type",
+	   T3."code" as "Code_Labour_Type",
+	   T1."clearing_delay_type" as "Clearing Delay Type",
+	   T1."parts_rebate_group_sell" as "Parts Rebate Group Sell",
+	   T1."holder_number" as "Holder Number",
+	   T1."paying_customer" as "Paying Customer",
+	   T1."order_customer" as "Order Customer",
+	   T1."order_mileage" as "Order Mileage",
+	   T1."vehicle_number" as "Vehicle Number",
+	   T1."order_delivery_employee_no" as "Order Delivery Employee No",
+	   T1."order_taking_employee_no" as "Order Taking Employee No",
+	   T1."order_print_date" as "Order Print Date",
+	   T1."estimated_outbound_time" as "Estimated Outbound Time",
+	   T1."estimated_inbound_time" as "Estimated Inbound Time",
+	   T1."order_date" as "Order Date",
+	   T2."invoice_number" as "Invoice Number",
+	   T2."invoice_type" as "Invoice Type",
+	   T2."is_invoiced" as "Is Invoiced",
+	   T1."subsidiary" as "Subsidiary",
+	   T2."labour_type" as "Labour Type",
+	   T1."order_position" as "Order Position"
 from ((((((("dbo"."order_positions" T1 left outer join "dbo"."labours" T2 on T1."order_number" = T2."order_number") left outer join "dbo"."labour_types" T3 on T3."code" = T2."labour_type") left outer join "dbo"."employees" T4 on T1."order_taking_employee_no" = T4."employee_number") left outer join "dbo"."customers_suppliers" T5 on T1."order_customer" = T5."customer_number") left outer join "dbo"."vehicles" T6 on T1."vehicle_number" = T6."internal_number") left outer join "dbo"."makes" T7 on T6."make_number" = T7."make_number") left outer join "dbo"."models" T8 on (T6."make_number" = T8."make_number") and (T6."model_code" = T8."model_code"))
 from ((((((("dbo"."order_positions" T1 left outer join "dbo"."labours" T2 on T1."order_number" = T2."order_number") left outer join "dbo"."labour_types" T3 on T3."code" = T2."labour_type") left outer join "dbo"."employees" T4 on T1."order_taking_employee_no" = T4."employee_number") left outer join "dbo"."customers_suppliers" T5 on T1."order_customer" = T5."customer_number") left outer join "dbo"."vehicles" T6 on T1."vehicle_number" = T6."internal_number") left outer join "dbo"."makes" T7 on T6."make_number" = T7."make_number") left outer join "dbo"."models" T8 on (T6."make_number" = T8."make_number") and (T6."model_code" = T8."model_code"))
 where (((T2."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2020-01-01 00:00:00.000'))) and (T2."labour_type" <> 'F'))
 where (((T2."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2020-01-01 00:00:00.000'))) and (T2."labour_type" <> 'F'))
--- order by c51 asc
+-- order by "Order Number_ori" asc
 ) D1
 ) D1

+ 89 - 89
System/LOCOSOFT/IQD/Serv_Teile/offene_Auftraege_Teile.sql

@@ -1,99 +1,99 @@
-select distinct c55 as "Order Number_ori",
-	   c97 as "Order Position",
+select distinct "Order Number_ori",
+	   "Order Position",
 	   '' as "Labour Type",
 	   '' as "Labour Type",
-	   c96 as "Subsidiary",
-	   c95 as "Is Invoiced",
-	   c94 as "Invoice Type",
-	   c93 as "Invoice Number",
-	   c92 as "Order Date",
-	   c91 as "Estimated Inbound Time",
-	   c90 as "Estimated Outbound Time",
-	   c89 as "Order Print Date",
-	   c88 as "Order Taking Employee No",
-	   c87 as "Order Delivery Employee No",
-	   c86 as "Vehicle Number",
-	   c85 as "Order Mileage",
-	   c84 as "Order Customer",
-	   c83 as "Paying Customer",
-	   c82 as "Holder Number",
-	   c81 as "Parts Rebate Group Sell",
-	   c80 as "Clearing Delay Type",
+	   "Subsidiary",
+	   "Is Invoiced",
+	   "Invoice Type",
+	   "Invoice Number",
+	   "Order Date",
+	   "Estimated Inbound Time",
+	   "Estimated Outbound Time",
+	   "Order Print Date",
+	   "Order Taking Employee No",
+	   "Order Delivery Employee No",
+	   "Vehicle Number",
+	   "Order Mileage",
+	   "Order Customer",
+	   "Paying Customer",
+	   "Holder Number",
+	   "Parts Rebate Group Sell",
+	   "Clearing Delay Type",
 	   '' as "Code_Labour_Type",
 	   '' as "Code_Labour_Type",
 	   '' as "Description_Labour_Type",
 	   '' as "Description_Labour_Type",
-	   c79 as "Hauptbetrieb",
-	   c78 as "Standort",
-	   c77 as "Name_Serviceberater",
-	   c76 as "Serviceberater",
+	   "Hauptbetrieb",
+	   "Standort",
+	   "Name_Serviceberater",
+	   "Serviceberater",
 	   'Teile' as "Umsatzart",
 	   'Teile' as "Umsatzart",
-	   c75 as "Customer Number_Cust",
-	   c74 as "First Name_Cust",
-	   c73 as "Family Name_Cust",
-	   c72 as "Kunde",
-	   c71 as "Order Number",
-	   c70 as "Internal Number_Vehicle",
-	   c69 as "Vin_Vehicle",
-	   c68 as "License Plate_Vehicle",
-	   c67 as "Make Number_Vehicle",
+	   "Customer Number_Cust",
+	   "First Name_Cust",
+	   "Family Name_Cust",
+	   "Kunde",
+	   "Order Number",
+	   "Internal Number_Vehicle",
+	   "Vin_Vehicle",
+	   "License Plate_Vehicle",
+	   "Make Number_Vehicle",
 	   'Service' as "Auftragsart",
 	   'Service' as "Auftragsart",
-	   c66 as "Make Number_Makes",
-	   c65 as "Description_Makes",
-	   c65 as "Fabrikat",
-	   c64 as "Description_Models",
-	   c63 as "Model",
+	   "Make Number_Makes",
+	   "Description_Makes",
+	   "Description_Makes" as "Fabrikat",
+	   "Description_Models",
+	   "Model",
 	   1 as "DG_1",
 	   1 as "DG_1",
-	   COUNT('') OVER (partition by c55) as "DG_2",
-	   c62 as "Part Number",
-	   c61 as "Stock No",
-	   c60 as "Stock Removal Date",
-	   c59 as "Amount",
-	   c56 as "Sum",
-	   c58 as "Parts Type",
-	   c57 as "Text Line",
-	   c56 as "Teile"
+	   COUNT('') OVER (partition by "Order Number_ori") as "DG_2",
+	   "Part Number",
+	   "Stock No",
+	   "Stock Removal Date",
+	   "Amount",
+	   "Sum",
+	   "Parts Type",
+	   "Text Line",
+	   "Sum" as "Teile"
 from 
 from 
-(select T1."order_number" as c55,
-	   T2."sum" as c56,
-	   T2."text_line" as c57,
-	   T2."parts_type" as c58,
-	   T2."amount" as c59,
-	   T2."stock_removal_date" as c60,
-	   T2."stock_no" as c61,
-	   T2."part_number" as c62,
-	   (left((ucase(T7."description")),3)) as c63,
-	   T7."description" as c64,
-	   T6."description" as c65,
-	   T6."make_number" as c66,
-	   T5."make_number" as c67,
-	   T5."license_plate" as c68,
-	   T5."vin" as c69,
-	   T5."internal_number" as c70,
-	   CASE WHEN (T5."license_plate" IS NOT NULL) THEN ((left(((convert(varchar(50), T1."order_number"))))) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left(((convert(varchar(50), T1."order_taking_employee_no"))))) + ' - ' + T3."name") END) + ' - ' + T4."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date"))) + ' - ' + T5."license_plate") ELSE ((left(((convert(varchar(50), T1."order_number"))))) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left(((convert(varchar(50), T1."order_taking_employee_no"))))) + ' - ' + T3."name") END) + ' - ' + T4."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date")))) END as c71,
-	   (left(((convert(varchar(50), T4."customer_number"))))) + ' - ' + T4."first_name" + ' ' + T4."family_name" as c72,
-	   T4."family_name" as c73,
-	   T4."first_name" as c74,
-	   T4."customer_number" as c75,
-	   CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left(((convert(varchar(50), T1."order_taking_employee_no"))))) + ' - ' + T3."name") END as c76,
-	   T3."name" as c77,
-	   '0' + ((convert(varchar(50), T1."subsidiary"))) as c78,
-	   CASE WHEN (('0' + ((convert(varchar(50), T1."subsidiary")))) IN ('015                                                                                                                                                                                                                                                            ')) THEN ('15') ELSE ('1') END as c79,
-	   T1."clearing_delay_type" as c80,
-	   T1."parts_rebate_group_sell" as c81,
-	   T1."holder_number" as c82,
-	   T1."paying_customer" as c83,
-	   T1."order_customer" as c84,
-	   T1."order_mileage" as c85,
-	   T1."vehicle_number" as c86,
-	   T1."order_delivery_employee_no" as c87,
-	   T1."order_taking_employee_no" as c88,
-	   T1."order_print_date" as c89,
-	   T1."estimated_outbound_time" as c90,
-	   T1."estimated_inbound_time" as c91,
-	   T1."order_date" as c92,
-	   T2."invoice_number" as c93,
-	   T2."invoice_type" as c94,
-	   T2."is_invoiced" as c95,
-	   T1."subsidiary" as c96,
-	   T2."order_position" as c97
+(select T1."order_number" as "Order Number_ori",
+	   T2."sum" as "Sum",
+	   T2."text_line" as "Text Line",
+	   T2."parts_type" as "Parts Type",
+	   T2."amount" as "Amount",
+	   T2."stock_removal_date" as "Stock Removal Date",
+	   T2."stock_no" as "Stock No",
+	   T2."part_number" as "Part Number",
+	   (left((ucase(T7."description")),3)) as "Model",
+	   T7."description" as "Description_Models",
+	   T6."description" as "Description_Makes",
+	   T6."make_number" as "Make Number_Makes",
+	   T5."make_number" as "Make Number_Vehicle",
+	   T5."license_plate" as "License Plate_Vehicle",
+	   T5."vin" as "Vin_Vehicle",
+	   T5."internal_number" as "Internal Number_Vehicle",
+	   CASE WHEN (T5."license_plate" IS NOT NULL) THEN ((left((((T1."order_number"))),6)) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T3."name") END) + ' - ' + T4."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date"))) + ' - ' + T5."license_plate") ELSE ((left((((T1."order_number"))))) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T3."name") END) + ' - ' + T4."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date")))) END as "Order Number",
+	   (left((((T4."customer_number"))),7)) + ' - ' + T4."first_name" + ' ' + T4."family_name" as "Kunde",
+	   T4."family_name" as "Family Name_Cust",
+	   T4."first_name" as "First Name_Cust",
+	   T4."customer_number" as "Customer Number_Cust",
+	   CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T3."name") END as "Serviceberater",
+	   T3."name" as "Name_Serviceberater",
+	   '0' + (((T1."subsidiary"))) as "Standort",
+	   CASE WHEN (('0' + (((T1."subsidiary")))) IN ('015                                                                                                                                                                                                                                                            ')) THEN ('15') ELSE ('1') END as "Hauptbetrieb",
+	   T1."clearing_delay_type" as "Clearing Delay Type",
+	   T1."parts_rebate_group_sell" as "Parts Rebate Group Sell",
+	   T1."holder_number" as "Holder Number",
+	   T1."paying_customer" as "Paying Customer",
+	   T1."order_customer" as "Order Customer",
+	   T1."order_mileage" as "Order Mileage",
+	   T1."vehicle_number" as "Vehicle Number",
+	   T1."order_delivery_employee_no" as "Order Delivery Employee No",
+	   T1."order_taking_employee_no" as "Order Taking Employee No",
+	   T1."order_print_date" as "Order Print Date",
+	   T1."estimated_outbound_time" as "Estimated Outbound Time",
+	   T1."estimated_inbound_time" as "Estimated Inbound Time",
+	   T1."order_date" as "Order Date",
+	   T2."invoice_number" as "Invoice Number",
+	   T2."invoice_type" as "Invoice Type",
+	   T2."is_invoiced" as "Is Invoiced",
+	   T1."subsidiary" as "Subsidiary",
+	   T2."order_position" as "Order Position"
 from (((((("dbo"."order_positions" T1 left outer join "dbo"."parts" T2 on T1."order_number" = T2."order_number") left outer join "dbo"."employees" T3 on T1."order_taking_employee_no" = T3."employee_number") left outer join "dbo"."customers_suppliers" T4 on T1."order_customer" = T4."customer_number") left outer join "dbo"."vehicles" T5 on T1."vehicle_number" = T5."internal_number") left outer join "dbo"."makes" T6 on T5."make_number" = T6."make_number") left outer join "dbo"."models" T7 on (T5."make_number" = T7."make_number") and (T5."model_code" = T7."model_code"))
 from (((((("dbo"."order_positions" T1 left outer join "dbo"."parts" T2 on T1."order_number" = T2."order_number") left outer join "dbo"."employees" T3 on T1."order_taking_employee_no" = T3."employee_number") left outer join "dbo"."customers_suppliers" T4 on T1."order_customer" = T4."customer_number") left outer join "dbo"."vehicles" T5 on T1."vehicle_number" = T5."internal_number") left outer join "dbo"."makes" T6 on T5."make_number" = T6."make_number") left outer join "dbo"."models" T7 on (T5."make_number" = T7."make_number") and (T5."model_code" = T7."model_code"))
 where ((((T2."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2017-01-01 00:00:00.000'))) and (T2."sum" IS NOT NULL)) and ('' <> 'F'))
 where ((((T2."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2017-01-01 00:00:00.000'))) and (T2."sum" IS NOT NULL)) and ('' <> 'F'))
 ) D1
 ) D1

+ 97 - 97
System/LOCOSOFT/IQD/Serv_Teile/offene_Auftraege_Ums_ben_AW.sql

@@ -1,104 +1,104 @@
-select c55 as "Order Number_ori",
-	   c101 as "Order Position",
-	   c100 as "Labour Type",
-	   c99 as "Subsidiary",
-	   c98 as "Is Invoiced",
-	   c97 as "Invoice Type",
-	   c96 as "Invoice Number",
-	   c95 as "Order Date",
-	   c94 as "Estimated Inbound Time",
-	   c93 as "Estimated Outbound Time",
-	   c92 as "Order Print Date",
-	   c91 as "Order Taking Employee No",
-	   c90 as "Order Delivery Employee No",
-	   c89 as "Vehicle Number",
-	   c88 as "Order Mileage",
-	   c87 as "Order Customer",
-	   c86 as "Paying Customer",
-	   c85 as "Holder Number",
-	   c84 as "Parts Rebate Group Sell",
-	   c83 as "Clearing Delay Type",
-	   c82 as "Code_Labour_Type",
-	   c81 as "Description_Labour_Type",
-	   c80 as "Hauptbetrieb",
-	   c79 as "Standort",
-	   c78 as "Name_Serviceberater",
-	   c77 as "Serviceberater",
-	   c76 as "Umsatzart",
-	   c75 as "Customer Number_Cust",
-	   c74 as "First Name_Cust",
-	   c73 as "Family Name_Cust",
-	   c72 as "Kunde",
-	   c71 as "Order Number",
-	   c70 as "Internal Number_Vehicle",
-	   c69 as "Vin_Vehicle",
-	   c68 as "License Plate_Vehicle",
-	   c67 as "Make Number_Vehicle",
+select "Order Number_ori",
+	   "Order Position",
+	   "Labour Type",
+	   "Subsidiary",
+	   "Is Invoiced",
+	   "Invoice Type",
+	   "Invoice Number",
+	   "Order Date",
+	   "Estimated Inbound Time",
+	   "Estimated Outbound Time",
+	   "Order Print Date",
+	   "Order Taking Employee No",
+	   "Order Delivery Employee No",
+	   "Vehicle Number",
+	   "Order Mileage",
+	   "Order Customer",
+	   "Paying Customer",
+	   "Holder Number",
+	   "Parts Rebate Group Sell",
+	   "Clearing Delay Type",
+	   "Code_Labour_Type",
+	   "Description_Labour_Type",
+	   "Hauptbetrieb",
+	   "Standort",
+	   "Name_Serviceberater",
+	   "Serviceberater",
+	   "Umsatzart",
+	   "Customer Number_Cust",
+	   "First Name_Cust",
+	   "Family Name_Cust",
+	   "Kunde",
+	   "Order Number",
+	   "Internal Number_Vehicle",
+	   "Vin_Vehicle",
+	   "License Plate_Vehicle",
+	   "Make Number_Vehicle",
 	   'Service' as "Auftragsart",
 	   'Service' as "Auftragsart",
-	   c66 as "Make Number_Makes",
-	   c65 as "Description_Makes",
-	   c65 as "Fabrikat",
-	   c64 as "Description_Models",
-	   c63 as "Model",
+	   "Make Number_Makes",
+	   "Description_Makes",
+	   "Description_Makes" as "Fabrikat",
+	   "Description_Models",
+	   "Model",
 	   1 as "DG_1",
 	   1 as "DG_1",
-	   COUNT(c99) OVER (partition by c55) as "DG_2",
-	   c62 as "Order Number_Labours",
-	   c61 as "Order Position_Labours",
-	   c56 as "Net Price In Order",
-	   c60 as "Text Line",
-	   c59 as "Order Number_ben_AW",
-	   c58 as "Summe Duration Minutes_ben_AW",
-	   c57 / (COUNT(c99) OVER (partition by c55)) as "ben. Std",
-	   c56 as "Umsatz Lohn"
+	   COUNT("Subsidiary") OVER (partition by "Order Number_ori") as "DG_2",
+	   "Order Number_Labours",
+	   "Order Position_Labours",
+	   "Net Price In Order",
+	   "Text Line",
+	   "Order Number_ben_AW",
+	   "Summe Duration Minutes_ben_AW",
+	   c57 / (COUNT("Subsidiary") OVER (partition by "Order Number_ori")) as "ben. Std",
+	   "Net Price In Order" as "Umsatz Lohn"
 from 
 from 
-(select T1."order_number" as c55,
-	   T2."net_price_in_order" as c56,
+(select T1."order_number" as "Order Number_ori",
+	   T2."net_price_in_order" as "Net Price In Order",
 	   T9."Summe_Duration_Minutes" / 60 as c57,
 	   T9."Summe_Duration_Minutes" / 60 as c57,
-	   T9."Summe_Duration_Minutes" as c58,
-	   T9."order_number" as c59,
-	   T2."text_line" as c60,
-	   T2."order_position" as c61,
-	   T2."order_number" as c62,
-	   (left((ucase(T8."description")),3)) as c63,
-	   T8."description" as c64,
-	   T7."description" as c65,
-	   T7."make_number" as c66,
-	   T6."make_number" as c67,
-	   T6."license_plate" as c68,
-	   T6."vin" as c69,
-	   T6."internal_number" as c70,
-	   CASE WHEN (T6."license_plate" IS NOT NULL) THEN ((left(((convert(varchar(50), T1."order_number"))))) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left(((convert(varchar(50), T1."order_taking_employee_no"))))) + ' - ' + T4."name") END) + ' - ' + T5."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date"))) + ' - ' + T6."license_plate") ELSE ((left(((convert(varchar(50), T1."order_number"))))) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left(((convert(varchar(50), T1."order_taking_employee_no"))))) + ' - ' + T4."name") END) + ' - ' + T5."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date")))) END as c71,
-	   (left(((convert(varchar(50), T5."customer_number"))))) + ' - ' + T5."first_name" + ' ' + T5."family_name" as c72,
-	   T5."family_name" as c73,
-	   T5."first_name" as c74,
-	   T5."customer_number" as c75,
-	   T3."code" + ' - ' + T3."description" as c76,
-	   CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left(((convert(varchar(50), T1."order_taking_employee_no"))))) + ' - ' + T4."name") END as c77,
-	   T4."name" as c78,
-	   '0' + ((convert(varchar(50), T1."subsidiary"))) as c79,
-	   CASE WHEN (('0' + ((convert(varchar(50), T1."subsidiary")))) IN ('015                                                                                                                                                                                                                                                            ')) THEN ('15') ELSE ('1') END as c80,
-	   T3."description" as c81,
-	   T3."code" as c82,
-	   T1."clearing_delay_type" as c83,
-	   T1."parts_rebate_group_sell" as c84,
-	   T1."holder_number" as c85,
-	   T1."paying_customer" as c86,
-	   T1."order_customer" as c87,
-	   T1."order_mileage" as c88,
-	   T1."vehicle_number" as c89,
-	   T1."order_delivery_employee_no" as c90,
-	   T1."order_taking_employee_no" as c91,
-	   T1."order_print_date" as c92,
-	   T1."estimated_outbound_time" as c93,
-	   T1."estimated_inbound_time" as c94,
-	   T1."order_date" as c95,
-	   T2."invoice_number" as c96,
-	   T2."invoice_type" as c97,
-	   T2."is_invoiced" as c98,
-	   T1."subsidiary" as c99,
-	   T2."labour_type" as c100,
-	   T1."order_position" as c101
+	   T9."Summe_Duration_Minutes" as "Summe Duration Minutes_ben_AW",
+	   T9."order_number" as "Order Number_ben_AW",
+	   T2."text_line" as "Text Line",
+	   T2."order_position" as "Order Position_Labours",
+	   T2."order_number" as "Order Number_Labours",
+	   (left((ucase(T8."description")),3)) as "Model",
+	   T8."description" as "Description_Models",
+	   T7."description" as "Description_Makes",
+	   T7."make_number" as "Make Number_Makes",
+	   T6."make_number" as "Make Number_Vehicle",
+	   T6."license_plate" as "License Plate_Vehicle",
+	   T6."vin" as "Vin_Vehicle",
+	   T6."internal_number" as "Internal Number_Vehicle",
+	   CASE WHEN (T6."license_plate" IS NOT NULL) THEN ((left((((T1."order_number"))),6)) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T4."name") END) + ' - ' + T5."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date"))) + ' - ' + T6."license_plate") ELSE ((left((((T1."order_number"))))) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T4."name") END) + ' - ' + T5."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date")))) END as "Order Number",
+	   (left((((T5."customer_number"))),7)) + ' - ' + T5."first_name" + ' ' + T5."family_name" as "Kunde",
+	   T5."family_name" as "Family Name_Cust",
+	   T5."first_name" as "First Name_Cust",
+	   T5."customer_number" as "Customer Number_Cust",
+	   T3."code" + ' - ' + T3."description" as "Umsatzart",
+	   CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T4."name") END as "Serviceberater",
+	   T4."name" as "Name_Serviceberater",
+	   '0' + (((T1."subsidiary"))) as "Standort",
+	   CASE WHEN (('0' + (((T1."subsidiary")))) IN ('015                                                                                                                                                                                                                                                            ')) THEN ('15') ELSE ('1') END as "Hauptbetrieb",
+	   T3."description" as "Description_Labour_Type",
+	   T3."code" as "Code_Labour_Type",
+	   T1."clearing_delay_type" as "Clearing Delay Type",
+	   T1."parts_rebate_group_sell" as "Parts Rebate Group Sell",
+	   T1."holder_number" as "Holder Number",
+	   T1."paying_customer" as "Paying Customer",
+	   T1."order_customer" as "Order Customer",
+	   T1."order_mileage" as "Order Mileage",
+	   T1."vehicle_number" as "Vehicle Number",
+	   T1."order_delivery_employee_no" as "Order Delivery Employee No",
+	   T1."order_taking_employee_no" as "Order Taking Employee No",
+	   T1."order_print_date" as "Order Print Date",
+	   T1."estimated_outbound_time" as "Estimated Outbound Time",
+	   T1."estimated_inbound_time" as "Estimated Inbound Time",
+	   T1."order_date" as "Order Date",
+	   T2."invoice_number" as "Invoice Number",
+	   T2."invoice_type" as "Invoice Type",
+	   T2."is_invoiced" as "Is Invoiced",
+	   T1."subsidiary" as "Subsidiary",
+	   T2."labour_type" as "Labour Type",
+	   T1."order_position" as "Order Position"
 from (((((((("dbo"."order_positions" T1 left outer join "dbo"."labours" T2 on T1."order_number" = T2."order_number") left outer join "dbo"."labour_types" T3 on T3."code" = T2."labour_type") left outer join "dbo"."employees" T4 on T1."order_taking_employee_no" = T4."employee_number") left outer join "dbo"."customers_suppliers" T5 on T1."order_customer" = T5."customer_number") left outer join "dbo"."vehicles" T6 on T1."vehicle_number" = T6."internal_number") left outer join "dbo"."makes" T7 on T6."make_number" = T7."make_number") left outer join "dbo"."models" T8 on (T6."make_number" = T8."make_number") and (T6."model_code" = T8."model_code")) left outer join "ims"."ben_AW_Order_Number" T9 on T2."order_number" = T9."order_number")
 from (((((((("dbo"."order_positions" T1 left outer join "dbo"."labours" T2 on T1."order_number" = T2."order_number") left outer join "dbo"."labour_types" T3 on T3."code" = T2."labour_type") left outer join "dbo"."employees" T4 on T1."order_taking_employee_no" = T4."employee_number") left outer join "dbo"."customers_suppliers" T5 on T1."order_customer" = T5."customer_number") left outer join "dbo"."vehicles" T6 on T1."vehicle_number" = T6."internal_number") left outer join "dbo"."makes" T7 on T6."make_number" = T7."make_number") left outer join "dbo"."models" T8 on (T6."make_number" = T8."make_number") and (T6."model_code" = T8."model_code")) left outer join "ims"."ben_AW_Order_Number" T9 on T2."order_number" = T9."order_number")
 where ((((T2."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2017-01-01 00:00:00.000'))) and (T2."net_price_in_order" IS NOT NULL)) and (T2."labour_type" <> 'F'))
 where ((((T2."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2017-01-01 00:00:00.000'))) and (T2."net_price_in_order" IS NOT NULL)) and (T2."labour_type" <> 'F'))
--- order by c55 asc
+-- order by "Order Number_ori" asc
 ) D1
 ) D1

+ 7 - 7
System/LOCOSOFT/IQD/Serv_Teile/offene_Auftraege_Ums_ben_AW_fuer_Monteure.sql

@@ -1,18 +1,18 @@
-select distinct c6 as "Order Number_ori",
-	   c7 as "Order Number",
-	   c5 as "verk. Std. aus o.A."
+select distinct "Order Number_ori",
+	   "Order Number",
+	   "verk. Std. aus o.A."
 from 
 from 
 (select T1."order_number" as c4,
 (select T1."order_number" as c4,
-	   SUM((convert(float, T5."time_units")) / 10) as c5
+	   SUM((convert(float, T5."time_units")) / 10) as "verk. Std. aus o.A."
 from (((("dbo"."order_positions" T1 left outer join "dbo"."vehicles" T2 on T1."vehicle_number" = T2."internal_number") left outer join "dbo"."employees" T3 on T1."order_taking_employee_no" = T3."employee_number") left outer join "dbo"."customers_suppliers" T4 on T1."order_customer" = T4."customer_number") left outer join "dbo"."labours" T5 on T1."order_number" = T5."order_number")
 from (((("dbo"."order_positions" T1 left outer join "dbo"."vehicles" T2 on T1."vehicle_number" = T2."internal_number") left outer join "dbo"."employees" T3 on T1."order_taking_employee_no" = T3."employee_number") left outer join "dbo"."customers_suppliers" T4 on T1."order_customer" = T4."customer_number") left outer join "dbo"."labours" T5 on T1."order_number" = T5."order_number")
 where ((((T5."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2017-01-01 00:00:00.000'))) and (T5."net_price_in_order" IS NOT NULL)) and (T5."labour_type" <> 'F'))
 where ((((T5."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2017-01-01 00:00:00.000'))) and (T5."net_price_in_order" IS NOT NULL)) and (T5."labour_type" <> 'F'))
 group by T1."order_number"
 group by T1."order_number"
 ) D2,
 ) D2,
 	
 	
-(select distinct T1."order_number" as c6,
-	   CASE WHEN (T2."license_plate" IS NOT NULL) THEN ((left(((convert(varchar(50), T1."order_number"))))) + ' - ' + CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left(((convert(varchar(50), T1."order_taking_employee_no"))))) + ' - ' + T3."name") END + ' - ' + T4."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date"))) + ' - ' + T2."license_plate") ELSE ((left(((convert(varchar(50), T1."order_number"))))) + ' - ' + CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left(((convert(varchar(50), T1."order_taking_employee_no"))))) + ' - ' + T3."name") END + ' - ' + T4."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date")))) END as c7
+(select distinct T1."order_number" as "Order Number_ori",
+	   CASE WHEN (T2."license_plate" IS NOT NULL) THEN ((left((((T1."order_number"))),6)) + ' - ' + CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T3."name") END + ' - ' + T4."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date"))) + ' - ' + T2."license_plate") ELSE ((left((((T1."order_number"))))) + ' - ' + CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T3."name") END + ' - ' + T4."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date")))) END as "Order Number"
 from (((("dbo"."order_positions" T1 left outer join "dbo"."vehicles" T2 on T1."vehicle_number" = T2."internal_number") left outer join "dbo"."employees" T3 on T1."order_taking_employee_no" = T3."employee_number") left outer join "dbo"."customers_suppliers" T4 on T1."order_customer" = T4."customer_number") left outer join "dbo"."labours" T5 on T1."order_number" = T5."order_number")
 from (((("dbo"."order_positions" T1 left outer join "dbo"."vehicles" T2 on T1."vehicle_number" = T2."internal_number") left outer join "dbo"."employees" T3 on T1."order_taking_employee_no" = T3."employee_number") left outer join "dbo"."customers_suppliers" T4 on T1."order_customer" = T4."customer_number") left outer join "dbo"."labours" T5 on T1."order_number" = T5."order_number")
 where ((((T5."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2017-01-01 00:00:00.000'))) and (T5."net_price_in_order" IS NOT NULL)) and (T5."labour_type" <> 'F'))
 where ((((T5."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2017-01-01 00:00:00.000'))) and (T5."net_price_in_order" IS NOT NULL)) and (T5."labour_type" <> 'F'))
 ) D1
 ) D1
-where ((c6 = c4) or ((c6 IS NULL) and (c4 IS NULL)))
+where (("Order Number_ori" = c4) or (("Order Number_ori" IS NULL) and (c4 IS NULL)))
 -- order by "Order Number_ori" asc
 -- order by "Order Number_ori" asc

+ 65 - 65
System/LOCOSOFT/IQD/Zeit/Zeit_Abwesenheit_neu.sql

@@ -37,80 +37,80 @@ select "Employee Number_Employees" as "Employee Number_Employees",
 	   MAX("Validity Date_Worktimes") OVER (partition by "Employee Number_Employees") as "Max_Validity_Date_Worktimes",
 	   MAX("Validity Date_Worktimes") OVER (partition by "Employee Number_Employees") as "Max_Validity_Date_Worktimes",
 	   "Arbeitszeit_Tag" as "Arbeitszeit_Tag"
 	   "Arbeitszeit_Tag" as "Arbeitszeit_Tag"
 from 
 from 
-(select c42 as "Employee Number_Employees",
-	   c71 as "Name_Employees",
-	   c70 as "Initials_Employees",
-	   c69 as "Mechanic Number_Employees",
-	   c68 as "Salesman Number_Employees",
-	   c67 as "Employment Date_Employees",
-	   c66 as "Termination Date_Employees",
-	   c65 as "Leave Date_Employees",
-	   c64 as "Employee Number_Absence_Cal",
-	   c49 as "Date_Absence_Cal",
-	   c63 as "Type_Absence_Cal",
-	   c62 as "Is Payed_Absence_Cal",
-	   c61 as "Day Contingent_Absence_Cal",
-	   c60 as "Reason_Absence_Cal",
-	   c59 as "Booking Flag_Absence_Cal",
-	   c58 as "Id_Absence_Reas",
-	   c57 as "Description_Absence_Reas",
-	   c56 as "Is Annual Vacation_Absence_Reas",
-	   c55 as "Type_Absence_Types",
-	   c54 as "Description_Absence_Types",
+(select "Employee Number_Employees",
+	   "Name_Employees",
+	   "Initials_Employees",
+	   "Mechanic Number_Employees",
+	   "Salesman Number_Employees",
+	   "Employment Date_Employees",
+	   "Termination Date_Employees",
+	   "Leave Date_Employees",
+	   "Employee Number_Absence_Cal",
+	   "Date_Absence_Cal",
+	   "Type_Absence_Cal",
+	   "Is Payed_Absence_Cal",
+	   "Day Contingent_Absence_Cal",
+	   "Reason_Absence_Cal",
+	   "Booking Flag_Absence_Cal",
+	   "Id_Absence_Reas",
+	   "Description_Absence_Reas",
+	   "Is Annual Vacation_Absence_Reas",
+	   "Type_Absence_Types",
+	   "Description_Absence_Types",
 	   '1' as "Hauptbetrieb",
 	   '1' as "Hauptbetrieb",
-	   c53 as "Standort",
-	   c52 as "Monteur",
+	   "Standort",
+	   "Monteur",
 	   8 as "Dummy_Arbeitszeit_Tag",
 	   8 as "Dummy_Arbeitszeit_Tag",
-	   c50 as "Abwesenheit",
+	   "Abwesenheit",
 	   'Abwesenheit' as "Zeitkategorie",
 	   'Abwesenheit' as "Zeitkategorie",
-	   c51 as "Zeitkategorie2",
-	   c50 as "Ges. Std.",
-	   c49 as "Datum",
+	   "Zeitkategorie2",
+	   "Abwesenheit" as "Ges. Std.",
+	   "Date_Absence_Cal" as "Datum",
 	   '' as "Order Number",
 	   '' as "Order Number",
-	   c48 as "Wochentag_Datum",
-	   c47 as "Validity Date_Worktimes",
-	   c46 as "Dayofweek_Worktimes",
-	   c43 as "Work Duration_Worktimes",
-	   c45 as "Worktime Start_Worktimes",
-	   c44 as "Worktime End_Worktimes",
-	   c43 as "Arbeitszeit_Tag",
-	   MAX(c47) OVER (partition by c42) as c39
+	   "Wochentag_Datum",
+	   "Validity Date_Worktimes",
+	   "Dayofweek_Worktimes",
+	   "Work Duration_Worktimes",
+	   "Worktime Start_Worktimes",
+	   "Worktime End_Worktimes",
+	   "Work Duration_Worktimes" as "Arbeitszeit_Tag",
+	   MAX("Validity Date_Worktimes") OVER (partition by "Employee Number_Employees") as c39
 from 
 from 
-(select T1."employee_number" as c42,
-	   T5."work_duration" as c43,
-	   T5."worktime_end" as c44,
-	   T5."worktime_start" as c45,
-	   T5."dayofweek" as c46,
-	   T5."validity_date" as c47,
-	   (dayofweek(T2."date")) as c48,
-	   T2."date" as c49,
-	   (T2."day_contingent" * T5."work_duration") as c50,
-	   T3."id" + ' - ' + T3."description" as c51,
-	   (rtrim(((convert(varchar(50), T1."employee_number"))))) + ' - ' + T1."name" as c52,
-	   '0' + (rtrim(((convert(varchar(50), T1."subsidiary"))))) as c53,
-	   T4."description" as c54,
-	   T4."type" as c55,
-	   T3."is_annual_vacation" as c56,
-	   T3."description" as c57,
-	   T3."id" as c58,
-	   T2."booking_flag" as c59,
-	   T2."reason" as c60,
-	   T2."day_contingent" as c61,
-	   T2."is_payed" as c62,
-	   T2."type" as c63,
-	   T2."employee_number" as c64,
-	   T1."leave_date" as c65,
-	   T1."termination_date" as c66,
-	   T1."employment_date" as c67,
-	   T1."salesman_number" as c68,
-	   T1."mechanic_number" as c69,
-	   T1."initials" as c70,
-	   T1."name" as c71
+(select T1."employee_number" as "Employee Number_Employees",
+	   T5."work_duration" as "Work Duration_Worktimes",
+	   T5."worktime_end" as "Worktime End_Worktimes",
+	   T5."worktime_start" as "Worktime Start_Worktimes",
+	   T5."dayofweek" as "Dayofweek_Worktimes",
+	   T5."validity_date" as "Validity Date_Worktimes",
+	   (datepart(weekday, T2."date")) as "Wochentag_Datum",
+	   T2."date" as "Date_Absence_Cal",
+	   (T2."day_contingent" * T5."work_duration") as "Abwesenheit",
+	   T3."id" + ' - ' + T3."description" as "Zeitkategorie2",
+	   (rtrim((((T1."employee_number"))))) + ' - ' + T1."name" as "Monteur",
+	   '0' + (rtrim((((T1."subsidiary"))))) as "Standort",
+	   T4."description" as "Description_Absence_Types",
+	   T4."type" as "Type_Absence_Types",
+	   T3."is_annual_vacation" as "Is Annual Vacation_Absence_Reas",
+	   T3."description" as "Description_Absence_Reas",
+	   T3."id" as "Id_Absence_Reas",
+	   T2."booking_flag" as "Booking Flag_Absence_Cal",
+	   T2."reason" as "Reason_Absence_Cal",
+	   T2."day_contingent" as "Day Contingent_Absence_Cal",
+	   T2."is_payed" as "Is Payed_Absence_Cal",
+	   T2."type" as "Type_Absence_Cal",
+	   T2."employee_number" as "Employee Number_Absence_Cal",
+	   T1."leave_date" as "Leave Date_Employees",
+	   T1."termination_date" as "Termination Date_Employees",
+	   T1."employment_date" as "Employment Date_Employees",
+	   T1."salesman_number" as "Salesman Number_Employees",
+	   T1."mechanic_number" as "Mechanic Number_Employees",
+	   T1."initials" as "Initials_Employees",
+	   T1."name" as "Name_Employees"
 from "dbo"."employees" T1,
 from "dbo"."employees" T1,
 	"LOCOSOFT"."dbo"."employees_worktimes" T5,
 	"LOCOSOFT"."dbo"."employees_worktimes" T5,
 	(("dbo"."absence_calendar" T2 left outer join "dbo"."absence_reasons" T3 on T2."reason" = T3."id") left outer join "dbo"."absence_types" T4 on T2."type" = T4."type")
 	(("dbo"."absence_calendar" T2 left outer join "dbo"."absence_reasons" T3 on T2."reason" = T3."id") left outer join "dbo"."absence_types" T4 on T2."type" = T4."type")
 where (T1."employee_number" = T2."employee_number") and (T1."employee_number" = T5."employee_number")
 where (T1."employee_number" = T2."employee_number") and (T1."employee_number" = T5."employee_number")
-and ((((dayofweek(T2."date"))) = T5."dayofweek") and ((cdate(T2."date")) <= (@CURRENT_DATE)))
+and ((((datepart(weekday, T2."date"))) = T5."dayofweek") and (((T2."date")) <= (getdate())))
 ) D2
 ) D2
 ) D1
 ) D1
 where ("Validity Date_Worktimes" = c39)
 where ("Validity Date_Worktimes" = c39)

+ 100 - 100
System/LOCOSOFT/IQD/Zeit/Zeit_Stempelungen_Pausen.sql

@@ -54,114 +54,114 @@ select "Employee Number_Employees" as "Employee Number_Employees",
 	   "Pausenzeit_Anw_mehr_als_6" as "Pausenzeit_Anw_mehr_als_6",
 	   "Pausenzeit_Anw_mehr_als_6" as "Pausenzeit_Anw_mehr_als_6",
 	   "Anwesenheit" as "Anwesenheit"
 	   "Anwesenheit" as "Anwesenheit"
 from 
 from 
-(select c61 as "Employee Number_Employees",
-	   c106 as "Name_Employees",
-	   c105 as "Initials_Employees",
-	   c104 as "Mechanic Number_Employees",
-	   c103 as "Salesman Number_Employees",
-	   c102 as "Employment Date_Employees",
-	   c101 as "Termination Date_Employees",
-	   c100 as "Leave Date_Employees",
-	   c99 as "Employee Number_Times",
-	   c85 as "Order Number_Times",
-	   c92 as "Start Time_Times",
-	   c98 as "Type_Times",
-	   c97 as "Order Positions_Times",
-	   c96 as "End Time_Times",
-	   c95 as "Duration Minutes_Times",
-	   c94 as "Type_Time_Types",
-	   c93 as "Description_Time_Types",
-	   c92 as "Datum",
+(select "Employee Number_Employees",
+	   "Name_Employees",
+	   "Initials_Employees",
+	   "Mechanic Number_Employees",
+	   "Salesman Number_Employees",
+	   "Employment Date_Employees",
+	   "Termination Date_Employees",
+	   "Leave Date_Employees",
+	   "Employee Number_Times",
+	   "Order Number_Times",
+	   "Start Time_Times",
+	   "Type_Times",
+	   "Order Positions_Times",
+	   "End Time_Times",
+	   "Duration Minutes_Times",
+	   "Type_Time_Types",
+	   "Description_Time_Types",
+	   "Start Time_Times" as "Datum",
 	   '1' as "Hauptbetrieb",
 	   '1' as "Hauptbetrieb",
-	   c91 as "Standort",
-	   c90 as "Monteur",
-	   c88 as "Anwesenheit_",
-	   c89 as "produktiv_",
-	   c88 as "unproduktiv_",
-	   c87 as "Zeitkategorie",
+	   "Standort",
+	   "Monteur",
+	   "Anwesenheit_",
+	   "produktiv_",
+	   "Anwesenheit_" as "unproduktiv_",
+	   "Zeitkategorie",
 	   '' as "Zeitkategorie2",
 	   '' as "Zeitkategorie2",
-	   c86 as "Ges. Std._",
-	   c85 as "Order Number",
-	   c84 as "Wochentag_Datum",
-	   c83 as "Is Flextime_Employees",
-	   c82 as "Break Time Registration_Employees",
-	   c81 as "Is Latest Record_break_times",
-	   c80 as "Dayofweek_break_times",
-	   c79 as "Break Start_break_times",
-	   c78 as "Break End_break_times",
-	   c69 as "Pause",
-	   c77 as "Start_Times_Stunde",
-	   c76 as "Start_Times_Minute",
-	   c75 as "End_Times_Stunde",
-	   c74 as "End_Times_Minute",
-	   c73 as "Start_Times_Minute_Dezimal",
-	   c72 as "Start_Times_Dezimal",
-	   c71 as "End_Times_Minute_Dezimal",
-	   c70 as "End_Times_Dezimal",
-	   c69 as "Pausenzeit_Stunde",
-	   c68 as "Dayofweek_Worktimes",
-	   c67 as "Work Duration_Worktimes",
-	   c66 as "Worktime Start_Worktimes",
-	   c65 as "Worktime End_Worktimes",
-	   c64 as "Validity Date_Worktimes",
-	   c63 as "Validity Date_Break_times",
-	   c62 as "Pausenzeit_Anw_mehr_als_6",
-	   c62 as "Anwesenheit",
-	   MAX(c64) OVER (partition by c61) as c56,
-	   MAX(c63) OVER (partition by c61) as c57
+	   "Ges. Std._",
+	   "Order Number_Times" as "Order Number",
+	   "Wochentag_Datum",
+	   "Is Flextime_Employees",
+	   "Break Time Registration_Employees",
+	   "Is Latest Record_break_times",
+	   "Dayofweek_break_times",
+	   "Break Start_break_times",
+	   "Break End_break_times",
+	   "Pause",
+	   "Start_Times_Stunde",
+	   "Start_Times_Minute",
+	   "End_Times_Stunde",
+	   "End_Times_Minute",
+	   "Start_Times_Minute_Dezimal",
+	   "Start_Times_Dezimal",
+	   "End_Times_Minute_Dezimal",
+	   "End_Times_Dezimal",
+	   "Pause" as "Pausenzeit_Stunde",
+	   "Dayofweek_Worktimes",
+	   "Work Duration_Worktimes",
+	   "Worktime Start_Worktimes",
+	   "Worktime End_Worktimes",
+	   "Validity Date_Worktimes",
+	   "Validity Date_Break_times",
+	   "Pausenzeit_Anw_mehr_als_6",
+	   "Pausenzeit_Anw_mehr_als_6" as "Anwesenheit",
+	   MAX("Validity Date_Worktimes") OVER (partition by "Employee Number_Employees") as c56,
+	   MAX("Validity Date_Break_times") OVER (partition by "Employee Number_Employees") as c57
 from 
 from 
-(select T1."employee_number" as c61,
-	   (CASE WHEN ((CASE WHEN (T3."type" = 1) THEN (T2."duration_minutes" / 60) ELSE (0) END) >= 6.1) THEN ((T4."break_end" - T4."break_start") * -1) ELSE (0) END) as c62,
-	   T4."validity_date" as c63,
-	   T5."validity_date" as c64,
-	   T5."worktime_end" as c65,
-	   T5."worktime_start" as c66,
-	   T5."work_duration" as c67,
-	   T5."dayofweek" as c68,
-	   T4."break_end" - T4."break_start" as c69,
-	   ((od_hour(T2."end_time"))) + (((od_minute(T2."end_time"))) / 60) as c70,
-	   ((od_minute(T2."end_time"))) / 60 as c71,
-	   ((od_hour(T2."start_time"))) + (((od_minute(T2."start_time"))) / 60) as c72,
-	   ((od_minute(T2."start_time"))) / 60 as c73,
-	   (od_minute(T2."end_time")) as c74,
-	   (od_hour(T2."end_time")) as c75,
-	   (od_minute(T2."start_time")) as c76,
-	   (od_hour(T2."start_time")) as c77,
-	   T4."break_end" as c78,
-	   T4."break_start" as c79,
-	   T4."dayofweek" as c80,
-	   T4."is_latest_record" as c81,
-	   T1."break_time_registration" as c82,
-	   T1."is_flextime" as c83,
-	   (dayofweek(T2."start_time")) as c84,
-	   T2."order_number" as c85,
-	   T2."duration_minutes" / 60 as c86,
-	   CASE WHEN (T2."type" = 2) THEN ('produktiv') ELSE ('unproduktiv') END as c87,
-	   CASE WHEN (T3."type" = 1) THEN (T2."duration_minutes" / 60) ELSE (0) END as c88,
-	   CASE WHEN (T3."type" = 2) THEN (T2."duration_minutes" / 60) ELSE (0) END as c89,
-	   (rtrim(((convert(varchar(50), T1."employee_number"))))) + ' - ' + T1."name" as c90,
-	   '0' + (rtrim(((convert(varchar(50), T1."subsidiary"))))) as c91,
-	   T2."start_time" as c92,
-	   T3."description" as c93,
-	   T3."type" as c94,
-	   T2."duration_minutes" as c95,
-	   T2."end_time" as c96,
-	   T2."order_positions" as c97,
-	   T2."type" as c98,
-	   T2."employee_number" as c99,
-	   T1."leave_date" as c100,
-	   T1."termination_date" as c101,
-	   T1."employment_date" as c102,
-	   T1."salesman_number" as c103,
-	   T1."mechanic_number" as c104,
-	   T1."initials" as c105,
-	   T1."name" as c106
+(select T1."employee_number" as "Employee Number_Employees",
+	   (CASE WHEN ((CASE WHEN (T3."type" = 1) THEN (T2."duration_minutes" / 60) ELSE (0) END) >= 6.1) THEN ((T4."break_end" - T4."break_start") * -1) ELSE (0) END) as "Pausenzeit_Anw_mehr_als_6",
+	   T4."validity_date" as "Validity Date_Break_times",
+	   T5."validity_date" as "Validity Date_Worktimes",
+	   T5."worktime_end" as "Worktime End_Worktimes",
+	   T5."worktime_start" as "Worktime Start_Worktimes",
+	   T5."work_duration" as "Work Duration_Worktimes",
+	   T5."dayofweek" as "Dayofweek_Worktimes",
+	   T4."break_end" - T4."break_start" as "Pause",
+	   ((od_hour(T2."end_time"))) + (((od_minute(T2."end_time"))) / 60) as "End_Times_Dezimal",
+	   ((od_minute(T2."end_time"))) / 60 as "End_Times_Minute_Dezimal",
+	   ((od_hour(T2."start_time"))) + (((od_minute(T2."start_time"))) / 60) as "Start_Times_Dezimal",
+	   ((od_minute(T2."start_time"))) / 60 as "Start_Times_Minute_Dezimal",
+	   (od_minute(T2."end_time")) as "End_Times_Minute",
+	   (od_hour(T2."end_time")) as "End_Times_Stunde",
+	   (od_minute(T2."start_time")) as "Start_Times_Minute",
+	   (od_hour(T2."start_time")) as "Start_Times_Stunde",
+	   T4."break_end" as "Break End_break_times",
+	   T4."break_start" as "Break Start_break_times",
+	   T4."dayofweek" as "Dayofweek_break_times",
+	   T4."is_latest_record" as "Is Latest Record_break_times",
+	   T1."break_time_registration" as "Break Time Registration_Employees",
+	   T1."is_flextime" as "Is Flextime_Employees",
+	   (datepart(weekday, T2."start_time")) as "Wochentag_Datum",
+	   T2."order_number" as "Order Number_Times",
+	   T2."duration_minutes" / 60 as "Ges. Std._",
+	   CASE WHEN (T2."type" = 2) THEN ('produktiv') ELSE ('unproduktiv') END as "Zeitkategorie",
+	   CASE WHEN (T3."type" = 1) THEN (T2."duration_minutes" / 60) ELSE (0) END as "Anwesenheit_",
+	   CASE WHEN (T3."type" = 2) THEN (T2."duration_minutes" / 60) ELSE (0) END as "produktiv_",
+	   (rtrim((((T1."employee_number"))))) + ' - ' + T1."name" as "Monteur",
+	   '0' + (rtrim((((T1."subsidiary"))))) as "Standort",
+	   T2."start_time" as "Start Time_Times",
+	   T3."description" as "Description_Time_Types",
+	   T3."type" as "Type_Time_Types",
+	   T2."duration_minutes" as "Duration Minutes_Times",
+	   T2."end_time" as "End Time_Times",
+	   T2."order_positions" as "Order Positions_Times",
+	   T2."type" as "Type_Times",
+	   T2."employee_number" as "Employee Number_Times",
+	   T1."leave_date" as "Leave Date_Employees",
+	   T1."termination_date" as "Termination Date_Employees",
+	   T1."employment_date" as "Employment Date_Employees",
+	   T1."salesman_number" as "Salesman Number_Employees",
+	   T1."mechanic_number" as "Mechanic Number_Employees",
+	   T1."initials" as "Initials_Employees",
+	   T1."name" as "Name_Employees"
 from "dbo"."employees" T1,
 from "dbo"."employees" T1,
 	"LOCOSOFT"."dbo"."employees_breaktimes" T4,
 	"LOCOSOFT"."dbo"."employees_breaktimes" T4,
 	"LOCOSOFT"."dbo"."employees_worktimes" T5,
 	"LOCOSOFT"."dbo"."employees_worktimes" T5,
 	("dbo"."times" T2 left outer join "dbo"."time_types" T3 on T2."type" = T3."type")
 	("dbo"."times" T2 left outer join "dbo"."time_types" T3 on T2."type" = T3."type")
 where (T1."employee_number" = T2."employee_number") and (T1."employee_number" = T4."employee_number") and (T1."employee_number" = T5."employee_number")
 where (T1."employee_number" = T2."employee_number") and (T1."employee_number" = T4."employee_number") and (T1."employee_number" = T5."employee_number")
-and ((((T2."type" = 1) and (((dayofweek(T2."start_time"))) = T4."dayofweek")) and (((dayofweek(T2."start_time"))) = T5."dayofweek")) and (T2."start_time" >= convert(datetime, '2017-01-01 00:00:00.000')))
+and ((((T2."type" = 1) and (((datepart(weekday, T2."start_time"))) = T4."dayofweek")) and (((datepart(weekday, T2."start_time"))) = T5."dayofweek")) and (T2."start_time" >= convert(datetime, '2017-01-01 00:00:00.000')))
 ) D2
 ) D2
 ) D1
 ) D1
 where (("Validity Date_Worktimes" = c56) and ("Validity Date_Break_times" = c57))
 where (("Validity Date_Worktimes" = c56) and ("Validity Date_Break_times" = c57))

+ 102 - 102
System/LOCOSOFT/IQD/Zeit/Zeit_Stempelungen_Pausen_produktiv.sql

@@ -55,116 +55,116 @@ select "Employee Number_Employees" as "Employee Number_Employees",
 	   "Anwesenheit" as "Anwesenheit",
 	   "Anwesenheit" as "Anwesenheit",
 	   "Pausenzeit_während_produktiv" as "Pausenzeit_während_produktiv"
 	   "Pausenzeit_während_produktiv" as "Pausenzeit_während_produktiv"
 from 
 from 
-(select c62 as "Employee Number_Employees",
-	   c108 as "Name_Employees",
-	   c107 as "Initials_Employees",
-	   c106 as "Mechanic Number_Employees",
-	   c105 as "Salesman Number_Employees",
-	   c104 as "Employment Date_Employees",
-	   c103 as "Termination Date_Employees",
-	   c102 as "Leave Date_Employees",
-	   c101 as "Employee Number_Times",
-	   c87 as "Order Number_Times",
-	   c94 as "Start Time_Times",
-	   c100 as "Type_Times",
-	   c99 as "Order Positions_Times",
-	   c98 as "End Time_Times",
-	   c97 as "Duration Minutes_Times",
-	   c96 as "Type_Time_Types",
-	   c95 as "Description_Time_Types",
-	   c94 as "Datum",
+(select "Employee Number_Employees",
+	   "Name_Employees",
+	   "Initials_Employees",
+	   "Mechanic Number_Employees",
+	   "Salesman Number_Employees",
+	   "Employment Date_Employees",
+	   "Termination Date_Employees",
+	   "Leave Date_Employees",
+	   "Employee Number_Times",
+	   "Order Number_Times",
+	   "Start Time_Times",
+	   "Type_Times",
+	   "Order Positions_Times",
+	   "End Time_Times",
+	   "Duration Minutes_Times",
+	   "Type_Time_Types",
+	   "Description_Time_Types",
+	   "Start Time_Times" as "Datum",
 	   '1' as "Hauptbetrieb",
 	   '1' as "Hauptbetrieb",
-	   c93 as "Standort",
-	   c92 as "Monteur",
-	   c90 as "Anwesenheit_",
-	   c91 as "produktiv_",
-	   c90 as "unproduktiv_",
-	   c89 as "Zeitkategorie",
+	   "Standort",
+	   "Monteur",
+	   "Anwesenheit_",
+	   "produktiv_",
+	   "Anwesenheit_" as "unproduktiv_",
+	   "Zeitkategorie",
 	   '' as "Zeitkategorie2",
 	   '' as "Zeitkategorie2",
-	   c88 as "Ges. Std._",
-	   c87 as "Order Number",
-	   c86 as "Wochentag_Datum",
-	   c85 as "Is Flextime_Employees",
-	   c84 as "Break Time Registration_Employees",
-	   c83 as "Is Latest Record_break_times",
-	   c82 as "Dayofweek_break_times",
-	   c81 as "Break Start_break_times",
-	   c80 as "Break End_break_times",
-	   c71 as "Pause",
-	   c79 as "Start_Times_Stunde",
-	   c78 as "Start_Times_Minute",
-	   c77 as "End_Times_Stunde",
-	   c76 as "End_Times_Minute",
-	   c75 as "Start_Times_Minute_Dezimal",
-	   c74 as "Start_Times_Dezimal",
-	   c73 as "End_Times_Minute_Dezimal",
-	   c72 as "End_Times_Dezimal",
-	   c71 as "Pausenzeit_Stunde",
-	   c70 as "Dayofweek_Worktimes",
-	   c69 as "Work Duration_Worktimes",
-	   c68 as "Worktime Start_Worktimes",
-	   c67 as "Worktime End_Worktimes",
-	   c66 as "Validity Date_Worktimes",
-	   c65 as "Validity Date_Break_times",
-	   c64 as "Pausenzeit_Anw_mehr_als_6_",
-	   c64 as "Anwesenheit",
-	   c63 as "Pausenzeit_während_produktiv",
-	   MAX(c66) OVER (partition by c62) as c57,
-	   MAX(c65) OVER (partition by c62) as c58
+	   "Ges. Std._",
+	   "Order Number_Times" as "Order Number",
+	   "Wochentag_Datum",
+	   "Is Flextime_Employees",
+	   "Break Time Registration_Employees",
+	   "Is Latest Record_break_times",
+	   "Dayofweek_break_times",
+	   "Break Start_break_times",
+	   "Break End_break_times",
+	   "Pause",
+	   "Start_Times_Stunde",
+	   "Start_Times_Minute",
+	   "End_Times_Stunde",
+	   "End_Times_Minute",
+	   "Start_Times_Minute_Dezimal",
+	   "Start_Times_Dezimal",
+	   "End_Times_Minute_Dezimal",
+	   "End_Times_Dezimal",
+	   "Pause" as "Pausenzeit_Stunde",
+	   "Dayofweek_Worktimes",
+	   "Work Duration_Worktimes",
+	   "Worktime Start_Worktimes",
+	   "Worktime End_Worktimes",
+	   "Validity Date_Worktimes",
+	   "Validity Date_Break_times",
+	   "Pausenzeit_Anw_mehr_als_6_",
+	   "Pausenzeit_Anw_mehr_als_6_" as "Anwesenheit",
+	   "Pausenzeit_während_produktiv",
+	   MAX("Validity Date_Worktimes") OVER (partition by "Employee Number_Employees") as c57,
+	   MAX("Validity Date_Break_times") OVER (partition by "Employee Number_Employees") as c58
 from 
 from 
-(select T1."employee_number" as c62,
-	   CASE WHEN (((CASE WHEN (T3."type" = 2) THEN (T2."duration_minutes" / 60) ELSE (0) END) > 0) and (T4."break_start" BETWEEN (((od_hour(T2."start_time"))) + (((od_minute(T2."start_time"))) / 60)) AND (((od_hour(T2."end_time"))) + (((od_minute(T2."end_time"))) / 60)))) THEN ((((T4."break_end" - T4."break_start") * -1))) ELSE (0) END as c63,
-	   (((T4."break_end" - T4."break_start") * -1)) as c64,
-	   T4."validity_date" as c65,
-	   T5."validity_date" as c66,
-	   T5."worktime_end" as c67,
-	   T5."worktime_start" as c68,
-	   T5."work_duration" as c69,
-	   T5."dayofweek" as c70,
-	   T4."break_end" - T4."break_start" as c71,
-	   ((od_hour(T2."end_time"))) + (((od_minute(T2."end_time"))) / 60) as c72,
-	   ((od_minute(T2."end_time"))) / 60 as c73,
-	   ((od_hour(T2."start_time"))) + (((od_minute(T2."start_time"))) / 60) as c74,
-	   ((od_minute(T2."start_time"))) / 60 as c75,
-	   (od_minute(T2."end_time")) as c76,
-	   (od_hour(T2."end_time")) as c77,
-	   (od_minute(T2."start_time")) as c78,
-	   (od_hour(T2."start_time")) as c79,
-	   T4."break_end" as c80,
-	   T4."break_start" as c81,
-	   T4."dayofweek" as c82,
-	   T4."is_latest_record" as c83,
-	   T1."break_time_registration" as c84,
-	   T1."is_flextime" as c85,
-	   (dayofweek(T2."start_time")) as c86,
-	   T2."order_number" as c87,
-	   T2."duration_minutes" / 60 as c88,
-	   CASE WHEN (T2."type" = 2) THEN ('produktiv') ELSE ('unproduktiv') END as c89,
-	   CASE WHEN (T3."type" = 1) THEN (T2."duration_minutes" / 60) ELSE (0) END as c90,
-	   CASE WHEN (T3."type" = 2) THEN (T2."duration_minutes" / 60) ELSE (0) END as c91,
-	   (rtrim(((convert(varchar(50), T1."employee_number"))))) + ' - ' + T1."name" as c92,
-	   '0' + (rtrim(((convert(varchar(50), T1."subsidiary"))))) as c93,
-	   T2."start_time" as c94,
-	   T3."description" as c95,
-	   T3."type" as c96,
-	   T2."duration_minutes" as c97,
-	   T2."end_time" as c98,
-	   T2."order_positions" as c99,
-	   T2."type" as c100,
-	   T2."employee_number" as c101,
-	   T1."leave_date" as c102,
-	   T1."termination_date" as c103,
-	   T1."employment_date" as c104,
-	   T1."salesman_number" as c105,
-	   T1."mechanic_number" as c106,
-	   T1."initials" as c107,
-	   T1."name" as c108
+(select T1."employee_number" as "Employee Number_Employees",
+	   CASE WHEN (((CASE WHEN (T3."type" = 2) THEN (T2."duration_minutes" / 60) ELSE (0) END) > 0) and (T4."break_start" BETWEEN (((od_hour(T2."start_time"))) + (((od_minute(T2."start_time"))) / 60)) AND (((od_hour(T2."end_time"))) + (((od_minute(T2."end_time"))) / 60)))) THEN ((((T4."break_end" - T4."break_start") * -1))) ELSE (0) END as "Pausenzeit_während_produktiv",
+	   (((T4."break_end" - T4."break_start") * -1)) as "Pausenzeit_Anw_mehr_als_6_",
+	   T4."validity_date" as "Validity Date_Break_times",
+	   T5."validity_date" as "Validity Date_Worktimes",
+	   T5."worktime_end" as "Worktime End_Worktimes",
+	   T5."worktime_start" as "Worktime Start_Worktimes",
+	   T5."work_duration" as "Work Duration_Worktimes",
+	   T5."dayofweek" as "Dayofweek_Worktimes",
+	   T4."break_end" - T4."break_start" as "Pause",
+	   ((od_hour(T2."end_time"))) + (((od_minute(T2."end_time"))) / 60) as "End_Times_Dezimal",
+	   ((od_minute(T2."end_time"))) / 60 as "End_Times_Minute_Dezimal",
+	   ((od_hour(T2."start_time"))) + (((od_minute(T2."start_time"))) / 60) as "Start_Times_Dezimal",
+	   ((od_minute(T2."start_time"))) / 60 as "Start_Times_Minute_Dezimal",
+	   (od_minute(T2."end_time")) as "End_Times_Minute",
+	   (od_hour(T2."end_time")) as "End_Times_Stunde",
+	   (od_minute(T2."start_time")) as "Start_Times_Minute",
+	   (od_hour(T2."start_time")) as "Start_Times_Stunde",
+	   T4."break_end" as "Break End_break_times",
+	   T4."break_start" as "Break Start_break_times",
+	   T4."dayofweek" as "Dayofweek_break_times",
+	   T4."is_latest_record" as "Is Latest Record_break_times",
+	   T1."break_time_registration" as "Break Time Registration_Employees",
+	   T1."is_flextime" as "Is Flextime_Employees",
+	   (datepart(weekday, T2."start_time")) as "Wochentag_Datum",
+	   T2."order_number" as "Order Number_Times",
+	   T2."duration_minutes" / 60 as "Ges. Std._",
+	   CASE WHEN (T2."type" = 2) THEN ('produktiv') ELSE ('unproduktiv') END as "Zeitkategorie",
+	   CASE WHEN (T3."type" = 1) THEN (T2."duration_minutes" / 60) ELSE (0) END as "Anwesenheit_",
+	   CASE WHEN (T3."type" = 2) THEN (T2."duration_minutes" / 60) ELSE (0) END as "produktiv_",
+	   (rtrim((((T1."employee_number"))))) + ' - ' + T1."name" as "Monteur",
+	   '0' + (rtrim((((T1."subsidiary"))))) as "Standort",
+	   T2."start_time" as "Start Time_Times",
+	   T3."description" as "Description_Time_Types",
+	   T3."type" as "Type_Time_Types",
+	   T2."duration_minutes" as "Duration Minutes_Times",
+	   T2."end_time" as "End Time_Times",
+	   T2."order_positions" as "Order Positions_Times",
+	   T2."type" as "Type_Times",
+	   T2."employee_number" as "Employee Number_Times",
+	   T1."leave_date" as "Leave Date_Employees",
+	   T1."termination_date" as "Termination Date_Employees",
+	   T1."employment_date" as "Employment Date_Employees",
+	   T1."salesman_number" as "Salesman Number_Employees",
+	   T1."mechanic_number" as "Mechanic Number_Employees",
+	   T1."initials" as "Initials_Employees",
+	   T1."name" as "Name_Employees"
 from "dbo"."employees" T1,
 from "dbo"."employees" T1,
 	"LOCOSOFT"."dbo"."employees_breaktimes" T4,
 	"LOCOSOFT"."dbo"."employees_breaktimes" T4,
 	"LOCOSOFT"."dbo"."employees_worktimes" T5,
 	"LOCOSOFT"."dbo"."employees_worktimes" T5,
 	("dbo"."times" T2 left outer join "dbo"."time_types" T3 on T2."type" = T3."type")
 	("dbo"."times" T2 left outer join "dbo"."time_types" T3 on T2."type" = T3."type")
 where (T1."employee_number" = T2."employee_number") and (T1."employee_number" = T4."employee_number") and (T1."employee_number" = T5."employee_number")
 where (T1."employee_number" = T2."employee_number") and (T1."employee_number" = T4."employee_number") and (T1."employee_number" = T5."employee_number")
-and ((((T2."type" = 2) and (((dayofweek(T2."start_time"))) = T4."dayofweek")) and (((dayofweek(T2."start_time"))) = T5."dayofweek")) and (T2."start_time" >= convert(datetime, '2017-01-01 00:00:00.000')))
+and ((((T2."type" = 2) and (((datepart(weekday, T2."start_time"))) = T4."dayofweek")) and (((datepart(weekday, T2."start_time"))) = T5."dayofweek")) and (T2."start_time" >= convert(datetime, '2017-01-01 00:00:00.000')))
 ) D2
 ) D2
 ) D1
 ) D1
 where (("Validity Date_Worktimes" = c57) and ("Validity Date_Break_times" = c58))
 where (("Validity Date_Worktimes" = c57) and ("Validity Date_Break_times" = c58))

+ 3 - 3
System/LOCOSOFT/IQD/Zeit/Zeit_Stempelungen_neu.sql

@@ -17,8 +17,8 @@ select T1."employee_number" as "Employee Number_Employees",
 	   T4."description" as "Description_Time_Types",
 	   T4."description" as "Description_Time_Types",
 	   T2."start_time" as "Datum",
 	   T2."start_time" as "Datum",
 	   '1' as "Hauptbetrieb",
 	   '1' as "Hauptbetrieb",
-	   '0' + (rtrim(((convert(varchar(50), T1."subsidiary"))))) as "Standort",
-	   (rtrim(((convert(varchar(50), T1."employee_number"))))) + ' - ' + T1."name" as "Monteur",
+	   '0' + (rtrim((((T1."subsidiary"))))) as "Standort",
+	   (rtrim((((T1."employee_number"))))) + ' - ' + T1."name" as "Monteur",
 	   CASE WHEN (T4."type" = 1) THEN ((T2."exact_duration_seconds" / 60) / 60) ELSE (0) END as "Anwesenheit",
 	   CASE WHEN (T4."type" = 1) THEN ((T2."exact_duration_seconds" / 60) / 60) ELSE (0) END as "Anwesenheit",
 	   CASE WHEN (T4."type" = 2) THEN ((T2."exact_duration_seconds" / 60) / 60) ELSE (0) END as "produktiv",
 	   CASE WHEN (T4."type" = 2) THEN ((T2."exact_duration_seconds" / 60) / 60) ELSE (0) END as "produktiv",
 	   CASE WHEN (T4."type" = 1) THEN ((T2."exact_duration_seconds" / 60) / 60) ELSE (0) END as "unproduktiv",
 	   CASE WHEN (T4."type" = 1) THEN ((T2."exact_duration_seconds" / 60) / 60) ELSE (0) END as "unproduktiv",
@@ -26,7 +26,7 @@ select T1."employee_number" as "Employee Number_Employees",
 	   '' as "Zeitkategorie2",
 	   '' as "Zeitkategorie2",
 	   (T2."exact_duration_seconds" / 60) / 60 as "Ges. Std.",
 	   (T2."exact_duration_seconds" / 60) / 60 as "Ges. Std.",
 	   T2."order_number" as "Order Number",
 	   T2."order_number" as "Order Number",
-	   (dayofweek(T2."start_time")) as "Wochentag_Datum",
+	   (datepart(weekday, T2."start_time")) as "Wochentag_Datum",
 	   T1."is_flextime" as "Is Flextime_Employees",
 	   T1."is_flextime" as "Is Flextime_Employees",
 	   T1."break_time_registration" as "Break Time Registration_Employees"
 	   T1."break_time_registration" as "Break Time Registration_Employees"
 from "dbo"."employees" T1,
 from "dbo"."employees" T1,

+ 32 - 32
System/LOCOSOFT/IQD/Zeit/Zeit_ben_Std_LG.sql

@@ -24,47 +24,47 @@ select distinct "Order Number" as "Order Number",
 	   "End Time" as "End Time",
 	   "End Time" as "End Time",
 	   MIN("Invoice Date_Invoices") OVER (partition by "Order Number","Mechanic No_Labours") as "Min_Invoice_Date"
 	   MIN("Invoice Date_Invoices") OVER (partition by "Order Number","Mechanic No_Labours") as "Min_Invoice_Date"
 from 
 from 
-(select c31 as "Order Number",
+(select "Order Number",
 	   '' as "Labour Type",
 	   '' as "Labour Type",
 	   '' as "Code_Labour_Types",
 	   '' as "Code_Labour_Types",
 	   '' as "Description_Labour_Types",
 	   '' as "Description_Labour_Types",
-	   c44 as "Order Number_Labours",
-	   c43 as "Subsidiary_Labours",
+	   "Order Number_Labours",
+	   "Subsidiary_Labours",
 	   0 as "Invoice Type_Labours",
 	   0 as "Invoice Type_Labours",
-	   c30 as "Mechanic No_Labours",
+	   "Mechanic No_Labours",
 	   10 as "AW/Std.",
 	   10 as "AW/Std.",
 	   'ben. Std.' as "Zeitkategorie",
 	   'ben. Std.' as "Zeitkategorie",
 	   '' as "Zeitkategorie2",
 	   '' as "Zeitkategorie2",
-	   c42 as "Employee Number_Employee",
-	   c41 as "Name_Employee",
-	   c40 as "Monteur",
-	   c39 as "Invoice Date_Invoices",
-	   c39 as "Datum",
-	   c38 as "Duration Minutes_Times",
-	   c37 as "ben. Std.",
+	   "Employee Number_Employee",
+	   "Name_Employee",
+	   "Monteur",
+	   "Invoice Date_Invoices",
+	   "Invoice Date_Invoices" as "Datum",
+	   "Duration Minutes_Times",
+	   "ben. Std.",
 	   0 as "Invoice Number",
 	   0 as "Invoice Number",
-	   c36 as "Is Canceled",
-	   c35 as "Cancelation Number",
-	   c34 as "Cancelation Date",
-	   c33 as "Start Time",
-	   c32 as "End Time",
-	   MIN(c39) OVER (partition by c31,c30) as c26
+	   "Is Canceled",
+	   "Cancelation Number",
+	   "Cancelation Date",
+	   "Start Time",
+	   "End Time",
+	   MIN("Invoice Date_Invoices") OVER (partition by "Order Number","Mechanic No_Labours") as c26
 from 
 from 
-(select T2."mechanic_no" as c30,
-	   T1."order_number" as c31,
-	   T5."end_time" as c32,
-	   T5."start_time" as c33,
-	   T4."cancelation_date" as c34,
-	   T4."cancelation_number" as c35,
-	   T4."is_canceled" as c36,
-	   (T5."exact_duration_seconds" / 60) / 60 as c37,
-	   T5."exact_duration_seconds" / 60 as c38,
-	   T4."invoice_date" as c39,
-	   (rtrim(((convert(varchar(50), T3."employee_number"))))) + ' - ' + T3."name" as c40,
-	   T3."name" as c41,
-	   T3."employee_number" as c42,
-	   '0' + (rtrim(((convert(varchar(50), T3."subsidiary"))))) as c43,
-	   T2."order_number" as c44
+(select T2."mechanic_no" as "Mechanic No_Labours",
+	   T1."order_number" as "Order Number",
+	   T5."end_time" as "End Time",
+	   T5."start_time" as "Start Time",
+	   T4."cancelation_date" as "Cancelation Date",
+	   T4."cancelation_number" as "Cancelation Number",
+	   T4."is_canceled" as "Is Canceled",
+	   (T5."exact_duration_seconds" / 60) / 60 as "ben. Std.",
+	   T5."exact_duration_seconds" / 60 as "Duration Minutes_Times",
+	   T4."invoice_date" as "Invoice Date_Invoices",
+	   (rtrim((((T3."employee_number"))))) + ' - ' + T3."name" as "Monteur",
+	   T3."name" as "Name_Employee",
+	   T3."employee_number" as "Employee Number_Employee",
+	   '0' + (rtrim((((T3."subsidiary"))))) as "Subsidiary_Labours",
+	   T2."order_number" as "Order Number_Labours"
 from "LOCOSOFT"."dbo"."times" T5,
 from "LOCOSOFT"."dbo"."times" T5,
 	("dbo"."invoices" T4 left outer join (("dbo"."order_positions" T1 left outer join "dbo"."labours" T2 on T1."order_number" = T2."order_number") left outer join "dbo"."employees" T3 on T2."mechanic_no" = T3."employee_number") on (T2."invoice_number" = T4."invoice_number") and (T2."invoice_type" = T4."invoice_type"))
 	("dbo"."invoices" T4 left outer join (("dbo"."order_positions" T1 left outer join "dbo"."labours" T2 on T1."order_number" = T2."order_number") left outer join "dbo"."employees" T3 on T2."mechanic_no" = T3."employee_number") on (T2."invoice_number" = T4."invoice_number") and (T2."invoice_type" = T4."invoice_type"))
 where ((T2."order_number" = T5."order_number") and (T2."mechanic_no" = T5."employee_number"))
 where ((T2."order_number" = T5."order_number") and (T2."mechanic_no" = T5."employee_number"))

+ 2 - 2
System/LOCOSOFT/IQD/Zeit/Zeit_verk_Std.sql

@@ -6,7 +6,7 @@ select T1."order_number" as "Order Number",
 	   T3."order_number" as "Order Number_Labours",
 	   T3."order_number" as "Order Number_Labours",
 	   T3."order_position" as "Order Position_Labours",
 	   T3."order_position" as "Order Position_Labours",
 	   T3."order_position_line" as "Order Position Line_Labours",
 	   T3."order_position_line" as "Order Position Line_Labours",
-	   '0' + (rtrim(((convert(varchar(50), T4."subsidiary"))))) as "Subsidiary_Labours",
+	   '0' + (rtrim((((T4."subsidiary"))))) as "Subsidiary_Labours",
 	   T3."is_invoiced" as "Is Invoiced_Labours",
 	   T3."is_invoiced" as "Is Invoiced_Labours",
 	   T3."invoice_type" as "Invoice Type_Labours",
 	   T3."invoice_type" as "Invoice Type_Labours",
 	   T3."invoice_number" as "Invoice Number_Labours",
 	   T3."invoice_number" as "Invoice Number_Labours",
@@ -25,7 +25,7 @@ select T1."order_number" as "Order Number",
 	   '' as "Zeitkategorie2",
 	   '' as "Zeitkategorie2",
 	   T4."employee_number" as "Employee Number_Employee",
 	   T4."employee_number" as "Employee Number_Employee",
 	   T4."name" as "Name_Employee",
 	   T4."name" as "Name_Employee",
-	   (rtrim(((convert(varchar(50), T4."employee_number"))))) + ' - ' + T4."name" as "Monteur",
+	   (rtrim((((T4."employee_number"))))) + ' - ' + T4."name" as "Monteur",
 	   T5."invoice_number" as "Invoice Number_Invoices",
 	   T5."invoice_number" as "Invoice Number_Invoices",
 	   T5."invoice_date" as "Invoice Date_Invoices",
 	   T5."invoice_date" as "Invoice Date_Invoices",
 	   T5."invoice_date" as "Datum",
 	   T5."invoice_date" as "Datum",

+ 20 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/ims.Imvoice_No_Order_No.sql

@@ -0,0 +1,20 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW ims.imvoice_no_order_no AS
+
+select distinct T1."order_number" as "Order Number",
+	   T1."invoice_number" as "Invoice Number_ohne_type",
+	   T2."invoice_type" as "Invoice Type",
+	   (left((((T2."invoice_type"))),1)) + (left((((T1."invoice_number"))),6)) as "Invoice Number"
+from ("dbo"."invoices" T2 left outer join "dbo"."labours" T1 on (T1."invoice_number" = T2."invoice_number") and (T1."invoice_type" = T2."invoice_type"))
+where ((((left((((T2."invoice_type"))),1)) + (left((((T1."invoice_number"))),6))) <> '') and (T2."invoice_date" >= convert(date, '2019-01-01')))
+-- order by "Order Number" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 121 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/ims.Kontenrahmen.sql

@@ -0,0 +1,121 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW ims.kontenrahmen AS
+
+select T1."KONTO_NR" as "Konto Nr",
+	   T1."KONTO_BEZEICHNUNG" as "Konto Bezeichnung",
+	   T1."KONTO_ART" as "Konto Art_ori",
+	   T1."KOSTENSTELLE" as "Kostenstelle",
+	   T1."STK" as "Stk",
+	   T1."KONTO_1" as "Konto 1",
+	   T1."KONTO_2" as "Konto 2",
+	   T1."KONTO_3" as "Konto 3",
+	   T1."KONTO_4" as "Konto 4",
+	   T1."KONTO_5" as "Konto 5",
+	   T1."EBENE1" as "Ebene1",
+	   T1."EBENE2" as "Ebene2",
+	   T1."EBENE3" as "Ebene3",
+	   T1."EBENE4" as "Ebene4",
+	   T1."EBENE5" as "Ebene5",
+	   T1."EBENE6" as "Ebene6",
+	   T1."EBENE7" as "Ebene7",
+	   T1."EBENE8" as "Ebene8",
+	   T1."EBENE9" as "Ebene9",
+	   T1."EBENE10" as "Ebene10",
+	   T1."EBENE11" as "Ebene11",
+	   T1."EBENE12" as "Ebene12",
+	   T1."EBENE13" as "Ebene13",
+	   T1."EBENE14" as "Ebene14",
+	   T1."EBENE15" as "Ebene15",
+	   T1."EBENE16" as "Ebene16",
+	   T1."EBENE17" as "Ebene17",
+	   T1."EBENE18" as "Ebene18",
+	   T1."EBENE19" as "Ebene19",
+	   T1."EBENE20" as "Ebene20",
+	   T1."EBENE21" as "Ebene21",
+	   T1."EBENE22" as "Ebene22",
+	   T1."EBENE23" as "Ebene23",
+	   T1."EBENE24" as "Ebene24",
+	   T1."EBENE25" as "Ebene25",
+	   T1."EBENE26" as "Ebene26",
+	   T1."EBENE27" as "Ebene27",
+	   T1."EBENE28" as "Ebene28",
+	   T1."EBENE29" as "Ebene29",
+	   T1."EBENE30" as "Ebene30",
+	   T1."EBENE31" as "Ebene31",
+	   T1."EBENE32" as "Ebene32",
+	   T1."EBENE33" as "Ebene33",
+	   T1."EBENE34" as "Ebene34",
+	   T1."EBENE35" as "Ebene35",
+	   T1."EBENE36" as "Ebene36",
+	   T1."EBENE37" as "Ebene37",
+	   T1."EBENE38" as "Ebene38",
+	   T1."EBENE39" as "Ebene39",
+	   T1."EBENE40" as "Ebene40",
+	   T1."EBENE41" as "Ebene41",
+	   T1."EBENE42" as "Ebene42",
+	   T1."EBENE43" as "Ebene43",
+	   T1."EBENE44" as "Ebene44",
+	   T1."EBENE45" as "Ebene45",
+	   T1."EBENE46" as "Ebene46",
+	   T1."EBENE47" as "Ebene47",
+	   T1."EBENE48" as "Ebene48",
+	   T1."EBENE49" as "Ebene49",
+	   T1."EBENE50" as "Ebene50",
+	   T1."EBENE51" as "Ebene51",
+	   T1."EBENE52" as "Ebene52",
+	   T1."EBENE53" as "Ebene53",
+	   T1."EBENE54" as "Ebene54",
+	   T1."EBENE55" as "Ebene55",
+	   T1."EBENE56" as "Ebene56",
+	   T1."EBENE57" as "Ebene57",
+	   T1."EBENE58" as "Ebene58",
+	   T1."EBENE59" as "Ebene59",
+	   T1."EBENE60" as "Ebene60",
+	   T1."EBENE61" as "Ebene61",
+	   T1."EBENE62" as "Ebene62",
+	   T1."EBENE63" as "Ebene63",
+	   T1."EBENE64" as "Ebene64",
+	   T1."EBENE65" as "Ebene65",
+	   T1."EBENE66" as "Ebene66",
+	   T1."EBENE67" as "Ebene67",
+	   T1."EBENE68" as "Ebene68",
+	   T1."EBENE69" as "Ebene69",
+	   T1."EBENE70" as "Ebene70",
+	   T1."EBENE71" as "Ebene71",
+	   T1."EBENE72" as "Ebene72",
+	   T1."EBENE73" as "Ebene73",
+	   T1."EBENE74" as "Ebene74",
+	   T1."EBENE75" as "Ebene75",
+	   T1."EBENE76" as "Ebene76",
+	   T1."EBENE77" as "Ebene77",
+	   T1."EBENE78" as "Ebene78",
+	   T1."EBENE79" as "Ebene79",
+	   T1."EBENE80" as "Ebene80",
+	   T1."EBENE81" as "Ebene81",
+	   T1."EBENE82" as "Ebene82",
+	   T1."EBENE83" as "Ebene83",
+	   T1."EBENE84" as "Ebene84",
+	   T1."EBENE85" as "Ebene85",
+	   T1."EBENE86" as "Ebene86",
+	   T1."EBENE87" as "Ebene87",
+	   T1."EBENE88" as "Ebene88",
+	   T1."EBENE89" as "Ebene89",
+	   T1."EBENE90" as "Ebene90",
+	   (len(T1."KONTO_NR" + 'Z') - 1) as "Anzahl Stellen_Konto_Nr",
+	   T1."KONTO_ART" as "Konto Art",
+	   T1."KONTO_ART" as "GuV_Bilanz",
+	   T1."KONTO_NR" as "Acct Nr",
+	   T1."KONTO_NR" + ' - ' + T1."KONTO_BEZEICHNUNG" as "Konto",
+	   (left(T1."KONTO_NR",1)) as "Susa"
+from "Kontenrahmen.csv" T1
+where (((left(T1."KONTO_NR",1))) <> '9')
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 26 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/ims.OP_aus_LOC_Belege_8520.sql

@@ -0,0 +1,26 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW ims.op_aus_loc_belege_8520 AS
+
+select distinct T1."document_type" as "Document Type",
+	   T1."nominal_account_number" as "Nominal Account Number",
+	   T1."customer_contra_account" as "Customer Contra Account",
+	   T1."invoice_number" as "Invoice Number",
+	   T1."skr51_branch" as "Skr51 Branch",
+	   '1' as "Rechtseinheit",
+	   '0' + (((T1."skr51_branch"))) as "Betrieb",
+	   '1' as "Mandant",
+	   '1' as "Hauptbetrieb",
+	   ('0' + (((T1."skr51_branch")))) as "Standort"
+from "journal_accountings" T1
+where (((T1."nominal_account_number" IN (8520)) and (T1."document_type" = 'R')) and (T1."invoice_date" >= convert(date, '2016-01-01')))
+-- order by "Invoice Number" asc,"Nominal Account Number" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 24 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/ims.Serviceberater_Rechnung.sql

@@ -0,0 +1,24 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW ims.serviceberater_rechnung AS
+
+select distinct T1."invoice_type" as "Invoice Type",
+	   T1."invoice_number" as "Invoice Number",
+	   T2."order_taking_employee_no" as "Order Taking Employee No",
+	   T2."order_delivery_employee_no" as "Order Delivery Employee No",
+	   T1."invtype_invnr" as "Invoice_Type_Invoice_Number",
+	   T3."employee_number" as "Employee Number_Employees",
+	   T3."name" as "Name_Employees",
+	   (left((((T3."employee_number"))),4)) + ' - ' + T3."name" as "Serviceberater"
+from (("LOCOSOFT"."dbo"."order_positions" T2 left outer join "dbo"."invoices" T1 on T2."order_number" = T1."order_number") left outer join "LOCOSOFT"."dbo"."employees" T3 on T2."order_taking_employee_no" = T3."employee_number")
+where ((T1."invoice_type" BETWEEN 2 AND 6) and (T2."order_date" >= convert(datetime, '2019-01-01 00:00:00.000')))
+-- order by "Invoice_Type_Invoice_Number" asc,"Invoice Number" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 19 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/ims.ben_AW_Order_Number.sql

@@ -0,0 +1,19 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW ims.ben_aw_order_number AS
+
+select T1."order_number" as "Order Number",
+	   SUM(T1."duration_minutes") as "Summe_Duration_Minutes"
+from "dbo"."times" T1
+where (T1."order_number" <> 0)
+group by (T1."order_number")
+-- order by "Order Number" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 31 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/ims.offene_Auftraege_Ums_ben_AW_fuer_Monteure.sql

@@ -0,0 +1,31 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW ims.offene_auftraege_ums_ben_aw_fuer_monteure AS
+
+select distinct "Order Number_ori",
+	   "Order Number",
+	   "verk. Std. aus o.A."
+from 
+(select T1."order_number" as c4,
+	   SUM((convert(float, T5."time_units")) / 10) as "verk. Std. aus o.A."
+from (((("dbo"."order_positions" T1 left outer join "dbo"."vehicles" T2 on T1."vehicle_number" = T2."internal_number") left outer join "dbo"."employees" T3 on T1."order_taking_employee_no" = T3."employee_number") left outer join "dbo"."customers_suppliers" T4 on T1."order_customer" = T4."customer_number") left outer join "dbo"."labours" T5 on T1."order_number" = T5."order_number")
+where ((((T5."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2017-01-01 00:00:00.000'))) and (T5."net_price_in_order" IS NOT NULL)) and (T5."labour_type" <> 'F'))
+group by T1."order_number"
+) D2,
+	
+(select distinct T1."order_number" as "Order Number_ori",
+	   CASE WHEN (T2."license_plate" IS NOT NULL) THEN ((left((((T1."order_number"))),6)) + ' - ' + CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T3."name") END + ' - ' + T4."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date"))) + ' - ' + T2."license_plate") ELSE ((left((((T1."order_number"))))) + ' - ' + CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T3."name") END + ' - ' + T4."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date")))) END as "Order Number"
+from (((("dbo"."order_positions" T1 left outer join "dbo"."vehicles" T2 on T1."vehicle_number" = T2."internal_number") left outer join "dbo"."employees" T3 on T1."order_taking_employee_no" = T3."employee_number") left outer join "dbo"."customers_suppliers" T4 on T1."order_customer" = T4."customer_number") left outer join "dbo"."labours" T5 on T1."order_number" = T5."order_number")
+where ((((T5."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2017-01-01 00:00:00.000'))) and (T5."net_price_in_order" IS NOT NULL)) and (T5."labour_type" <> 'F'))
+) D1
+where (("Order Number_ori" = c4) or (("Order Number_ori" IS NULL) and (c4 IS NULL)))
+-- order by "Order Number_ori" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 82 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.aftersales_rechnungen_ben_aw_final_imr.sql

@@ -0,0 +1,82 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.aftersales_rechnungen_ben_aw_final_imr AS
+
+select "Invoice Type",
+	   "Invoice Number",
+	   "Subsidiary",
+	   "Invoice Date",
+	   "Service Date",
+	   "Is Canceled",
+	   "Vehicle Number",
+	   "Invoice_Type_Invoice_Number",
+	   '1' as "Hauptbetrieb",
+	   "Standort",
+	   "Serviceberater",
+	   "Umsatzart",
+	   "Fabrikat",
+	   "Fabrikat" as "Description_Makes",
+	   "Description_Models",
+	   "Model",
+	   "Fahrzeug",
+	   "Kostenstelle",
+	   "Marke",
+	   'Service' as "Auftragsart",
+	   "Geschäftsart",
+	   "Kunde",
+	   "Time Units",
+	   "Time Units_Zahl",
+	   10 as "AW/Std.",
+	   "verk. Std._",
+	   "Order Number",
+	   "Order Number_Rg_Ausg",
+	   "Kundenart",
+	   "Summe Duration Minutes",
+	   "Order Number_ben_AW",
+	   1 as "Anzahl_Datensätze_1",
+	   COUNT("Order Number_ben_AW") OVER (partition by "Order Number") as "Anzahl_Datensätze_2",
+	   (c38) / (COUNT("Order Number_ben_AW") OVER (partition by "Order Number")) as "ben. Std."
+from 
+(select (CASE WHEN (T2."Serviceberater" IS NOT NULL) THEN ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + T2."Serviceberater" + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) ELSE ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) END) as "Order Number",
+	   T9."Summe_Duration_Minutes" / 60 as c38,
+	   T9."order_number" as "Order Number_ben_AW",
+	   T9."Summe_Duration_Minutes" as "Summe Duration Minutes",
+	   (left((((T8."employee_number"))),4)) + ' - ' + T8."name" as "Kundenart",
+	   CASE WHEN ((-1 * datediff(day, (getdate()), (convert(datetime, T1."invoice_date")))) <= 4) THEN ((CASE WHEN (T2."Serviceberater" IS NOT NULL) THEN ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + T2."Serviceberater" + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) ELSE ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) END)) ELSE null END as "Order Number_Rg_Ausg",
+	   ((convert(float, T7."time_units"))) / 10 as "verk. Std._",
+	   (convert(float, T7."time_units")) as "Time Units_Zahl",
+	   T7."time_units" as "Time Units",
+	   CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END as "Kunde",
+	   T3."zip_code" as "Geschäftsart",
+	   CASE WHEN (T4."description" = 'Ford') THEN ('1') WHEN (T4."description" = 'Nissan') THEN ('3') WHEN (T4."description" = 'Suzuki') THEN ('2') ELSE ('9') END as "Marke",
+	   CASE WHEN ((left((((T6."type"))),1)) IN ('1','6')) THEN ('41 - After Sales Kundendienst eigene Werkstatt') WHEN (T6."type" IN (40,41,44,45,46,47,48,49,88,89,50,90)) THEN ('41 - After Sales Kundendienst eigene Werkstatt') WHEN ((left((((T6."type"))),1)) IN ('2')) THEN ('44 - After Sales Kundendienst eigene Karosserieabteilung') WHEN (T6."type" IN (42,92)) THEN ('44 - After Sales Kundendienst eigene Karosserieabteilung') WHEN ((left((((T6."type"))),1)) IN ('3')) THEN ('45 - After Sales Kundendienst eigene Lackiererei') WHEN (T6."type" IN (43,93)) THEN ('45 - After Sales Kundendienst eigene Lackiererei') ELSE null END as "Kostenstelle",
+	   (left((left((((T1."vehicle_number"))),5)) + ' - ' + T5."description",100)) as "Fahrzeug",
+	   (left((ucase(T5."description")),3)) as "Model",
+	   T5."description" as "Description_Models",
+	   T4."description" as "Fabrikat",
+	   CASE WHEN (T1."invoice_type" = 6) THEN ('GWL') WHEN ((T1."invoice_type" = 4) or (T3."customer_number" = 100001)) THEN ('intern') ELSE ('extern') END as "Umsatzart",
+	   T2."Serviceberater" as "Serviceberater",
+	   '0' + (((T1."subsidiary"))) as "Standort",
+	   (left((((T1."invoice_type"))),1)) + '_' + (left((((T1."invoice_number"))),9)) as "Invoice_Type_Invoice_Number",
+	   T1."vehicle_number" as "Vehicle Number",
+	   T1."is_canceled" as "Is Canceled",
+	   T1."service_date" as "Service Date",
+	   T1."invoice_date" as "Invoice Date",
+	   T1."subsidiary" as "Subsidiary",
+	   T1."invoice_number" as "Invoice Number",
+	   T1."invoice_type" as "Invoice Type"
+from "ims"."ben_AW_Order_Number" T9,
+	(((((((("dbo"."invoices" T1 left outer join "dbo"."customers_suppliers" T3 on T3."customer_number" = T1."paying_customer") left outer join "dbo"."vehicles" T10 on T1."vehicle_number" = T10."internal_number") left outer join "dbo"."makes" T4 on T10."make_number" = T4."make_number") left outer join "dbo"."models" T5 on (T10."make_number" = T5."make_number") and (T10."model_code" = T5."model_code")) left outer join "dbo"."labours" T7 on (T7."invoice_number" = T1."invoice_number") and (T7."invoice_type" = T1."invoice_type")) left outer join "dbo"."charge_type_descriptions" T6 on T6."type" = T7."charge_type") left outer join "dbo"."employees" T8 on T1."creating_employee" = T8."employee_number") left outer join "ims"."Serviceberater_Rechnung" T2 on T1."invtype_invnr" = T2."invtype_invnr")
+where (T7."order_number" = T9."order_number")
+and ((((T1."invoice_type" BETWEEN 2 AND 6) and (T1."is_canceled" <> 1)) and (T1."invoice_date" >= convert(date, '2017-01-01'))) and ((((convert(float, T7."time_units"))) <> 0) and (((convert(float, T7."time_units"))) IS NOT NULL)))
+) D1
+-- order by "Invoice_Type_Invoice_Number" asc,"Invoice Number" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 268 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.aftersales_rechnungen_neu_imr.sql

@@ -0,0 +1,268 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.aftersales_rechnungen_neu_imr AS
+
+select "Invoice Type",
+	   "Type_Invoice_Types",
+	   "Description_Invoice_Types",
+	   "Invoice Number_2",
+	   "Subsidiary",
+	   "Paying Customer",
+	   "Order Customer",
+	   "Invoice Date",
+	   "Service Date",
+	   "Is Canceled",
+	   "Cancelation Number",
+	   "Cancelation Date",
+	   "Cancelation Employee",
+	   "Is Own Vehicle",
+	   "Is Credit",
+	   "Credit Invoice Type",
+	   "Credit Invoice Number",
+	   "Odometer Reading",
+	   "Creating Employee",
+	   "Internal Cost Account",
+	   "Vehicle Number",
+	   "Full Vat Basevalue",
+	   "Full Vat Percentage",
+	   "Full Vat Value",
+	   "Reduced Vat Basevalue",
+	   "Reduced Vat Percentage",
+	   "Reduced Vat Value",
+	   "Used Part Vat Value",
+	   "Job Amount Net",
+	   "Job Amount Gross",
+	   "Job Rebate",
+	   "Part Amount Net",
+	   "Part Amount Gross",
+	   "Part Rebate",
+	   "Part Disposal",
+	   "Total Gross",
+	   "Total Net",
+	   "Inv_Type_Invoice_Number",
+	   "Accounting Date",
+	   "Document Type",
+	   "Document Number",
+	   "Position In Document",
+	   "Customer Number",
+	   "Nominal Account Number",
+	   "Is Balanced",
+	   "Clearing Number",
+	   "Document Date",
+	   "Posted Value",
+	   "Debit Or Credit",
+	   "Posted Count",
+	   "Branch Number",
+	   "Customer Contra Account",
+	   "Nominal Contra Account",
+	   "Contra Account Text",
+	   "Account Form Page Number",
+	   "Account Form Page Line",
+	   "Serial Number Each Month",
+	   "Employee Number",
+	   "Invoice Date_falsch",
+	   "Invoice Number",
+	   "Dunning Level",
+	   "Last Dunning Date",
+	   "Journal Page",
+	   "Journal Line",
+	   "Cash Discount",
+	   "Term Of Payment",
+	   "Posting Text",
+	   "Vehicle Reference",
+	   "Vat Id Number",
+	   "Account Statement Number",
+	   "Account Statement Page",
+	   "Vat Key",
+	   "Days For Cash Discount",
+	   "Day Of Actual Accounting",
+	   "Skr51 Branch",
+	   "Skr51 Make",
+	   "Skr51 Cost Center",
+	   "Skr51 Sales Channel",
+	   "Skr51 Cost Unit",
+	   "Previously Used Account No",
+	   "Free Form Accounting Text",
+	   "Free Form Document Text",
+	   '1' as "Hauptbetrieb",
+	   "Standort",
+	   "Accounting Date" as "Invoice Date_accounting",
+	   "Employee Number_Employees",
+	   "Name_Employees",
+	   "Mechanic Number_Employees",
+	   "Salesman Number_Employees",
+	   "Is Business Executive_Employees",
+	   "Is Master Craftsman_Employees",
+	   "Serviceberater_Rg_Steller",
+	   "Customer Number_Customers_Suppliers",
+	   "First Name_Customers_Suppliers",
+	   "Family Name_Customers_Suppliers",
+	   "Kunde",
+	   "Betrag",
+	   "Kostenstelle",
+	   "Skr51 Make" as "Marke",
+	   "Kundenart",
+	   "KST_1_Stelle",
+	   "Umsatzart",
+	   "Auftragsart",
+	   '' as "Geschäftsart",
+	   "Make Number",
+	   "Free Form Make Text",
+	   "Model Code",
+	   "Free Form Model Text",
+	   "Description_Makes",
+	   "Description_Models",
+	   "Description_Makes" as "Fabrikat",
+	   "Description_Models" as "Model_Detail",
+	   "Model",
+	   (0) as "Umsatz Lohn",
+	   (0) as "Umsatz FL",
+	   (0) as "Einsatz FL",
+	   (0) as "Umsatz Teile",
+	   (0) as "Einsatz Teile",
+	   (0) as "Umsatz MW",
+	   (0) as "Einsatz MW",
+	   (0) as "Umsatz Sonst.",
+	   (0) as "Einsatz Sonst.",
+	   1 as "DG_1",
+	   COUNT("Invoice Type") OVER (partition by "Order Number") as "DG_2",
+	   1 / (COUNT("Invoice Type") OVER (partition by "Order Number")) as "DG",
+	   "Fahrzeug",
+	   "Order Number",
+	   "Invoice_Date_Uhrzeit",
+	   "Order Number_Rg_Ausg",
+	   '' as "Konto Nr",
+	   '' as "Konto Bezeichnung",
+	   '' as "Ebene1",
+	   '' as "Ebene2",
+	   '' as "Ebene3",
+	   '' as "Ebene4",
+	   "Serviceberater_order_pos",
+	   "Serviceberater"
+from 
+(select (CASE WHEN ((CASE WHEN (T1."invoice_type" = 5) THEN (((left((((T5."employee_number"))),4)) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END) IS NOT NULL) THEN (((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9))) + ' - ' + (CASE WHEN (T1."invoice_type" = 5) THEN (((left((((T5."employee_number"))),4)) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END) + ' - ' + (CASE WHEN (T4."first_name" IS NULL) THEN ((left((((T4."customer_number"))),7)) + ' - ' + T4."family_name") ELSE ((left((((T4."customer_number"))),7)) + ' - ' + T4."first_name" + ' ' + T4."family_name") END)) ELSE (((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9))) + ' - ' + (CASE WHEN (T4."first_name" IS NULL) THEN ((left((((T4."customer_number"))),7)) + ' - ' + T4."family_name") ELSE ((left((((T4."customer_number"))),7)) + ' - ' + T4."first_name" + ' ' + T4."family_name") END)) END) as "Order Number",
+	   CASE WHEN (T1."invoice_type" = 5) THEN (((left((((T5."employee_number"))),4)) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END as "Serviceberater",
+	   T10."Serviceberater" as "Serviceberater_order_pos",
+	   CASE WHEN ((-1 * datediff(day, (getdate()), ((convert(datetime, T1."invoice_date"))))) <= 4) THEN ((CASE WHEN ((CASE WHEN (T1."invoice_type" = 5) THEN (((left((((T5."employee_number"))),4)) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END) IS NOT NULL) THEN (((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9))) + ' - ' + (CASE WHEN (T1."invoice_type" = 5) THEN (((left((((T5."employee_number"))),4)) + ' - ' + T5."name")) ELSE (T10."Serviceberater") END) + ' - ' + (CASE WHEN (T4."first_name" IS NULL) THEN ((left((((T4."customer_number"))),7)) + ' - ' + T4."family_name") ELSE ((left((((T4."customer_number"))),7)) + ' - ' + T4."first_name" + ' ' + T4."family_name") END)) ELSE (((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9))) + ' - ' + (CASE WHEN (T4."first_name" IS NULL) THEN ((left((((T4."customer_number"))),7)) + ' - ' + T4."family_name") ELSE ((left((((T4."customer_number"))),7)) + ' - ' + T4."first_name" + ' ' + T4."family_name") END)) END)) ELSE null END as "Order Number_Rg_Ausg",
+	   (convert(datetime, T1."invoice_date")) as "Invoice_Date_Uhrzeit",
+	   (left((left((((T1."vehicle_number"))),5)) + ' - ' + T9."description",100)) as "Fahrzeug",
+	   (left((ucase(T9."description")),3)) as "Model",
+	   T9."description" as "Description_Models",
+	   T8."description" as "Description_Makes",
+	   T7."free_form_model_text" as "Free Form Model Text",
+	   T7."model_code" as "Model Code",
+	   T7."free_form_make_text" as "Free Form Make Text",
+	   T7."make_number" as "Make Number",
+	   CASE WHEN (T1."invoice_type" = 5) THEN ('Teile') ELSE ('Service') END as "Auftragsart",
+	   CASE WHEN (T1."invoice_type" = 6) THEN ('GWL') WHEN ((T1."invoice_type" = 4) or (T4."customer_number" IN (1000000,1000001,1000002,1000003,1000010))) THEN ('intern') ELSE ('extern') END as "Umsatzart",
+	   (left(((rtrim((((T3."skr51_cost_center"))))) + ' - ' + T6."skr51_cost_center_name"),1)) as "KST_1_Stelle",
+	   (rtrim((((T3."skr51_sales_channel"))))) + ' - ' + T6."skr51_sales_channel_name" as "Kundenart",
+	   T3."skr51_make" as "Skr51 Make",
+	   (rtrim((((T3."skr51_cost_center"))))) + ' - ' + T6."skr51_cost_center_name" as "Kostenstelle",
+	   CASE WHEN (T3."debit_or_credit" = 'H') THEN (((convert(float, T3."posted_value"))) / 100 * -1) ELSE (((convert(float, T3."posted_value"))) / 100) END as "Betrag",
+	   CASE WHEN (T4."first_name" IS NULL) THEN ((left((((T4."customer_number"))),7)) + ' - ' + T4."family_name") ELSE ((left((((T4."customer_number"))),7)) + ' - ' + T4."first_name" + ' ' + T4."family_name") END as "Kunde",
+	   T4."family_name" as "Family Name_Customers_Suppliers",
+	   T4."first_name" as "First Name_Customers_Suppliers",
+	   T4."customer_number" as "Customer Number_Customers_Suppliers",
+	   (left((((T5."employee_number"))),4)) + ' - ' + T5."name" as "Serviceberater_Rg_Steller",
+	   T5."is_master_craftsman" as "Is Master Craftsman_Employees",
+	   T5."is_business_executive" as "Is Business Executive_Employees",
+	   T5."salesman_number" as "Salesman Number_Employees",
+	   T5."mechanic_number" as "Mechanic Number_Employees",
+	   T5."name" as "Name_Employees",
+	   T5."employee_number" as "Employee Number_Employees",
+	   T3."accounting_date" as "Accounting Date",
+	   '0' + (((T3."branch_number"))) as "Standort",
+	   CASE WHEN (T3."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T3."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T3."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T3."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T3."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as "Free Form Document Text",
+	   T4."zip_code" as "Free Form Accounting Text",
+	   T3."previously_used_account_no" as "Previously Used Account No",
+	   T3."skr51_cost_unit" as "Skr51 Cost Unit",
+	   T3."skr51_sales_channel" as "Skr51 Sales Channel",
+	   T3."skr51_cost_center" as "Skr51 Cost Center",
+	   T3."skr51_branch" as "Skr51 Branch",
+	   T3."day_of_actual_accounting" as "Day Of Actual Accounting",
+	   T3."days_for_cash_discount" as "Days For Cash Discount",
+	   T3."vat_key" as "Vat Key",
+	   T3."account_statement_page" as "Account Statement Page",
+	   T3."account_statement_number" as "Account Statement Number",
+	   T3."vat_id_number" as "Vat Id Number",
+	   T3."vehicle_reference" as "Vehicle Reference",
+	   T3."posting_text" as "Posting Text",
+	   T3."term_of_payment" as "Term Of Payment",
+	   T3."cash_discount" as "Cash Discount",
+	   T3."journal_line" as "Journal Line",
+	   T3."journal_page" as "Journal Page",
+	   T3."last_dunning_date" as "Last Dunning Date",
+	   T3."dunning_level" as "Dunning Level",
+	   T3."invoice_number" as "Invoice Number",
+	   T3."invoice_date" as "Invoice Date_falsch",
+	   T3."employee_number" as "Employee Number",
+	   T3."serial_number_each_month" as "Serial Number Each Month",
+	   T3."account_form_page_line" as "Account Form Page Line",
+	   T3."account_form_page_number" as "Account Form Page Number",
+	   CASE WHEN (T3."nominal_account_number" = 5701) THEN ((rtrim((((T3."nominal_account_number"))))) + '_' + (rtrim((((T3."skr51_cost_center")))))) ELSE ((rtrim((((T3."nominal_account_number")))))) END as "Contra Account Text",
+	   T3."nominal_contra_account" as "Nominal Contra Account",
+	   T3."customer_contra_account" as "Customer Contra Account",
+	   T3."branch_number" as "Branch Number",
+	   T3."posted_count" as "Posted Count",
+	   T3."debit_or_credit" as "Debit Or Credit",
+	   (convert(float, T3."posted_value")) as "Posted Value",
+	   T3."document_date" as "Document Date",
+	   T3."clearing_number" as "Clearing Number",
+	   T3."is_balanced" as "Is Balanced",
+	   T3."nominal_account_number" as "Nominal Account Number",
+	   T3."customer_number" as "Customer Number",
+	   T3."position_in_document" as "Position In Document",
+	   T3."document_number" as "Document Number",
+	   T3."document_type" as "Document Type",
+	   (left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) as "Inv_Type_Invoice_Number",
+	   T1."total_net" as "Total Net",
+	   T1."total_gross" as "Total Gross",
+	   T1."part_disposal" as "Part Disposal",
+	   T1."part_rebate" as "Part Rebate",
+	   T1."part_amount_gross" as "Part Amount Gross",
+	   T1."part_amount_net" as "Part Amount Net",
+	   T1."job_rebate" as "Job Rebate",
+	   T1."job_amount_gross" as "Job Amount Gross",
+	   T1."job_amount_net" as "Job Amount Net",
+	   T1."used_part_vat_value" as "Used Part Vat Value",
+	   T1."reduced_vat_value" as "Reduced Vat Value",
+	   T1."reduced_vat_percentage" as "Reduced Vat Percentage",
+	   T1."reduced_vat_basevalue" as "Reduced Vat Basevalue",
+	   T1."full_vat_value" as "Full Vat Value",
+	   T1."full_vat_percentage" as "Full Vat Percentage",
+	   T1."full_vat_basevalue" as "Full Vat Basevalue",
+	   T1."vehicle_number" as "Vehicle Number",
+	   T1."internal_cost_account" as "Internal Cost Account",
+	   T1."creating_employee" as "Creating Employee",
+	   T1."odometer_reading" as "Odometer Reading",
+	   T1."credit_invoice_number" as "Credit Invoice Number",
+	   T1."credit_invoice_type" as "Credit Invoice Type",
+	   T1."is_credit" as "Is Credit",
+	   T1."is_own_vehicle" as "Is Own Vehicle",
+	   T1."cancelation_employee" as "Cancelation Employee",
+	   T1."cancelation_date" as "Cancelation Date",
+	   T1."cancelation_number" as "Cancelation Number",
+	   T1."is_canceled" as "Is Canceled",
+	   T1."service_date" as "Service Date",
+	   T1."invoice_date" as "Invoice Date",
+	   T1."order_customer" as "Order Customer",
+	   T1."paying_customer" as "Paying Customer",
+	   T1."subsidiary" as "Subsidiary",
+	   T1."invoice_number" as "Invoice Number_2",
+	   T2."description" as "Description_Invoice_Types",
+	   T2."type" as "Type_Invoice_Types",
+	   T1."invoice_type" as "Invoice Type"
+from ((((((((("dbo"."invoices" T1 left outer join "dbo"."invoice_types" T2 on T2."type" = T1."invoice_type") left outer join "dbo"."journal_accountings" T3 on T3."invoice_number" = T1."invtype_invnr") left outer join "dbo"."customers_suppliers" T4 on T4."customer_number" = T1."paying_customer") left outer join "dbo"."employees" T5 on T1."creating_employee" = T5."employee_number") left outer join "dbo"."accounts_characteristics" T6 on (((((T6."skr51_branch" = T3."skr51_branch") and (T6."skr51_make" = T3."skr51_make")) and (T6."skr51_cost_center" = T3."skr51_cost_center")) and (T6."skr51_sales_channel" = T3."skr51_sales_channel")) and (T6."skr51_cost_unit" = T3."skr51_cost_unit")) and (T6."subsidiary_to_company_ref" = T3."subsidiary_to_company_ref")) left outer join "dbo"."vehicles" T7 on T1."vehicle_number" = T7."internal_number") left outer join "dbo"."makes" T8 on T7."make_number" = T8."make_number") left outer join "dbo"."models" T9 on (T7."make_number" = T9."make_number") and (T7."model_code" = T9."model_code")) left outer join "ims"."Serviceberater_Rechnung" T10 on T1."invtype_invnr" = T10."invtype_invnr")
+where (((((T1."invoice_type" BETWEEN 2 AND 6) and ((left((((T3."nominal_account_number"))),1)) IN ('4','5','7','8'))) and (T1."invoice_date" >= convert(date, '2019-01-01'))) and (T1."is_canceled" <> 1)) and (((len((rtrim((((T3."nominal_account_number"))))) + 'Z') - 1)) = 4))
+-- order by "Order Number" asc,"Document Number" asc,"Position In Document" asc,"Inv_Type_Invoice_Number" asc
+) D1
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 45 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.aftersales_rechnungen_verk_aw_final_imr.sql

@@ -0,0 +1,45 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.aftersales_rechnungen_verk_aw_final_imr AS
+
+select T1."invoice_type" as "Invoice Type",
+	   T1."invoice_number" as "Invoice Number",
+	   T1."subsidiary" as "Subsidiary",
+	   T1."invoice_date" as "Invoice Date",
+	   T1."service_date" as "Service Date",
+	   T1."is_canceled" as "Is Canceled",
+	   T1."vehicle_number" as "Vehicle Number",
+	   (left((((T1."invoice_type"))),1)) + '_' + (left((((T1."invoice_number"))),9)) as "Invoice_Type_Invoice_Number",
+	   '1' as "Hauptbetrieb",
+	   '0' + (((T1."subsidiary"))) as "Standort",
+	   T2."Serviceberater" as "Serviceberater",
+	   CASE WHEN (T1."invoice_type" = 6) THEN ('GWL') WHEN ((T1."invoice_type" = 4) or (T3."customer_number" = 100001)) THEN ('intern') ELSE ('extern') END as "Umsatzart",
+	   T4."description" as "Fabrikat",
+	   T4."description" as "Description_Makes",
+	   T5."description" as "Description_Models",
+	   (left((ucase(T5."description")),3)) as "Model",
+	   (left((left((((T1."vehicle_number"))),5)) + ' - ' + T5."description",100)) as "Fahrzeug",
+	   CASE WHEN ((left((((T6."type"))),1)) IN ('1','6')) THEN ('41 - After Sales Kundendienst eigene Werkstatt') WHEN (T6."type" IN (40,41,44,45,46,47,48,49,88,89,50,90)) THEN ('41 - After Sales Kundendienst eigene Werkstatt') WHEN ((left((((T6."type"))),1)) IN ('2')) THEN ('44 - After Sales Kundendienst eigene Karosserieabteilung') WHEN (T6."type" IN (42,92)) THEN ('44 - After Sales Kundendienst eigene Karosserieabteilung') WHEN ((left((((T6."type"))),1)) IN ('3')) THEN ('45 - After Sales Kundendienst eigene Lackiererei') WHEN (T6."type" IN (43,93)) THEN ('45 - After Sales Kundendienst eigene Lackiererei') ELSE null END as "Kostenstelle",
+	   CASE WHEN (T4."description" = 'Ford') THEN ('1') WHEN (T4."description" = 'Nissan') THEN ('3') WHEN (T4."description" = 'Suzuki') THEN ('2') ELSE ('9') END as "Marke",
+	   'Service' as "Auftragsart",
+	   T3."zip_code" as "Geschäftsart",
+	   CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END as "Kunde",
+	   T7."time_units" as "Time Units",
+	   (convert(float, T7."time_units")) as "Time Units_Zahl",
+	   10 as "AW/Std.",
+	   ((convert(float, T7."time_units"))) / 10 as "verk. Std.",
+	   CASE WHEN (T2."Serviceberater" IS NOT NULL) THEN ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + T2."Serviceberater" + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) ELSE ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) END as "Order Number",
+	   CASE WHEN ((-1 * datediff(day, (getdate()), (convert(datetime, T1."invoice_date")))) <= 4) THEN ((CASE WHEN (T2."Serviceberater" IS NOT NULL) THEN ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + T2."Serviceberater" + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) ELSE ((left((((T1."invoice_type"))),1)) + (left((((T1."invoice_number"))),9)) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") END)) END)) ELSE null END as "Order Number_Rg_Ausg",
+	   (left((((T8."employee_number"))),4)) + ' - ' + T8."name" as "Kundenart"
+from (((((((("dbo"."invoices" T1 left outer join "dbo"."customers_suppliers" T3 on T3."customer_number" = T1."paying_customer") left outer join "dbo"."vehicles" T9 on T1."vehicle_number" = T9."internal_number") left outer join "dbo"."makes" T4 on T9."make_number" = T4."make_number") left outer join "dbo"."models" T5 on (T9."make_number" = T5."make_number") and (T9."model_code" = T5."model_code")) left outer join "dbo"."labours" T7 on (T7."invoice_number" = T1."invoice_number") and (T7."invoice_type" = T1."invoice_type")) left outer join "dbo"."charge_type_descriptions" T6 on T6."type" = T7."charge_type") left outer join "dbo"."employees" T8 on T1."creating_employee" = T8."employee_number") left outer join "ims"."Serviceberater_Rechnung" T2 on T1."invtype_invnr" = T2."invtype_invnr")
+where (((((T1."invoice_type" BETWEEN 2 AND 6) and (T1."is_canceled" <> 1)) and (T1."invoice_date" >= convert(date, '2017-01-01'))) and ((((convert(float, T7."time_units"))) <> 0) and (((convert(float, T7."time_units"))) IS NOT NULL))) and (T7."mechanic_no" IS NOT NULL))
+-- order by "Invoice_Type_Invoice_Number" asc,"Invoice Number" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 43 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.current_date_prognose_imr.sql

@@ -0,0 +1,43 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.current_date_prognose_imr AS
+
+select "Bundeslaender Id" as "Bundeslaender Id",
+	   "Datum" as "Datum",
+	   "Wochentage Id" as "Wochentage Id",
+	   "Arbeitstag Mofr" as "Arbeitstag Mofr",
+	   "Zaehler Mofr" as "Zaehler Mofr",
+	   "Summe Mofr" as "Summe Mofr",
+	   "Arbeitstag Mosa" as "Arbeitstag Mosa",
+	   "Zaehler Mosa" as "Zaehler Mosa",
+	   "Summe Mosa" as "Summe Mosa",
+	   "Feiertage Id" as "Feiertage Id",
+	   "Jahr" as "Jahr",
+	   CASE WHEN ("Arbeitstag Mofr" = 1) THEN (RCOUNT("Arbeitstag Mofr")) ELSE null END as "Arbeitstag Nr Jahr",
+	   "Gesamt Arbeitstage" as "Gesamt Arbeitstage"
+from 
+(select T1."bundeslaender_id" as "Bundeslaender Id",
+	   T1."datum" as "Datum",
+	   T1."wochentage_id" as "Wochentage Id",
+	   T1."arbeitstag_mofr" as "Arbeitstag Mofr",
+	   T1."zaehler_mofr" as "Zaehler Mofr",
+	   T1."summe_mofr" as "Summe Mofr",
+	   T1."arbeitstag_mosa" as "Arbeitstag Mosa",
+	   T1."zaehler_mosa" as "Zaehler Mosa",
+	   T1."summe_mosa" as "Summe Mosa",
+	   T1."feiertage_id" as "Feiertage Id",
+	   (getdate()) - 1 as "Jahr",
+	   CASE WHEN (T1."datum" BETWEEN convert(datetime, '2008-01-01 00:00:00.000') AND convert(datetime, '2008-12-31 00:00:00.000')) THEN (252) WHEN (T1."datum" BETWEEN convert(datetime, '2009-01-01 00:00:00.000') AND convert(datetime, '2009-12-31 00:00:00.000')) THEN (252) WHEN (T1."datum" BETWEEN convert(datetime, '2010-01-01 00:00:00.000') AND convert(datetime, '2010-12-31 00:00:00.000')) THEN (253) WHEN (T1."datum" BETWEEN convert(datetime, '2011-01-01 00:00:00.000') AND convert(datetime, '2011-12-31 00:00:00.000')) THEN (250) WHEN (T1."datum" BETWEEN convert(datetime, '2012-01-01 00:00:00.000') AND convert(datetime, '2012-12-31 00:00:00.000')) THEN (249) ELSE (250) END as "Gesamt Arbeitstage"
+from "Arbeitstage" T1
+where (((((T1."bundeslaender_id" = '2') and (T1."arbeitstag_mofr" = 1)) and ((year(T1."datum")) = (year(((getdate()) - 1))))) and (T1."datum" <= ((getdate()) - 1))) or ((((T1."bundeslaender_id" = '2') and ((year(T1."datum")) = (year(((getdate()) - 1))))) and (T1."datum" <= ((getdate()) - 1))) and (T1."datum" IN (convert(datetime, '2022-01-01 00:00:00.000'),convert(datetime, '2023-01-01 00:00:00.000'),convert(datetime, '2024-01-01 00:00:00.000'),convert(datetime, '2025-01-01 00:00:00.000'),convert(datetime, '2026-01-01 00:00:00.000')))))
+-- order by "Bundeslaender Id" asc,"Datum" asc,"Wochentage Id" asc,"Arbeitstag Mofr" asc,"Zaehler Mofr" asc,"Summe Mofr" asc,"Arbeitstag Mosa" asc,"Zaehler Mosa" asc,"Summe Mosa" asc,"Feiertage Id" asc,"Gesamt Arbeitstage" asc
+) D1
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 43 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.current_date_prognose_operativ_vj-2_imr.sql

@@ -0,0 +1,43 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.current_date_prognose_operativ_vj-2_imr AS
+
+select "Bundeslaender Id" as "Bundeslaender Id",
+	   "Datum" as "Datum",
+	   "Wochentage Id" as "Wochentage Id",
+	   "Arbeitstag Mofr" as "Arbeitstag Mofr",
+	   "Zaehler Mofr" as "Zaehler Mofr",
+	   "Summe Mofr" as "Summe Mofr",
+	   "Arbeitstag Mosa" as "Arbeitstag Mosa",
+	   "Zaehler Mosa" as "Zaehler Mosa",
+	   "Summe Mosa" as "Summe Mosa",
+	   "Feiertage Id" as "Feiertage Id",
+	   "Jahr" as "Jahr",
+	   CASE WHEN ("Arbeitstag Mofr" = 1) THEN (RCOUNT("Arbeitstag Mofr")) ELSE null END as "Arbeitstag Nr Jahr",
+	   "Gesamt Arbeitstage" as "Gesamt Arbeitstage"
+from 
+(select T1."bundeslaender_id" as "Bundeslaender Id",
+	   T1."datum" as "Datum",
+	   T1."wochentage_id" as "Wochentage Id",
+	   T1."arbeitstag_mofr" as "Arbeitstag Mofr",
+	   T1."zaehler_mofr" as "Zaehler Mofr",
+	   T1."summe_mofr" as "Summe Mofr",
+	   T1."arbeitstag_mosa" as "Arbeitstag Mosa",
+	   T1."zaehler_mosa" as "Zaehler Mosa",
+	   T1."summe_mosa" as "Summe Mosa",
+	   T1."feiertage_id" as "Feiertage Id",
+	   (getdate()) - INTERVAL '000 00:00:00.000' as "Jahr",
+	   CASE WHEN (T1."datum" BETWEEN convert(datetime, '2008-01-01 00:00:00.000') AND convert(datetime, '2008-12-31 00:00:00.000')) THEN (252) WHEN (T1."datum" BETWEEN convert(datetime, '2009-01-01 00:00:00.000') AND convert(datetime, '2009-12-31 00:00:00.000')) THEN (252) WHEN (T1."datum" BETWEEN convert(datetime, '2010-01-01 00:00:00.000') AND convert(datetime, '2010-12-31 00:00:00.000')) THEN (253) WHEN (T1."datum" BETWEEN convert(datetime, '2011-01-01 00:00:00.000') AND convert(datetime, '2011-12-31 00:00:00.000')) THEN (250) WHEN (T1."datum" BETWEEN convert(datetime, '2012-01-01 00:00:00.000') AND convert(datetime, '2012-12-31 00:00:00.000')) THEN (249) ELSE (250) END as "Gesamt Arbeitstage"
+from "Arbeitstage" T1
+where ((((T1."bundeslaender_id" = '4') and ((year(T1."datum")) = ((year(((getdate()) - INTERVAL '000 00:00:00.000'))) - 2))) and (T1."datum" <= ((getdate()) - INTERVAL '000 00:00:00.000'))) or ((((T1."bundeslaender_id" = '4') and ((year(T1."datum")) = ((year(((getdate()) - INTERVAL '000 00:00:00.000'))) - 2))) and (T1."datum" <= ((getdate()) - INTERVAL '000 00:00:00.000'))) and (T1."datum" IN (convert(datetime, '2012-01-01 00:00:00.000'),convert(datetime, '2013-01-01 00:00:00.000'),convert(datetime, '2014-01-01 00:00:00.000'),convert(datetime, '2015-01-01 00:00:00.000'),convert(datetime, '2016-01-01 00:00:00.000'),convert(datetime, '2017-01-01 00:00:00.000')))))
+-- order by "Bundeslaender Id" asc,"Datum" asc,"Wochentage Id" asc,"Arbeitstag Mofr" asc,"Zaehler Mofr" asc,"Summe Mofr" asc,"Arbeitstag Mosa" asc,"Zaehler Mosa" asc,"Summe Mosa" asc,"Feiertage Id" asc,"Gesamt Arbeitstage" asc
+) D1
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 121 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.kontenrahmen_gc_struct_skr_imr.sql

@@ -0,0 +1,121 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.kontenrahmen_gc_struct_skr_imr AS
+
+select T1."KONTO_NR" as "Konto Nr",
+	   T1."KONTO_BEZEICHNUNG" as "Konto Bezeichnung",
+	   T1."KONTO_ART" as "Konto Art_ori",
+	   T1."KOSTENSTELLE" as "Kostenstelle",
+	   T1."STK" as "Stk",
+	   T1."KONTO_1" as "Konto 1",
+	   T1."KONTO_2" as "Konto 2",
+	   T1."KONTO_3" as "Konto 3",
+	   T1."KONTO_4" as "Konto 4",
+	   T1."KONTO_5" as "Konto 5",
+	   T1."EBENE1" as "Ebene1",
+	   T1."EBENE2" as "Ebene2",
+	   T1."EBENE3" as "Ebene3",
+	   T1."EBENE4" as "Ebene4",
+	   T1."EBENE5" as "Ebene5",
+	   T1."EBENE6" as "Ebene6",
+	   T1."EBENE7" as "Ebene7",
+	   T1."EBENE8" as "Ebene8",
+	   T1."EBENE9" as "Ebene9",
+	   T1."EBENE10" as "Ebene10",
+	   T1."EBENE11" as "Ebene11",
+	   T1."EBENE12" as "Ebene12",
+	   T1."EBENE13" as "Ebene13",
+	   T1."EBENE14" as "Ebene14",
+	   T1."EBENE15" as "Ebene15",
+	   T1."EBENE16" as "Ebene16",
+	   T1."EBENE17" as "Ebene17",
+	   T1."EBENE18" as "Ebene18",
+	   T1."EBENE19" as "Ebene19",
+	   T1."EBENE20" as "Ebene20",
+	   T1."EBENE21" as "Ebene21",
+	   T1."EBENE22" as "Ebene22",
+	   T1."EBENE23" as "Ebene23",
+	   T1."EBENE24" as "Ebene24",
+	   T1."EBENE25" as "Ebene25",
+	   T1."EBENE26" as "Ebene26",
+	   T1."EBENE27" as "Ebene27",
+	   T1."EBENE28" as "Ebene28",
+	   T1."EBENE29" as "Ebene29",
+	   T1."EBENE30" as "Ebene30",
+	   T1."EBENE31" as "Ebene31",
+	   T1."EBENE32" as "Ebene32",
+	   T1."EBENE33" as "Ebene33",
+	   T1."EBENE34" as "Ebene34",
+	   T1."EBENE35" as "Ebene35",
+	   T1."EBENE36" as "Ebene36",
+	   T1."EBENE37" as "Ebene37",
+	   T1."EBENE38" as "Ebene38",
+	   T1."EBENE39" as "Ebene39",
+	   T1."EBENE40" as "Ebene40",
+	   T1."EBENE41" as "Ebene41",
+	   T1."EBENE42" as "Ebene42",
+	   T1."EBENE43" as "Ebene43",
+	   T1."EBENE44" as "Ebene44",
+	   T1."EBENE45" as "Ebene45",
+	   T1."EBENE46" as "Ebene46",
+	   T1."EBENE47" as "Ebene47",
+	   T1."EBENE48" as "Ebene48",
+	   T1."EBENE49" as "Ebene49",
+	   T1."EBENE50" as "Ebene50",
+	   T1."EBENE51" as "Ebene51",
+	   T1."EBENE52" as "Ebene52",
+	   T1."EBENE53" as "Ebene53",
+	   T1."EBENE54" as "Ebene54",
+	   T1."EBENE55" as "Ebene55",
+	   T1."EBENE56" as "Ebene56",
+	   T1."EBENE57" as "Ebene57",
+	   T1."EBENE58" as "Ebene58",
+	   T1."EBENE59" as "Ebene59",
+	   T1."EBENE60" as "Ebene60",
+	   T1."EBENE61" as "Ebene61",
+	   T1."EBENE62" as "Ebene62",
+	   T1."EBENE63" as "Ebene63",
+	   T1."EBENE64" as "Ebene64",
+	   T1."EBENE65" as "Ebene65",
+	   T1."EBENE66" as "Ebene66",
+	   T1."EBENE67" as "Ebene67",
+	   T1."EBENE68" as "Ebene68",
+	   T1."EBENE69" as "Ebene69",
+	   T1."EBENE70" as "Ebene70",
+	   T1."EBENE71" as "Ebene71",
+	   T1."EBENE72" as "Ebene72",
+	   T1."EBENE73" as "Ebene73",
+	   T1."EBENE74" as "Ebene74",
+	   T1."EBENE75" as "Ebene75",
+	   T1."EBENE76" as "Ebene76",
+	   T1."EBENE77" as "Ebene77",
+	   T1."EBENE78" as "Ebene78",
+	   T1."EBENE79" as "Ebene79",
+	   T1."EBENE80" as "Ebene80",
+	   T1."EBENE81" as "Ebene81",
+	   T1."EBENE82" as "Ebene82",
+	   T1."EBENE83" as "Ebene83",
+	   T1."EBENE84" as "Ebene84",
+	   T1."EBENE85" as "Ebene85",
+	   T1."EBENE86" as "Ebene86",
+	   T1."EBENE87" as "Ebene87",
+	   T1."EBENE88" as "Ebene88",
+	   T1."EBENE89" as "Ebene89",
+	   T1."EBENE90" as "Ebene90",
+	   (len(T1."KONTO_NR" + 'Z') - 1) as "Anzahl Stellen_Konto_Nr",
+	   T1."KONTO_ART" as "Konto Art",
+	   T1."KONTO_ART" as "GuV_Bilanz",
+	   T1."KONTO_NR" as "Acct Nr",
+	   T1."KONTO_NR" + ' - ' + T1."KONTO_BEZEICHNUNG" as "Konto",
+	   (left(T1."KONTO_NR",1)) as "Susa"
+from "Kontenrahmen.csv" T1
+where (((left(T1."KONTO_NR",1))) <> '9')
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

File diff suppressed because it is too large
+ 117 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.kreditorenbewegungen_imr.sql


+ 83 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.loc_belege_bilanz_imr.sql

@@ -0,0 +1,83 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.loc_belege_bilanz_imr AS
+
+select T1."accounting_date" as "Accounting Date",
+	   T1."document_type" as "Document Type",
+	   T1."document_number" as "Document Number",
+	   T1."position_in_document" as "Position In Document",
+	   T1."customer_number" as "Customer Number",
+	   T1."nominal_account_number" as "Nominal Account Number",
+	   T1."is_balanced" as "Is Balanced",
+	   T1."clearing_number" as "Clearing Number",
+	   T1."document_date" as "Document Date",
+	   T1."posted_value" as "Posted Value",
+	   T1."debit_or_credit" as "Debit Or Credit",
+	   T1."posted_count" as "Posted Count",
+	   T1."branch_number" as "Branch Number",
+	   T1."customer_contra_account" as "Customer Contra Account",
+	   T1."nominal_contra_account" as "Nominal Contra Account",
+	   T1."contra_account_text" as "Contra Account Text",
+	   T1."account_form_page_number" as "Account Form Page Number",
+	   T1."account_form_page_line" as "Account Form Page Line",
+	   T1."serial_number_each_month" as "Serial Number Each Month",
+	   T1."employee_number" as "Employee Number",
+	   T1."invoice_date" as "Invoice Date",
+	   T1."invoice_number" as "Invoice Number",
+	   T1."dunning_level" as "Dunning Level",
+	   T1."last_dunning_date" as "Last Dunning Date",
+	   T1."journal_page" as "Journal Page",
+	   T1."journal_line" as "Journal Line",
+	   T1."cash_discount" as "Cash Discount",
+	   T1."term_of_payment" as "Term Of Payment",
+	   '-' as "Posting Text",
+	   T1."vehicle_reference" as "Vehicle Reference",
+	   T1."vat_id_number" as "Vat Id Number",
+	   T1."account_statement_number" as "Account Statement Number",
+	   T1."account_statement_page" as "Account Statement Page",
+	   T1."vat_key" as "Vat Key",
+	   T1."days_for_cash_discount" as "Days For Cash Discount",
+	   T1."day_of_actual_accounting" as "Day Of Actual Accounting",
+	   T1."skr51_branch" as "Skr51 Branch",
+	   T1."skr51_make" as "Skr51 Make",
+	   T1."skr51_cost_center" as "Skr51 Cost Center",
+	   T1."skr51_sales_channel" as "Skr51 Sales Channel",
+	   T1."skr51_cost_unit" as "Skr51 Cost Unit",
+	   T1."previously_used_account_no" as "Previously Used Account No",
+	   (left(T1."free_form_accounting_text",100)) as "Free Form Accounting Text",
+	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T1."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T1."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T1."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T1."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as "Free Form Document Text",
+	   T2."is_profit_loss_account" as "Nom_Account_Is Profit Loss Account",
+	   T1."subsidiary_to_company_ref" as "Rechtseinheit",
+	   ('0' + (((T1."skr51_branch")))) as "Betrieb",
+	   T1."accounting_date" as "Bookkeep Date",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + T3."skr51_make_description" as "Marke",
+	   '' as "Text",
+	   '1' as "Mandant",
+	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END as "Betrag",
+	   (rtrim((CASE WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 1) THEN ('000' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 2) THEN ('00' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 3) THEN ('0' + (rtrim((((T1."nominal_account_number")))))) ELSE ((rtrim((((T1."nominal_account_number")))))) END))) + ' - ' + T2."account_description" as "Konto_mit_Bezeichnung",
+	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as "Menge",
+	   (len((((T1."skr51_cost_center"))) + 'Z') - 1) as "Stellen Cost Center",
+	   (rtrim((((T1."skr51_cost_center"))))) + ' - ' + T3."skr51_cost_center_name" as "KST",
+	   (len((((T1."skr51_sales_channel"))) + 'Z') - 1) as "Stellen Sales Channel",
+	   (rtrim((((T1."skr51_sales_channel"))))) + ' - ' + T3."skr51_sales_channel_name" as "Absatzkanal",
+	   (len((((T1."skr51_cost_unit"))) + 'Z') - 1) as "Stellen Cost Unit",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name") as "Kostenträger_mit_Null",
+	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN (((rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name"))) ELSE ((rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name")) END as "Kostenträger",
+	   CASE WHEN (T2."is_profit_loss_account" = 'J') THEN ('2') ELSE ('1') END as "GuV_Bilanz",
+	   (substring((CASE WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 1) THEN ('000' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 2) THEN ('00' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 3) THEN ('0' + (rtrim((((T1."nominal_account_number")))))) ELSE ((rtrim((((T1."nominal_account_number")))))) END), 1, 1)) as "Susa",
+	   CASE WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 1) THEN ('000' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 2) THEN ('00' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 3) THEN ('0' + (rtrim((((T1."nominal_account_number")))))) ELSE ((rtrim((((T1."nominal_account_number")))))) END as "Acct Nr",
+	   (len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1) as "Stellen_Konto_Nr"
+from "dbo"."nominal_accounts" T2,
+	("dbo"."journal_accountings" T1 left outer join "dbo"."accounts_characteristics" T3 on (((((T3."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref") and (T3."skr51_branch" = T1."skr51_branch")) and (T3."skr51_make" = T1."skr51_make")) and (T3."skr51_cost_center" = T1."skr51_cost_center")) and (T3."skr51_sales_channel" = T1."skr51_sales_channel")) and (T3."skr51_cost_unit" = T1."skr51_cost_unit"))
+where ((T2."nominal_account_number" = T1."nominal_account_number") and (T2."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref"))
+and ((T2."is_profit_loss_account" = 'N') and (not ((rtrim((CASE WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 1) THEN ('000' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 2) THEN ('00' + (rtrim((((T1."nominal_account_number")))))) WHEN (((len((rtrim((((T1."nominal_account_number"))))) + 'Z') - 1)) = 3) THEN ('0' + (rtrim((((T1."nominal_account_number")))))) ELSE ((rtrim((((T1."nominal_account_number")))))) END))) + ' - ' + T2."account_description") LIKE '9%'))
+-- order by "Nominal Account Number" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 82 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.loc_belege_imr.sql

@@ -0,0 +1,82 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.loc_belege_imr AS
+
+select T1."accounting_date" as "Accounting Date",
+	   T1."document_type" as "Document Type",
+	   (T1."document_number") as "Document Number",
+	   T1."position_in_document" as "Position In Document",
+	   T1."customer_number" as "Customer Number",
+	   T1."nominal_account_number" as "Nominal Account Number",
+	   T1."is_balanced" as "Is Balanced",
+	   T1."clearing_number" as "Clearing Number",
+	   T1."document_date" as "Document Date",
+	   T1."posted_value" as "Posted Value",
+	   T1."debit_or_credit" as "Debit Or Credit",
+	   T1."posted_count" as "Posted Count",
+	   T1."branch_number" as "Branch Number",
+	   T1."customer_contra_account" as "Customer Contra Account",
+	   T1."nominal_contra_account" as "Nominal Contra Account",
+	   T1."contra_account_text" as "Contra Account Text",
+	   T1."account_form_page_number" as "Account Form Page Number",
+	   T1."account_form_page_line" as "Account Form Page Line",
+	   T1."serial_number_each_month" as "Serial Number Each Month",
+	   T1."employee_number" as "Employee Number",
+	   T1."invoice_date" as "Invoice Date",
+	   T1."invoice_number" as "Invoice Number",
+	   T1."dunning_level" as "Dunning Level",
+	   T1."last_dunning_date" as "Last Dunning Date",
+	   T1."journal_page" as "Journal Page",
+	   T1."journal_line" as "Journal Line",
+	   T1."cash_discount" as "Cash Discount",
+	   T1."term_of_payment" as "Term Of Payment",
+	   CASE WHEN (T1."posting_text" IS NULL) THEN (' - ') ELSE (T1."posting_text") END as "Posting Text",
+	   CASE WHEN (T1."vehicle_reference" IS NULL) THEN (' - ') ELSE (T1."vehicle_reference") END as "Vehicle Reference",
+	   T1."vat_id_number" as "Vat Id Number",
+	   T1."account_statement_number" as "Account Statement Number",
+	   T1."account_statement_page" as "Account Statement Page",
+	   T1."vat_key" as "Vat Key",
+	   T1."days_for_cash_discount" as "Days For Cash Discount",
+	   T1."day_of_actual_accounting" as "Day Of Actual Accounting",
+	   T1."skr51_branch" as "Skr51 Branch",
+	   T1."skr51_make" as "Skr51 Make",
+	   T1."skr51_cost_center" as "Skr51 Cost Center",
+	   T1."skr51_sales_channel" as "Skr51 Sales Channel",
+	   T1."skr51_cost_unit" as "Skr51 Cost Unit",
+	   T1."previously_used_account_no" as "Previously Used Account No",
+	   T1."free_form_accounting_text" as "Free Form Accounting Text",
+	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T1."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T1."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T1."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T1."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as "Free Form Document Text",
+	   T2."is_profit_loss_account" as "Nom_Account_Is Profit Loss Account",
+	   T1."subsidiary_to_company_ref" as "Rechtseinheit",
+	   '0' + (((T1."skr51_branch"))) as "Betrieb",
+	   CASE WHEN (((CASE WHEN (T1."posting_text" IS NULL) THEN (' - ') ELSE (T1."posting_text") END) = 'Saldenübernahme CDK') or (T1."accounting_date" = convert(date, '2019-01-01'))) THEN (convert(date, '2019-12-01')) ELSE (T1."accounting_date") END as "Bookkeep Date",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + T3."skr51_make_description" as "Marke",
+	   CASE WHEN ((-1 * datediff(day, (getdate()), (convert(datetime, (CASE WHEN (((CASE WHEN (T1."posting_text" IS NULL) THEN (' - ') ELSE (T1."posting_text") END) = 'Saldenübernahme CDK') or (T1."accounting_date" = convert(date, '2019-01-01'))) THEN (convert(date, '2019-12-01')) ELSE (T1."accounting_date") END))))) <= 90) THEN ((convert(varchar(50), ((T1."document_number")))) + ' - ' + (CASE WHEN (T1."posting_text" IS NULL) THEN (' - ') ELSE (T1."posting_text") END) + '/' + (CASE WHEN (T1."vehicle_reference" IS NULL) THEN (' - ') ELSE (T1."vehicle_reference") END) + ' - ' + (left((((T1."employee_number")))))) ELSE ('Buchungen älter 90 Tage') END as "Text",
+	   '1' as "Mandant",
+	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END as "Betrag",
+	   (left((((T1."nominal_account_number"))),4)) + ' - ' + T2."account_description" as "Konto_mit_Bezeichnung",
+	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as "Menge",
+	   (len((((T1."skr51_cost_center"))) + 'Z') - 1) as "Stellen Cost Center",
+	   (rtrim((((T1."skr51_cost_center"))))) + ' - ' + T3."skr51_cost_center_name" as "KST",
+	   (len((((T1."skr51_sales_channel"))) + 'Z') - 1) as "Stellen Sales Channel",
+	   (rtrim((((T1."skr51_sales_channel"))))) + ' - ' + T3."skr51_sales_channel_name" as "Absatzkanal",
+	   (len((((T1."skr51_cost_unit"))) + 'Z') - 1) as "Stellen Cost Unit",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name") as "Kostenträger_mit_Null",
+	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN (((rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name"))) ELSE ((rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name")) END as "Kostenträger",
+	   CASE WHEN (T2."is_profit_loss_account" = 'J') THEN ('2') ELSE ('1') END as "GuV_Bilanz",
+	   (left((((T1."nominal_account_number"))),1)) as "Susa",
+	   CASE WHEN (T1."skr51_cost_center" <> 0) THEN ((rtrim((((T1."nominal_account_number"))))) + '_' + (rtrim((((T1."skr51_cost_center")))))) ELSE ((((T1."nominal_account_number")))) END as "Acct Nr"
+from "dbo"."nominal_accounts" T2,
+	("dbo"."journal_accountings" T1 left outer join "dbo"."accounts_characteristics" T3 on (((((T3."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref") and (T3."skr51_branch" = T1."skr51_branch")) and (T3."skr51_make" = T1."skr51_make")) and (T3."skr51_cost_center" = T1."skr51_cost_center")) and (T3."skr51_sales_channel" = T1."skr51_sales_channel")) and (T3."skr51_cost_unit" = T1."skr51_cost_unit"))
+where ((T2."nominal_account_number" = T1."nominal_account_number") and (T2."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref"))
+and ((T2."is_profit_loss_account" = 'J') and (not (CASE WHEN (T1."posting_text" IS NULL) THEN (' - ') ELSE (T1."posting_text") END) IN ('G&V-Abschlussbuchung')))
+-- order by "Nominal Account Number" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 419 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.loc_belege_nw_gw_vk_imr.sql

@@ -0,0 +1,419 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.loc_belege_nw_gw_vk_imr AS
+
+select "Accounting Date" as "Accounting Date",
+	   "Document Type" as "Document Type",
+	   "Document Number" as "Document Number",
+	   "Position In Document" as "Position In Document",
+	   (day((convert(datetime, (CASE WHEN ((MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet")) IS NULL) THEN ("Invoice Date_journal_accountings") ELSE ((MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet"))) END))) - c142)) as "Customer Number",
+	   "Nominal Account Number" as "Nominal Account Number",
+	   "Is Balanced" as "Is Balanced",
+	   "Clearing Number" as "Clearing Number",
+	   "Document Date" as "Document Date",
+	   "Posted Value" as "Posted Value",
+	   "Debit Or Credit" as "Debit Or Credit",
+	   "Posted Count" as "Posted Count",
+	   "Branch Number" as "Branch Number",
+	   "Customer Contra Account" as "Customer Contra Account",
+	   "Nominal Contra Account" as "Nominal Contra Account",
+	   "Contra Account Text" as "Contra Account Text",
+	   "Account Form Page Number" as "Account Form Page Number",
+	   "Account Form Page Line" as "Account Form Page Line",
+	   "Serial Number Each Month" as "Serial Number Each Month",
+	   "Employee Number" as "Employee Number",
+	   "Invoice Date_journal_accountings" as "Invoice Date_journal_accountings",
+	   "Invoice Number" as "Invoice Number",
+	   "Dunning Level" as "Dunning Level",
+	   "Last Dunning Date" as "Last Dunning Date",
+	   "Journal Page" as "Journal Page",
+	   "Journal Line" as "Journal Line",
+	   "Cash Discount" as "Cash Discount",
+	   "Term Of Payment" as "Term Of Payment",
+	   "Posting Text" as "Posting Text",
+	   "Vehicle Reference" as "Vehicle Reference",
+	   "Vat Id Number" as "Vat Id Number",
+	   "Account Statement Number" as "Account Statement Number",
+	   "Account Statement Page" as "Account Statement Page",
+	   "Vat Key" as "Vat Key",
+	   "Days For Cash Discount" as "Days For Cash Discount",
+	   "Day Of Actual Accounting" as "Day Of Actual Accounting",
+	   "Skr51 Branch" as "Skr51 Branch",
+	   "Skr51 Make" as "Skr51 Make",
+	   "Skr51 Cost Center" as "Skr51 Cost Center",
+	   "Skr51 Sales Channel" as "Skr51 Sales Channel",
+	   "Skr51 Cost Unit" as "Skr51 Cost Unit",
+	   "Previously Used Account No" as "Previously Used Account No",
+	   "Free Form Accounting Text" as "Free Form Accounting Text",
+	   "Free Form Document Text" as "Free Form Document Text",
+	   "Nom_Account_Is Profit Loss Account" as "Nom_Account_Is Profit Loss Account",
+	   "Rechtseinheit" as "Rechtseinheit",
+	   "Betrieb" as "Betrieb",
+	   "Bookkeep Date" as "Bookkeep Date",
+	   "Marke" as "Marke",
+	   "Text" as "Text",
+	   "Mandant" as "Mandant",
+	   "Betrag" as "Betrag",
+	   "Konto_mit_Bezeichnung" as "Konto_mit_Bezeichnung",
+	   "Menge_2" as "Menge_2",
+	   "Stellen Cost Center" as "Stellen Cost Center",
+	   "KST" as "KST",
+	   "Stellen Sales Channel" as "Stellen Sales Channel",
+	   "Absatzkanal" as "Absatzkanal",
+	   "Stellen Cost Unit" as "Stellen Cost Unit",
+	   "Kostenträger_mit_Null" as "Kostenträger_mit_Null",
+	   "Kostenträger" as "Kostenträger",
+	   "GuV_Bilanz" as "GuV_Bilanz",
+	   "Susa" as "Susa",
+	   "Acct Nr" as "Acct Nr",
+	   "Document Type In Journal" as "Document Type In Journal",
+	   "Document Type Description" as "Document Type Description",
+	   "FZG_ja_nein" as "FZG_ja_nein",
+	   SUM("FZG_ja_nein") OVER (partition by "Vehicle Reference_berechnet") as "Summe_FZG_ja_nein",
+	   CASE WHEN (SUM("FZG_ja_nein") OVER (partition by "Vehicle Reference_berechnet") > 0) THEN ('FZG-Geschäft') ELSE ('Buchungen ohne FZG-Geschäft') END as "FZG_Geschäft ja/nein",
+	   "Invoice Type_Invoices" as "Invoice Type_Invoices",
+	   "Invoice Number_Invoices" as "Invoice Number_Invoices",
+	   "Invoice Date_Invoices" as "Invoice Date_Invoices",
+	   "Is Canceled_Invoices" as "Is Canceled_Invoices",
+	   "Vehicle Number_Invoices" as "Vehicle Number_Invoices",
+	   MAX("Vehicle Number_Invoices") OVER (partition by "Vehicle Reference_berechnet") as "Vehicle_Number_Max",
+	   "Invoice_Date_1" as "Invoice_Date_1",
+	   MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet") as "Invoice Date_FZG",
+	   CASE WHEN (MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet") IS NULL) THEN ("Invoice Date_journal_accountings") ELSE MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet") END as "Invoice Date",
+	   SUM("Betrag") OVER (partition by "Vehicle Reference_berechnet") as "Summe Betrag",
+	   "Internal Number_Vehicles" as "Internal Number_Vehicles",
+	   "Vin_Vehicles" as "Vin_Vehicles",
+	   "Dealer Vehicle Type" as "Dealer Vehicle Type",
+	   "Fahrzeugtyp" as "Fahrzeugtyp",
+	   "Fahrzeugart" as "Fahrzeugart",
+	   "Make Number_Vehicles" as "Make Number_Vehicles",
+	   "Description_Make" as "Description_Make",
+	   "Fabrikat" as "Fabrikat",
+	   "Model Code_Models" as "Model Code_Models",
+	   "Model_Detail" as "Model_Detail",
+	   "Model" as "Model",
+	   "Owner Number_Vehicles" as "Owner Number_Vehicles",
+	   "Holder Number_Vehicles" as "Holder Number_Vehicles",
+	   "First Name_Owner_Customer" as "First Name_Owner_Customer",
+	   "Family Name_Owner_Customer" as "Family Name_Owner_Customer",
+	   "First Name_Holder_Customer" as "First Name_Holder_Customer",
+	   "Family Name_Holder_Customer" as "Family Name_Holder_Customer",
+	   "Kunde" as "Kunde",
+	   "Sales_Channel_FZG" as "Sales_Channel_FZG",
+	   MAX("Sales_Channel_FZG") OVER (partition by "Vehicle Reference_berechnet") as "Kundenart_Zahl",
+	   CASE WHEN (MAX("Sales_Channel_FZG") OVER (partition by "Vehicle Reference_berechnet") BETWEEN 10 AND 19) THEN ('Privater Endkunde') WHEN (MAX("Sales_Channel_FZG") OVER (partition by "Vehicle Reference_berechnet") BETWEEN 20 AND 29) THEN ('Gewerbekunde') WHEN (MAX("Sales_Channel_FZG") OVER (partition by "Vehicle Reference_berechnet") BETWEEN 30 AND 39) THEN ('Großkunde') WHEN (MAX("Sales_Channel_FZG") OVER (partition by "Vehicle Reference_berechnet") BETWEEN 40 AND 49) THEN ('Sonderabnehmer') WHEN (MAX("Sales_Channel_FZG") OVER (partition by "Vehicle Reference_berechnet") BETWEEN 50 AND 59) THEN ('Wiederverkäufer') ELSE null END as "Kundenart",
+	   "Hauptbetrieb" as "Hauptbetrieb",
+	   "Standort_alt" as "Standort_alt",
+	   "Salesman Number_Vehicles" as "Salesman Number_Vehicles",
+	   "Employee Number_Employees_Salesman" as "Employee Number_Employees_Salesman",
+	   "Name_Employees_Salesman" as "Name_Employees_Salesman",
+	   "Verkäufer" as "Verkäufer",
+	   "Standort_FZG_Verkauf" as "Standort_FZG_Verkauf",
+	   MAX("Standort_FZG_Verkauf") OVER (partition by "Vehicle Reference_berechnet") as "Standort_Zahl",
+	   "Standort" as "Standort",
+	   "FZG" as "FZG",
+	   "Konto" as "Konto",
+	   "Body Paint Code" as "Body Paint Code",
+	   "Body Paint Description" as "Body Paint Description",
+	   "Farbe" as "Farbe",
+	   "Erlös FZG" as "Erlös FZG",
+	   "Nachlass" as "Nachlass",
+	   "VAK FZG" as "VAK FZG",
+	   "Erlös Zulass." as "Erlös Zulass.",
+	   "VAK Zulass." as "VAK Zulass.",
+	   "Erlös Gar." as "Erlös Gar.",
+	   "VAK Gar." as "VAK Gar.",
+	   "Erlös Nachr./Aufb." as "Erlös Nachr./Aufb.",
+	   "VAK Nachr./Aufb." as "VAK Nachr./Aufb.",
+	   "VAK Fertigm." as "VAK Fertigm.",
+	   "Erlös Überf." as "Erlös Überf.",
+	   "VAK Überf." as "VAK Überf.",
+	   "Erlös Sonst._8900" as "Erlös Sonst._8900",
+	   "Erlös Sonst." as "Erlös Sonst.",
+	   "VAK Sonst." as "VAK Sonst.",
+	   "VAK intern" as "VAK intern",
+	   "Erlös Prov." as "Erlös Prov.",
+	   "Boni/VK-Hilfen" as "Boni/VK-Hilfen",
+	   "Erlös ges." as "Erlös ges.",
+	   "VAK ges." as "VAK ges.",
+	   "Menge_1" as "Menge_1",
+	   COUNT("Accounting Date") OVER (partition by "Vehicle Reference_berechnet") as "Menge_2",
+	   ("Menge_1" / COUNT("Accounting Date") OVER (partition by "Vehicle Reference_berechnet")) as "Menge",
+	   "Vehicle Reference_berechnet" as "Vehicle Reference_berechnet",
+	   "var. Kosten" as "var. Kosten",
+	   "Dealer Vehicle Type_Vehicles" as "Dealer Vehicle Type_Vehicles",
+	   "Dealer Vehicle Number_Vehicles" as "Dealer Vehicle Number_Vehicles"
+from 
+(select "Accounting Date",
+	   "Document Type",
+	   "Document Number",
+	   "Position In Document",
+	   "Nominal Account Number",
+	   "Is Balanced",
+	   "Clearing Number",
+	   "Document Date",
+	   "Posted Value",
+	   "Debit Or Credit",
+	   "Posted Count",
+	   "Branch Number",
+	   "Customer Contra Account",
+	   "Nominal Contra Account",
+	   "Contra Account Text",
+	   "Account Form Page Number",
+	   "Account Form Page Line",
+	   "Serial Number Each Month",
+	   "Employee Number",
+	   "Invoice Date_journal_accountings",
+	   "Invoice Number",
+	   "Dunning Level",
+	   "Last Dunning Date",
+	   "Journal Page",
+	   "Journal Line",
+	   "Cash Discount",
+	   "Term Of Payment",
+	   "Posting Text",
+	   "Vehicle Reference",
+	   "Vat Id Number",
+	   "Account Statement Number",
+	   "Account Statement Page",
+	   "Vat Key",
+	   "Days For Cash Discount",
+	   "Day Of Actual Accounting",
+	   "Skr51 Branch",
+	   "Skr51 Make",
+	   "Skr51 Cost Center",
+	   "Skr51 Sales Channel",
+	   "Skr51 Cost Unit",
+	   "Previously Used Account No",
+	   "Free Form Accounting Text",
+	   "Free Form Document Text",
+	   "Nom_Account_Is Profit Loss Account",
+	   "Rechtseinheit",
+	   "Betrieb",
+	   "Accounting Date" as "Bookkeep Date",
+	   "Marke",
+	   "Text",
+	   '1' as "Mandant",
+	   "Betrag",
+	   "Konto_mit_Bezeichnung",
+	   "Menge_2",
+	   "Stellen Cost Center",
+	   "KST",
+	   "Stellen Sales Channel",
+	   "Absatzkanal",
+	   "Stellen Cost Unit",
+	   "Kostenträger_mit_Null",
+	   "Kostenträger",
+	   "GuV_Bilanz",
+	   "Susa",
+	   "Nominal Account Number" as "Acct Nr",
+	   "Document Type In Journal",
+	   "Document Type Description",
+	   "FZG_ja_nein",
+	   "Invoice Type_Invoices",
+	   "Invoice Number_Invoices",
+	   "Invoice Date_Invoices",
+	   "Is Canceled_Invoices",
+	   "Vehicle Number_Invoices",
+	   "Invoice_Date_1",
+	   "Internal Number_Vehicles",
+	   "Vin_Vehicles",
+	   "Dealer Vehicle Type",
+	   "Fahrzeugtyp",
+	   "Fahrzeugart",
+	   "Make Number_Vehicles",
+	   "Description_Make",
+	   "Fabrikat",
+	   "Model Code_Models",
+	   "Model_Detail",
+	   "Model",
+	   "Owner Number_Vehicles",
+	   "Holder Number_Vehicles",
+	   "First Name_Owner_Customer",
+	   "Family Name_Owner_Customer",
+	   "First Name_Holder_Customer",
+	   "Family Name_Holder_Customer",
+	   "Kunde",
+	   "Sales_Channel_FZG",
+	   "Rechtseinheit" as "Hauptbetrieb",
+	   "Betrieb" as "Standort_alt",
+	   "Salesman Number_Vehicles",
+	   "Employee Number_Employees_Salesman",
+	   "Name_Employees_Salesman",
+	   "Verkäufer",
+	   "Standort_FZG_Verkauf",
+	   "Standort",
+	   "FZG",
+	   "Konto_mit_Bezeichnung" as "Konto",
+	   "Body Paint Code",
+	   "Body Paint Description",
+	   "Body Paint Description" as "Farbe",
+	   "Erlös FZG",
+	   "Nachlass",
+	   "VAK FZG",
+	   "Erlös Zulass.",
+	   "VAK Zulass.",
+	   "Erlös Gar.",
+	   "VAK Gar.",
+	   "Erlös Nachr./Aufb.",
+	   "VAK Nachr./Aufb.",
+	   "VAK Fertigm.",
+	   "Erlös Überf.",
+	   "VAK Überf.",
+	   "Erlös Sonst._8900",
+	   "Erlös Sonst.",
+	   "VAK Sonst.",
+	   "VAK intern",
+	   "Erlös Prov.",
+	   "Boni/VK-Hilfen",
+	   "Erlös ges.",
+	   "VAK ges.",
+	   1 as "Menge_1",
+	   "Vehicle Reference_berechnet",
+	   "var. Kosten",
+	   "Dealer Vehicle Type_Vehicles",
+	   "Dealer Vehicle Number_Vehicles",
+	   c152 as c142,
+	   MAX("Vehicle Number_Invoices") OVER (partition by "Vehicle Reference_berechnet") as c143,
+	   (CASE WHEN ((MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet")) IS NULL) THEN (("Invoice Date_journal_accountings")) ELSE ((MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet"))) END) as c144,
+	   (CASE WHEN ((SUM("FZG_ja_nein") OVER (partition by "Vehicle Reference_berechnet")) > 0) THEN ('FZG-Geschäft') ELSE ('Buchungen ohne FZG-Geschäft') END) as c145
+from 
+(select (left(T1."vehicle_reference",7)) + '_' + (right(T1."vehicle_reference",17)) as "Vehicle Reference_berechnet",
+	   (((nconvert((left(T1."invoice_date",4)) + (substring(T1."invoice_date", 6, 2)) + (substring(T1."invoice_date", 9, 2)))))) as "Invoice Date_journal_accountings",
+	   T2."in_buy_invoice_no_date" as c152,
+	   T8."dealer_vehicle_number" as "Dealer Vehicle Number_Vehicles",
+	   T8."dealer_vehicle_type" as "Dealer Vehicle Type_Vehicles",
+	   CASE WHEN (T1."nominal_account_number" IN (4300,4560,4580,4530,4540,4590,4591,4690,4621,4622,4623,4500,4501,4502,4503,4504,5501)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "var. Kosten",
+	   (CASE WHEN (T1."nominal_account_number" IN (7000,7010,7100,7101,7110,7111,7120,7510)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + ((CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END)) + (CASE WHEN (T1."nominal_account_number" IN (5001,5005,5006,5007,5008,5003,5004)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7800,7850)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) as "VAK ges.",
+	   (CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8111,8112,8510,8928,8934)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + ((CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END)) + (CASE WHEN (T1."nominal_account_number" IN (8800,8801,8870,8820,8830)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8001,8011,5002)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) as "Erlös ges.",
+	   CASE WHEN (T1."nominal_account_number" IN (7800,7850)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "Boni/VK-Hilfen",
+	   CASE WHEN (T1."nominal_account_number" IN (8800,8801,8870,8820,8830)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Prov.",
+	   CASE WHEN (T1."nominal_account_number" IN (5001,5005,5006,5007,5008,5003,5004)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK intern",
+	   (CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) as "VAK Sonst.",
+	   (CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) as "Erlös Sonst.",
+	   CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Sonst._8900",
+	   CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Überf.",
+	   CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Überf.",
+	   CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Fertigm.",
+	   CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Nachr./Aufb.",
+	   CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Nachr./Aufb.",
+	   CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Gar.",
+	   CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Gar.",
+	   CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Zulass.",
+	   CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Zulass.",
+	   CASE WHEN (T1."nominal_account_number" IN (7000,7010,7100,7101,7110,7111,7120,7510)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK FZG",
+	   CASE WHEN (T1."nominal_account_number" IN (8001,8011,5002)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Nachlass",
+	   CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8111,8112,8510,8928,8934)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös FZG",
+	   T8."body_paint_description" as "Body Paint Description",
+	   T8."body_paint_code" as "Body Paint Code",
+	   ((left((((T1."nominal_account_number"))),4)) + ' - ' + T4."account_description") as "Konto_mit_Bezeichnung",
+	   (left(((left(T1."vehicle_reference",7)) + '_' + (right(T1."vehicle_reference",17))),7)) + ' / ' + ((left((((T8."internal_number"))),5))) + ' - ' + T10."description" + ' - ' + (((left((((T8."holder_number"))),7)) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ('') ELSE (T3."first_name") END) + ' ' + T3."family_name")) as "FZG",
+	   CASE WHEN (T2."out_subsidiary" IS NULL) THEN ((('0' + (((T1."skr51_branch")))))) ELSE ('0' + (((T2."out_subsidiary")))) END as "Standort",
+	   T2."out_subsidiary" as "Standort_FZG_Verkauf",
+	   (left((((T8."salesman_number"))),4)) + ' - ' + T12."name" as "Verkäufer",
+	   T12."name" as "Name_Employees_Salesman",
+	   T12."employee_number" as "Employee Number_Employees_Salesman",
+	   T8."salesman_number" as "Salesman Number_Vehicles",
+	   ('0' + (((T1."skr51_branch")))) as "Betrieb",
+	   T1."subsidiary_to_company_ref" as "Rechtseinheit",
+	   CASE WHEN (((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) and (T7."is_canceled" <> '1')) THEN (T1."skr51_sales_channel") ELSE null END as "Sales_Channel_FZG",
+	   ((left((((T8."holder_number"))),7)) + ' - ' + (CASE WHEN (T3."first_name" IS NULL) THEN ('') ELSE (T3."first_name") END) + ' ' + T3."family_name") as "Kunde",
+	   T3."family_name" as "Family Name_Holder_Customer",
+	   CASE WHEN (T3."first_name" IS NULL) THEN ('') ELSE (T3."first_name") END as "First Name_Holder_Customer",
+	   T11."family_name" as "Family Name_Owner_Customer",
+	   T11."first_name" as "First Name_Owner_Customer",
+	   T8."holder_number" as "Holder Number_Vehicles",
+	   T8."owner_number" as "Owner Number_Vehicles",
+	   (left((ucase(T10."description")),3)) as "Model",
+	   T10."description" as "Model_Detail",
+	   T10."model_code" as "Model Code_Models",
+	   CASE WHEN (((rtrim((((T1."skr51_make"))))) + ' - ' + T5."skr51_make_description") = '3 - Husqvarna') THEN ('Husqvarna') ELSE (T9."description") END as "Fabrikat",
+	   T9."description" as "Description_Make",
+	   T8."make_number" as "Make Number_Vehicles",
+	   CASE WHEN ((CASE WHEN (((left(T1."vehicle_reference",1))) IN ('N')) THEN ('NW') WHEN (((left(T1."vehicle_reference",1))) IN ('V')) THEN ('VFW') WHEN (((left(T1."vehicle_reference",1))) IN ('G','D')) THEN ('GW') WHEN (((left(T1."vehicle_reference",1))) IN ('T')) THEN ('TZ') ELSE null END) IN ('VFW','TZ','NW')) THEN ('Neuwagen') ELSE ('Gebrauchtwagen') END as "Fahrzeugart",
+	   CASE WHEN (((left(T1."vehicle_reference",1))) IN ('N')) THEN ('NW') WHEN (((left(T1."vehicle_reference",1))) IN ('V')) THEN ('VFW') WHEN (((left(T1."vehicle_reference",1))) IN ('G','D')) THEN ('GW') WHEN (((left(T1."vehicle_reference",1))) IN ('T')) THEN ('TZ') ELSE null END as "Fahrzeugtyp",
+	   (left(T1."vehicle_reference",1)) as "Dealer Vehicle Type",
+	   T8."vin" as "Vin_Vehicles",
+	   T8."internal_number" as "Internal Number_Vehicles",
+	   CASE WHEN ((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) THEN (((((nconvert((left(T1."invoice_date",4)) + (substring(T1."invoice_date", 6, 2)) + (substring(T1."invoice_date", 9, 2)))))))) ELSE null END as "Invoice_Date_1",
+	   T7."vehicle_number" as "Vehicle Number_Invoices",
+	   T7."is_canceled" as "Is Canceled_Invoices",
+	   T7."invoice_date" as "Invoice Date_Invoices",
+	   T7."invoice_number" as "Invoice Number_Invoices",
+	   T7."invoice_type" as "Invoice Type_Invoices",
+	   CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END as "FZG_ja_nein",
+	   T6."document_type_description" as "Document Type Description",
+	   T6."document_type_in_journal" as "Document Type In Journal",
+	   T1."nominal_account_number" as "Nominal Account Number",
+	   (left((((T1."nominal_account_number"))),1)) as "Susa",
+	   CASE WHEN (T4."is_profit_loss_account" = 'J') THEN ('2') ELSE ('1') END as "GuV_Bilanz",
+	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN (((rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T5."skr51_cost_unit_name"))) ELSE ((rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T5."skr51_cost_unit_name")) END as "Kostenträger",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T5."skr51_cost_unit_name") as "Kostenträger_mit_Null",
+	   (len((((T1."skr51_cost_unit"))) + 'Z') - 1) as "Stellen Cost Unit",
+	   (rtrim((((T1."skr51_sales_channel"))))) + ' - ' + T5."skr51_sales_channel_name" as "Absatzkanal",
+	   (len((((T1."skr51_sales_channel"))) + 'Z') - 1) as "Stellen Sales Channel",
+	   (rtrim((((T1."skr51_cost_center"))))) + ' - ' + T5."skr51_cost_center_name" as "KST",
+	   (len((((T1."skr51_cost_center"))) + 'Z') - 1) as "Stellen Cost Center",
+	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as "Menge_2",
+	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END as "Betrag",
+	   CASE WHEN ((-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date")))) <= 360) THEN (T1."invoice_number" + ' - ' + T1."posting_text" + '/' + T1."vehicle_reference" + ' - ' + (rtrim((((T1."employee_number")))))) ELSE ('Buchungen älter 360 Tage') END as "Text",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + T5."skr51_make_description" as "Marke",
+	   T1."accounting_date" as "Accounting Date",
+	   T4."is_profit_loss_account" as "Nom_Account_Is Profit Loss Account",
+	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T1."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T1."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T1."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T1."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as "Free Form Document Text",
+	   T3."zip_code" as "Free Form Accounting Text",
+	   T1."previously_used_account_no" as "Previously Used Account No",
+	   T1."skr51_cost_unit" as "Skr51 Cost Unit",
+	   T1."skr51_sales_channel" as "Skr51 Sales Channel",
+	   T1."skr51_cost_center" as "Skr51 Cost Center",
+	   T1."skr51_make" as "Skr51 Make",
+	   T1."skr51_branch" as "Skr51 Branch",
+	   T1."day_of_actual_accounting" as "Day Of Actual Accounting",
+	   T1."days_for_cash_discount" as "Days For Cash Discount",
+	   T1."vat_key" as "Vat Key",
+	   T1."account_statement_page" as "Account Statement Page",
+	   T1."account_statement_number" as "Account Statement Number",
+	   T1."vat_id_number" as "Vat Id Number",
+	   T1."vehicle_reference" as "Vehicle Reference",
+	   T1."posting_text" as "Posting Text",
+	   T1."term_of_payment" as "Term Of Payment",
+	   T1."cash_discount" as "Cash Discount",
+	   T1."journal_line" as "Journal Line",
+	   T1."journal_page" as "Journal Page",
+	   T1."last_dunning_date" as "Last Dunning Date",
+	   T1."dunning_level" as "Dunning Level",
+	   T1."invoice_number" as "Invoice Number",
+	   T1."employee_number" as "Employee Number",
+	   T1."serial_number_each_month" as "Serial Number Each Month",
+	   T1."account_form_page_line" as "Account Form Page Line",
+	   T1."account_form_page_number" as "Account Form Page Number",
+	   T1."contra_account_text" as "Contra Account Text",
+	   T1."nominal_contra_account" as "Nominal Contra Account",
+	   T1."customer_contra_account" as "Customer Contra Account",
+	   T1."branch_number" as "Branch Number",
+	   T1."posted_count" as "Posted Count",
+	   T1."debit_or_credit" as "Debit Or Credit",
+	   T1."posted_value" as "Posted Value",
+	   T1."document_date" as "Document Date",
+	   T1."clearing_number" as "Clearing Number",
+	   T1."is_balanced" as "Is Balanced",
+	   T1."position_in_document" as "Position In Document",
+	   T1."document_number" as "Document Number",
+	   T1."document_type" as "Document Type"
+from "nominal_accounts" T4,
+	(((((((((("journal_accountings" T1 left outer join "vehicles" T8 on (right(T1."vehicle_reference",17)) = T8."vin") left outer join "LOCOSOFT"."dbo"."dealer_vehicles" T2 on (T8."dealer_vehicle_type" = T2."dealer_vehicle_type") and (T8."dealer_vehicle_number" = T2."dealer_vehicle_number")) left outer join "customers_suppliers" T3 on T3."customer_number" = T8."holder_number") left outer join "accounts_characteristics" T5 on (((((T5."skr51_make" = T1."skr51_make") and (T5."skr51_cost_center" = T1."skr51_cost_center")) and (T5."skr51_sales_channel" = T1."skr51_sales_channel")) and (T5."skr51_cost_unit" = T1."skr51_cost_unit")) and (T5."skr51_branch" = T1."skr51_branch")) and (T5."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref")) left outer join "document_types" T6 on T6."document_type_in_journal" = T1."document_type") left outer join "invoices" T7 on T7."invtype_invnr" = T1."invoice_number") left outer join "makes" T9 on T8."make_number" = T9."make_number") left outer join "models" T10 on (T8."make_number" = T10."make_number") and (T8."model_code" = T10."model_code")) left outer join "customers_suppliers" T11 on T11."customer_number" = T8."owner_number") left outer join "employees" T12 on (T8."salesman_number" <> 0) and (T8."salesman_number" = T12."salesman_number"))
+where ((T4."nominal_account_number" = T1."nominal_account_number") and (T4."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref"))
+and (((T4."is_profit_loss_account" = 'J') and (T1."vehicle_reference" <> ' ')) and (T1."nominal_account_number" IN (8000,8001,8010,8011,5002,8100,8110,8111,8200,8210,8510,8800,8820,8830,8870,8928,8934,7000,7010,7100,7101,7110,7111,7120,7200,7210,7240,7510,5001,5005,5006,5007,5008,5003,5004,4300,4560,4580,4530,4540,4590,4591,4690,4621,4622,4623,4500,4501,4502,4503,4504,5501,7220,7800,7850,7801,7802,7803,7804,7805,7806,7807,7820,7825,7827,7808,8030,7030,8870,8871,8872,8220,7220)))
+) D2
+) D1
+where (((((c143 = "Internal Number_Vehicles") or ("Internal Number_Vehicles" IS NULL)) or (c143 IS NULL)) and (c144 >= convert(date, '2017-01-01'))) and (c145 = 'FZG-Geschäft'))
+-- order by "Vehicle Reference_berechnet" asc,"Vehicle Reference" asc,"Nominal Account Number" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 558 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.loc_belege_nw_gw_vk_stk_fibu_imr.sql

@@ -0,0 +1,558 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.loc_belege_nw_gw_vk_stk_fibu_imr AS
+
+select "Accounting Date" as "Accounting Date",
+	   "Document Type" as "Document Type",
+	   "Document Number" as "Document Number",
+	   "Position In Document" as "Position In Document",
+	   "Customer Number" as "Customer Number",
+	   "Nominal Account Number" as "Nominal Account Number",
+	   "Is Balanced" as "Is Balanced",
+	   "Clearing Number" as "Clearing Number",
+	   "Document Date" as "Document Date",
+	   "Posted Value" as "Posted Value",
+	   "Debit Or Credit" as "Debit Or Credit",
+	   "Posted Count" as "Posted Count",
+	   "Branch Number" as "Branch Number",
+	   "Customer Contra Account" as "Customer Contra Account",
+	   "Nominal Contra Account" as "Nominal Contra Account",
+	   "Contra Account Text" as "Contra Account Text",
+	   "Account Form Page Number" as "Account Form Page Number",
+	   "Account Form Page Line" as "Account Form Page Line",
+	   "Serial Number Each Month" as "Serial Number Each Month",
+	   "Employee Number" as "Employee Number",
+	   "Invoice Date_journal_accountings" as "Invoice Date_journal_accountings",
+	   "Invoice Number" as "Invoice Number",
+	   "Dunning Level" as "Dunning Level",
+	   "Last Dunning Date" as "Last Dunning Date",
+	   "Journal Page" as "Journal Page",
+	   "Journal Line" as "Journal Line",
+	   "Cash Discount" as "Cash Discount",
+	   "Term Of Payment" as "Term Of Payment",
+	   "Posting Text" as "Posting Text",
+	   "Vehicle Reference" as "Vehicle Reference",
+	   "Vat Id Number" as "Vat Id Number",
+	   "Account Statement Number" as "Account Statement Number",
+	   "Account Statement Page" as "Account Statement Page",
+	   "Vat Key" as "Vat Key",
+	   "Days For Cash Discount" as "Days For Cash Discount",
+	   "Day Of Actual Accounting" as "Day Of Actual Accounting",
+	   "Skr51 Branch" as "Skr51 Branch",
+	   "Skr51 Make" as "Skr51 Make",
+	   "Skr51 Cost Center" as "Skr51 Cost Center",
+	   "Skr51 Sales Channel" as "Skr51 Sales Channel",
+	   "Skr51 Cost Unit" as "Skr51 Cost Unit",
+	   "Previously Used Account No" as "Previously Used Account No",
+	   "Free Form Accounting Text" as "Free Form Accounting Text",
+	   "Free Form Document Text" as "Free Form Document Text",
+	   "Nom_Account_Is Profit Loss Account" as "Nom_Account_Is Profit Loss Account",
+	   "Rechtseinheit" as "Rechtseinheit",
+	   "Betrieb" as "Betrieb",
+	   "Bookkeep Date" as "Bookkeep Date",
+	   "Marke" as "Marke",
+	   "Text" as "Text",
+	   "Mandant" as "Mandant",
+	   "Betrag_ori" as "Betrag_ori",
+	   "Konto_mit_Bezeichnung" as "Konto_mit_Bezeichnung",
+	   "Menge" as "Menge",
+	   "Stellen Cost Center" as "Stellen Cost Center",
+	   "KST" as "KST",
+	   "Stellen Sales Channel" as "Stellen Sales Channel",
+	   "Absatzkanal" as "Absatzkanal",
+	   "Stellen Cost Unit" as "Stellen Cost Unit",
+	   "Kostenträger_mit_Null" as "Kostenträger_mit_Null",
+	   "Kostenträger" as "Kostenträger",
+	   "GuV_Bilanz" as "GuV_Bilanz",
+	   "Susa" as "Susa",
+	   "Acct Nr_ori" as "Acct Nr_ori",
+	   "Document Type In Journal" as "Document Type In Journal",
+	   "Document Type Description" as "Document Type Description",
+	   "FZG_ja_nein" as "FZG_ja_nein",
+	   "Summe_FZG_ja_nein" as "Summe_FZG_ja_nein",
+	   "FZG_Geschäft ja/nein" as "FZG_Geschäft ja/nein",
+	   "Invoice Type_Invoices" as "Invoice Type_Invoices",
+	   "Invoice Number_Invoices" as "Invoice Number_Invoices",
+	   "Invoice Date_Invoices" as "Invoice Date_Invoices",
+	   "Is Canceled_Invoices" as "Is Canceled_Invoices",
+	   "Vehicle Number_Invoices" as "Vehicle Number_Invoices",
+	   "Vehicle_Number_Max" as "Vehicle_Number_Max",
+	   "Invoice_Date_1" as "Invoice_Date_1",
+	   "Invoice Date_FZG" as "Invoice Date_FZG",
+	   "Invoice Date" as "Invoice Date",
+	   SUM("Betrag_ori") OVER (partition by "Vehicle Reference") as "Summe Betrag",
+	   "Internal Number_Vehicles" as "Internal Number_Vehicles",
+	   "Vin_Vehicles" as "Vin_Vehicles",
+	   "Dealer Vehicle Type" as "Dealer Vehicle Type",
+	   "Fahrzeugtyp" as "Fahrzeugtyp",
+	   "Fahrzeugart" as "Fahrzeugart",
+	   "Make Number_Vehicles" as "Make Number_Vehicles",
+	   "Description_Make" as "Description_Make",
+	   "Fabrikat" as "Fabrikat",
+	   "Model Code_Models" as "Model Code_Models",
+	   "Model_Detail" as "Model_Detail",
+	   "Model" as "Model",
+	   "Owner Number_Vehicles" as "Owner Number_Vehicles",
+	   "Holder Number_Vehicles" as "Holder Number_Vehicles",
+	   "First Name_Owner_Customer" as "First Name_Owner_Customer",
+	   "Family Name_Owner_Customer" as "Family Name_Owner_Customer",
+	   "First Name_Holder_Customer" as "First Name_Holder_Customer",
+	   "Family Name_Holder_Customer" as "Family Name_Holder_Customer",
+	   "Kunde" as "Kunde",
+	   "Sales_Channel_FZG" as "Sales_Channel_FZG",
+	   "Kundenart_Zahl" as "Kundenart_Zahl",
+	   "Kundenart" as "Kundenart",
+	   "Hauptbetrieb" as "Hauptbetrieb",
+	   "Standort_alt" as "Standort_alt",
+	   "Salesman Number_Vehicles" as "Salesman Number_Vehicles",
+	   "Employee Number_Employees_Salesman" as "Employee Number_Employees_Salesman",
+	   "Name_Employees_Salesman" as "Name_Employees_Salesman",
+	   "Verkäufer" as "Verkäufer",
+	   "Standort_FZG_Verkauf" as "Standort_FZG_Verkauf",
+	   "Standort_Zahl" as "Standort_Zahl",
+	   "Standort" as "Standort",
+	   "FZG" as "FZG",
+	   "Konto" as "Konto",
+	   "Body Paint Code" as "Body Paint Code",
+	   "Body Paint Description" as "Body Paint Description",
+	   "Farbe" as "Farbe",
+	   "Erlös FZG" as "Erlös FZG",
+	   "Nachlass" as "Nachlass",
+	   "VAK FZG" as "VAK FZG",
+	   "Erlös Zulass." as "Erlös Zulass.",
+	   "VAK Zulass." as "VAK Zulass.",
+	   "Erlös Gar." as "Erlös Gar.",
+	   "VAK Gar." as "VAK Gar.",
+	   "Erlös Nachr./Aufb." as "Erlös Nachr./Aufb.",
+	   "VAK Nachr./Aufb." as "VAK Nachr./Aufb.",
+	   "VAK Fertigm." as "VAK Fertigm.",
+	   "Erlös Überf." as "Erlös Überf.",
+	   "VAK Überf." as "VAK Überf.",
+	   "Erlös Sonst._8900" as "Erlös Sonst._8900",
+	   "Erlös Sonst." as "Erlös Sonst.",
+	   "VAK Sonst." as "VAK Sonst.",
+	   "VAK intern" as "VAK intern",
+	   "Erlös Prov." as "Erlös Prov.",
+	   "Boni/VK-Hilfen" as "Boni/VK-Hilfen",
+	   "Erlös ges." as "Erlös ges.",
+	   "VAK ges." as "VAK ges.",
+	   "Menge_1" as "Menge_1",
+	   "Menge_2" as "Menge_2",
+	   "Betrag" as "Betrag",
+	   "Vehicle Reference_berechnet" as "Vehicle Reference_berechnet",
+	   "Acct Nr" as "Acct Nr",
+	   "Dealer Vehicle Type_Vehicles" as "Dealer Vehicle Type_Vehicles",
+	   "Dealer Vehicle Number_Vehicles" as "Dealer Vehicle Number_Vehicles"
+from 
+(select "Accounting Date" as "Accounting Date",
+	   "Document Type" as "Document Type",
+	   "Document Number" as "Document Number",
+	   "Position In Document" as "Position In Document",
+	   "Customer Number" as "Customer Number",
+	   "Nominal Account Number" as "Nominal Account Number",
+	   "Is Balanced" as "Is Balanced",
+	   "Clearing Number" as "Clearing Number",
+	   "Document Date" as "Document Date",
+	   "Posted Value" as "Posted Value",
+	   "Debit Or Credit" as "Debit Or Credit",
+	   "Posted Count" as "Posted Count",
+	   "Branch Number" as "Branch Number",
+	   "Customer Contra Account" as "Customer Contra Account",
+	   "Nominal Contra Account" as "Nominal Contra Account",
+	   "Contra Account Text" as "Contra Account Text",
+	   "Account Form Page Number" as "Account Form Page Number",
+	   "Account Form Page Line" as "Account Form Page Line",
+	   "Serial Number Each Month" as "Serial Number Each Month",
+	   "Employee Number" as "Employee Number",
+	   "Invoice Date_journal_accountings" as "Invoice Date_journal_accountings",
+	   "Invoice Number" as "Invoice Number",
+	   "Dunning Level" as "Dunning Level",
+	   "Last Dunning Date" as "Last Dunning Date",
+	   "Journal Page" as "Journal Page",
+	   "Journal Line" as "Journal Line",
+	   "Cash Discount" as "Cash Discount",
+	   "Term Of Payment" as "Term Of Payment",
+	   "Posting Text" as "Posting Text",
+	   "Vehicle Reference" as "Vehicle Reference",
+	   "Vat Id Number" as "Vat Id Number",
+	   "Account Statement Number" as "Account Statement Number",
+	   "Account Statement Page" as "Account Statement Page",
+	   "Vat Key" as "Vat Key",
+	   "Days For Cash Discount" as "Days For Cash Discount",
+	   "Day Of Actual Accounting" as "Day Of Actual Accounting",
+	   "Skr51 Branch" as "Skr51 Branch",
+	   "Skr51 Make" as "Skr51 Make",
+	   "Skr51 Cost Center" as "Skr51 Cost Center",
+	   "Skr51 Sales Channel" as "Skr51 Sales Channel",
+	   "Skr51 Cost Unit" as "Skr51 Cost Unit",
+	   "Previously Used Account No" as "Previously Used Account No",
+	   "Free Form Accounting Text" as "Free Form Accounting Text",
+	   "Free Form Document Text" as "Free Form Document Text",
+	   "Nom_Account_Is Profit Loss Account" as "Nom_Account_Is Profit Loss Account",
+	   "Rechtseinheit" as "Rechtseinheit",
+	   "Betrieb" as "Betrieb",
+	   "Bookkeep Date" as "Bookkeep Date",
+	   "Marke" as "Marke",
+	   "Text" as "Text",
+	   "Mandant" as "Mandant",
+	   "Betrag_ori" as "Betrag_ori",
+	   "Konto_mit_Bezeichnung" as "Konto_mit_Bezeichnung",
+	   "Menge" as "Menge",
+	   "Stellen Cost Center" as "Stellen Cost Center",
+	   "KST" as "KST",
+	   "Stellen Sales Channel" as "Stellen Sales Channel",
+	   "Absatzkanal" as "Absatzkanal",
+	   "Stellen Cost Unit" as "Stellen Cost Unit",
+	   "Kostenträger_mit_Null" as "Kostenträger_mit_Null",
+	   "Kostenträger" as "Kostenträger",
+	   "GuV_Bilanz" as "GuV_Bilanz",
+	   "Susa" as "Susa",
+	   "Acct Nr_ori" as "Acct Nr_ori",
+	   "Document Type In Journal" as "Document Type In Journal",
+	   "Document Type Description" as "Document Type Description",
+	   "FZG_ja_nein" as "FZG_ja_nein",
+	   SUM("FZG_ja_nein") OVER (partition by "Vehicle Reference_berechnet") as "Summe_FZG_ja_nein",
+	   CASE WHEN (SUM("FZG_ja_nein") OVER (partition by "Vehicle Reference_berechnet") > 0) THEN ('FZG-Geschäft') ELSE ('Buchungen ohne FZG-Geschäft') END as "FZG_Geschäft ja/nein",
+	   "Invoice Type_Invoices" as "Invoice Type_Invoices",
+	   "Invoice Number_Invoices" as "Invoice Number_Invoices",
+	   "Invoice Date_Invoices" as "Invoice Date_Invoices",
+	   "Is Canceled_Invoices" as "Is Canceled_Invoices",
+	   "Vehicle Number_Invoices" as "Vehicle Number_Invoices",
+	   MAX("Vehicle Number_Invoices") OVER (partition by "Vehicle Reference_berechnet") as "Vehicle_Number_Max",
+	   "Invoice_Date_1" as "Invoice_Date_1",
+	   MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet") as "Invoice Date_FZG",
+	   CASE WHEN (MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet") IS NULL) THEN ("Invoice Date_journal_accountings") ELSE MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet") END as "Invoice Date",
+	   "Internal Number_Vehicles" as "Internal Number_Vehicles",
+	   "Vin_Vehicles" as "Vin_Vehicles",
+	   "Dealer Vehicle Type" as "Dealer Vehicle Type",
+	   "Fahrzeugtyp" as "Fahrzeugtyp",
+	   "Fahrzeugart" as "Fahrzeugart",
+	   "Make Number_Vehicles" as "Make Number_Vehicles",
+	   "Description_Make" as "Description_Make",
+	   "Fabrikat" as "Fabrikat",
+	   "Model Code_Models" as "Model Code_Models",
+	   "Model_Detail" as "Model_Detail",
+	   "Model" as "Model",
+	   "Owner Number_Vehicles" as "Owner Number_Vehicles",
+	   "Holder Number_Vehicles" as "Holder Number_Vehicles",
+	   "First Name_Owner_Customer" as "First Name_Owner_Customer",
+	   "Family Name_Owner_Customer" as "Family Name_Owner_Customer",
+	   "First Name_Holder_Customer" as "First Name_Holder_Customer",
+	   "Family Name_Holder_Customer" as "Family Name_Holder_Customer",
+	   "Kunde" as "Kunde",
+	   "Sales_Channel_FZG" as "Sales_Channel_FZG",
+	   MAX("Sales_Channel_FZG") OVER (partition by "Vehicle Reference_berechnet") as "Kundenart_Zahl",
+	   CASE WHEN (MAX("Sales_Channel_FZG") OVER (partition by "Vehicle Reference_berechnet") BETWEEN 10 AND 19) THEN ('Privater Endkunde') WHEN (MAX("Sales_Channel_FZG") OVER (partition by "Vehicle Reference_berechnet") BETWEEN 20 AND 29) THEN ('Gewerbekunde') WHEN (MAX("Sales_Channel_FZG") OVER (partition by "Vehicle Reference_berechnet") BETWEEN 30 AND 39) THEN ('Großkunde') WHEN (MAX("Sales_Channel_FZG") OVER (partition by "Vehicle Reference_berechnet") BETWEEN 40 AND 49) THEN ('Sonderabnehmer') WHEN (MAX("Sales_Channel_FZG") OVER (partition by "Vehicle Reference_berechnet") BETWEEN 50 AND 59) THEN ('Wiederverkäufer') ELSE null END as "Kundenart",
+	   "Hauptbetrieb" as "Hauptbetrieb",
+	   "Standort_alt" as "Standort_alt",
+	   "Salesman Number_Vehicles" as "Salesman Number_Vehicles",
+	   "Employee Number_Employees_Salesman" as "Employee Number_Employees_Salesman",
+	   "Name_Employees_Salesman" as "Name_Employees_Salesman",
+	   "Verkäufer" as "Verkäufer",
+	   "Standort_FZG_Verkauf" as "Standort_FZG_Verkauf",
+	   MAX("Standort_FZG_Verkauf") OVER (partition by "Vehicle Reference_berechnet") as "Standort_Zahl",
+	   '0' + (convert(varchar(50), MAX("Standort_FZG_Verkauf") OVER (partition by "Vehicle Reference_berechnet"))) as "Standort",
+	   "FZG" as "FZG",
+	   "Konto" as "Konto",
+	   "Body Paint Code" as "Body Paint Code",
+	   "Body Paint Description" as "Body Paint Description",
+	   "Farbe" as "Farbe",
+	   "Erlös FZG" as "Erlös FZG",
+	   "Nachlass" as "Nachlass",
+	   "VAK FZG" as "VAK FZG",
+	   "Erlös Zulass." as "Erlös Zulass.",
+	   "VAK Zulass." as "VAK Zulass.",
+	   "Erlös Gar." as "Erlös Gar.",
+	   "VAK Gar." as "VAK Gar.",
+	   "Erlös Nachr./Aufb." as "Erlös Nachr./Aufb.",
+	   "VAK Nachr./Aufb." as "VAK Nachr./Aufb.",
+	   "VAK Fertigm." as "VAK Fertigm.",
+	   "Erlös Überf." as "Erlös Überf.",
+	   "VAK Überf." as "VAK Überf.",
+	   "Erlös Sonst._8900" as "Erlös Sonst._8900",
+	   "Erlös Sonst." as "Erlös Sonst.",
+	   "VAK Sonst." as "VAK Sonst.",
+	   "VAK intern" as "VAK intern",
+	   "Erlös Prov." as "Erlös Prov.",
+	   "Boni/VK-Hilfen" as "Boni/VK-Hilfen",
+	   "Erlös ges." as "Erlös ges.",
+	   "VAK ges." as "VAK ges.",
+	   "Menge_1" as "Menge_1",
+	   COUNT("Accounting Date") OVER (partition by "Vehicle Reference_berechnet") as "Menge_2",
+	   ("Menge_1" / COUNT("Accounting Date") OVER (partition by "Vehicle Reference_berechnet")) as "Betrag",
+	   "Vehicle Reference_berechnet" as "Vehicle Reference_berechnet",
+	   "Acct Nr" as "Acct Nr",
+	   "Dealer Vehicle Type_Vehicles" as "Dealer Vehicle Type_Vehicles",
+	   "Dealer Vehicle Number_Vehicles" as "Dealer Vehicle Number_Vehicles"
+from 
+(select "Accounting Date",
+	   "Document Type",
+	   "Document Number",
+	   "Position In Document",
+	   "Customer Number",
+	   "Nominal Account Number",
+	   "Is Balanced",
+	   "Clearing Number",
+	   "Document Date",
+	   "Posted Value",
+	   "Debit Or Credit",
+	   "Posted Count",
+	   "Branch Number",
+	   "Customer Contra Account",
+	   "Nominal Contra Account",
+	   "Contra Account Text",
+	   "Account Form Page Number",
+	   "Account Form Page Line",
+	   "Serial Number Each Month",
+	   "Employee Number",
+	   "Invoice Date_journal_accountings",
+	   "Invoice Number",
+	   "Dunning Level",
+	   "Last Dunning Date",
+	   "Journal Page",
+	   "Journal Line",
+	   "Cash Discount",
+	   "Term Of Payment",
+	   "Posting Text",
+	   "Vehicle Reference",
+	   "Vat Id Number",
+	   "Account Statement Number",
+	   "Account Statement Page",
+	   "Vat Key",
+	   "Days For Cash Discount",
+	   "Day Of Actual Accounting",
+	   "Skr51 Branch",
+	   "Skr51 Make",
+	   "Skr51 Cost Center",
+	   "Skr51 Sales Channel",
+	   "Skr51 Cost Unit",
+	   "Previously Used Account No",
+	   "Free Form Accounting Text",
+	   "Free Form Document Text",
+	   "Nom_Account_Is Profit Loss Account",
+	   "Rechtseinheit",
+	   "Betrieb",
+	   "Accounting Date" as "Bookkeep Date",
+	   "Marke",
+	   "Text",
+	   '1' as "Mandant",
+	   "Betrag_ori",
+	   "Konto_mit_Bezeichnung",
+	   "Menge",
+	   "Stellen Cost Center",
+	   "KST",
+	   "Stellen Sales Channel",
+	   "Absatzkanal",
+	   "Stellen Cost Unit",
+	   "Kostenträger_mit_Null",
+	   "Kostenträger",
+	   "GuV_Bilanz",
+	   '3' as "Susa",
+	   "Acct Nr_ori",
+	   "Document Type In Journal",
+	   "Document Type Description",
+	   "FZG_ja_nein",
+	   "Invoice Type_Invoices",
+	   "Invoice Number_Invoices",
+	   "Invoice Date_Invoices",
+	   "Is Canceled_Invoices",
+	   "Vehicle Number_Invoices",
+	   "Invoice_Date_1",
+	   "Internal Number_Vehicles",
+	   "Vin_Vehicles",
+	   "Dealer Vehicle Type",
+	   "Fahrzeugtyp",
+	   "Fahrzeugart",
+	   "Make Number_Vehicles",
+	   "Description_Make",
+	   "Description_Make" as "Fabrikat",
+	   "Model Code_Models",
+	   "Model_Detail",
+	   "Model",
+	   "Owner Number_Vehicles",
+	   "Holder Number_Vehicles",
+	   "First Name_Owner_Customer",
+	   "Family Name_Owner_Customer",
+	   "First Name_Holder_Customer",
+	   "Family Name_Holder_Customer",
+	   "Kunde",
+	   "Sales_Channel_FZG",
+	   "Rechtseinheit" as "Hauptbetrieb",
+	   "Betrieb" as "Standort_alt",
+	   "Salesman Number_Vehicles",
+	   "Employee Number_Employees_Salesman",
+	   "Name_Employees_Salesman",
+	   "Verkäufer",
+	   "Standort_FZG_Verkauf",
+	   "FZG",
+	   "Konto_mit_Bezeichnung" as "Konto",
+	   "Body Paint Code",
+	   "Body Paint Description",
+	   "Body Paint Description" as "Farbe",
+	   "Erlös FZG",
+	   "Nachlass",
+	   "VAK FZG",
+	   "Erlös Zulass.",
+	   "VAK Zulass.",
+	   "Erlös Gar.",
+	   "VAK Gar.",
+	   "Erlös Nachr./Aufb.",
+	   "VAK Nachr./Aufb.",
+	   "VAK Fertigm.",
+	   "Erlös Überf.",
+	   "VAK Überf.",
+	   "Erlös Sonst._8900",
+	   "Erlös Sonst.",
+	   "VAK Sonst.",
+	   "VAK intern",
+	   "Erlös Prov.",
+	   "Boni/VK-Hilfen",
+	   "Erlös ges.",
+	   "VAK ges.",
+	   1 as "Menge_1",
+	   "Vehicle Reference_berechnet",
+	   "Acct Nr",
+	   "Dealer Vehicle Type_Vehicles",
+	   "Dealer Vehicle Number_Vehicles",
+	   MAX("Vehicle Number_Invoices") OVER (partition by "Vehicle Reference_berechnet") as c142,
+	   (CASE WHEN ((MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet")) IS NULL) THEN (("Invoice Date_journal_accountings")) ELSE ((MAX("Invoice_Date_1") OVER (partition by "Vehicle Reference_berechnet"))) END) as c143,
+	   (CASE WHEN ((SUM("FZG_ja_nein") OVER (partition by "Vehicle Reference_berechnet")) > 0) THEN ('FZG-Geschäft') ELSE ('Buchungen ohne FZG-Geschäft') END) as c144
+from 
+(select (left(T1."vehicle_reference",8)) + '_' + (right(T1."vehicle_reference",17)) as "Vehicle Reference_berechnet",
+	   (((nconvert((left(T1."invoice_date",4)) + (substring(T1."invoice_date", 6, 2)) + (substring(T1."invoice_date", 9, 2)))))) as "Invoice Date_journal_accountings",
+	   T6."dealer_vehicle_number" as "Dealer Vehicle Number_Vehicles",
+	   T6."dealer_vehicle_type" as "Dealer Vehicle Type_Vehicles",
+	   (ltrim(((left((((T1."nominal_account_number"))),4)) + '_STK'))) as "Acct Nr",
+	   (CASE WHEN (T1."nominal_account_number" IN (7000,7010,7100,7101,7110,7111,7120,7510)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + ((CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END)) + (CASE WHEN (T1."nominal_account_number" IN (5001,5005,5006,5007,5008,5003,5004)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7800,7850)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) as "VAK ges.",
+	   (CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8111,8112,8510,8928,8934)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + ((CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END)) + (CASE WHEN (T1."nominal_account_number" IN (8800,8801,8870,8820,8830)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8001,8011,5002)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) as "Erlös ges.",
+	   CASE WHEN (T1."nominal_account_number" IN (7800,7850)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "Boni/VK-Hilfen",
+	   CASE WHEN (T1."nominal_account_number" IN (8800,8801,8870,8820,8830)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Prov.",
+	   CASE WHEN (T1."nominal_account_number" IN (5001,5005,5006,5007,5008,5003,5004)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK intern",
+	   (CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END) as "VAK Sonst.",
+	   (CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) + (CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END) as "Erlös Sonst.",
+	   CASE WHEN (T1."nominal_account_number" IN (8900)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Sonst._8900",
+	   CASE WHEN (T1."nominal_account_number" IN (7030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Überf.",
+	   CASE WHEN (T1."nominal_account_number" IN (8030)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Überf.",
+	   CASE WHEN (T1."nominal_account_number" IN (7240)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Fertigm.",
+	   CASE WHEN (T1."nominal_account_number" IN (7220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Nachr./Aufb.",
+	   CASE WHEN (T1."nominal_account_number" IN (8220)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Nachr./Aufb.",
+	   CASE WHEN (T1."nominal_account_number" IN (7210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Gar.",
+	   CASE WHEN (T1."nominal_account_number" IN (8210)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Gar.",
+	   CASE WHEN (T1."nominal_account_number" IN (7200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK Zulass.",
+	   CASE WHEN (T1."nominal_account_number" IN (8200)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös Zulass.",
+	   CASE WHEN (T1."nominal_account_number" IN (7000,7010,7100,7101,7110,7111,7120,7510)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END)) ELSE (0) END as "VAK FZG",
+	   CASE WHEN (T1."nominal_account_number" IN (8001,8011,5002)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Nachlass",
+	   CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8111,8112,8510,8928,8934)) THEN ((CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) * -1) ELSE (0) END as "Erlös FZG",
+	   T6."body_paint_description" as "Body Paint Description",
+	   T6."body_paint_code" as "Body Paint Code",
+	   ((left((((T1."nominal_account_number"))),4)) + ' - ' + T2."account_description") as "Konto_mit_Bezeichnung",
+	   (right(T6."vin",5)) + ' / ' + ((left((((T6."internal_number"))),5))) + ' - ' + T8."description" + ' - ' + (CASE WHEN (T10."first_name" <> ' ') THEN ((left((((T6."holder_number"))),6)) + ' - ' + T10."first_name" + ' ' + T10."family_name") ELSE ((left((((T6."holder_number"))),6)) + ' - ' + T10."family_name") END) as "FZG",
+	   CASE WHEN (((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) and (T5."is_canceled" <> '1')) THEN (T1."skr51_branch") ELSE null END as "Standort_FZG_Verkauf",
+	   (left((((T6."salesman_number"))),3)) + ' - ' + T11."name" as "Verkäufer",
+	   T11."name" as "Name_Employees_Salesman",
+	   T11."employee_number" as "Employee Number_Employees_Salesman",
+	   T6."salesman_number" as "Salesman Number_Vehicles",
+	   ('0' + (((T1."skr51_branch")))) as "Betrieb",
+	   T1."subsidiary_to_company_ref" as "Rechtseinheit",
+	   CASE WHEN (((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) and (T5."is_canceled" <> '1')) THEN (T1."skr51_sales_channel") ELSE null END as "Sales_Channel_FZG",
+	   CASE WHEN (T10."first_name" <> ' ') THEN ((left((((T6."holder_number"))),6)) + ' - ' + T10."first_name" + ' ' + T10."family_name") ELSE ((left((((T6."holder_number"))),6)) + ' - ' + T10."family_name") END as "Kunde",
+	   T10."family_name" as "Family Name_Holder_Customer",
+	   T10."first_name" as "First Name_Holder_Customer",
+	   T9."family_name" as "Family Name_Owner_Customer",
+	   T9."first_name" as "First Name_Owner_Customer",
+	   T6."holder_number" as "Holder Number_Vehicles",
+	   T6."owner_number" as "Owner Number_Vehicles",
+	   (left((ucase(T8."description")),3)) as "Model",
+	   T8."description" as "Model_Detail",
+	   T8."model_code" as "Model Code_Models",
+	   T7."description" as "Description_Make",
+	   T6."make_number" as "Make Number_Vehicles",
+	   CASE WHEN ((CASE WHEN (((left(T1."vehicle_reference",1))) IN ('N')) THEN ('NW') WHEN (((left(T1."vehicle_reference",1))) IN ('V')) THEN ('VFW') WHEN (((left(T1."vehicle_reference",1))) IN ('G','D')) THEN ('GW') WHEN (((left(T1."vehicle_reference",1))) IN ('T')) THEN ('TZ') ELSE null END) IN ('VFW','TZ','NW')) THEN ('Neuwagen') ELSE ('Gebrauchtwagen') END as "Fahrzeugart",
+	   CASE WHEN (((left(T1."vehicle_reference",1))) IN ('N')) THEN ('NW') WHEN (((left(T1."vehicle_reference",1))) IN ('V')) THEN ('VFW') WHEN (((left(T1."vehicle_reference",1))) IN ('G','D')) THEN ('GW') WHEN (((left(T1."vehicle_reference",1))) IN ('T')) THEN ('TZ') ELSE null END as "Fahrzeugtyp",
+	   (left(T1."vehicle_reference",1)) as "Dealer Vehicle Type",
+	   T6."vin" as "Vin_Vehicles",
+	   T6."internal_number" as "Internal Number_Vehicles",
+	   CASE WHEN ((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1) THEN (((((nconvert((left(T1."invoice_date",4)) + (substring(T1."invoice_date", 6, 2)) + (substring(T1."invoice_date", 9, 2)))))))) ELSE null END as "Invoice_Date_1",
+	   T5."vehicle_number" as "Vehicle Number_Invoices",
+	   T5."is_canceled" as "Is Canceled_Invoices",
+	   T5."invoice_date" as "Invoice Date_Invoices",
+	   T5."invoice_number" as "Invoice Number_Invoices",
+	   T5."invoice_type" as "Invoice Type_Invoices",
+	   CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END as "FZG_ja_nein",
+	   T4."document_type_description" as "Document Type Description",
+	   T4."document_type_in_journal" as "Document Type In Journal",
+	   (left((((T1."nominal_account_number"))),4)) + '_STK' as "Acct Nr_ori",
+	   CASE WHEN (T2."is_profit_loss_account" = 'J') THEN ('2') ELSE ('1') END as "GuV_Bilanz",
+	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN (((rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name"))) ELSE ((rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name")) END as "Kostenträger",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + (rtrim((((T1."skr51_cost_unit"))))) + ' - ' + (T3."skr51_cost_unit_name") as "Kostenträger_mit_Null",
+	   (len((((T1."skr51_cost_unit"))) + 'Z') - 1) as "Stellen Cost Unit",
+	   (rtrim((((T1."skr51_sales_channel"))))) + ' - ' + T3."skr51_sales_channel_name" as "Absatzkanal",
+	   (len((((T1."skr51_sales_channel"))) + 'Z') - 1) as "Stellen Sales Channel",
+	   (rtrim((((T1."skr51_cost_center"))))) + ' - ' + T3."skr51_cost_center_name" as "KST",
+	   (len((((T1."skr51_cost_center"))) + 'Z') - 1) as "Stellen Cost Center",
+	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as "Menge",
+	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END as "Betrag_ori",
+	   CASE WHEN ((-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date")))) <= 360) THEN (T1."invoice_number" + ' - ' + T1."posting_text" + '/' + T1."vehicle_reference" + ' - ' + (((T1."employee_number")))) ELSE ('Buchungen älter 360 Tage') END as "Text",
+	   (rtrim((((T1."skr51_make"))))) + ' - ' + T3."skr51_make_description" as "Marke",
+	   T1."accounting_date" as "Accounting Date",
+	   T2."is_profit_loss_account" as "Nom_Account_Is Profit Loss Account",
+	   CASE WHEN (T1."skr51_cost_unit" BETWEEN 1 AND 49) THEN ('Neuwagen') WHEN (T1."skr51_cost_unit" BETWEEN 50 AND 59) THEN ('Gebrauchtwagen') WHEN (T1."skr51_cost_unit" BETWEEN 60 AND 69) THEN ('Teile & Zubehör') WHEN (T1."skr51_cost_unit" BETWEEN 70 AND 79) THEN ('Service') WHEN (T1."skr51_cost_unit" = 0) THEN ('Ohne Kostenträger') ELSE null END as "Free Form Document Text",
+	   T1."free_form_accounting_text" as "Free Form Accounting Text",
+	   T1."previously_used_account_no" as "Previously Used Account No",
+	   T1."skr51_cost_unit" as "Skr51 Cost Unit",
+	   T1."skr51_sales_channel" as "Skr51 Sales Channel",
+	   T1."skr51_cost_center" as "Skr51 Cost Center",
+	   T1."skr51_make" as "Skr51 Make",
+	   T1."skr51_branch" as "Skr51 Branch",
+	   T1."day_of_actual_accounting" as "Day Of Actual Accounting",
+	   T1."days_for_cash_discount" as "Days For Cash Discount",
+	   T1."vat_key" as "Vat Key",
+	   T1."account_statement_page" as "Account Statement Page",
+	   T1."account_statement_number" as "Account Statement Number",
+	   T1."vat_id_number" as "Vat Id Number",
+	   T1."vehicle_reference" as "Vehicle Reference",
+	   T1."posting_text" as "Posting Text",
+	   T1."term_of_payment" as "Term Of Payment",
+	   T1."cash_discount" as "Cash Discount",
+	   T1."journal_line" as "Journal Line",
+	   T1."journal_page" as "Journal Page",
+	   T1."last_dunning_date" as "Last Dunning Date",
+	   T1."dunning_level" as "Dunning Level",
+	   T1."invoice_number" as "Invoice Number",
+	   T1."employee_number" as "Employee Number",
+	   T1."serial_number_each_month" as "Serial Number Each Month",
+	   T1."account_form_page_line" as "Account Form Page Line",
+	   T1."account_form_page_number" as "Account Form Page Number",
+	   T1."contra_account_text" as "Contra Account Text",
+	   T1."nominal_contra_account" as "Nominal Contra Account",
+	   T1."customer_contra_account" as "Customer Contra Account",
+	   T1."branch_number" as "Branch Number",
+	   T1."posted_count" as "Posted Count",
+	   T1."debit_or_credit" as "Debit Or Credit",
+	   T1."posted_value" as "Posted Value",
+	   T1."document_date" as "Document Date",
+	   T1."clearing_number" as "Clearing Number",
+	   T1."is_balanced" as "Is Balanced",
+	   T1."nominal_account_number" as "Nominal Account Number",
+	   T1."customer_number" as "Customer Number",
+	   T1."position_in_document" as "Position In Document",
+	   T1."document_number" as "Document Number",
+	   T1."document_type" as "Document Type"
+from "nominal_accounts" T2,
+	((((((((("journal_accountings" T1 left outer join "accounts_characteristics" T3 on (((((T3."skr51_make" = T1."skr51_make") and (T3."skr51_cost_center" = T1."skr51_cost_center")) and (T3."skr51_sales_channel" = T1."skr51_sales_channel")) and (T3."skr51_cost_unit" = T1."skr51_cost_unit")) and (T3."skr51_branch" = T1."skr51_branch")) and (T3."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref")) left outer join "document_types" T4 on T4."document_type_in_journal" = T1."document_type") left outer join "invoices" T5 on T5."invtype_invnr" = T1."invoice_number") left outer join "vehicles" T6 on (right(T1."vehicle_reference",17)) = T6."vin") left outer join "makes" T7 on T6."make_number" = T7."make_number") left outer join "models" T8 on (T6."make_number" = T8."make_number") and (T6."model_code" = T8."model_code")) left outer join "customers_suppliers" T9 on T9."customer_number" = T6."owner_number") left outer join "customers_suppliers" T10 on T10."customer_number" = T6."holder_number") left outer join "employees" T11 on (T6."salesman_number" <> 0) and (T6."salesman_number" = T11."salesman_number"))
+where ((T2."nominal_account_number" = T1."nominal_account_number") and (T2."subsidiary_to_company_ref" = T1."subsidiary_to_company_ref"))
+and ((((T2."is_profit_loss_account" = 'J') and (T1."vehicle_reference" <> ' ')) and (T1."nominal_account_number" IN (8000,8001,8010,8011,5002,8100,8110,8111,8200,8210,8510,8800,8820,8830,8870,8928,8934,7000,7010,7100,7101,7110,7111,7120,7200,7210,7240,7510,7800,7850,5001,5005,5006,5007,5008,5003,5004))) and ((CASE WHEN (T1."nominal_account_number" IN (8000,8010,8100,8110,8510)) THEN (1) ELSE (0) END) = 1))
+) D2
+) D1
+where ((((((c142 = "Internal Number_Vehicles") or ("Internal Number_Vehicles" IS NULL)) or (c142 IS NULL)) and (c143 >= convert(date, '2017-01-01'))) and (c144 = 'FZG-Geschäft')) and (c143 = "Invoice_Date_1"))
+) D4
+-- order by "Vehicle Reference_berechnet" asc,"Vehicle Reference" asc,"Nominal Account Number" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 265 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.nw_gw_be_auf_nw_gw_bestand_cat_imr.sql

@@ -0,0 +1,265 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.nw_gw_be_auf_nw_gw_bestand_cat_imr AS
+
+select convert(date, '1900-01-01') as "Accounting Date",
+	   '' as "Document Type",
+	   0 as "Document Number_2",
+	   0 as "Position In Document",
+	   0 as "Customer Number",
+	   0 as "Nominal Account Number",
+	   '' as "Is Balanced",
+	   0 as "Clearing Number",
+	   convert(date, '1900-01-01') as "Document Date",
+	   0 as "Posted Value",
+	   '' as "Debit Or Credit",
+	   0 as "Posted Count",
+	   0 as "Branch Number",
+	   0 as "Customer Contra Account",
+	   0 as "Nominal Contra Account",
+	   '' as "Contra Account Text",
+	   0 as "Account Form Page Number",
+	   0 as "Account Form Page Line",
+	   0 as "Serial Number Each Month",
+	   0 as "Employee Number",
+	   convert(date, '1900-01-01') as "Invoice Date",
+	   '' as "Invoice Number",
+	   '' as "Dunning Level",
+	   convert(date, '1900-01-01') as "Last Dunning Date",
+	   0 as "Journal Page",
+	   0 as "Journal Line",
+	   0 as "Cash Discount",
+	   0 as "Term Of Payment",
+	   '' as "Posting Text",
+	   '' as "Vehicle Reference",
+	   '' as "Vat Id Number",
+	   0 as "Account Statement Number",
+	   0 as "Account Statement Page",
+	   '' as "Vat Key",
+	   0 as "Days For Cash Discount",
+	   convert(date, '1900-01-01') as "Day Of Actual Accounting",
+	   0 as "Skr51 Branch",
+	   0 as "Skr51 Make",
+	   0 as "Skr51 Cost Center",
+	   0 as "Skr51 Sales Channel",
+	   0 as "Skr51 Cost Unit",
+	   '' as "Previously Used Account No",
+	   "Free Form Accounting Text",
+	   "Free Form Document Text",
+	   '' as "Nom_Account_Is Profit Loss Account",
+	   '1' as "Rechtseinheit",
+	   '' as "Betrieb",
+	   convert(date, '1900-01-01') as "Bookkeep Date",
+	   '' as "Marke",
+	   '' as "Text",
+	   '1' as "Mandant",
+	   0 as "Betrag",
+	   '' as "Konto_mit_Bezeichnung",
+	   0 as "Menge_FIBU",
+	   0 as "Stellen Cost Center",
+	   '' as "KST",
+	   0 as "Stellen Sales Channel",
+	   '' as "Absatzkanal",
+	   0 as "Stellen Cost Unit",
+	   '' as "Kostenträger_mit_Null",
+	   '' as "Kostenträger",
+	   '' as "GuV_Bilanz",
+	   '' as "Susa",
+	   '' as "Acct Nr",
+	   0 as "Stellen_Konto_Nr",
+	   SUM(0) OVER (partition by "Vehicle_Reference_berechnet") as "Summe_Betrag",
+	   "Internal Number_ori",
+	   "Vin",
+	   "License Plate",
+	   "License Plate Country",
+	   "License Plate Season",
+	   "Make Number",
+	   "Free Form Make Text",
+	   "Model Code",
+	   "Free Form Model Text",
+	   "Is Roadworthy",
+	   "Is Customer Vehicle",
+	   "Dealer Vehicle Type",
+	   "Dealer Vehicle Number",
+	   "First Registration Date",
+	   "Readmission Date",
+	   "Next Service Date",
+	   "Next Service Km",
+	   "Next Service Miles",
+	   "Production Year",
+	   "Owner Number",
+	   "Holder Number",
+	   "Previous Owner Number",
+	   "Previous Owner Counter",
+	   "Last Holder Change Date",
+	   "German Kba Hsn",
+	   "German Kba Tsn",
+	   "Austria Nat Code",
+	   "Is Prefer Km",
+	   "Mileage Km",
+	   "Mileage Miles",
+	   "Odometer Reading Date",
+	   "Engine Number",
+	   "Gear Number",
+	   "Unloaded Weight",
+	   "Gross Vehicle Weight",
+	   "Power Kw",
+	   "Cubic Capacity",
+	   "Is All Accidents Repaired",
+	   "Accidents Counter",
+	   "Has Tyre Pressure Sensor",
+	   "Carkey Number",
+	   "Internal Source Flag",
+	   "Emission Code",
+	   "First Sold Country",
+	   "First Sold Dealer Code",
+	   "Body Paint Code",
+	   "Body Paint Description",
+	   "Is Body Paint Metallic",
+	   "Interior Paint Code",
+	   "Interior Paint Description",
+	   "Trim Code",
+	   "Trim Description",
+	   "Fine Dust Label",
+	   "Internal Assignment",
+	   "Ricambi Free Input",
+	   "Document Number",
+	   "Salesman Number",
+	   "Sale Date",
+	   "Next Emission Test Date",
+	   "Next General Inspection Date",
+	   "Next Rust Inspection Date",
+	   "Next Exceptional Inspection Da",
+	   "Last Change Date",
+	   "Last Change Employee No",
+	   "Created Date",
+	   "Created Employee No",
+	   "Last Change Subsidiary",
+	   MIN(convert(date, '1900-01-01')) OVER (partition by "Vehicle_Reference_berechnet") as "Minimum_Accounting_Date",
+	   "Hauptbetrieb",
+	   "Standort",
+	   "Description_Makes",
+	   "Description_Makes" as "Fabrikat",
+	   "Description_Models",
+	   "Model_Detail",
+	   "Model",
+	   "Fahrzeugtyp",
+	   "Fahrzeugart",
+	   "Body Paint Description" as "Farbe",
+	   "Customer Number_Vorbesitzer",
+	   "First Name_Vorbesitzer",
+	   "Family Name_Vorbesitzer",
+	   "Vorbesitzer",
+	   "First Registration Date" as "Zulassungsdatum",
+	   1 as "Menge_1",
+	   COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet") as "Menge_2",
+	   1 / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet")) as "Menge",
+	   "Einsatz",
+	   CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))))) ELSE ((c169) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))) END as "Standtage_Berechnung",
+	   (c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet")) as "Standtage",
+	   CASE WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))))) ELSE ((c169) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))) END) BETWEEN 0 AND 30) THEN ('0 - 30 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))))) ELSE ((c169) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))) END) BETWEEN 31 AND 60) THEN ('31 - 60 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))))) ELSE ((c169) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))) END) BETWEEN 61 AND 90) THEN ('61 - 90 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))))) ELSE ((c169) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))) END) BETWEEN 91 AND 180) THEN ('91 - 180 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))))) ELSE ((c169) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))) END) BETWEEN 181 AND 360) THEN ('181 - 360 Tage') WHEN ((CASE WHEN (c170 IS NULL) THEN ((((c171) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))))) ELSE ((c169) / (COUNT("Dealer Vehicle Number") OVER (partition by "Vehicle_Reference_berechnet"))) END) > 360) THEN ('> 360 Tage') ELSE null END as "Standtagestaffel",
+	   (getdate()) as "Heute",
+	   "FZG",
+	   "Vehicle_Reference_berechnet",
+	   "Internal Number_ori" as "Internal Number"
+from 
+(select ((T1."dealer_vehicle_type" + (rtrim((((T1."dealer_vehicle_number"))))))) as "Vehicle_Reference_berechnet",
+	   T2."internal_number" as "Internal Number_ori",
+	   ((T1."dealer_vehicle_type" + (rtrim((((T1."dealer_vehicle_number"))))))) + ' - ' + (substring((CASE WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) IS NULL) THEN ('keine Angabe') WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) LIKE '???%') THEN ('???') ELSE ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END)) END), 1, 170)) as "FZG",
+	   -1 * datediff(day, (getdate()), T1."in_buy_invoice_no_date") as c169,
+	   T1."in_buy_invoice_no_date" as c170,
+	   -1 * datediff(day, (getdate()), T1."in_arrival_date") as c171,
+	   T1."calc_basic_charge" + T1."calc_accessory" + T1."calc_extra_expenses" + T1."calc_usage_value_encr_external" + T1."calc_usage_value_encr_internal" + T1."calc_usage_value_encr_other" + T1."calc_total_writedown" + T1."calc_commission_for_arranging" + T1."calc_cost_internal_invoices" + T1."calc_cost_other" + T1."calc_returns_workshop" + (T1."calc_sales_aid" + T1."calc_sales_aid_finish" + T1."calc_sales_aid_bonus") * -1 as "Einsatz",
+	   T2."first_registration_date" as "First Registration Date",
+	   (left((((T5."customer_number"))),7)) + ' - ' + T5."first_name" + ' ' + T5."family_name" as "Vorbesitzer",
+	   T5."family_name" as "Family Name_Vorbesitzer",
+	   T5."first_name" as "First Name_Vorbesitzer",
+	   T5."customer_number" as "Customer Number_Vorbesitzer",
+	   T2."body_paint_description" as "Body Paint Description",
+	   CASE WHEN ((CASE WHEN ((left(T2."dealer_vehicle_type",1)) IN ('N')) THEN ('NW') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('V')) THEN ('VFW') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('D')) THEN ('GW diff.') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('G')) THEN ('GW regel.') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('T')) THEN ('TZ') ELSE null END) IN ('VFW','TZ','NW')) THEN ('Neuwagen') ELSE ('Gebrauchtwagen') END as "Fahrzeugart",
+	   CASE WHEN ((left(T2."dealer_vehicle_type",1)) IN ('N')) THEN ('NW') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('V')) THEN ('VFW') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('D')) THEN ('GW diff.') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('G')) THEN ('GW regel.') WHEN ((left(T2."dealer_vehicle_type",1)) IN ('T')) THEN ('TZ') ELSE null END as "Fahrzeugtyp",
+	   (substring((upper((CASE WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) IS NULL) THEN ('keine Angabe') WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) LIKE '???%') THEN ('???') ELSE ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END)) END))), 1, 3)) as "Model",
+	   CASE WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) IS NULL) THEN ('keine Angabe') WHEN ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END) LIKE '???%') THEN ('???') ELSE ((CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END)) END as "Model_Detail",
+	   CASE WHEN (T4."description" = 'DIVERSE') THEN (T2."free_form_model_text") ELSE (T4."description") END as "Description_Models",
+	   T3."description" as "Description_Makes",
+	   '0' + (((T1."in_subsidiary"))) as "Standort",
+	   CASE WHEN (('0' + (((T1."in_subsidiary")))) = '015                                                                                                                                                                                                                                                            ') THEN ('15') ELSE (T1."client_db") END as "Hauptbetrieb",
+	   T2."last_change_subsidiary" as "Last Change Subsidiary",
+	   T2."created_employee_no" as "Created Employee No",
+	   T2."created_date" as "Created Date",
+	   T2."last_change_employee_no" as "Last Change Employee No",
+	   T2."last_change_date" as "Last Change Date",
+	   T2."next_exceptional_inspection_da" as "Next Exceptional Inspection Da",
+	   T2."next_rust_inspection_date" as "Next Rust Inspection Date",
+	   T2."next_general_inspection_date" as "Next General Inspection Date",
+	   T2."next_emission_test_date" as "Next Emission Test Date",
+	   T2."sale_date" as "Sale Date",
+	   T2."salesman_number" as "Salesman Number",
+	   T2."document_number" as "Document Number",
+	   T2."ricambi_free_input" as "Ricambi Free Input",
+	   T2."internal_assignment" as "Internal Assignment",
+	   T2."fine_dust_label" as "Fine Dust Label",
+	   T2."trim_description" as "Trim Description",
+	   T2."trim_code" as "Trim Code",
+	   T2."interior_paint_description" as "Interior Paint Description",
+	   T2."interior_paint_code" as "Interior Paint Code",
+	   T2."is_body_paint_metallic" as "Is Body Paint Metallic",
+	   T2."body_paint_code" as "Body Paint Code",
+	   T2."first_sold_dealer_code" as "First Sold Dealer Code",
+	   T2."first_sold_country" as "First Sold Country",
+	   T2."emission_code" as "Emission Code",
+	   T2."internal_source_flag" as "Internal Source Flag",
+	   T2."carkey_number" as "Carkey Number",
+	   T2."has_tyre_pressure_sensor" as "Has Tyre Pressure Sensor",
+	   T2."accidents_counter" as "Accidents Counter",
+	   T2."is_all_accidents_repaired" as "Is All Accidents Repaired",
+	   T2."cubic_capacity" as "Cubic Capacity",
+	   T2."power_kw" as "Power Kw",
+	   T2."gross_vehicle_weight" as "Gross Vehicle Weight",
+	   T2."unloaded_weight" as "Unloaded Weight",
+	   T2."gear_number" as "Gear Number",
+	   T2."engine_number" as "Engine Number",
+	   T2."odometer_reading_date" as "Odometer Reading Date",
+	   T2."mileage_miles" as "Mileage Miles",
+	   T2."mileage_km" as "Mileage Km",
+	   T2."is_prefer_km" as "Is Prefer Km",
+	   T2."austria_nat_code" as "Austria Nat Code",
+	   T2."german_kba_tsn" as "German Kba Tsn",
+	   T2."german_kba_hsn" as "German Kba Hsn",
+	   T2."last_holder_change_date" as "Last Holder Change Date",
+	   T2."previous_owner_counter" as "Previous Owner Counter",
+	   T2."previous_owner_number" as "Previous Owner Number",
+	   T2."holder_number" as "Holder Number",
+	   T2."owner_number" as "Owner Number",
+	   T2."production_year" as "Production Year",
+	   T2."next_service_miles" as "Next Service Miles",
+	   T2."next_service_km" as "Next Service Km",
+	   T2."next_service_date" as "Next Service Date",
+	   T2."readmission_date" as "Readmission Date",
+	   T2."dealer_vehicle_number" as "Dealer Vehicle Number",
+	   T2."dealer_vehicle_type" as "Dealer Vehicle Type",
+	   T2."is_customer_vehicle" as "Is Customer Vehicle",
+	   T2."is_roadworthy" as "Is Roadworthy",
+	   T2."free_form_model_text" as "Free Form Model Text",
+	   T2."model_code" as "Model Code",
+	   T2."free_form_make_text" as "Free Form Make Text",
+	   T2."make_number" as "Make Number",
+	   T2."license_plate_season" as "License Plate Season",
+	   T2."license_plate_country" as "License Plate Country",
+	   T2."license_plate" as "License Plate",
+	   T2."vin" as "Vin",
+	   (rtrim((((T1."dealer_vehicle_number"))))) as "Free Form Document Text",
+	   T1."dealer_vehicle_type" + (rtrim((((T1."dealer_vehicle_number"))))) as "Free Form Accounting Text"
+from (((("dbo"."vehicles" T2 left outer join "dbo"."makes" T3 on T2."make_number" = T3."make_number") left outer join "dbo"."models" T4 on (T2."make_number" = T4."make_number") and (T2."model_code" = T4."model_code")) left outer join "dbo"."customers_suppliers" T5 on T2."previous_owner_number" = T5."customer_number") left outer join "LOCOSOFT"."dbo"."dealer_vehicles" T1 on (T1."dealer_vehicle_type" = T2."dealer_vehicle_type") and (T1."dealer_vehicle_number" = T2."dealer_vehicle_number"))
+where ((T1."in_arrival_date" IS NOT NULL) and (T1."out_invoice_number" IS NULL))
+-- order by "Vehicle_Reference_berechnet" asc
+) D1
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 106 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.offene_auftraege_dg_anz_tage_imr.sql

@@ -0,0 +1,106 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.offene_auftraege_dg_anz_tage_imr AS
+
+select "Order Number_ori",
+	   "Order Position",
+	   "Labour Type",
+	   "Subsidiary",
+	   "Is Invoiced",
+	   "Invoice Type",
+	   "Invoice Number",
+	   "Order Date",
+	   "Estimated Inbound Time",
+	   "Estimated Outbound Time",
+	   "Order Print Date",
+	   "Order Taking Employee No",
+	   "Order Delivery Employee No",
+	   "Vehicle Number",
+	   "Order Mileage",
+	   "Order Customer",
+	   "Paying Customer",
+	   "Holder Number",
+	   "Parts Rebate Group Sell",
+	   "Clearing Delay Type",
+	   "Code_Labour_Type",
+	   "Description_Labour_Type",
+	   "Hauptbetrieb",
+	   "Standort",
+	   "Name_Serviceberater",
+	   "Serviceberater",
+	   "Umsatzart",
+	   "Customer Number_Cust",
+	   "First Name_Cust",
+	   "Family Name_Cust",
+	   "Kunde",
+	   "Order Number",
+	   "Internal Number_Vehicle",
+	   "Vin_Vehicle",
+	   "License Plate_Vehicle",
+	   "Make Number_Vehicle",
+	   'Service' as "Auftragsart",
+	   "Make Number_Makes",
+	   "Description_Makes",
+	   "Description_Makes" as "Fabrikat",
+	   "Description_Models",
+	   "Model",
+	   1 as "DG_1",
+	   COUNT("Subsidiary") OVER (partition by "Order Number_ori") as "DG_2",
+	   1 / (COUNT("Subsidiary") OVER (partition by "Order Number_ori")) as "DG",
+	   "Anzahl Tage_1",
+	   ("Anzahl Tage_1") / (COUNT("Subsidiary") OVER (partition by "Order Number_ori")) as "Anzahl Tage"
+from 
+(select T1."order_number" as "Order Number_ori",
+	   (-1 * datediff(day, (getdate()), T1."order_date")) as "Anzahl Tage_1",
+	   (left((ucase(T8."description")),3)) as "Model",
+	   T8."description" as "Description_Models",
+	   T7."description" as "Description_Makes",
+	   T7."make_number" as "Make Number_Makes",
+	   T6."make_number" as "Make Number_Vehicle",
+	   T6."license_plate" as "License Plate_Vehicle",
+	   T6."vin" as "Vin_Vehicle",
+	   T6."internal_number" as "Internal Number_Vehicle",
+	   CASE WHEN (T6."license_plate" IS NOT NULL) THEN ((left((((T1."order_number"))),6)) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T4."name") END) + ' - ' + T5."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date"))) + ' - ' + T6."license_plate") ELSE ((left((((T1."order_number"))))) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T4."name") END) + ' - ' + T5."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date")))) END as "Order Number",
+	   (left((((T5."customer_number"))),7)) + ' - ' + T5."first_name" + ' ' + T5."family_name" as "Kunde",
+	   T5."family_name" as "Family Name_Cust",
+	   T5."first_name" as "First Name_Cust",
+	   T5."customer_number" as "Customer Number_Cust",
+	   T3."code" + ' - ' + T3."description" as "Umsatzart",
+	   CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T4."name") END as "Serviceberater",
+	   T4."name" as "Name_Serviceberater",
+	   '0' + (((T1."subsidiary"))) as "Standort",
+	   CASE WHEN (('0' + (((T1."subsidiary")))) IN ('015                                                                                                                                                                                                                                                            ')) THEN ('15') ELSE ('1') END as "Hauptbetrieb",
+	   T3."description" as "Description_Labour_Type",
+	   T3."code" as "Code_Labour_Type",
+	   T1."clearing_delay_type" as "Clearing Delay Type",
+	   T1."parts_rebate_group_sell" as "Parts Rebate Group Sell",
+	   T1."holder_number" as "Holder Number",
+	   T1."paying_customer" as "Paying Customer",
+	   T1."order_customer" as "Order Customer",
+	   T1."order_mileage" as "Order Mileage",
+	   T1."vehicle_number" as "Vehicle Number",
+	   T1."order_delivery_employee_no" as "Order Delivery Employee No",
+	   T1."order_taking_employee_no" as "Order Taking Employee No",
+	   T1."order_print_date" as "Order Print Date",
+	   T1."estimated_outbound_time" as "Estimated Outbound Time",
+	   T1."estimated_inbound_time" as "Estimated Inbound Time",
+	   T1."order_date" as "Order Date",
+	   T2."invoice_number" as "Invoice Number",
+	   T2."invoice_type" as "Invoice Type",
+	   T2."is_invoiced" as "Is Invoiced",
+	   T1."subsidiary" as "Subsidiary",
+	   T2."labour_type" as "Labour Type",
+	   T1."order_position" as "Order Position"
+from ((((((("dbo"."order_positions" T1 left outer join "dbo"."labours" T2 on T1."order_number" = T2."order_number") left outer join "dbo"."labour_types" T3 on T3."code" = T2."labour_type") left outer join "dbo"."employees" T4 on T1."order_taking_employee_no" = T4."employee_number") left outer join "dbo"."customers_suppliers" T5 on T1."order_customer" = T5."customer_number") left outer join "dbo"."vehicles" T6 on T1."vehicle_number" = T6."internal_number") left outer join "dbo"."makes" T7 on T6."make_number" = T7."make_number") left outer join "dbo"."models" T8 on (T6."make_number" = T8."make_number") and (T6."model_code" = T8."model_code"))
+where (((T2."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2020-01-01 00:00:00.000'))) and (T2."labour_type" <> 'F'))
+-- order by "Order Number_ori" asc
+) D1
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 113 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.offene_auftraege_teile_imr.sql

@@ -0,0 +1,113 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.offene_auftraege_teile_imr AS
+
+select distinct "Order Number_ori",
+	   "Order Position",
+	   '' as "Labour Type",
+	   "Subsidiary",
+	   "Is Invoiced",
+	   "Invoice Type",
+	   "Invoice Number",
+	   "Order Date",
+	   "Estimated Inbound Time",
+	   "Estimated Outbound Time",
+	   "Order Print Date",
+	   "Order Taking Employee No",
+	   "Order Delivery Employee No",
+	   "Vehicle Number",
+	   "Order Mileage",
+	   "Order Customer",
+	   "Paying Customer",
+	   "Holder Number",
+	   "Parts Rebate Group Sell",
+	   "Clearing Delay Type",
+	   '' as "Code_Labour_Type",
+	   '' as "Description_Labour_Type",
+	   "Hauptbetrieb",
+	   "Standort",
+	   "Name_Serviceberater",
+	   "Serviceberater",
+	   'Teile' as "Umsatzart",
+	   "Customer Number_Cust",
+	   "First Name_Cust",
+	   "Family Name_Cust",
+	   "Kunde",
+	   "Order Number",
+	   "Internal Number_Vehicle",
+	   "Vin_Vehicle",
+	   "License Plate_Vehicle",
+	   "Make Number_Vehicle",
+	   'Service' as "Auftragsart",
+	   "Make Number_Makes",
+	   "Description_Makes",
+	   "Description_Makes" as "Fabrikat",
+	   "Description_Models",
+	   "Model",
+	   1 as "DG_1",
+	   COUNT('') OVER (partition by "Order Number_ori") as "DG_2",
+	   "Part Number",
+	   "Stock No",
+	   "Stock Removal Date",
+	   "Amount",
+	   "Sum",
+	   "Parts Type",
+	   "Text Line",
+	   "Sum" as "Teile"
+from 
+(select T1."order_number" as "Order Number_ori",
+	   T2."sum" as "Sum",
+	   T2."text_line" as "Text Line",
+	   T2."parts_type" as "Parts Type",
+	   T2."amount" as "Amount",
+	   T2."stock_removal_date" as "Stock Removal Date",
+	   T2."stock_no" as "Stock No",
+	   T2."part_number" as "Part Number",
+	   (left((ucase(T7."description")),3)) as "Model",
+	   T7."description" as "Description_Models",
+	   T6."description" as "Description_Makes",
+	   T6."make_number" as "Make Number_Makes",
+	   T5."make_number" as "Make Number_Vehicle",
+	   T5."license_plate" as "License Plate_Vehicle",
+	   T5."vin" as "Vin_Vehicle",
+	   T5."internal_number" as "Internal Number_Vehicle",
+	   CASE WHEN (T5."license_plate" IS NOT NULL) THEN ((left((((T1."order_number"))),6)) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T3."name") END) + ' - ' + T4."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date"))) + ' - ' + T5."license_plate") ELSE ((left((((T1."order_number"))))) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T3."name") END) + ' - ' + T4."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date")))) END as "Order Number",
+	   (left((((T4."customer_number"))),7)) + ' - ' + T4."first_name" + ' ' + T4."family_name" as "Kunde",
+	   T4."family_name" as "Family Name_Cust",
+	   T4."first_name" as "First Name_Cust",
+	   T4."customer_number" as "Customer Number_Cust",
+	   CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T3."name") END as "Serviceberater",
+	   T3."name" as "Name_Serviceberater",
+	   '0' + (((T1."subsidiary"))) as "Standort",
+	   CASE WHEN (('0' + (((T1."subsidiary")))) IN ('015                                                                                                                                                                                                                                                            ')) THEN ('15') ELSE ('1') END as "Hauptbetrieb",
+	   T1."clearing_delay_type" as "Clearing Delay Type",
+	   T1."parts_rebate_group_sell" as "Parts Rebate Group Sell",
+	   T1."holder_number" as "Holder Number",
+	   T1."paying_customer" as "Paying Customer",
+	   T1."order_customer" as "Order Customer",
+	   T1."order_mileage" as "Order Mileage",
+	   T1."vehicle_number" as "Vehicle Number",
+	   T1."order_delivery_employee_no" as "Order Delivery Employee No",
+	   T1."order_taking_employee_no" as "Order Taking Employee No",
+	   T1."order_print_date" as "Order Print Date",
+	   T1."estimated_outbound_time" as "Estimated Outbound Time",
+	   T1."estimated_inbound_time" as "Estimated Inbound Time",
+	   T1."order_date" as "Order Date",
+	   T2."invoice_number" as "Invoice Number",
+	   T2."invoice_type" as "Invoice Type",
+	   T2."is_invoiced" as "Is Invoiced",
+	   T1."subsidiary" as "Subsidiary",
+	   T2."order_position" as "Order Position"
+from (((((("dbo"."order_positions" T1 left outer join "dbo"."parts" T2 on T1."order_number" = T2."order_number") left outer join "dbo"."employees" T3 on T1."order_taking_employee_no" = T3."employee_number") left outer join "dbo"."customers_suppliers" T4 on T1."order_customer" = T4."customer_number") left outer join "dbo"."vehicles" T5 on T1."vehicle_number" = T5."internal_number") left outer join "dbo"."makes" T6 on T5."make_number" = T6."make_number") left outer join "dbo"."models" T7 on (T5."make_number" = T7."make_number") and (T5."model_code" = T7."model_code"))
+where ((((T2."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2017-01-01 00:00:00.000'))) and (T2."sum" IS NOT NULL)) and ('' <> 'F'))
+) D1
+-- order by "Order Number_ori" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 117 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.offene_auftraege_ums_ben_aw_imr.sql

@@ -0,0 +1,117 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.offene_auftraege_ums_ben_aw_imr AS
+
+select "Order Number_ori",
+	   "Order Position",
+	   "Labour Type",
+	   "Subsidiary",
+	   "Is Invoiced",
+	   "Invoice Type",
+	   "Invoice Number",
+	   "Order Date",
+	   "Estimated Inbound Time",
+	   "Estimated Outbound Time",
+	   "Order Print Date",
+	   "Order Taking Employee No",
+	   "Order Delivery Employee No",
+	   "Vehicle Number",
+	   "Order Mileage",
+	   "Order Customer",
+	   "Paying Customer",
+	   "Holder Number",
+	   "Parts Rebate Group Sell",
+	   "Clearing Delay Type",
+	   "Code_Labour_Type",
+	   "Description_Labour_Type",
+	   "Hauptbetrieb",
+	   "Standort",
+	   "Name_Serviceberater",
+	   "Serviceberater",
+	   "Umsatzart",
+	   "Customer Number_Cust",
+	   "First Name_Cust",
+	   "Family Name_Cust",
+	   "Kunde",
+	   "Order Number",
+	   "Internal Number_Vehicle",
+	   "Vin_Vehicle",
+	   "License Plate_Vehicle",
+	   "Make Number_Vehicle",
+	   'Service' as "Auftragsart",
+	   "Make Number_Makes",
+	   "Description_Makes",
+	   "Description_Makes" as "Fabrikat",
+	   "Description_Models",
+	   "Model",
+	   1 as "DG_1",
+	   COUNT("Subsidiary") OVER (partition by "Order Number_ori") as "DG_2",
+	   "Order Number_Labours",
+	   "Order Position_Labours",
+	   "Net Price In Order",
+	   "Text Line",
+	   "Order Number_ben_AW",
+	   "Summe Duration Minutes_ben_AW",
+	   c57 / (COUNT("Subsidiary") OVER (partition by "Order Number_ori")) as "ben. Std",
+	   "Net Price In Order" as "Umsatz Lohn"
+from 
+(select T1."order_number" as "Order Number_ori",
+	   T2."net_price_in_order" as "Net Price In Order",
+	   T9."Summe_Duration_Minutes" / 60 as c57,
+	   T9."Summe_Duration_Minutes" as "Summe Duration Minutes_ben_AW",
+	   T9."order_number" as "Order Number_ben_AW",
+	   T2."text_line" as "Text Line",
+	   T2."order_position" as "Order Position_Labours",
+	   T2."order_number" as "Order Number_Labours",
+	   (left((ucase(T8."description")),3)) as "Model",
+	   T8."description" as "Description_Models",
+	   T7."description" as "Description_Makes",
+	   T7."make_number" as "Make Number_Makes",
+	   T6."make_number" as "Make Number_Vehicle",
+	   T6."license_plate" as "License Plate_Vehicle",
+	   T6."vin" as "Vin_Vehicle",
+	   T6."internal_number" as "Internal Number_Vehicle",
+	   CASE WHEN (T6."license_plate" IS NOT NULL) THEN ((left((((T1."order_number"))),6)) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T4."name") END) + ' - ' + T5."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date"))) + ' - ' + T6."license_plate") ELSE ((left((((T1."order_number"))))) + ' - ' + (CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T4."name") END) + ' - ' + T5."family_name" + ' - ' + (convert(varchar(50), year(T1."order_date")) + '-' + convert(varchar(50), month(T1."order_date")) + '-' + convert(varchar(50), day(T1."order_date")))) END as "Order Number",
+	   (left((((T5."customer_number"))),7)) + ' - ' + T5."first_name" + ' ' + T5."family_name" as "Kunde",
+	   T5."family_name" as "Family Name_Cust",
+	   T5."first_name" as "First Name_Cust",
+	   T5."customer_number" as "Customer Number_Cust",
+	   T3."code" + ' - ' + T3."description" as "Umsatzart",
+	   CASE WHEN (T1."order_taking_employee_no" = 0) THEN ('SB fehlt') ELSE ((left((((T1."order_taking_employee_no"))),4)) + ' - ' + T4."name") END as "Serviceberater",
+	   T4."name" as "Name_Serviceberater",
+	   '0' + (((T1."subsidiary"))) as "Standort",
+	   CASE WHEN (('0' + (((T1."subsidiary")))) IN ('015                                                                                                                                                                                                                                                            ')) THEN ('15') ELSE ('1') END as "Hauptbetrieb",
+	   T3."description" as "Description_Labour_Type",
+	   T3."code" as "Code_Labour_Type",
+	   T1."clearing_delay_type" as "Clearing Delay Type",
+	   T1."parts_rebate_group_sell" as "Parts Rebate Group Sell",
+	   T1."holder_number" as "Holder Number",
+	   T1."paying_customer" as "Paying Customer",
+	   T1."order_customer" as "Order Customer",
+	   T1."order_mileage" as "Order Mileage",
+	   T1."vehicle_number" as "Vehicle Number",
+	   T1."order_delivery_employee_no" as "Order Delivery Employee No",
+	   T1."order_taking_employee_no" as "Order Taking Employee No",
+	   T1."order_print_date" as "Order Print Date",
+	   T1."estimated_outbound_time" as "Estimated Outbound Time",
+	   T1."estimated_inbound_time" as "Estimated Inbound Time",
+	   T1."order_date" as "Order Date",
+	   T2."invoice_number" as "Invoice Number",
+	   T2."invoice_type" as "Invoice Type",
+	   T2."is_invoiced" as "Is Invoiced",
+	   T1."subsidiary" as "Subsidiary",
+	   T2."labour_type" as "Labour Type",
+	   T1."order_position" as "Order Position"
+from (((((((("dbo"."order_positions" T1 left outer join "dbo"."labours" T2 on T1."order_number" = T2."order_number") left outer join "dbo"."labour_types" T3 on T3."code" = T2."labour_type") left outer join "dbo"."employees" T4 on T1."order_taking_employee_no" = T4."employee_number") left outer join "dbo"."customers_suppliers" T5 on T1."order_customer" = T5."customer_number") left outer join "dbo"."vehicles" T6 on T1."vehicle_number" = T6."internal_number") left outer join "dbo"."makes" T7 on T6."make_number" = T7."make_number") left outer join "dbo"."models" T8 on (T6."make_number" = T8."make_number") and (T6."model_code" = T8."model_code")) left outer join "ims"."ben_AW_Order_Number" T9 on T2."order_number" = T9."order_number")
+where ((((T2."invoice_number" IS NULL) and (T1."order_date" >= convert(datetime, '2017-01-01 00:00:00.000'))) and (T2."net_price_in_order" IS NOT NULL)) and (T2."labour_type" <> 'F'))
+-- order by "Order Number_ori" asc
+) D1
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 26 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.op_aus_loc_belege_8520_imr.sql

@@ -0,0 +1,26 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.op_aus_loc_belege_8520_imr AS
+
+select distinct T1."document_type" as "Document Type",
+	   T1."nominal_account_number" as "Nominal Account Number",
+	   T1."customer_contra_account" as "Customer Contra Account",
+	   T1."invoice_number" as "Invoice Number",
+	   T1."skr51_branch" as "Skr51 Branch",
+	   '1' as "Rechtseinheit",
+	   '0' + (((T1."skr51_branch"))) as "Betrieb",
+	   '1' as "Mandant",
+	   '1' as "Hauptbetrieb",
+	   ('0' + (((T1."skr51_branch")))) as "Standort"
+from "journal_accountings" T1
+where (((T1."nominal_account_number" IN (8520)) and (T1."document_type" = 'R')) and (T1."invoice_date" >= convert(date, '2016-01-01')))
+-- order by "Invoice Number" asc,"Nominal Account Number" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

File diff suppressed because it is too large
+ 196 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.op_aus_loc_belege_deb_saldo_imr.sql


+ 173 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.op_aus_loc_belege_nur_8520_imr.sql

@@ -0,0 +1,173 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.op_aus_loc_belege_nur_8520_imr AS
+
+select "Accounting Date",
+	   "Document Type",
+	   "Document Number",
+	   "Position In Document",
+	   "Nominal Account Number",
+	   "Customer Number",
+	   "Is Balanced",
+	   "Clearing Number",
+	   "Document Date",
+	   "Posted Value",
+	   "Debit Or Credit",
+	   "Posted Count",
+	   "Branch Number",
+	   "Customer Contra Account",
+	   "Nominal Contra Account",
+	   "Contra Account Text",
+	   "Account Form Page Number",
+	   "Account Form Page Line",
+	   "Serial Number Each Month",
+	   "Employee Number",
+	   "Invoice Date",
+	   "Invoice Number",
+	   "Dunning Level",
+	   "Last Dunning Date",
+	   "Journal Page",
+	   "Journal Line",
+	   "Cash Discount",
+	   "Term Of Payment",
+	   "Posting Text",
+	   "Vehicle Reference",
+	   "Vat Id Number",
+	   "Account Statement Number",
+	   "Account Statement Page",
+	   "Vat Key",
+	   "Days For Cash Discount",
+	   "Day Of Actual Accounting",
+	   "Skr51 Branch",
+	   "Skr51 Make",
+	   "Skr51 Cost Center",
+	   "Skr51 Sales Channel",
+	   "Skr51 Cost Unit",
+	   "Previously Used Account No",
+	   "Free Form Accounting Text",
+	   "Free Form Document Text",
+	   '1' as "Rechtseinheit",
+	   "Betrieb",
+	   "Accounting Date" as "Bookkeep Date",
+	   "Text",
+	   '1' as "Mandant",
+	   "Betrag",
+	   "Menge",
+	   "Nominal Account Number" as "Acct Nr",
+	   "Customer Number_suctomer_supplier",
+	   "Is Supplier",
+	   "First Name",
+	   "Family Name",
+	   "Document Type In Journal",
+	   "Document Type Description",
+	   SUM("Betrag") OVER (partition by "Customer Number_suctomer_supplier") as "Debitorsaldo_",
+	   "Invoice Type_Invoices",
+	   "Invoice Number_Invoices",
+	   "Subsidiary_Invoices",
+	   "Invoice Date_Invoices",
+	   "Hauptbetrieb",
+	   "Standort_ori",
+	   "Sel Name",
+	   "Betrag" as "OP-Saldo",
+	   "Kostenstelle",
+	   "Tage",
+	   "Staffel",
+	   "Kunde",
+	   "Beleg",
+	   "Employee Number_Employees_journal_accountings",
+	   "Name_Employees_journal_accountings",
+	   "Anzahl_Stellen_Invoice_Number",
+	   "Forderungsart_aus_erste_Stelle_Inv_Number",
+	   "Forderungsart",
+	   "Standort_aus_2_Stelle_Invoice_Number",
+	   "Betrieb" as "Standort",
+	   "Standort_ims_8520"
+from 
+(select T3."customer_number" as "Customer Number_suctomer_supplier",
+	   T6."Standort" as "Standort_ims_8520",
+	   ('0' + (((T1."subsidiary_to_company_ref")))) as "Betrieb",
+	   CASE WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((substring(T1."invoice_number", 2, 1)) BETWEEN '1' AND '4')) THEN ('0' + (substring(T1."invoice_number", 2, 1))) ELSE null END as "Standort_aus_2_Stelle_Invoice_Number",
+	   CASE WHEN (T1."dunning_level" = 'Gesperrt') THEN ('Versicherung') ELSE ((CASE WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('2','3','4'))) THEN ('Service') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('5'))) THEN ('Teile') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('6'))) THEN ('Garantie') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('7'))) THEN ('Neuwagen') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('8'))) THEN ('Gebrauchtwagen') WHEN (T1."document_type" = 'R') THEN ('Rent') ELSE ('nicht zuzuordnen') END)) END as "Forderungsart",
+	   CASE WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('2','3','4'))) THEN ('Service') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('5'))) THEN ('Teile') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('6'))) THEN ('Garantie') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('7'))) THEN ('Neuwagen') WHEN ((((len(T1."invoice_number" + 'Z') - 1)) = 7) and ((left(T1."invoice_number",1)) IN ('8'))) THEN ('Gebrauchtwagen') WHEN (T1."document_type" = 'R') THEN ('Rent') ELSE ('nicht zuzuordnen') END as "Forderungsart_aus_erste_Stelle_Inv_Number",
+	   (len(T1."invoice_number" + 'Z') - 1) as "Anzahl_Stellen_Invoice_Number",
+	   T2."name" as "Name_Employees_journal_accountings",
+	   T2."employee_number" as "Employee Number_Employees_journal_accountings",
+	   CASE WHEN (T1."posting_text" IS NOT NULL) THEN ((substring((convert(varchar(50), ((T1."document_number")))), 1, 7)) + ' - ' + T1."posting_text" + ' - ' + (convert(varchar(50), year(T1."document_date")) + '-' + convert(varchar(50), month(T1."document_date")) + '-' + convert(varchar(50), day(T1."document_date")))) ELSE ((convert(varchar(50), year(T1."document_date")) + '-' + convert(varchar(50), month(T1."document_date")) + '-' + convert(varchar(50), day(T1."document_date")))) END as "Beleg",
+	   CASE WHEN (T3."first_name" <> ' ') THEN ((left((((T3."customer_number"))),7)) + ' - ' + T3."first_name" + ' ' + T3."family_name") ELSE ((left((((T3."customer_number"))),7)) + ' - ' + T3."family_name") END as "Kunde",
+	   CASE WHEN (((-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date"))))) BETWEEN 0 AND 14) THEN ('< 2 Wochen') WHEN (((-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date"))))) BETWEEN 15 AND 28) THEN ('2 - 4 Wochen') WHEN (((-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date"))))) BETWEEN 29 AND 42) THEN ('4 - 6 Wochen') WHEN (((-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date"))))) BETWEEN 43 AND 84) THEN ('6 - 12 Wochen') WHEN (((-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date"))))) > 84) THEN ('> 12 Wochen') ELSE null END as "Staffel",
+	   (-1 * datediff(day, (getdate()), (convert(datetime, T1."accounting_date")))) as "Tage",
+	   CASE WHEN (T5."invoice_type" IN (2,4,6,3)) THEN ('3') WHEN (T5."invoice_type" IN (5)) THEN ('6') WHEN (T5."invoice_type" IN (7)) THEN ('1') WHEN (T5."invoice_type" IN (8)) THEN ('2') WHEN (T4."document_type_in_journal" = 'R') THEN ('7') ELSE null END as "Kostenstelle",
+	   (CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_value" / 100 * -1) ELSE (T1."posted_value" / 100) END) as "Betrag",
+	   (left((((T2."employee_number"))),3)) + ' - ' + T2."name" as "Sel Name",
+	   CASE WHEN (T5."subsidiary" IS NOT NULL) THEN ('0' + (left((((T5."subsidiary"))),1))) ELSE ('nicht zuzuordnen') END as "Standort_ori",
+	   CASE WHEN ((('0' + (((T1."subsidiary_to_company_ref"))))) IN ('015                                                                                                                                                                                                                                                            ')) THEN ('15') ELSE ('1') END as "Hauptbetrieb",
+	   T5."invoice_date" as "Invoice Date_Invoices",
+	   T5."subsidiary" as "Subsidiary_Invoices",
+	   T5."invoice_number" as "Invoice Number_Invoices",
+	   T5."invoice_type" as "Invoice Type_Invoices",
+	   T4."document_type_description" as "Document Type Description",
+	   T4."document_type_in_journal" as "Document Type In Journal",
+	   T3."family_name" as "Family Name",
+	   T3."first_name" as "First Name",
+	   T3."is_supplier" as "Is Supplier",
+	   T1."nominal_account_number" as "Nominal Account Number",
+	   CASE WHEN (T1."debit_or_credit" = 'H') THEN (T1."posted_count" / 100 * -1) ELSE (T1."posted_count" / 100) END as "Menge",
+	   ((rtrim((convert(varchar(50), ((T1."document_number")))))) + ' - ' + T1."invoice_number" + ' - ' + T1."posting_text" + '/' + T1."vehicle_reference" + ' - ' + ((left((((T2."employee_number"))))) + ' - ' + T2."name")) as "Text",
+	   T1."accounting_date" as "Accounting Date",
+	   T1."free_form_document_text" as "Free Form Document Text",
+	   T1."free_form_accounting_text" as "Free Form Accounting Text",
+	   T1."previously_used_account_no" as "Previously Used Account No",
+	   T1."skr51_cost_unit" as "Skr51 Cost Unit",
+	   T1."skr51_sales_channel" as "Skr51 Sales Channel",
+	   T1."skr51_cost_center" as "Skr51 Cost Center",
+	   T1."skr51_make" as "Skr51 Make",
+	   T1."skr51_branch" as "Skr51 Branch",
+	   T1."day_of_actual_accounting" as "Day Of Actual Accounting",
+	   T1."days_for_cash_discount" as "Days For Cash Discount",
+	   T1."vat_key" as "Vat Key",
+	   T1."account_statement_page" as "Account Statement Page",
+	   T1."account_statement_number" as "Account Statement Number",
+	   T1."vat_id_number" as "Vat Id Number",
+	   T1."vehicle_reference" as "Vehicle Reference",
+	   T1."posting_text" as "Posting Text",
+	   T1."term_of_payment" as "Term Of Payment",
+	   T1."cash_discount" as "Cash Discount",
+	   T1."journal_line" as "Journal Line",
+	   T1."journal_page" as "Journal Page",
+	   T1."last_dunning_date" as "Last Dunning Date",
+	   T1."dunning_level" as "Dunning Level",
+	   T1."invoice_number" as "Invoice Number",
+	   T1."invoice_date" as "Invoice Date",
+	   T1."employee_number" as "Employee Number",
+	   T1."serial_number_each_month" as "Serial Number Each Month",
+	   T1."account_form_page_line" as "Account Form Page Line",
+	   T1."account_form_page_number" as "Account Form Page Number",
+	   T1."contra_account_text" as "Contra Account Text",
+	   T1."nominal_contra_account" as "Nominal Contra Account",
+	   T1."customer_contra_account" as "Customer Contra Account",
+	   T1."branch_number" as "Branch Number",
+	   T1."posted_count" as "Posted Count",
+	   T1."debit_or_credit" as "Debit Or Credit",
+	   T1."posted_value" as "Posted Value",
+	   T1."document_date" as "Document Date",
+	   T1."clearing_number" as "Clearing Number",
+	   T1."is_balanced" as "Is Balanced",
+	   T1."customer_number" as "Customer Number",
+	   T1."position_in_document" as "Position In Document",
+	   (T1."document_number") as "Document Number",
+	   T1."document_type" as "Document Type"
+from "ims"."OP_aus_LOC_Belege_8520" T6,
+	(((("journal_accountings" T1 left outer join "LOCOSOFT"."dbo"."employees" T2 on T1."employee_number" = T2."employee_number") left outer join "LOCOSOFT"."dbo"."customers_suppliers" T3 on T3."customer_number" = T1."customer_number") left outer join "document_types" T4 on T4."document_type_in_journal" = T1."document_type") left outer join "invoices" T5 on T5."invtype_invnr" = T1."invoice_number")
+where ((T1."invoice_number" = T6."invoice_number") and (T1."customer_number" = T6."customer_contra_account"))
+and (((((T1."nominal_account_number" IN (1400,1409,1451,1408,1525)) and (T1."clearing_number" = 0)) and (T1."customer_number" IS NOT NULL)) and (not T4."document_type_in_journal" IN ('A','E','U','V','L'))) and (T3."customer_number" IS NOT NULL))
+) D1
+-- order by "Customer Number" asc,"Document Type In Journal" asc,"Nominal Account Number" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

File diff suppressed because it is too large
+ 196 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.op_aus_loc_belege_ohne_8520_imr.sql


+ 130 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.zeit_abwesenheit_neu_imr.sql

@@ -0,0 +1,130 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.zeit_abwesenheit_neu_imr AS
+
+select "Employee Number_Employees" as "Employee Number_Employees",
+	   "Name_Employees" as "Name_Employees",
+	   "Initials_Employees" as "Initials_Employees",
+	   "Mechanic Number_Employees" as "Mechanic Number_Employees",
+	   "Salesman Number_Employees" as "Salesman Number_Employees",
+	   "Employment Date_Employees" as "Employment Date_Employees",
+	   "Termination Date_Employees" as "Termination Date_Employees",
+	   "Leave Date_Employees" as "Leave Date_Employees",
+	   "Employee Number_Absence_Cal" as "Employee Number_Absence_Cal",
+	   "Date_Absence_Cal" as "Date_Absence_Cal",
+	   "Type_Absence_Cal" as "Type_Absence_Cal",
+	   "Is Payed_Absence_Cal" as "Is Payed_Absence_Cal",
+	   "Day Contingent_Absence_Cal" as "Day Contingent_Absence_Cal",
+	   "Reason_Absence_Cal" as "Reason_Absence_Cal",
+	   "Booking Flag_Absence_Cal" as "Booking Flag_Absence_Cal",
+	   "Id_Absence_Reas" as "Id_Absence_Reas",
+	   "Description_Absence_Reas" as "Description_Absence_Reas",
+	   "Is Annual Vacation_Absence_Reas" as "Is Annual Vacation_Absence_Reas",
+	   "Type_Absence_Types" as "Type_Absence_Types",
+	   "Description_Absence_Types" as "Description_Absence_Types",
+	   "Hauptbetrieb" as "Hauptbetrieb",
+	   "Standort" as "Standort",
+	   "Monteur" as "Monteur",
+	   "Dummy_Arbeitszeit_Tag" as "Dummy_Arbeitszeit_Tag",
+	   "Abwesenheit" as "Abwesenheit",
+	   "Zeitkategorie" as "Zeitkategorie",
+	   "Zeitkategorie2" as "Zeitkategorie2",
+	   "Ges. Std." as "Ges. Std.",
+	   "Datum" as "Datum",
+	   "Order Number" as "Order Number",
+	   "Wochentag_Datum" as "Wochentag_Datum",
+	   "Validity Date_Worktimes" as "Validity Date_Worktimes",
+	   "Dayofweek_Worktimes" as "Dayofweek_Worktimes",
+	   "Work Duration_Worktimes" as "Work Duration_Worktimes",
+	   "Worktime Start_Worktimes" as "Worktime Start_Worktimes",
+	   "Worktime End_Worktimes" as "Worktime End_Worktimes",
+	   MAX("Validity Date_Worktimes") OVER (partition by "Employee Number_Employees") as "Max_Validity_Date_Worktimes",
+	   "Arbeitszeit_Tag" as "Arbeitszeit_Tag"
+from 
+(select "Employee Number_Employees",
+	   "Name_Employees",
+	   "Initials_Employees",
+	   "Mechanic Number_Employees",
+	   "Salesman Number_Employees",
+	   "Employment Date_Employees",
+	   "Termination Date_Employees",
+	   "Leave Date_Employees",
+	   "Employee Number_Absence_Cal",
+	   "Date_Absence_Cal",
+	   "Type_Absence_Cal",
+	   "Is Payed_Absence_Cal",
+	   "Day Contingent_Absence_Cal",
+	   "Reason_Absence_Cal",
+	   "Booking Flag_Absence_Cal",
+	   "Id_Absence_Reas",
+	   "Description_Absence_Reas",
+	   "Is Annual Vacation_Absence_Reas",
+	   "Type_Absence_Types",
+	   "Description_Absence_Types",
+	   '1' as "Hauptbetrieb",
+	   "Standort",
+	   "Monteur",
+	   8 as "Dummy_Arbeitszeit_Tag",
+	   "Abwesenheit",
+	   'Abwesenheit' as "Zeitkategorie",
+	   "Zeitkategorie2",
+	   "Abwesenheit" as "Ges. Std.",
+	   "Date_Absence_Cal" as "Datum",
+	   '' as "Order Number",
+	   "Wochentag_Datum",
+	   "Validity Date_Worktimes",
+	   "Dayofweek_Worktimes",
+	   "Work Duration_Worktimes",
+	   "Worktime Start_Worktimes",
+	   "Worktime End_Worktimes",
+	   "Work Duration_Worktimes" as "Arbeitszeit_Tag",
+	   MAX("Validity Date_Worktimes") OVER (partition by "Employee Number_Employees") as c39
+from 
+(select T1."employee_number" as "Employee Number_Employees",
+	   T5."work_duration" as "Work Duration_Worktimes",
+	   T5."worktime_end" as "Worktime End_Worktimes",
+	   T5."worktime_start" as "Worktime Start_Worktimes",
+	   T5."dayofweek" as "Dayofweek_Worktimes",
+	   T5."validity_date" as "Validity Date_Worktimes",
+	   (datepart(weekday, T2."date")) as "Wochentag_Datum",
+	   T2."date" as "Date_Absence_Cal",
+	   (T2."day_contingent" * T5."work_duration") as "Abwesenheit",
+	   T3."id" + ' - ' + T3."description" as "Zeitkategorie2",
+	   (rtrim((((T1."employee_number"))))) + ' - ' + T1."name" as "Monteur",
+	   '0' + (rtrim((((T1."subsidiary"))))) as "Standort",
+	   T4."description" as "Description_Absence_Types",
+	   T4."type" as "Type_Absence_Types",
+	   T3."is_annual_vacation" as "Is Annual Vacation_Absence_Reas",
+	   T3."description" as "Description_Absence_Reas",
+	   T3."id" as "Id_Absence_Reas",
+	   T2."booking_flag" as "Booking Flag_Absence_Cal",
+	   T2."reason" as "Reason_Absence_Cal",
+	   T2."day_contingent" as "Day Contingent_Absence_Cal",
+	   T2."is_payed" as "Is Payed_Absence_Cal",
+	   T2."type" as "Type_Absence_Cal",
+	   T2."employee_number" as "Employee Number_Absence_Cal",
+	   T1."leave_date" as "Leave Date_Employees",
+	   T1."termination_date" as "Termination Date_Employees",
+	   T1."employment_date" as "Employment Date_Employees",
+	   T1."salesman_number" as "Salesman Number_Employees",
+	   T1."mechanic_number" as "Mechanic Number_Employees",
+	   T1."initials" as "Initials_Employees",
+	   T1."name" as "Name_Employees"
+from "dbo"."employees" T1,
+	"LOCOSOFT"."dbo"."employees_worktimes" T5,
+	(("dbo"."absence_calendar" T2 left outer join "dbo"."absence_reasons" T3 on T2."reason" = T3."id") left outer join "dbo"."absence_types" T4 on T2."type" = T4."type")
+where (T1."employee_number" = T2."employee_number") and (T1."employee_number" = T5."employee_number")
+and ((((datepart(weekday, T2."date"))) = T5."dayofweek") and (((T2."date")) <= (getdate())))
+) D2
+) D1
+where ("Validity Date_Worktimes" = c39)
+-- order by "Employee Number_Employees" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 88 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.zeit_ben_std_lg_imr.sql

@@ -0,0 +1,88 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.zeit_ben_std_lg_imr AS
+
+select distinct "Order Number" as "Order Number",
+	   "Labour Type" as "Labour Type",
+	   "Code_Labour_Types" as "Code_Labour_Types",
+	   "Description_Labour_Types" as "Description_Labour_Types",
+	   "Order Number_Labours" as "Order Number_Labours",
+	   "Subsidiary_Labours" as "Subsidiary_Labours",
+	   "Invoice Type_Labours" as "Invoice Type_Labours",
+	   "Mechanic No_Labours" as "Mechanic No_Labours",
+	   "AW/Std." as "AW/Std.",
+	   "Zeitkategorie" as "Zeitkategorie",
+	   "Zeitkategorie2" as "Zeitkategorie2",
+	   "Employee Number_Employee" as "Employee Number_Employee",
+	   "Name_Employee" as "Name_Employee",
+	   "Monteur" as "Monteur",
+	   "Invoice Date_Invoices" as "Invoice Date_Invoices",
+	   "Datum" as "Datum",
+	   "Duration Minutes_Times" as "Duration Minutes_Times",
+	   "ben. Std." as "ben. Std.",
+	   "Invoice Number" as "Invoice Number",
+	   "Is Canceled" as "Is Canceled",
+	   "Cancelation Number" as "Cancelation Number",
+	   "Cancelation Date" as "Cancelation Date",
+	   "Start Time" as "Start Time",
+	   "End Time" as "End Time",
+	   MIN("Invoice Date_Invoices") OVER (partition by "Order Number","Mechanic No_Labours") as "Min_Invoice_Date"
+from 
+(select "Order Number",
+	   '' as "Labour Type",
+	   '' as "Code_Labour_Types",
+	   '' as "Description_Labour_Types",
+	   "Order Number_Labours",
+	   "Subsidiary_Labours",
+	   0 as "Invoice Type_Labours",
+	   "Mechanic No_Labours",
+	   10 as "AW/Std.",
+	   'ben. Std.' as "Zeitkategorie",
+	   '' as "Zeitkategorie2",
+	   "Employee Number_Employee",
+	   "Name_Employee",
+	   "Monteur",
+	   "Invoice Date_Invoices",
+	   "Invoice Date_Invoices" as "Datum",
+	   "Duration Minutes_Times",
+	   "ben. Std.",
+	   0 as "Invoice Number",
+	   "Is Canceled",
+	   "Cancelation Number",
+	   "Cancelation Date",
+	   "Start Time",
+	   "End Time",
+	   MIN("Invoice Date_Invoices") OVER (partition by "Order Number","Mechanic No_Labours") as c26
+from 
+(select T2."mechanic_no" as "Mechanic No_Labours",
+	   T1."order_number" as "Order Number",
+	   T5."end_time" as "End Time",
+	   T5."start_time" as "Start Time",
+	   T4."cancelation_date" as "Cancelation Date",
+	   T4."cancelation_number" as "Cancelation Number",
+	   T4."is_canceled" as "Is Canceled",
+	   (T5."exact_duration_seconds" / 60) / 60 as "ben. Std.",
+	   T5."exact_duration_seconds" / 60 as "Duration Minutes_Times",
+	   T4."invoice_date" as "Invoice Date_Invoices",
+	   (rtrim((((T3."employee_number"))))) + ' - ' + T3."name" as "Monteur",
+	   T3."name" as "Name_Employee",
+	   T3."employee_number" as "Employee Number_Employee",
+	   '0' + (rtrim((((T3."subsidiary"))))) as "Subsidiary_Labours",
+	   T2."order_number" as "Order Number_Labours"
+from "LOCOSOFT"."dbo"."times" T5,
+	("dbo"."invoices" T4 left outer join (("dbo"."order_positions" T1 left outer join "dbo"."labours" T2 on T1."order_number" = T2."order_number") left outer join "dbo"."employees" T3 on T2."mechanic_no" = T3."employee_number") on (T2."invoice_number" = T4."invoice_number") and (T2."invoice_type" = T4."invoice_type"))
+where ((T2."order_number" = T5."order_number") and (T2."mechanic_no" = T5."employee_number"))
+and (((convert(float, T2."time_units"))) <> 0)
+) D2
+) D1
+where (c26 = "Invoice Date_Invoices")
+-- order by "Order Number" asc,"Mechanic No_Labours" asc,"Start Time" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 48 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.zeit_stempelungen_neu_imr.sql

@@ -0,0 +1,48 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.zeit_stempelungen_neu_imr AS
+
+select T1."employee_number" as "Employee Number_Employees",
+	   T1."name" as "Name_Employees",
+	   T1."initials" as "Initials_Employees",
+	   T1."mechanic_number" as "Mechanic Number_Employees",
+	   T1."salesman_number" as "Salesman Number_Employees",
+	   T1."employment_date" as "Employment Date_Employees",
+	   T1."termination_date" as "Termination Date_Employees",
+	   T1."leave_date" as "Leave Date_Employees",
+	   T2."employee_number" as "Employee Number_Times",
+	   T2."order_number" as "Order Number_Times",
+	   T2."start_time" as "Start Time_Times",
+	   T2."type" as "Type_Times",
+	   T3."Order Number" as "Order Positions_Times",
+	   T2."end_time" as "End Time_Times",
+	   T2."exact_duration_seconds" / 60 as "Duration Minutes_Times",
+	   T4."type" as "Type_Time_Types",
+	   T4."description" as "Description_Time_Types",
+	   T2."start_time" as "Datum",
+	   '1' as "Hauptbetrieb",
+	   '0' + (rtrim((((T1."subsidiary"))))) as "Standort",
+	   (rtrim((((T1."employee_number"))))) + ' - ' + T1."name" as "Monteur",
+	   CASE WHEN (T4."type" = 1) THEN ((T2."exact_duration_seconds" / 60) / 60) ELSE (0) END as "Anwesenheit",
+	   CASE WHEN (T4."type" = 2) THEN ((T2."exact_duration_seconds" / 60) / 60) ELSE (0) END as "produktiv",
+	   CASE WHEN (T4."type" = 1) THEN ((T2."exact_duration_seconds" / 60) / 60) ELSE (0) END as "unproduktiv",
+	   CASE WHEN (T2."type" = 2) THEN ('produktiv') ELSE ('unproduktiv') END as "Zeitkategorie",
+	   '' as "Zeitkategorie2",
+	   (T2."exact_duration_seconds" / 60) / 60 as "Ges. Std.",
+	   T2."order_number" as "Order Number",
+	   (datepart(weekday, T2."start_time")) as "Wochentag_Datum",
+	   T1."is_flextime" as "Is Flextime_Employees",
+	   T1."break_time_registration" as "Break Time Registration_Employees"
+from "dbo"."employees" T1,
+	(("dbo"."times" T2 left outer join "dbo"."time_types" T4 on T2."type" = T4."type") left outer join "ims"."offene_Auftraege_Ums_ben_AW_fuer_Monteure" T3 on T3."order_number" = T2."order_number")
+where (T1."employee_number" = T2."employee_number")
+-- order by "Employee Number_Employees" asc,"Start Time_Times" asc,"Order Number_Times" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 181 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.zeit_stempelungen_pausen_imr.sql

@@ -0,0 +1,181 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.zeit_stempelungen_pausen_imr AS
+
+select "Employee Number_Employees" as "Employee Number_Employees",
+	   "Name_Employees" as "Name_Employees",
+	   "Initials_Employees" as "Initials_Employees",
+	   "Mechanic Number_Employees" as "Mechanic Number_Employees",
+	   "Salesman Number_Employees" as "Salesman Number_Employees",
+	   "Employment Date_Employees" as "Employment Date_Employees",
+	   "Termination Date_Employees" as "Termination Date_Employees",
+	   "Leave Date_Employees" as "Leave Date_Employees",
+	   "Employee Number_Times" as "Employee Number_Times",
+	   "Order Number_Times" as "Order Number_Times",
+	   "Start Time_Times" as "Start Time_Times",
+	   "Type_Times" as "Type_Times",
+	   "Order Positions_Times" as "Order Positions_Times",
+	   "End Time_Times" as "End Time_Times",
+	   "Duration Minutes_Times" as "Duration Minutes_Times",
+	   "Type_Time_Types" as "Type_Time_Types",
+	   "Description_Time_Types" as "Description_Time_Types",
+	   "Datum" as "Datum",
+	   "Hauptbetrieb" as "Hauptbetrieb",
+	   "Standort" as "Standort",
+	   "Monteur" as "Monteur",
+	   "Anwesenheit_" as "Anwesenheit_",
+	   "produktiv_" as "produktiv_",
+	   "unproduktiv_" as "unproduktiv_",
+	   "Zeitkategorie" as "Zeitkategorie",
+	   "Zeitkategorie2" as "Zeitkategorie2",
+	   "Ges. Std._" as "Ges. Std._",
+	   "Order Number" as "Order Number",
+	   "Wochentag_Datum" as "Wochentag_Datum",
+	   "Is Flextime_Employees" as "Is Flextime_Employees",
+	   "Break Time Registration_Employees" as "Break Time Registration_Employees",
+	   "Is Latest Record_break_times" as "Is Latest Record_break_times",
+	   "Dayofweek_break_times" as "Dayofweek_break_times",
+	   "Break Start_break_times" as "Break Start_break_times",
+	   "Break End_break_times" as "Break End_break_times",
+	   "Pause" as "Pause",
+	   "Start_Times_Stunde" as "Start_Times_Stunde",
+	   "Start_Times_Minute" as "Start_Times_Minute",
+	   "End_Times_Stunde" as "End_Times_Stunde",
+	   "End_Times_Minute" as "End_Times_Minute",
+	   "Start_Times_Minute_Dezimal" as "Start_Times_Minute_Dezimal",
+	   "Start_Times_Dezimal" as "Start_Times_Dezimal",
+	   "End_Times_Minute_Dezimal" as "End_Times_Minute_Dezimal",
+	   "End_Times_Dezimal" as "End_Times_Dezimal",
+	   "Pausenzeit_Stunde" as "Pausenzeit_Stunde",
+	   "Dayofweek_Worktimes" as "Dayofweek_Worktimes",
+	   "Work Duration_Worktimes" as "Work Duration_Worktimes",
+	   "Worktime Start_Worktimes" as "Worktime Start_Worktimes",
+	   "Worktime End_Worktimes" as "Worktime End_Worktimes",
+	   "Validity Date_Worktimes" as "Validity Date_Worktimes",
+	   MAX("Validity Date_Worktimes") OVER (partition by "Employee Number_Employees") as "Max_Validity_Date",
+	   "Validity Date_Break_times" as "Validity Date_Break_times",
+	   MAX("Validity Date_Break_times") OVER (partition by "Employee Number_Employees") as "Max_validity_date_Break_times",
+	   "Pausenzeit_Anw_mehr_als_6" as "Pausenzeit_Anw_mehr_als_6",
+	   "Anwesenheit" as "Anwesenheit"
+from 
+(select "Employee Number_Employees",
+	   "Name_Employees",
+	   "Initials_Employees",
+	   "Mechanic Number_Employees",
+	   "Salesman Number_Employees",
+	   "Employment Date_Employees",
+	   "Termination Date_Employees",
+	   "Leave Date_Employees",
+	   "Employee Number_Times",
+	   "Order Number_Times",
+	   "Start Time_Times",
+	   "Type_Times",
+	   "Order Positions_Times",
+	   "End Time_Times",
+	   "Duration Minutes_Times",
+	   "Type_Time_Types",
+	   "Description_Time_Types",
+	   "Start Time_Times" as "Datum",
+	   '1' as "Hauptbetrieb",
+	   "Standort",
+	   "Monteur",
+	   "Anwesenheit_",
+	   "produktiv_",
+	   "Anwesenheit_" as "unproduktiv_",
+	   "Zeitkategorie",
+	   '' as "Zeitkategorie2",
+	   "Ges. Std._",
+	   "Order Number_Times" as "Order Number",
+	   "Wochentag_Datum",
+	   "Is Flextime_Employees",
+	   "Break Time Registration_Employees",
+	   "Is Latest Record_break_times",
+	   "Dayofweek_break_times",
+	   "Break Start_break_times",
+	   "Break End_break_times",
+	   "Pause",
+	   "Start_Times_Stunde",
+	   "Start_Times_Minute",
+	   "End_Times_Stunde",
+	   "End_Times_Minute",
+	   "Start_Times_Minute_Dezimal",
+	   "Start_Times_Dezimal",
+	   "End_Times_Minute_Dezimal",
+	   "End_Times_Dezimal",
+	   "Pause" as "Pausenzeit_Stunde",
+	   "Dayofweek_Worktimes",
+	   "Work Duration_Worktimes",
+	   "Worktime Start_Worktimes",
+	   "Worktime End_Worktimes",
+	   "Validity Date_Worktimes",
+	   "Validity Date_Break_times",
+	   "Pausenzeit_Anw_mehr_als_6",
+	   "Pausenzeit_Anw_mehr_als_6" as "Anwesenheit",
+	   MAX("Validity Date_Worktimes") OVER (partition by "Employee Number_Employees") as c56,
+	   MAX("Validity Date_Break_times") OVER (partition by "Employee Number_Employees") as c57
+from 
+(select T1."employee_number" as "Employee Number_Employees",
+	   (CASE WHEN ((CASE WHEN (T3."type" = 1) THEN (T2."duration_minutes" / 60) ELSE (0) END) >= 6.1) THEN ((T4."break_end" - T4."break_start") * -1) ELSE (0) END) as "Pausenzeit_Anw_mehr_als_6",
+	   T4."validity_date" as "Validity Date_Break_times",
+	   T5."validity_date" as "Validity Date_Worktimes",
+	   T5."worktime_end" as "Worktime End_Worktimes",
+	   T5."worktime_start" as "Worktime Start_Worktimes",
+	   T5."work_duration" as "Work Duration_Worktimes",
+	   T5."dayofweek" as "Dayofweek_Worktimes",
+	   T4."break_end" - T4."break_start" as "Pause",
+	   ((od_hour(T2."end_time"))) + (((od_minute(T2."end_time"))) / 60) as "End_Times_Dezimal",
+	   ((od_minute(T2."end_time"))) / 60 as "End_Times_Minute_Dezimal",
+	   ((od_hour(T2."start_time"))) + (((od_minute(T2."start_time"))) / 60) as "Start_Times_Dezimal",
+	   ((od_minute(T2."start_time"))) / 60 as "Start_Times_Minute_Dezimal",
+	   (od_minute(T2."end_time")) as "End_Times_Minute",
+	   (od_hour(T2."end_time")) as "End_Times_Stunde",
+	   (od_minute(T2."start_time")) as "Start_Times_Minute",
+	   (od_hour(T2."start_time")) as "Start_Times_Stunde",
+	   T4."break_end" as "Break End_break_times",
+	   T4."break_start" as "Break Start_break_times",
+	   T4."dayofweek" as "Dayofweek_break_times",
+	   T4."is_latest_record" as "Is Latest Record_break_times",
+	   T1."break_time_registration" as "Break Time Registration_Employees",
+	   T1."is_flextime" as "Is Flextime_Employees",
+	   (datepart(weekday, T2."start_time")) as "Wochentag_Datum",
+	   T2."order_number" as "Order Number_Times",
+	   T2."duration_minutes" / 60 as "Ges. Std._",
+	   CASE WHEN (T2."type" = 2) THEN ('produktiv') ELSE ('unproduktiv') END as "Zeitkategorie",
+	   CASE WHEN (T3."type" = 1) THEN (T2."duration_minutes" / 60) ELSE (0) END as "Anwesenheit_",
+	   CASE WHEN (T3."type" = 2) THEN (T2."duration_minutes" / 60) ELSE (0) END as "produktiv_",
+	   (rtrim((((T1."employee_number"))))) + ' - ' + T1."name" as "Monteur",
+	   '0' + (rtrim((((T1."subsidiary"))))) as "Standort",
+	   T2."start_time" as "Start Time_Times",
+	   T3."description" as "Description_Time_Types",
+	   T3."type" as "Type_Time_Types",
+	   T2."duration_minutes" as "Duration Minutes_Times",
+	   T2."end_time" as "End Time_Times",
+	   T2."order_positions" as "Order Positions_Times",
+	   T2."type" as "Type_Times",
+	   T2."employee_number" as "Employee Number_Times",
+	   T1."leave_date" as "Leave Date_Employees",
+	   T1."termination_date" as "Termination Date_Employees",
+	   T1."employment_date" as "Employment Date_Employees",
+	   T1."salesman_number" as "Salesman Number_Employees",
+	   T1."mechanic_number" as "Mechanic Number_Employees",
+	   T1."initials" as "Initials_Employees",
+	   T1."name" as "Name_Employees"
+from "dbo"."employees" T1,
+	"LOCOSOFT"."dbo"."employees_breaktimes" T4,
+	"LOCOSOFT"."dbo"."employees_worktimes" T5,
+	("dbo"."times" T2 left outer join "dbo"."time_types" T3 on T2."type" = T3."type")
+where (T1."employee_number" = T2."employee_number") and (T1."employee_number" = T4."employee_number") and (T1."employee_number" = T5."employee_number")
+and ((((T2."type" = 1) and (((datepart(weekday, T2."start_time"))) = T4."dayofweek")) and (((datepart(weekday, T2."start_time"))) = T5."dayofweek")) and (T2."start_time" >= convert(datetime, '2017-01-01 00:00:00.000')))
+) D2
+) D1
+where (("Validity Date_Worktimes" = c56) and ("Validity Date_Break_times" = c57))
+-- order by "Employee Number_Employees" asc,"Start Time_Times" asc,"Order Number_Times" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 184 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.zeit_stempelungen_pausen_produktiv_imr.sql

@@ -0,0 +1,184 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.zeit_stempelungen_pausen_produktiv_imr AS
+
+select "Employee Number_Employees" as "Employee Number_Employees",
+	   "Name_Employees" as "Name_Employees",
+	   "Initials_Employees" as "Initials_Employees",
+	   "Mechanic Number_Employees" as "Mechanic Number_Employees",
+	   "Salesman Number_Employees" as "Salesman Number_Employees",
+	   "Employment Date_Employees" as "Employment Date_Employees",
+	   "Termination Date_Employees" as "Termination Date_Employees",
+	   "Leave Date_Employees" as "Leave Date_Employees",
+	   "Employee Number_Times" as "Employee Number_Times",
+	   "Order Number_Times" as "Order Number_Times",
+	   "Start Time_Times" as "Start Time_Times",
+	   "Type_Times" as "Type_Times",
+	   "Order Positions_Times" as "Order Positions_Times",
+	   "End Time_Times" as "End Time_Times",
+	   "Duration Minutes_Times" as "Duration Minutes_Times",
+	   "Type_Time_Types" as "Type_Time_Types",
+	   "Description_Time_Types" as "Description_Time_Types",
+	   "Datum" as "Datum",
+	   "Hauptbetrieb" as "Hauptbetrieb",
+	   "Standort" as "Standort",
+	   "Monteur" as "Monteur",
+	   "Anwesenheit_" as "Anwesenheit_",
+	   "produktiv_" as "produktiv_",
+	   "unproduktiv_" as "unproduktiv_",
+	   "Zeitkategorie" as "Zeitkategorie",
+	   "Zeitkategorie2" as "Zeitkategorie2",
+	   "Ges. Std._" as "Ges. Std._",
+	   "Order Number" as "Order Number",
+	   "Wochentag_Datum" as "Wochentag_Datum",
+	   "Is Flextime_Employees" as "Is Flextime_Employees",
+	   "Break Time Registration_Employees" as "Break Time Registration_Employees",
+	   "Is Latest Record_break_times" as "Is Latest Record_break_times",
+	   "Dayofweek_break_times" as "Dayofweek_break_times",
+	   "Break Start_break_times" as "Break Start_break_times",
+	   "Break End_break_times" as "Break End_break_times",
+	   "Pause" as "Pause",
+	   "Start_Times_Stunde" as "Start_Times_Stunde",
+	   "Start_Times_Minute" as "Start_Times_Minute",
+	   "End_Times_Stunde" as "End_Times_Stunde",
+	   "End_Times_Minute" as "End_Times_Minute",
+	   "Start_Times_Minute_Dezimal" as "Start_Times_Minute_Dezimal",
+	   "Start_Times_Dezimal" as "Start_Times_Dezimal",
+	   "End_Times_Minute_Dezimal" as "End_Times_Minute_Dezimal",
+	   "End_Times_Dezimal" as "End_Times_Dezimal",
+	   "Pausenzeit_Stunde" as "Pausenzeit_Stunde",
+	   "Dayofweek_Worktimes" as "Dayofweek_Worktimes",
+	   "Work Duration_Worktimes" as "Work Duration_Worktimes",
+	   "Worktime Start_Worktimes" as "Worktime Start_Worktimes",
+	   "Worktime End_Worktimes" as "Worktime End_Worktimes",
+	   "Validity Date_Worktimes" as "Validity Date_Worktimes",
+	   MAX("Validity Date_Worktimes") OVER (partition by "Employee Number_Employees") as "Max_Validity_Date",
+	   "Validity Date_Break_times" as "Validity Date_Break_times",
+	   MAX("Validity Date_Break_times") OVER (partition by "Employee Number_Employees") as "Max_validity_date_Break_times",
+	   "Pausenzeit_Anw_mehr_als_6_" as "Pausenzeit_Anw_mehr_als_6_",
+	   "Anwesenheit" as "Anwesenheit",
+	   "Pausenzeit_während_produktiv" as "Pausenzeit_während_produktiv"
+from 
+(select "Employee Number_Employees",
+	   "Name_Employees",
+	   "Initials_Employees",
+	   "Mechanic Number_Employees",
+	   "Salesman Number_Employees",
+	   "Employment Date_Employees",
+	   "Termination Date_Employees",
+	   "Leave Date_Employees",
+	   "Employee Number_Times",
+	   "Order Number_Times",
+	   "Start Time_Times",
+	   "Type_Times",
+	   "Order Positions_Times",
+	   "End Time_Times",
+	   "Duration Minutes_Times",
+	   "Type_Time_Types",
+	   "Description_Time_Types",
+	   "Start Time_Times" as "Datum",
+	   '1' as "Hauptbetrieb",
+	   "Standort",
+	   "Monteur",
+	   "Anwesenheit_",
+	   "produktiv_",
+	   "Anwesenheit_" as "unproduktiv_",
+	   "Zeitkategorie",
+	   '' as "Zeitkategorie2",
+	   "Ges. Std._",
+	   "Order Number_Times" as "Order Number",
+	   "Wochentag_Datum",
+	   "Is Flextime_Employees",
+	   "Break Time Registration_Employees",
+	   "Is Latest Record_break_times",
+	   "Dayofweek_break_times",
+	   "Break Start_break_times",
+	   "Break End_break_times",
+	   "Pause",
+	   "Start_Times_Stunde",
+	   "Start_Times_Minute",
+	   "End_Times_Stunde",
+	   "End_Times_Minute",
+	   "Start_Times_Minute_Dezimal",
+	   "Start_Times_Dezimal",
+	   "End_Times_Minute_Dezimal",
+	   "End_Times_Dezimal",
+	   "Pause" as "Pausenzeit_Stunde",
+	   "Dayofweek_Worktimes",
+	   "Work Duration_Worktimes",
+	   "Worktime Start_Worktimes",
+	   "Worktime End_Worktimes",
+	   "Validity Date_Worktimes",
+	   "Validity Date_Break_times",
+	   "Pausenzeit_Anw_mehr_als_6_",
+	   "Pausenzeit_Anw_mehr_als_6_" as "Anwesenheit",
+	   "Pausenzeit_während_produktiv",
+	   MAX("Validity Date_Worktimes") OVER (partition by "Employee Number_Employees") as c57,
+	   MAX("Validity Date_Break_times") OVER (partition by "Employee Number_Employees") as c58
+from 
+(select T1."employee_number" as "Employee Number_Employees",
+	   CASE WHEN (((CASE WHEN (T3."type" = 2) THEN (T2."duration_minutes" / 60) ELSE (0) END) > 0) and (T4."break_start" BETWEEN (((od_hour(T2."start_time"))) + (((od_minute(T2."start_time"))) / 60)) AND (((od_hour(T2."end_time"))) + (((od_minute(T2."end_time"))) / 60)))) THEN ((((T4."break_end" - T4."break_start") * -1))) ELSE (0) END as "Pausenzeit_während_produktiv",
+	   (((T4."break_end" - T4."break_start") * -1)) as "Pausenzeit_Anw_mehr_als_6_",
+	   T4."validity_date" as "Validity Date_Break_times",
+	   T5."validity_date" as "Validity Date_Worktimes",
+	   T5."worktime_end" as "Worktime End_Worktimes",
+	   T5."worktime_start" as "Worktime Start_Worktimes",
+	   T5."work_duration" as "Work Duration_Worktimes",
+	   T5."dayofweek" as "Dayofweek_Worktimes",
+	   T4."break_end" - T4."break_start" as "Pause",
+	   ((od_hour(T2."end_time"))) + (((od_minute(T2."end_time"))) / 60) as "End_Times_Dezimal",
+	   ((od_minute(T2."end_time"))) / 60 as "End_Times_Minute_Dezimal",
+	   ((od_hour(T2."start_time"))) + (((od_minute(T2."start_time"))) / 60) as "Start_Times_Dezimal",
+	   ((od_minute(T2."start_time"))) / 60 as "Start_Times_Minute_Dezimal",
+	   (od_minute(T2."end_time")) as "End_Times_Minute",
+	   (od_hour(T2."end_time")) as "End_Times_Stunde",
+	   (od_minute(T2."start_time")) as "Start_Times_Minute",
+	   (od_hour(T2."start_time")) as "Start_Times_Stunde",
+	   T4."break_end" as "Break End_break_times",
+	   T4."break_start" as "Break Start_break_times",
+	   T4."dayofweek" as "Dayofweek_break_times",
+	   T4."is_latest_record" as "Is Latest Record_break_times",
+	   T1."break_time_registration" as "Break Time Registration_Employees",
+	   T1."is_flextime" as "Is Flextime_Employees",
+	   (datepart(weekday, T2."start_time")) as "Wochentag_Datum",
+	   T2."order_number" as "Order Number_Times",
+	   T2."duration_minutes" / 60 as "Ges. Std._",
+	   CASE WHEN (T2."type" = 2) THEN ('produktiv') ELSE ('unproduktiv') END as "Zeitkategorie",
+	   CASE WHEN (T3."type" = 1) THEN (T2."duration_minutes" / 60) ELSE (0) END as "Anwesenheit_",
+	   CASE WHEN (T3."type" = 2) THEN (T2."duration_minutes" / 60) ELSE (0) END as "produktiv_",
+	   (rtrim((((T1."employee_number"))))) + ' - ' + T1."name" as "Monteur",
+	   '0' + (rtrim((((T1."subsidiary"))))) as "Standort",
+	   T2."start_time" as "Start Time_Times",
+	   T3."description" as "Description_Time_Types",
+	   T3."type" as "Type_Time_Types",
+	   T2."duration_minutes" as "Duration Minutes_Times",
+	   T2."end_time" as "End Time_Times",
+	   T2."order_positions" as "Order Positions_Times",
+	   T2."type" as "Type_Times",
+	   T2."employee_number" as "Employee Number_Times",
+	   T1."leave_date" as "Leave Date_Employees",
+	   T1."termination_date" as "Termination Date_Employees",
+	   T1."employment_date" as "Employment Date_Employees",
+	   T1."salesman_number" as "Salesman Number_Employees",
+	   T1."mechanic_number" as "Mechanic Number_Employees",
+	   T1."initials" as "Initials_Employees",
+	   T1."name" as "Name_Employees"
+from "dbo"."employees" T1,
+	"LOCOSOFT"."dbo"."employees_breaktimes" T4,
+	"LOCOSOFT"."dbo"."employees_worktimes" T5,
+	("dbo"."times" T2 left outer join "dbo"."time_types" T3 on T2."type" = T3."type")
+where (T1."employee_number" = T2."employee_number") and (T1."employee_number" = T4."employee_number") and (T1."employee_number" = T5."employee_number")
+and ((((T2."type" = 2) and (((datepart(weekday, T2."start_time"))) = T4."dayofweek")) and (((datepart(weekday, T2."start_time"))) = T5."dayofweek")) and (T2."start_time" >= convert(datetime, '2017-01-01 00:00:00.000')))
+) D2
+) D1
+where (("Validity Date_Worktimes" = c57) and ("Validity Date_Break_times" = c58))
+-- order by "Employee Number_Employees" asc,"Start Time_Times" asc,"Order Number_Times" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

+ 49 - 0
System/LOCOSOFT/SQL/schema/LOCOSOFT/views_imr/staging.zeit_verk_std_imr.sql

@@ -0,0 +1,49 @@
+SET QUOTED_IDENTIFIER ON 
+GO
+SET ANSI_NULLS ON 
+GO
+CREATE VIEW staging.zeit_verk_std_imr AS
+
+select T1."order_number" as "Order Number",
+	   T1."order_position" as "Order Position",
+	   T1."labour_type" as "Labour Type",
+	   T2."code" as "Code_Labour_Types",
+	   T2."description" as "Description_Labour_Types",
+	   T3."order_number" as "Order Number_Labours",
+	   T3."order_position" as "Order Position_Labours",
+	   T3."order_position_line" as "Order Position Line_Labours",
+	   '0' + (rtrim((((T4."subsidiary"))))) as "Subsidiary_Labours",
+	   T3."is_invoiced" as "Is Invoiced_Labours",
+	   T3."invoice_type" as "Invoice Type_Labours",
+	   T3."invoice_number" as "Invoice Number_Labours",
+	   T3."employee_no" as "Employee No_Labours",
+	   T3."mechanic_no" as "Mechanic No_Labours",
+	   T3."labour_operation_id" as "Labour Operation Id_Labours",
+	   T3."is_nominal" as "Is Nominal_Labours",
+	   T3."net_price_in_order" as "Net Price In Order_Labours",
+	   T3."rebate_percent" as "Rebate Percent_Labours",
+	   T3."goodwill_percent" as "Goodwill Percent_Labours",
+	   T3."charge_type" as "Charge Type_Labours",
+	   T3."text_line" as "Text Line_Labours",
+	   10 as "AW/Std.",
+	   ((convert(float, T3."time_units"))) / 10 as "verk. Std.",
+	   'verk. Std.' as "Zeitkategorie",
+	   '' as "Zeitkategorie2",
+	   T4."employee_number" as "Employee Number_Employee",
+	   T4."name" as "Name_Employee",
+	   (rtrim((((T4."employee_number"))))) + ' - ' + T4."name" as "Monteur",
+	   T5."invoice_number" as "Invoice Number_Invoices",
+	   T5."invoice_date" as "Invoice Date_Invoices",
+	   T5."invoice_date" as "Datum",
+	   T3."time_units" as "Time Units_Labours",
+	   (convert(float, T3."time_units")) as "Time_Units_Zahl"
+from ("dbo"."invoices" T5 left outer join ((("dbo"."order_positions" T1 left outer join "dbo"."labour_types" T2 on T1."labour_type" = T2."code") left outer join "dbo"."labours" T3 on T1."order_number" = T3."order_number") left outer join "dbo"."employees" T4 on T3."mechanic_no" = T4."employee_number") on (T3."invoice_number" = T5."invoice_number") and (T3."invoice_type" = T5."invoice_type"))
+where (((convert(float, T3."time_units"))) <> 0)
+-- order by "Order Number" asc,"Order Position" asc
+GO
+SET QUOTED_IDENTIFIER OFF 
+GO
+SET ANSI_NULLS OFF 
+GO
+
+GO

Some files were not shown because too many files changed in this diff