Stempelzeiten_Monteur_Auftrag_Export.sql 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. select distinct "Employee No" as "Employee No",
  2. "Order No" as "Order No",
  3. "Hauptbetrieb" as "Hauptbetrieb",
  4. "Standort" as "Standort",
  5. "No" as "No",
  6. "Last Name" as "Last Name",
  7. "First Name" as "First Name",
  8. "Monteur_vor_Abgr_AZUBI" as "Monteur_vor_Abgr_AZUBI",
  9. "Monteur_Gruppe_ori" as "Monteur_Gruppe_ori",
  10. "Tage Heute Leaving Date" as "Tage Heute Leaving Date",
  11. "Monteur_Gruppe_vor_Abgr_AZUBI" as "Monteur_Gruppe_vor_Abgr_AZUBI",
  12. "produktiv/unproduktiv" as "produktiv/unproduktiv",
  13. "Monatserster" as "Monatserster",
  14. "Monatsletzter" as "Monatsletzter",
  15. "Heute" as "Heute",
  16. "Employment Date" as "Employment Date",
  17. "Task Type Group" as "Task Type Group",
  18. "Department No" as "Department No",
  19. "Summe produktiv für Auftrag" as "Summe produktiv für Auftrag",
  20. "Order Number u Monteur" as "Order Number u Monteur",
  21. SUM(c58) OVER (partition by c59) as "Summe produktiv Monteur Auftrag",
  22. CASE WHEN (("Summe produktiv für Auftrag") <> 0) THEN (SUM(c58) OVER (partition by c59) / ("Summe produktiv für Auftrag")) ELSE null END as "Anteil Monteur Auftrag",
  23. "Pay Group No" as "Pay Group No",
  24. "Begin Work Permit" as "Begin Work Permit",
  25. "Monteur_Gruppe" as "Monteur_Gruppe",
  26. "Monteur" as "Monteur",
  27. "Hauptbetrieb_ID" as "Hauptbetrieb_ID",
  28. "Hauptbetrieb_Name" as "Hauptbetrieb_Name",
  29. "Standort_ID" as "Standort_ID",
  30. "Standort_Name" as "Standort_Name"
  31. from
  32. (select "Employee No",
  33. "Order No",
  34. "Hauptbetrieb",
  35. "Standort",
  36. "No",
  37. "Last Name",
  38. "First Name",
  39. "Monteur_vor_Abgr_AZUBI",
  40. "Monteur_Gruppe_ori",
  41. "Tage Heute Leaving Date",
  42. "Monteur_Gruppe_vor_Abgr_AZUBI",
  43. "produktiv/unproduktiv",
  44. convert(date, '2022-10-18') as "Monatserster",
  45. convert(date, '2022-10-18') as "Monatsletzter",
  46. convert(date, '2022-10-18') as "Heute",
  47. "Employment Date",
  48. "Task Type Group",
  49. "Department No",
  50. SUM(c57) OVER (partition by "Order No") as "Summe produktiv für Auftrag",
  51. "Order Number u Monteur",
  52. "Monteur_Gruppe_ori" as "Pay Group No",
  53. "Begin Work Permit",
  54. "Monteur_Gruppe",
  55. "Monteur",
  56. "Hauptbetrieb" as "Hauptbetrieb_ID",
  57. "Hauptbetrieb_Name",
  58. "Standort" as "Standort_ID",
  59. "Standort_Name",
  60. c57 as c58,
  61. c35 as c59
  62. from
  63. (select ((T1."Order No_" + ' ' + (CASE WHEN (T2."Last Name" IN ('Schmid','Wittenberg')) THEN (T2."First Name" + ' ' + T2."Last Name" + '_' + T1."Client_DB") ELSE (T2."First Name" + ' ' + T2."Last Name") END))) as c35,
  64. T1."Order No_" as "Order No",
  65. CASE WHEN (((CASE WHEN ((left(T2."Department No_",2)) = '90') THEN ('55') ELSE ((left(T2."Department No_",2))) END)) IN ('10')) THEN ('MM') WHEN (((CASE WHEN ((left(T2."Department No_",2)) = '90') THEN ('55') ELSE ((left(T2."Department No_",2))) END)) IN ('30')) THEN ('KRU') WHEN (((CASE WHEN ((left(T2."Department No_",2)) = '90') THEN ('55') ELSE ((left(T2."Department No_",2))) END)) IN ('40')) THEN ('ULM') WHEN (((CASE WHEN ((left(T2."Department No_",2)) = '90') THEN ('55') ELSE ((left(T2."Department No_",2))) END)) IN ('50')) THEN ('LL') WHEN (((CASE WHEN ((left(T2."Department No_",2)) = '90') THEN ('55') ELSE ((left(T2."Department No_",2))) END)) IN ('55')) THEN ('GZ') WHEN (((CASE WHEN ((left(T2."Department No_",2)) = '90') THEN ('55') ELSE ((left(T2."Department No_",2))) END)) IN ('60')) THEN ('AAM') WHEN (((CASE WHEN ((left(T2."Department No_",2)) = '90') THEN ('55') ELSE ((left(T2."Department No_",2))) END)) IN ('70')) THEN ('LEH') WHEN (((CASE WHEN ((left(T2."Department No_",2)) = '90') THEN ('55') ELSE ((left(T2."Department No_",2))) END)) IN ('80')) THEN ('WTB') ELSE null END as "Standort_Name",
  66. (CASE WHEN ((left(T2."Department No_",2)) = '90') THEN ('55') ELSE ((left(T2."Department No_",2))) END) as "Standort",
  67. CASE WHEN (T1."Client_DB" = '1') THEN ('AHR') WHEN (T1."Client_DB" = '2') THEN ('AAM') ELSE null END as "Hauptbetrieb_Name",
  68. T1."Client_DB" as "Hauptbetrieb",
  69. CASE WHEN (T1."Date" < T2."Begin Work Permit") THEN ((CASE WHEN (T2."Last Name" IN ('Schmid','Wittenberg')) THEN (T2."First Name" + ' ' + T2."Last Name" + '_' + T1."Client_DB") ELSE (T2."First Name" + ' ' + T2."Last Name") END) + ' - ' + 'AZG4') ELSE ((CASE WHEN (T2."Last Name" IN ('Schmid','Wittenberg')) THEN (T2."First Name" + ' ' + T2."Last Name" + '_' + T1."Client_DB") ELSE (T2."First Name" + ' ' + T2."Last Name") END)) END as "Monteur",
  70. CASE WHEN (T1."Date" < T2."Begin Work Permit") THEN ('AZG4') ELSE ((CASE WHEN ((((-1 * datediff(day, (getdate()), T2."Leaving Date"))) > 20) and (T2."Leaving Date" <> convert(datetime, '1753-01-01 00:00:00.000'))) THEN ('ausgetretene Mitarbeiter') ELSE (T2."Pay Group No_") END)) END as "Monteur_Gruppe",
  71. T2."Begin Work Permit" as "Begin Work Permit",
  72. T2."Pay Group No_" as "Monteur_Gruppe_ori",
  73. T1."Order No_" + ' ' + (CASE WHEN (T2."Last Name" IN ('Schmid','Wittenberg')) THEN (T2."First Name" + ' ' + T2."Last Name" + '_' + T1."Client_DB") ELSE (T2."First Name" + ' ' + T2."Last Name") END) as "Order Number u Monteur",
  74. T2."Department No_" as "Department No",
  75. T2."Task Type Group" as "Task Type Group",
  76. T2."Employment Date" as "Employment Date",
  77. CASE WHEN (T2."Task Type Group" IN ('MONTEURE','PROD MEIST')) THEN ('prod. Personal') WHEN (T2."Task Type Group" IN ('VERWALTUNG')) THEN ('unprod. Personal') ELSE null END as "produktiv/unproduktiv",
  78. CASE WHEN ((((-1 * datediff(day, (getdate()), T2."Leaving Date"))) > 20) and (T2."Leaving Date" <> convert(datetime, '1753-01-01 00:00:00.000'))) THEN ('ausgetretene Mitarbeiter') ELSE (T2."Pay Group No_") END as "Monteur_Gruppe_vor_Abgr_AZUBI",
  79. (-1 * datediff(day, (getdate()), T2."Leaving Date")) as "Tage Heute Leaving Date",
  80. CASE WHEN (T2."Last Name" IN ('Schmid','Wittenberg')) THEN (T2."First Name" + ' ' + T2."Last Name" + '_' + T1."Client_DB") ELSE (T2."First Name" + ' ' + T2."Last Name") END as "Monteur_vor_Abgr_AZUBI",
  81. T2."First Name" as "First Name",
  82. T2."Last Name" as "Last Name",
  83. T2."No_" as "No",
  84. T1."Employee No_" as "Employee No",
  85. ((CASE WHEN (T3."Code" IN ('111','116','117','118')) THEN (((convert(float, T1."Duration")) * (convert(float, T2."Efficiency %")) / 100)) ELSE (0) END) + 0 + (CASE WHEN (T3."Code" IN ('150','160')) THEN (((convert(float, T1."Duration")) * (convert(float, T2."Efficiency %")) / 100)) ELSE (0) END)) as c57
  86. from (("NAVISION"."import"."Task_Acquisition_Ledger_Entry" T1 left outer join "NAVISION"."import"."Employee_T" T2 on (T1."Employee No_" = T2."No_") and (T1."Client_DB" = T2."Client_DB")) left outer join "NAVISION"."import"."Task_Type" T3 on (T1."Task Type Code" = T3."Code") and (T1."Client_DB" = T3."Client_DB"))
  87. where (((((((T1."Sorting" = 1) and (T1."Corrected" = 0)) and (T1."Date" >= T2."Employment Date")) and (T1."Date" >= convert(datetime, '2021-01-01 00:00:00.000'))) and ((T2."Leaving Date" >= convert(datetime, '2014-01-01 00:00:00.000')) or (T2."Leaving Date" = convert(datetime, '1753-01-01 00:00:00.000')))) and (T1."Order No_" <> '')) and ((CASE WHEN ((((-1 * datediff(day, (getdate()), T2."Leaving Date"))) > 20) and (T2."Leaving Date" <> convert(datetime, '1753-01-01 00:00:00.000'))) THEN ('ausgetretene Mitarbeiter') ELSE (T2."Pay Group No_") END) <> ''))
  88. ) D1
  89. ) D4
  90. -- order by "Order No" asc,"Employee No" asc