Wijzigen voor document Trodisfuncties
Laatst gewijzigd door Petra Mol op 23-06-2025
Samenvatting
-
Paginaeigenschappen (1 gewijzigd, 0 toegevoegd, 0 verwijderd)
Details
- Paginaeigenschappen
-
- Inhoud
-
... ... @@ -309,3 +309,54 @@ 309 309 |(% style="width:150px" %)9501|Overzicht Uitgegeven Zelfmeetapparatuur| 310 310 |(% style="width:150px" %)9502|Overzicht Uitgegeven Zelfmeetstrips| 311 311 |(% style="width:150px" %)9600|TestFunctie| 312 + 313 += Genereer autorisatiematrix = 314 + 315 +Met behulp van onderstaande query is het mogelijk om een autorisatiematrix te maken, waarbij per rol wordt aangegeven welke functies daartoe behoren 316 + 317 +{{code language="sql"}} 318 +DECLARE @SelectColumns VARCHAR(MAX) 319 +, @Columns VARCHAR(MAX) 320 +, @Query VARCHAR(MAX) 321 + 322 +SELECT @SelectColumns = STUFF((SELECT DISTINCT ', CASE WHEN ' + QUOTENAME(RolNaam) + ' IS NULL THEN '''' ELSE ' + QUOTENAME(RolNaam) + ' END ' + QUOTENAME(RolNaam) RolNaam 323 + FROM Rollen 324 + ORDER BY RolNaam 325 + FOR XML PATH(''), TYPE 326 + ).value('.', 'NVARCHAR(MAX)'), 1, 1, '') 327 + 328 +SELECT @Columns = STUFF((SELECT DISTINCT ',' + QUOTENAME(RolNaam) RolNaam 329 + FROM Rollen 330 + ORDER BY RolNaam 331 + FOR XML PATH(''), TYPE 332 + ).value('.', 'NVARCHAR(MAX)'), 1, 1, '') 333 + 334 +SET @Query = 'SELECT Functienummer 335 + , Omschrijving, ' + 336 + @SelectColumns + ' 337 + FROM ( SELECT f.Functienummer 338 + , f.Omschrijving 339 + , r.RolNaam 340 + , CASE WHEN rf.AutoKey IS NOT NULL THEN ''X'' END Geselecteerd 341 + FROM Functies f 342 + LEFT JOIN Rollen_Functies rf ON rf.TT3Functie#OID = f.OID 343 + LEFT JOIN Rollen r ON r.OID = rf.TT3Rol#OID 344 + ) Rollen_Functies 345 + PIVOT (MIN(Geselecteerd) FOR RolNaam IN (' + @Columns + ')) AutorisatieMatrix 346 + ORDER BY Functienummer' 347 + 348 +EXECUTE (@Query) 349 +{{/code}} 350 + 351 +Gebruik onderstaand SQL statement om een overzicht te maken van welke actieve gebruiker gekoppeld is aan welke rol 352 + 353 +{{code language="sql"}} 354 +SELECT tg.GebruikersCode 355 +, tg.GebruikersOmschrijving 356 +, r.RolNaam 357 +FROM TrodisGebruikers tg 358 +LEFT JOIN Rollen r ON r.OID = tg.TT3Rol#OID 359 +WHERE tg.Actief = 'Ja' 360 +ORDER BY r.RolNaam 361 +, tg.GebruikersCode 362 +{{/code}}