Here is what I use to get the default dimensions information in SSMS. I have the stored procedure bring back a table that has all of the possible defaultdimension combinations. Then, wherever I need to get the default dimension I execute the stored procedure into a variable table (this code is commented out at the top) and simply join that table to whatever table as the defaultdimenions field. Note that I put in my dimensions of RnD, department, Product_Line, Territoy, and Type_Size. You would need to change these to get the dimensions that you set up in AX.
ALTER PROC [dbo].[AX_spr_defaultDimension]
AS
/*
DECLARE @defaultDimension TABLE
(
defaultDimension VARCHAR(100)
,department VARCHAR(100)
,location VARCHAR(100)
,productLine VARCHAR(100)
,rnd VARCHAR(100)
,territory VARCHAR(100)
,typeSize VARCHAR(100)
)
INSERT INTO @defaultDimension EXEC AX_spr_defaultDimension
*/
IF OBJECT_ID(‘tempdb…#financialDimensionStaging’) IS NOT NULL DROP TABLE #financialDimensionStaging
SELECT DISTINCT
davs.recId ‘DefaultDimension’
,da.NAME
,COALESCE(dft.DESCRIPTION, daomd.name, daomcc.name, ‘’) dimensionValue
INTO #financialDimensionStaging
FROM
AX2012_PROD…DIMENSIONATTRIBUTEVALUESET davs
INNER JOIN AX2012_PROD…DIMENSIONATTRIBUTEVALUESETITEM davsi (NOLOCK)
ON davs.RECID = davsi.DIMENSIONATTRIBUTEVALUESET
INNER JOIN AX2012_PROD…DIMENSIONATTRIBUTEVALUE dav (NOLOCK)
ON davsi.DIMENSIONATTRIBUTEVALUE = dav.RECID
INNER JOIN AX2012_PROD…DIMENSIONATTRIBUTE da (NOLOCK)
ON dav.DIMENSIONATTRIBUTE = da.RECID
LEFT JOIN AX2012_PROD…DIMENSIONFINANCIALTAG dft (NOLOCK)
ON dft.RecId = dav.EntityInstance
AND da.VIEWNAME = ‘DimensionFinancialTag’
LEFT JOIN AX2012_PROD…DimAttributeOMDepartment daomd (NOLOCK)
ON daomd.RECID = dav.ENTITYINSTANCE
AND da.VIEWNAME = ‘DimAttributeOMDepartment’
LEFT JOIN AX2012_PROD…DimAttributeOMCostCenter daomcc (NOLOCK)
ON daomcc.RECID = dav.ENTITYINSTANCE
AND da.VIEWNAME = ‘DimAttributeOMCostCenter’
SELECT
DefaultDimension
,ISNULL(Department, ‘’) department
,ISNULL(Location, ‘’) location
,ISNULL(product_Line, ‘’) productLine
,ISNULL(RnD, ‘’) rnd
,ISNULL(Territory, ‘’) territory
,ISNULL(Type_Size, ‘’) typeSize
FROM
#financialDimensionStaging fd
PIVOT (MAX(dimensionValue) FOR NAME IN
(
[RnD]
,[Department]
,[Product_Line]
,[Territory]
,[Type_Size]
,[Location]
)) AS pvt