Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SELECT rights.userid,
- client.clientname,
- access_rights.*,
- folder.fullpath AS Path
- FROM folder
- JOIN(SELECT usergroupclient.client_id AS ClientId,
- folderaccessright.folderid,
- Max(Cast([read] AS INT)) AS [Read],
- Max(Cast([move] AS INT)) AS [Move],
- Max(Cast([create] AS INT)) AS [Create],
- Max(Cast([update] AS INT)) AS [Update],
- Max(Cast([control] AS INT)) AS [Control],
- Max(Cast([delete] AS INT)) AS [Delete]
- FROM usergroupclient
- JOIN folderaccessright
- ON folderaccessright.usergroupid =
- usergroupclient.usergroup_id
- GROUP BY usergroupclient.client_id,
- folderaccessright.folderid
- UNION ALL
- SELECT -852 AS ClientId,
- id AS FolderId,
- 1 AS [Read],
- 1 AS [Move],
- 1 AS [Create],
- 1 AS [Update],
- 1 AS [Control],
- 1 AS [Delete]
- FROM folder) access_rights
- ON folder.id = access_rights.folderid
- JOIN (SELECT usergroupuser.user_id AS UserId,
- folderaccessright.folderid,
- Max(Cast([read] AS INT)) AS [Read],
- Max(Cast([move] AS INT)) AS [Move],
- Max(Cast([create] AS INT)) AS [Create],
- Max(Cast([update] AS INT)) AS [Update],
- Max(Cast([control] AS INT)) AS [Control],
- Max(Cast([delete] AS INT)) AS [Delete]
- FROM usergroupuser
- JOIN folderaccessright
- ON folderaccessright.usergroupid =
- usergroupuser.usergroup_id
- GROUP BY usergroupuser.user_id,
- folderaccessright.folderid
- UNION ALL
- SELECT -874 AS UserId,
- id AS FolderId,
- 1 AS [Read],
- 1 AS [Move],
- 1 AS [Create],
- 1 AS [Update],
- 1 AS [Control],
- 1 AS [Delete]
- FROM folder) rights
- ON folder.id = rights.folderid
- LEFT OUTER JOIN dbo.client
- ON dbo.client.id = access_rights.clientid
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement