zeit_benutzte_verr_zeit_lg_c11.sql 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. select "Employee No" as "Employee No",
  2. "Current Date" as "Current Date",
  3. "Department No" as "Department No",
  4. "Order No" as "Order No",
  5. "Task No" as "Task No",
  6. "Dimension 1" as "Dimension 1",
  7. "Dimension 2" as "Dimension 2",
  8. "Dimension 3" as "Dimension 3",
  9. "Dimension 4" as "Dimension 4",
  10. "Time Account No" as "Time Account No",
  11. "Time Account Value" as "Time Account Value",
  12. "Zeit" as "Zeit",
  13. RSUM("Time Account Value" for "Employee No","Time Account No") as "Summe (Zeit) Nr.3",
  14. RSUM("Time Account Value" for "Employee No","Time Account No") as "Summe (Zeit) Nr.2",
  15. RSUM("Time Account Value" for "Employee No","Time Account No") as "Summe (Zeit) Nr.1",
  16. "Datum" as "Datum",
  17. "Hauptbetrieb" as "Hauptbetrieb",
  18. "Filialcode_Monteur" as "Filialcode_Monteur",
  19. "Standort" as "Standort",
  20. "Betrieb" as "Betrieb",
  21. "Kostenstellencode_Monteur" as "Kostenstellencode_Monteur",
  22. "Monteur_Gruppe_ori_alt" as "Monteur_Gruppe_ori_alt",
  23. "Leaving Date" as "Leaving Date",
  24. "Tage Heute Leaving Date" as "Tage Heute Leaving Date",
  25. "Monteur_Gruppe" as "Monteur_Gruppe",
  26. "Nr_Monteur" as "Nr_Monteur",
  27. "Monteur_Gruppe_2" as "Monteur_Gruppe_2",
  28. "Vorname_Monteur" as "Vorname_Monteur",
  29. "Nachname_Monteur" as "Nachname_Monteur",
  30. "Monteur" as "Monteur",
  31. "Name_Kostenstelle_Monteur" as "Name_Kostenstelle_Monteur",
  32. "Kostenstelle" as "Kostenstelle",
  33. "benutzte Zeit" as "benutzte Zeit",
  34. RSUM("benutzte Zeit" for "Employee No","Time Account No") as "Summe (benutzte Zeit) Nr.2",
  35. RSUM("benutzte Zeit" for "Employee No","Time Account No") as "Summe (benutzte Zeit) Nr.1",
  36. "verr. Zeit" as "verr. Zeit",
  37. "ben. Zeit gerundet" as "ben. Zeit gerundet",
  38. RSUM("ben. Zeit gerundet" for "Employee No","Time Account No") as "Summe (ben. Zeit gerundet) Nr.2",
  39. RSUM("ben. Zeit gerundet" for "Employee No","Time Account No") as "Summe (ben. Zeit gerundet) Nr.1",
  40. "Description" as "Description",
  41. "Anwesenheit" as "Anwesenheit",
  42. "produktiv" as "produktiv",
  43. "Arbeitsvertragscode" as "Arbeitsvertragscode",
  44. "Pause" as "Pause",
  45. "Sollzeit" as "Sollzeit",
  46. "Anwes. Netto" as "Anwes. Netto",
  47. "Task Type Group" as "Task Type Group",
  48. "Group No 1" as "Group No 1",
  49. "Group No 3" as "Group No 3",
  50. "Monteur_Gruppe_ori" as "Monteur_Gruppe_ori",
  51. "Date" as "Date",
  52. "Company_ID" as "Company_ID",
  53. "Department_ID" as "Department_ID",
  54. "Mechanic_Group2" as "Mechanic_Group2",
  55. "Mechanic" as "Mechanic",
  56. "Mechanic_Productive" as "Mechanic_Productive",
  57. "Mechanic_Group1" as "Mechanic_Group1",
  58. "Order Number" as "Order Number",
  59. "Mechanic_Trainee" as "Mechanic_Trainee",
  60. "Invoiced_Time" as "Invoiced_Time",
  61. "Used_Time_Order" as "Used_Time_Order"
  62. from
  63. (select T1."Employee No_" as "Employee No",
  64. T1."Current Date" as "Current Date",
  65. T1."Department No_" as "Department No",
  66. T1."Order No_" as "Order No",
  67. T1."Task No_" as "Task No",
  68. T1."Dimension 1" as "Dimension 1",
  69. T1."Dimension 2" as "Dimension 2",
  70. T1."Dimension 3" as "Dimension 3",
  71. T1."Dimension 4" as "Dimension 4",
  72. T1."Time Account No_" as "Time Account No",
  73. T1."Time Account Value" as "Time Account Value",
  74. T1."Time Account Value" as "Zeit",
  75. T1."Current Date" as "Datum",
  76. '1' as "Hauptbetrieb",
  77. T2."Filialcode" as "Filialcode_Monteur",
  78. CASE WHEN ((CASE WHEN ((((day((now()) - T3."Leaving Date"))) > 0) and (T3."Leaving Date" <> convert(datetime, '1753-01-01 00:00:00.000'))) THEN ('ausgetretene Mitarbeiter') ELSE (T3."Group No_ 1") END) IN ('MONTEUR1','AZUBI 4','AZUBI 3','SPENG FL','AZUBI 1','AZUBI 2')) THEN ('00') WHEN ((CASE WHEN ((((day((now()) - T3."Leaving Date"))) > 0) and (T3."Leaving Date" <> convert(datetime, '1753-01-01 00:00:00.000'))) THEN ('ausgetretene Mitarbeiter') ELSE (T3."Group No_ 1") END) = 'MONTEUR2') THEN ('02') WHEN ((T4."Filialcode" = '') and (not (CASE WHEN ((((day((now()) - T3."Leaving Date"))) > 0) and (T3."Leaving Date" <> convert(datetime, '1753-01-01 00:00:00.000'))) THEN ('ausgetretene Mitarbeiter') ELSE (T3."Group No_ 1") END) IN ('MONTEUR1','AZUBI 4','AZUBI 3','SPENG FL','AZUBI 1','AZUBI 2','MONTEUR2'))) THEN ('00') ELSE (T4."Filialcode") END as "Standort",
  79. '00' as "Betrieb",
  80. T2."Global Dimension 1 Code" as "Kostenstellencode_Monteur",
  81. T3."Group No_ 1" as "Monteur_Gruppe_ori_alt",
  82. T3."Leaving Date" as "Leaving Date",
  83. (day((now()) - T3."Leaving Date")) as "Tage Heute Leaving Date",
  84. CASE WHEN ((((day((now()) - T3."Leaving Date"))) > 0) and (T3."Leaving Date" <> convert(datetime, '1753-01-01 00:00:00.000'))) THEN ('ausgetretene Mitarbeiter') ELSE (T3."Group No_ 1") END as "Monteur_Gruppe",
  85. T2."Nr_" as "Nr_Monteur",
  86. CASE WHEN (T2."Arbeitsvertragscode" IN ('AZUBI')) THEN ('AZUBI') WHEN (T2."Arbeitsvertragscode" IN ('MEIST')) THEN ('Meister') ELSE ('Monteur') END as "Monteur_Gruppe_2",
  87. T2."Vorname" as "Vorname_Monteur",
  88. T2."Nachname" as "Nachname_Monteur",
  89. T2."Vorname" + ' ' + T2."Nachname" as "Monteur",
  90. T5."Name" as "Name_Kostenstelle_Monteur",
  91. T2."Global Dimension 1 Code" + ' - ' + T5."Name" as "Kostenstelle",
  92. CASE WHEN (T1."Time Account No_" IN ('6121','6122','6123')) THEN (T1."Time Account Value") ELSE (0) END as "benutzte Zeit",
  93. CASE WHEN (T1."Time Account No_" IN ('6201','6202','6203')) THEN (T1."Time Account Value") ELSE (0) END as "verr. Zeit",
  94. (round((CASE WHEN (T1."Time Account No_" IN ('6121','6122','6123')) THEN (T1."Time Account Value") ELSE (0) END),2,0)) as "ben. Zeit gerundet",
  95. T6."Description" as "Description",
  96. CASE WHEN (T1."Time Account No_" = '100') THEN (T1."Time Account Value") ELSE (0) END as "Anwesenheit",
  97. (CASE WHEN (T1."Time Account No_" IN ('6121','6122','6123')) THEN (T1."Time Account Value") ELSE (0) END) as "produktiv",
  98. T2."Arbeitsvertragscode" as "Arbeitsvertragscode",
  99. CASE WHEN (T1."Time Account No_" = '1300') THEN (T1."Time Account Value") ELSE (0) END as "Pause",
  100. CASE WHEN (T1."Time Account No_" = '1200') THEN (T1."Time Account Value") ELSE (0) END as "Sollzeit",
  101. (CASE WHEN (T1."Time Account No_" = '100') THEN (T1."Time Account Value") ELSE (0) END) - (CASE WHEN (T1."Time Account No_" = '1300') THEN (T1."Time Account Value") ELSE (0) END) as "Anwes. Netto",
  102. T3."Task Type Group" as "Task Type Group",
  103. T3."Group No_ 1" as "Group No 1",
  104. T3."Group No_ 3" as "Group No 3",
  105. T3."Group No_ 1" as "Monteur_Gruppe_ori",
  106. T1."Current Date" as "Date",
  107. '1' as "Company_ID",
  108. '00' as "Department_ID",
  109. (CASE WHEN (T2."Arbeitsvertragscode" IN ('AZUBI')) THEN ('AZUBI') WHEN (T2."Arbeitsvertragscode" IN ('MEIST')) THEN ('Meister') ELSE ('Monteur') END) as "Mechanic_Group2",
  110. (T2."Vorname" + ' ' + T2."Nachname") as "Mechanic",
  111. ('prod. Personal') as "Mechanic_Productive",
  112. (CASE WHEN ((((day((now()) - T3."Leaving Date"))) > 0) and (T3."Leaving Date" <> convert(datetime, '1753-01-01 00:00:00.000'))) THEN ('ausgetretene Mitarbeiter') ELSE (T3."Group No_ 1") END) as "Mechanic_Group1",
  113. T1."Order No_" as "Order Number",
  114. CASE WHEN ((CASE WHEN (T2."Arbeitsvertragscode" IN ('AZUBI')) THEN ('AZUBI') WHEN (T2."Arbeitsvertragscode" IN ('MEIST')) THEN ('Meister') ELSE ('Monteur') END) IN ('AZUBI')) THEN ('Azubi') ELSE ('Monteur') END as "Mechanic_Trainee",
  115. (CASE WHEN (T1."Time Account No_" IN ('6201','6202','6203')) THEN (T1."Time Account Value") ELSE (0) END) as "Invoiced_Time",
  116. (CASE WHEN (T1."Time Account No_" IN ('6121','6122','6123')) THEN (T1."Time Account Value") ELSE (0) END) as "Used_Time_Order"
  117. from (((("CARLO"."import"."Archiv_Werkstattkopf" T7 left outer join (("CARLO"."import"."Time_Entry_T" T1 left outer join "CARLO"."import"."Employee" T2 on (T2."Nr_" = T1."Employee No_") and (T2."Client_DB" = T1."Client_DB")) left outer join "CARLO"."import"."Employee_T" T3 on (T2."Nr_" = T3."No_") and (T2."Client_DB" = T3."Client_DB")) on (T1."Order No_" = T7."Nr_") and (T1."Client_DB" = T7."Client_DB")) left outer join "CARLO"."import"."Employee" T4 on (T4."Nr_" = T7."Serviceberaternr_") and (T4."Client_DB" = T7."Client_DB")) left outer join "CARLO"."import"."Kostenstelle" T5 on (T2."Global Dimension 1 Code" = T5."Code") and (T2."Client_DB" = T5."Client_DB")) left outer join "CARLO"."import"."Time_Account_T" T6 on (T1."Time Account No_" = (cast_numberToString(cast_integer(T6."No_")))) and (T1."Client_DB" = T6."Client_DB"))
  118. where (((od_year(T1."Current Date")) >= (od_year((now()))) - 2) and (T1."Time Account No_" IN ('6121','6122','6123','6201','6202','6203')))
  119. -- order by "Employee No" asc,"Time Account No" asc
  120. ) D1