﻿<?xml version="1.0" encoding="utf-8"?>
<ReportsExport>
  <Reports>
    <Report id="bf23f853-e883-4992-a4f7-3dd5c41de523" codekey="ANWR_BestStatus" categoryCodekey="SpecialPurpose" name="Bester Status für Compliance Moduleitems" description="Zeigt den besten Status für das jeweilige Item an">
      <MetaData created="2021-02-09T13:33:01" createdBy="Administrator, Onlinelernen (Administrator)" createdBy_user_id="570" modified="2023-03-21T09:56:37" modifiedBy="Administrator, Onlinelernen (Administrator)" modifiedBy_user_id="570" />
      <ExecutionDetails format="TableResult" commandType="SqlCommandOrQuery" exportHandler="" adminControl="" exportMultipleTablesToSheets="False" datesWithTime="False" extraParams="" />
      <Mandators mandatorMode="OnlyOwner" mandator_id="43426d00-0316-4a94-a703-970f81e29f06" mandatorName="OnlineLernen" isStandard="False" isUsedByMenu="False" />
      <Roles>
        <Role id="90" />
      </Roles>
      <command>DECLARE @tg_id INT = (SELECT id FROM tblTargetGroups WHERE title = 'ANWR')
--DECLARE @current_mandator_id UNIQUEIDENTIFIER = (SELECT id FROM tblMandators WHERE name = 'OnlineLernen')

SELECT * 
INTO #modules
FROM tblItems 
WHERE itemType_id = 1001
AND title LIKE 'ANWR %'

SELECT mi.item_id 
INTO #moduleitems
FROM #modules m
INNER JOIN tblModuleItems mi ON mi.module_id = m.id
INNER JOIN tblItems i ON i.id = mi.item_id AND i.itemType_id = 1

SELECT Nachname,Vorname,descUserCn,intUserCn,office, userStatus
INTO #users
FROM v_Users u
INNER JOIN tblUsersTargetGroups utg ON utg.UserCn = u.intUserCn and utg.targetGroup_id = @tg_id
WHERE u.mandator_id = @current_mandator_id
AND SecurityID = 10
AND u.descUserCn != 'HolgerTest'

SELECT 
u.Nachname,
u.Vorname,
u.descUserCn,
u.intUserCn,
u.office,
u.userStatus,
ucami.itemId AS "item_id"
INTO #usersAndItems
FROM #users u
INNER JOIN v_UsersChainAssignedModuleItems ucami ON ucami.userId = u.intUserCn
INNER JOIN #moduleitems mi ON mi.item_id = ucami.itemId
ORDER BY u.descUserCn

SELECT 
Nachname,
Vorname,
descUserCn,
office,
(SELECT ISNULL(titleForLearners,title) FROM tblItems WHERE id = item_id) AS "Baustein",
(SELECT codekey FROM tblItemTypes WHERE id = (SELECT itemType_id FROM tblItems WHERE id = item_id)) AS "Bausteintyp",
CASE
WHEN B.startDate IS NULL THEN ''
ELSE CAST(B.startDate AS NVARCHAR)
END AS "Datum",
CASE
 WHEN B.status = 2 THEN 'bestanden'
 WHEN B.status = 1 THEN 'in Bearbeitung' 
 WHEN B.status = 0 THEN 'nicht bearbeitet' 
 ELSE ''
END AS "Status",
CASE 
WHEN B.percentage IS NULL THEN ''
ELSE CAST(B.percentage AS NVARCHAR)
END AS "Prozent",
CASE
WHEN u.userStatus = 0 THEN 'unbekannt'
WHEN u.userStatus = 1 THEN 'Aktiv'
WHEN u.userStatus = 2 THEN 'Ausgeschieden'
WHEN u.userStatus = 3 THEN 'Abwesend'
WHEN u.userStatus = 4 THEN 'Neueinstellung'
END AS "Benutzerstatus"
FROM #usersAndItems u
OUTER APPLY (
	SELECT TOP(1) startDate, status, percentage 
	FROM tblStatusUserItemHistory suih
	WHERE item_id = u.item_id
	AND user_id = u.intUserCn
	ORDER by status desc, startDate desc
) B
ORDER By Nachname,Vorname, Baustein

DROP TABLE #users
DROP TABLE #usersAndItems
DROP TABLE #modules
DROP TABLE #moduleitems</command>
    </Report>
  </Reports>
</ReportsExport>