Advertisement
Guest User

Untitled

a guest
Dec 14th, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 5.97 KB | None | 0 0
  1. SELECT DISTINCT AO.[AssignableObjectId] AS ID
  2.       ,(SELECT AO2.name FROM dbo.[AssignableObject] AS AO2 WHERE AO2.AssignableObjectId = AO.[ParentAssignableObjectId]) AS category
  3.       ,AO.[Name]
  4.      
  5.       ,REPLACE(REPLACE(AO.[Description], CHAR(13), ''), CHAR(10), '') AS 'Description'
  6.       ,'N' AS IsProduct
  7.      
  8.       --,(CASE dep.Name WHEN 'Systeem' then 'alle' ELSE dep.[Name] END)as 'afdeling'
  9.       , stuff(
  10.     (SELECT ',' + (CASE dep.Name WHEN 'Systeem' THEN 'alle' ELSE dep.[Name] END)
  11.      FROM  dbo.Asset_Department AS AD
  12.      JOIN dbo.Department AS Dep ON AD.DepartmentId = Dep.DepartmentId
  13.      WHERE AD.AssetId = AO.AssignableObjectId
  14.      FOR xml path('')), 1,1,'') AS [Afdeling/ACL]
  15.  
  16.       ,CONCAT( (SELECT emp.userid +', ' FROM [dbo].[ActorRole] AS ARo
  17.           JOIN dbo.Employee AS Emp ON emp.EmployeeId= ARo.EmployeeId
  18.           WHERE  ARo.AssignableObjectId = AO.AssignableObjectId AND ARo.ActorType=0
  19.           FOR XML PATH('')) , ' '
  20.            
  21.           ,stuff( (SELECT ',' +
  22.             (CASE WF_P.Permissiongroup
  23.             WHEN 4 THEN '[Afdelingsmanager]'
  24.             WHEN 8 THEN '[HR Manager]'
  25.             WHEN 64 THEN '[LocatieEigenaar]'
  26.             WHEN 2 THEN '[ICT Manager]'
  27.             ELSE '' END)-- AS ApprovalRol
  28.           FROM [dbo].[Workflow] AS WF
  29.           JOIN [dbo].[WorkflowRole_Permission] AS WF_P ON WF.WorkflowId = WF_P.WorkflowId
  30.           WHERE ActorType=0   AND AssignableObjectId=AO.AssignableObjectId
  31.           FOR xml path('')), 1,1,'')
  32.           ) AS approver,
  33.  
  34.           (SELECT emp.userid +', ' FROM [dbo].[ActorRole] AS ARo
  35.           JOIN dbo.ActorRole_Delegate AS ARD ON aro.ActorRoleId=ard.ActorRoleId
  36.           JOIN dbo.Employee AS Emp ON emp.EmployeeId= ARD.EmployeeId
  37.           WHERE  ARo.AssignableObjectId = AO.AssignableObjectId AND ARo.ActorType=0
  38.           FOR XML PATH(''))
  39.           AS delegatedApprovers
  40.          
  41.            ,AO.[Sid] AS 'ADGroupSid'
  42.            ,AO.RunbookId
  43.            , (SELECT ownedby.UserId
  44.                       FROM [dbo].[ActorRole] AS AR
  45.                       JOIN dbo.Employee AS ownedBy ON ar.EmployeeId = ownedBy.EmployeeId
  46.                       WHERE workflowType=1 AND AssignableObjectId=AO.AssignableObjectId) AS diensteigenaar
  47.             , (SELECT managedby.UserId
  48.             FROM [dbo].[ActorRole] AS AR
  49.             JOIN dbo.Employee AS managedby ON ar.EmployeeId = managedby.EmployeeId
  50.             WHERE ar.workflowType=0 AND ar.ActorType=10 AND AssignableObjectId=AO.AssignableObjectId) AS ledenbeheerder
  51.   FROM [dbo].[AssignableObject] AS AO  
  52.  
  53.   JOIN dbo.Asset_Department AS AD ON AO.AssignableObjectId =AD.AssetId AND  ad.OnlyForRole = 0
  54.   JOIN dbo.Department AS Dep ON AD.DepartmentId = Dep.DepartmentId  AND dep.DepartmentState=0  
  55.  
  56.   WHERE IsContainer = 0
  57.   AND AO.IsProduct = 0
  58.  
  59. UNION ALL
  60.  
  61. SELECT DISTINCT AO.[AssignableObjectId] AS ID
  62.       , stuff(
  63.     (SELECT ',' + RT.VALUE
  64.      FROM  Rev.ProductCategory_Products AS PCP
  65.      JOIN Rev.ProductCategories AS PC ON PC.[ProductCategoryId] = PCP.[ProductCategory_ProductCategoryId]
  66.      JOIN (SELECT RevTranslatableString_RevTranslatableStringId, MIN([Culture]) AS [Culture]
  67.            FROM Rev.RevTranslations
  68.            WHERE Culture IN ('en-US','nl-NL')
  69.            GROUP BY RevTranslatableString_RevTranslatableStringId) AS t ON t.RevTranslatableString_RevTranslatableStringId = PC.Name_RevTranslatableStringId
  70.      JOIN Rev.RevTranslations AS RT ON RT.RevTranslatableString_RevTranslatableStringId = t.RevTranslatableString_RevTranslatableStringId AND RT.Culture = t.Culture
  71.      WHERE PCP.Product_ProductId = P.ProductId
  72.      FOR xml path('')), 1,1,'') AS category
  73.  
  74.       ,(SELECT top 1 RT.VALUE
  75.         FROM Rev.RevTranslations AS RT
  76.         WHERE RevTranslatableString_RevTranslatableStringId = P.Name_RevTranslatableStringId
  77.         AND RT.Culture IN ('en-US','nl-NL')
  78.         ORDER BY RT.Culture)
  79.       ,(SELECT top 1 REPLACE(REPLACE(RT.VALUE, CHAR(13), ''), CHAR(10), '')
  80.         FROM Rev.RevTranslations AS RT
  81.         WHERE RevTranslatableString_RevTranslatableStringId = P.Description_RevTranslatableStringId
  82.         AND RT.Culture IN ('en-US','nl-NL')
  83.         ORDER BY RT.Culture)
  84.      ,'Y' AS IsProduct
  85.       , ISNULL(stuff(
  86.     (SELECT ',' + T.[Name]
  87.      FROM  Rev.ProductAccessSids AS PAS
  88.      INNER JOIN (SELECT [Sid], [Name] FROM Rev.AdGroups UNION ALL SELECT CONVERT(nvarchar(MAX),[Sid]), DisplayName FROM Rev.AdUsers) AS T
  89.        ON T.Sid = CONVERT(nvarchar(MAX),PAS.Sid)
  90.      WHERE PAS.ProductId = P.ProductId AND PAS.Allow = 1
  91.      FOR xml path('')), 1,1,''),'Not published/not active in SSP') AS Afdeling
  92.  
  93.       ,CONCAT( (SELECT emp.userid +', ' FROM [dbo].[ActorRole] AS ARo
  94.           JOIN dbo.Employee AS Emp ON emp.EmployeeId= ARo.EmployeeId
  95.           WHERE  ARo.AssignableObjectId = AO.AssignableObjectId AND ARo.ActorType=0
  96.           FOR XML PATH('')) , ' '
  97.            
  98.           ,stuff( (SELECT ',' +
  99.             (CASE WF_P.Permissiongroup
  100.             WHEN 4 THEN '[Afdelingsmanager]'
  101.             WHEN 8 THEN '[HR Manager]'
  102.             WHEN 64 THEN '[LocatieEigenaar]'
  103.             WHEN 2 THEN '[ICT Manager]'
  104.             ELSE '' END)-- AS ApprovalRol
  105.           FROM [dbo].[Workflow] AS WF
  106.           JOIN [dbo].[WorkflowRole_Permission] AS WF_P ON WF.WorkflowId = WF_P.WorkflowId
  107.           WHERE ActorType=0   AND AssignableObjectId=AO.AssignableObjectId
  108.           FOR xml path('')), 1,1,'')
  109.           ) AS approver
  110.          
  111.           ,  (SELECT emp.userid +', ' FROM [dbo].[ActorRole] AS ARo
  112.           JOIN dbo.ActorRole_Delegate AS ARD ON aro.ActorRoleId=ard.ActorRoleId
  113.           JOIN dbo.Employee AS Emp ON emp.EmployeeId= ARD.EmployeeId
  114.           WHERE  ARo.AssignableObjectId = AO.AssignableObjectId AND ARo.ActorType=0
  115.           FOR XML PATH(''))
  116.           AS delegatedApprovers
  117.            ,AO.[Sid] AS 'ADGroupSid'
  118.            ,AO.RunbookId
  119.            , (SELECT ownedby.UserId
  120.                       FROM [dbo].[ActorRole] AS AR
  121.                       JOIN dbo.Employee AS ownedBy ON ar.EmployeeId = ownedBy.EmployeeId
  122.                       WHERE workflowType=1 AND AssignableObjectId=AO.AssignableObjectId) AS diensteigenaar
  123.             , (SELECT managedby.UserId
  124.             FROM [dbo].[ActorRole] AS AR
  125.             JOIN dbo.Employee AS managedby ON ar.EmployeeId = managedby.EmployeeId
  126.             WHERE ar.workflowType=0 AND ar.ActorType=10 AND AssignableObjectId=AO.AssignableObjectId) AS ledenbeheerder
  127.   FROM [dbo].[AssignableObject] AS AO  
  128.   JOIN Rev.Products AS P ON p.ProductId = AO.AssignableObjectId
  129.  
  130.   WHERE IsContainer = 0
  131.   AND AO.IsProduct = 1
  132.  
  133.   ORDER BY Id
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement