-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathValidDimensions.sql
56 lines (56 loc) · 2.74 KB
/
ValidDimensions.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
WITH dbcd
AS (SELECT [dimensionhierarchy],
[levels],
t4.displayvalue,
t6.NAME,
t7.NAME AS DimensionName,
t4.dimensionattributevalue,
t4.dimensionattributevaluegroup,
t5.dimensionattribute,
t4.ordinal,
t2.NAME AS dimensiontype --account+retail
,
t2.structuretype,
[hash],
t1.[recversion],
t1.[partition],
t1.[recid]
FROM [MITAX_live].[dbo].[dimensionattributevaluegroup] AS t1
LEFT JOIN [dimensionhierarchy] AS t2
ON t1.dimensionhierarchy = t2.recid
LEFT JOIN dimensionattributelevelvalue AS t4
ON t1.recid = t4.dimensionattributevaluegroup
LEFT JOIN dimensionattributevalue AS t5
ON t4.dimensionattributevalue = t5.recid
LEFT JOIN dimensionattribute AS t6
ON t5.dimensionattribute = t6.recid
LEFT JOIN dirpartytable AS t7
ON t5.entityinstance = t7.recid
WHERE structuretype = 6
AND ordinal <> 1),
b
AS (SELECT DISTINCT ST2.dimensionattributevaluegroup,
Substring((SELECT '-' + ST1.displayvalue AS [text()]
FROM dbcd ST1
WHERE ST1.dimensionattributevaluegroup =
ST2.dimensionattributevaluegroup
ORDER BY ST1.ordinal ASC
FOR xml path ('')), 2, 1000) [Dimension],
Substring((SELECT '-' + ST1.NAME AS [text()]
FROM dbcd ST1
WHERE ST1.dimensionattributevaluegroup =
ST2.dimensionattributevaluegroup
ORDER BY ST1.ordinal ASC
FOR xml path ('')), 2, 1000) [Type],
Substring((SELECT '_' + ST1.dimensionname AS [text()]
FROM dbcd ST1
WHERE ST1.dimensionattributevaluegroup =
ST2.dimensionattributevaluegroup
ORDER BY ST1.ordinal ASC
FOR xml path ('')), 2, 1000) [DimensionNM]
FROM dbcd ST2)
SELECT DISTINCT type,
dimension,
dimensionnm
FROM b
WHERE type = 'Department-CostCenter'