Zeit_Abwesenheit_neu.sql 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. SELECT "Employee Number_Employees" AS "Employee Number_Employees",
  2. "Name_Employees" AS "Name_Employees",
  3. "Initials_Employees" AS "Initials_Employees",
  4. "Mechanic Number_Employees" AS "Mechanic Number_Employees",
  5. "Salesman Number_Employees" AS "Salesman Number_Employees",
  6. "Employment Date_Employees" AS "Employment Date_Employees",
  7. "Termination Date_Employees" AS "Termination Date_Employees",
  8. "Leave Date_Employees" AS "Leave Date_Employees",
  9. "Employee Number_Absence_Cal" AS "Employee Number_Absence_Cal",
  10. "Date_Absence_Cal" AS "Date_Absence_Cal",
  11. "Type_Absence_Cal" AS "Type_Absence_Cal",
  12. "Is Payed_Absence_Cal" AS "Is Payed_Absence_Cal",
  13. "Day Contingent_Absence_Cal" AS "Day Contingent_Absence_Cal",
  14. "Reason_Absence_Cal" AS "Reason_Absence_Cal",
  15. "Booking Flag_Absence_Cal" AS "Booking Flag_Absence_Cal",
  16. "Id_Absence_Reas" AS "Id_Absence_Reas",
  17. "Description_Absence_Reas" AS "Description_Absence_Reas",
  18. "Is Annual Vacation_Absence_Reas" AS "Is Annual Vacation_Absence_Reas",
  19. "Type_Absence_Types" AS "Type_Absence_Types",
  20. "Description_Absence_Types" AS "Description_Absence_Types",
  21. "Hauptbetrieb" AS "Hauptbetrieb",
  22. "Standort" AS "Standort",
  23. "Monteur" AS "Monteur",
  24. "Dummy_Arbeitszeit_Tag" AS "Dummy_Arbeitszeit_Tag",
  25. "Abwesenheit" AS "Abwesenheit",
  26. "Zeitkategorie" AS "Zeitkategorie",
  27. "Zeitkategorie2" AS "Zeitkategorie2",
  28. "Ges. Std." AS "Ges. Std.",
  29. "Datum" AS "Datum",
  30. "Order Number" AS "Order Number",
  31. "Wochentag_Datum" AS "Wochentag_Datum",
  32. "Validity Date_Worktimes" AS "Validity Date_Worktimes",
  33. "Dayofweek_Worktimes" AS "Dayofweek_Worktimes",
  34. "Work Duration_Worktimes" AS "Work Duration_Worktimes",
  35. "Worktime Start_Worktimes" AS "Worktime Start_Worktimes",
  36. "Worktime End_Worktimes" AS "Worktime End_Worktimes",
  37. MAX("Validity Date_Worktimes") OVER (PARTITION BY "Employee Number_Employees") AS "Max_Validity_Date_Worktimes",
  38. "Arbeitszeit_Tag" AS "Arbeitszeit_Tag"
  39. FROM (
  40. SELECT "Employee Number_Employees",
  41. "Name_Employees",
  42. "Initials_Employees",
  43. "Mechanic Number_Employees",
  44. "Salesman Number_Employees",
  45. "Employment Date_Employees",
  46. "Termination Date_Employees",
  47. "Leave Date_Employees",
  48. "Employee Number_Absence_Cal",
  49. "Date_Absence_Cal",
  50. "Type_Absence_Cal",
  51. "Is Payed_Absence_Cal",
  52. "Day Contingent_Absence_Cal",
  53. "Reason_Absence_Cal",
  54. "Booking Flag_Absence_Cal",
  55. "Id_Absence_Reas",
  56. "Description_Absence_Reas",
  57. "Is Annual Vacation_Absence_Reas",
  58. "Type_Absence_Types",
  59. "Description_Absence_Types",
  60. '1' AS "Hauptbetrieb",
  61. "Standort",
  62. "Monteur",
  63. 8 AS "Dummy_Arbeitszeit_Tag",
  64. "Abwesenheit",
  65. 'Abwesenheit' AS "Zeitkategorie",
  66. "Zeitkategorie2",
  67. "Abwesenheit" AS "Ges. Std.",
  68. "Date_Absence_Cal" AS "Datum",
  69. '' AS "Order Number",
  70. "Wochentag_Datum",
  71. "Validity Date_Worktimes",
  72. "Dayofweek_Worktimes",
  73. "Work Duration_Worktimes",
  74. "Worktime Start_Worktimes",
  75. "Worktime End_Worktimes",
  76. "Work Duration_Worktimes" AS "Arbeitszeit_Tag",
  77. MAX("Validity Date_Worktimes") OVER (PARTITION BY "Employee Number_Employees") AS c39
  78. FROM (
  79. SELECT T1."employee_number" AS "Employee Number_Employees",
  80. T5."work_duration" AS "Work Duration_Worktimes",
  81. T5."worktime_end" AS "Worktime End_Worktimes",
  82. T5."worktime_start" AS "Worktime Start_Worktimes",
  83. T5."dayofweek" AS "Dayofweek_Worktimes",
  84. T5."validity_date" AS "Validity Date_Worktimes",
  85. (datepart(weekday, T2."date")) AS "Wochentag_Datum",
  86. T2."date" AS "Date_Absence_Cal",
  87. (T2."day_contingent" * T5."work_duration") AS "Abwesenheit",
  88. T3."id" + ' - ' + T3."description" AS "Zeitkategorie2",
  89. (rtrim((((T1."employee_number"))))) + ' - ' + T1."name" AS "Monteur",
  90. (((T1."subsidiary"))) AS "Standort",
  91. T4."description" AS "Description_Absence_Types",
  92. T4."type" AS "Type_Absence_Types",
  93. T3."is_annual_vacation" AS "Is Annual Vacation_Absence_Reas",
  94. T3."description" AS "Description_Absence_Reas",
  95. T3."id" AS "Id_Absence_Reas",
  96. T2."booking_flag" AS "Booking Flag_Absence_Cal",
  97. T2."reason" AS "Reason_Absence_Cal",
  98. T2."day_contingent" AS "Day Contingent_Absence_Cal",
  99. T2."is_payed" AS "Is Payed_Absence_Cal",
  100. T2."type" AS "Type_Absence_Cal",
  101. T2."employee_number" AS "Employee Number_Absence_Cal",
  102. T1."leave_date" AS "Leave Date_Employees",
  103. T1."termination_date" AS "Termination Date_Employees",
  104. T1."employment_date" AS "Employment Date_Employees",
  105. T1."salesman_number" AS "Salesman Number_Employees",
  106. T1."mechanic_number" AS "Mechanic Number_Employees",
  107. T1."initials" AS "Initials_Employees",
  108. T1."name" AS "Name_Employees"
  109. FROM "dbo"."employees" T1,
  110. "LOCOSOFT"."dbo"."employees_worktimes" T5,
  111. (
  112. (
  113. "dbo"."absence_calendar" T2 LEFT JOIN "dbo"."absence_reasons" T3 ON T2."reason" = T3."id"
  114. ) LEFT JOIN "dbo"."absence_types" T4 ON T2."type" = T4."type"
  115. )
  116. WHERE (T1."employee_number" = T2."employee_number")
  117. AND (T1."employee_number" = T5."employee_number")
  118. AND (
  119. (((datepart(weekday, T2."date"))) = T5."dayofweek")
  120. AND (((T2."date")) <= (getdate()))
  121. )
  122. ) D2
  123. ) D1
  124. WHERE ("Validity Date_Worktimes" = c39)
  125. -- order by "Employee Number_Employees" asc