No vídeo "Entendendo o modelo" da aula 1 do curso "Consultas Multidimensionais: MDX com SQL Server" é disponibilizado uma query MDX para retornar o faturamento líquido e a margem dos meses-anos Julho 2013 e Agosto 2013 para a Fábrica do Rio de Janeiro.
Entretanto, após executar a query, os valores retornados são nulos.
Analisando melhor, percebi que na consulta nomeada que gera o cubo COMPLETO só tem as datas 20130101, 20140101 e 20150101 (usei um select distinct pra isso), porque são só essas datas que estão presentes na tabela Fato_002.
"Resolvi" o problema trocando INNER JOIN por LEFT JOIN na consulta nomeada, e no Browser do Visual Studio pude fazer essa busca, mas o MDX disponibilizado ainda continua retornando vazio. Como tem o Inner ele não carrega para a consulta nomeada as ocorrências que não são nas datas da Fato_002.
Só consegui fazer dar certo no SQL Server usando o MDX abaixo, mas o resultado ficou diferente do professor.
({[Measures].[Faturamento Líquido], [Measures].[Margem]}) ON COLUMNS,
({[Tempo].[Hierarquia do Mês Ano].[Ano].&[2013].&[Segundo Semestre 2013].&[2013]&[02-2013]&[03-2013].&[2013]&[02-2013]&[03-2013]&[07-2013], [Tempo].[Hierarquia do Mês Ano].[Ano].&[2013].&[Segundo Semestre 2013].&[2013]&[02-2013]&[03-2013].&[2013]&[02-2013]&[03-2013]&[08-2013]}) ON ROWS
FROM [COMPLETO]
WHERE [Fábrica].[Hierarquia das Fábricas].[Nível Fabrica].&[Fábrica Rio de Janeiro]
Alguém sabe me dizer onde tá o meu erro?