﻿<?xml version="1.0" encoding="utf-8"?>
<ReportsExport>
  <Reports>
    <Report id="d7c3864a-26cf-4b4a-a82a-b93892cfb02b" codekey="ERGODirekt_SessionsWithGreenstatus" categoryCodekey="SpecialPurpose" name="Bearbeitungen bei gültigen Grünstatus" description="Der Report listet alle Bearbeitungszeiten auf, die jünger sind, als der aktuell gültige Grünstatus. Wobei der Grünstatus nicht aus dem aktuellen Jahr stammen darf.">
      <MetaData created="2022-08-11T15:55:45" createdBy="ERGO Direkt, Administrator (Administrator)" createdBy_user_id="888" modified="2022-08-16T16:26:21" modifiedBy="ERGO Direkt, Administrator (Administrator)" modifiedBy_user_id="888" />
      <ExecutionDetails format="TableResult" commandType="SqlCommandOrQuery" exportHandler="" adminControl="" exportMultipleTablesToSheets="False" datesWithTime="False" extraParams="" />
      <Mandators mandatorMode="OnlyOwner" mandator_id="c5fd8bcc-2b1a-4f1d-b30d-9063c3f768cc" mandatorName="ERGODirekt" isStandard="False" isUsedByMenu="False" />
      <Roles>
        <Role id="90" />
      </Roles>
      <command>DECLARE @mandator_id UNIQUEIDENTIFIER = (SELECT id FROM tblMandators WHERE name = 'ERGODirekt')

CREATE TABLE #users_and_status(
	user_id INT,
	item_id UNIQUEIDENTIFIER,
	startDate DATETIME
)

INSERT INTO #users_and_status
SELECT suih.user_id,suih.item_id, suih.startDate 
FROM tblStatusUserItemHistory suih
INNER JOIN v_Users vu ON vu.intUserCn = suih.user_id and vu.mandator_id = @mandator_id AND SecurityID &lt; 100
INNER JOIN tblItems i ON i.id = suih.item_id AND i.tag != ''
WHERE suih.status = 2
AND YEAR(startDate) &lt;= YEAR(GETDATE())
AND endDate IS NULL

--SELECT 
--vu.descUserCn,
--i.title,
--startDate AS "Grünstatus Datum",
--startTime AS "Bearbeitungsdatum",
--durationSeconds AS "Bearbeitung in Sekunden"
--FROM #users_and_status us
--INNER JOIN v_Users vu ON us.user_id = vu.intUserCn
--INNER JOIN tblItems i ON i.id = us.item_id
--CROSS APPLY(
--	SELECT * FROM tblStatsThemeSessions sts
--	WHERE user_id = us.user_id
--	AND theme_id =us.item_id
--	AND YEAR(startTime) &gt; YEAR(us.startDate)
--) theme_sessions
--ORDER BY vu.descUserCn,theme_sessions.user_id ,item_id,startDate ASC, startTime ASC

SELECT 
vu.descUserCn,
i.title,
CAST(startDate AS date) AS "Grünstatus Datum",
CAST(startTime as date) AS "Bearbeitungsdatum",
dbo.fn_GetEducationTimeString(SUM(durationSeconds)/60) AS "Bearbeitung in Stunden",
SUM(durationSeconds) AS "Bearbeitung in Sekunden"
FROM #users_and_status us
INNER JOIN v_Users vu ON us.user_id = vu.intUserCn
INNER JOIN tblItems i ON i.id = us.item_id
CROSS APPLY(
	SELECT * FROM tblStatsThemeSessions sts
	WHERE user_id = us.user_id
	AND theme_id =us.item_id
	AND YEAR(startTime) &gt; YEAR(us.startDate)
	AND YEAR(startTime) = '2022'
) theme_sessions
WHERE EXISTS(
	SELECT * FROM v_UserQualifications
	WHERE v_UserQualifications.UserCn = us.user_id
)
GROUP BY vu.descUserCn,i.title,CAST(startDate AS date),CAST(startTime as date)
ORDER BY vu.descUserCn, i.title

DROP TABLE #users_and_status
</command>
    </Report>
  </Reports>
</ReportsExport>