Compartilhar via


Modificando a dimensão de data

Na tarefa deste tópico, você criará uma hierarquia definida pelo usuário e alterará os nomes de membro exibidos nos atributos Date, Month, Calendar Quarter e Calendar Semester. Você também definirá as chaves compostas para atributos, controlará a ordem de classificação dos membros de dimensão e definirá relações de atributo.

Adicionando um cálculo nomeado

É possível adicionar um cálculo nomeado, que é uma expressão SQL representada como uma coluna calculada, a uma tabela em uma exibição da fonte de dados. A expressão se parece e se comporta como uma coluna na tabela. Os cálculos nomeados permitem que você estenda o esquema relacional de tabelas existentes em uma exibição de fonte de dados sem modificar a tabela na fonte de dados subjacente. Para obter mais informações, consulte Definir cálculos nomeados em uma exibição da fonte de dados (Analysis Services)

Para adicionar um cálculo nomeado

  1. Para abrir a exibição de fonte de dados do Adventure Works DW 2012, clique duas vezes nela na pasta Exibições da Fonte de Dados no Gerenciador de Soluções.

  2. Próximo à parte inferior do painel Tabelas, clique com o botão direito do mouse em Date e clique em Novo Cálculo Nomeado.

  3. Na caixa de diálogo Criar Cálculo Nomeado, digite SimpleDate na caixa Nome da coluna; em seguida, digite ou copie e cole a seguinte instrução DATENAME na caixa Expressão:

    DATENAME(mm, FullDateAlternateKey) + ' ' +
    DATENAME(dd, FullDateAlternateKey) + ', ' +
    DATENAME(yy, FullDateAlternateKey)
    

    A instrução DATENAME extrai os valores de ano, mês e dia da coluna FullDateAlternateKey. Essa nova coluna poderá ser usada como o nome exibido para o atributo FullDateAlternateKey.

  4. Clique em OK e expanda Data no painel Tabelas.

    O cálculo nomeado SimpleDate é exibido na lista de colunas da tabela Date com um ícone indicando que se trata de um cálculo nomeado.

  5. No menu Arquivo, clique em Salvar Tudo.

  6. No painel Tabelas, clique com o botão direito do mouse em Date e selecione Explorar Dados.

  7. Role a tela para a direita para revisar a última coluna na exibição Explorar Tabela Date.

    Observe que a coluna SimpleDate aparece na exibição de fonte de dados, concatenando corretamente os dados de várias colunas da fonte de dados subjacente, sem modificar a fonte de dados original.

  8. Feche a exibição Explorar Tabela Date.

Usando o cálculo nomeado para nomes de membros

Após criar um cálculo nomeado na exibição da fonte de dados, você pode usá-lo como propriedade de um atributo.

Para usar o cálculo nomeado para nomes de membros

  1. Abra o Designer de Dimensão para a dimensão Data no SSDT (SQL Server Data Tools). Para isso, clique duas vezes na dimensão Data no nó Dimensões do Gerenciador de Soluções.

  2. No painel Atributos da guia Estrutura da Dimensão, clique no atributo Date Key.

  3. Se a janela Propriedades não estiver aberta, abra-a e clique no botão Ocultar Automaticamente na barra de título de forma que ela permaneça aberta.

  4. Clique no campo de propriedade NameColumn próximo parte inferior da janela e clique no botão Procurar () para abrir a caixa de diálogo Coluna de Nome.

  5. Selecione SimpleDate na parte inferior da lista Coluna de origem e clique em OK.

  6. No menu Arquivo, clique em Salvar Tudo.

Criando uma hierarquia

Você pode criar uma nova hierarquia arrastando um atributo do painel Atributos para o painel Hierarquias.

Para criar uma hierarquia

  1. No Estrutura da Dimensão do Designer de Dimensão da dimensão Data, arraste o atributo Calendar Year do painel Atributos para o painel Hierarquias.

  2. Arraste o atributo Semestre do Calendário do painel Atributos para a célula <novo nível> no painel Hierarquias sob o nível Ano Civil.

  3. Arraste o atributo Trimestre do Calendário do painel Atributos para a célula <novo nível> no painel Hierarquias sob o nível Semestre do Calendário.

  4. Arraste o atributo Nome do Mês em Inglês do painel Atributos para a célula <novo nível> no painel Hierarquias sob o nível Trimestre do Calendário.

  5. Arraste o atributo Chave de Data do painel Atributos para a célula <novo nível> no painel Hierarquias sob o nível Nome do Mês em Inglês.

  6. No painel Hierarquias, clique com o botão direito do mouse na barra de títulos da hierarquia Hierarquia, clique em Renomear e digite Calendar Date.

  7. Usando o menu de contexto do botão direito do mouse, na hierarquia Calendar Date, renomeie o nível English Month Name para Calendar Month e renomeie o nível Date Key para Date.

  8. Exclua o atributo Full Date Alternate Key do painel Atributos, pois você não precisará mais dele. Clique em OK na janela de confirmação Excluir Objetos.

  9. No menu Arquivo, clique em Salvar Tudo.

Definindo relações de atributo

Se os dados subjacentes permitirem, você também deve definir relações de atributo entre atributos. Definir relações de atributo acelera o processamento de dimensões, partições e consultas.

Para definir relações de atributo

  1. No Designer de Dimensão para a dimensão Data, clique na guia Relações de Atributo.

  2. No diagrama, clique com o botão direito do mouse no atributo English Month Name e clique em Nova Relação de Atributo.

  3. Na caixa de diálogo Criar Relação de Atributo, o Atributo de Origem é English Month Name. Defina o Atributo Relacionado como Trimestre do Calendário.

  4. Na lista Tipo de relação, defina o tipo de relação como Rígida.

    O tipo de relação é Rígida porque as relações entre os membros não mudarão com o passar do tempo.

  5. Clique em OK.

  6. No diagrama, clique com o botão direito do mouse no atributo Calendar Quarter e clique em Nova Relação de Atributo.

  7. Na caixa de diálogo Criar Relação de Atributo, o Atributo de Origem é Calendar Quarter. Defina o Atributo Relacionado como Semestre do Calendário.

  8. Na lista Tipo de relação, defina o tipo de relação como Rígida.

  9. Clique em OK.

  10. No diagrama, clique com o botão direito do mouse no atributo Calendar Semester e clique em Nova Relação de Atributo.

  11. Na caixa de diálogo Criar Relação de Atributo, o Atributo de Origem é Calendar Semester. Defina o Atributo Relacionado como Ano Civil.

  12. Na lista Tipo de relação, defina o tipo de relação como Rígida.

  13. Clique em OK.

  14. No menu Arquivo, clique em Salvar Tudo.

Fornecendo nomes de membro de dimensão exclusivos

Nesta tarefa, você criará colunas de nomes definidas pelo usuário que serão usadas pelos atributos EnglishMonthName, CalendarQuarter e CalendarSemester.

Para fornecer nomes de membro de dimensão exclusivos

  1. Para alternar para a exibição de fonte de dados do Adventure Works DW 2012, clique duas vezes nela na pasta Exibições da Fonte de Dados no Gerenciador de Soluções.

  2. No painel Tabelas, clique com o botão direito do mouse em Date e clique em Novo Cálculo Nomeado.

  3. Na caixa de diálogo Criar Cálculo Nomeado, digite MonthName na caixa Nome da coluna e, em seguida, digite ou copie e cole a seguinte instrução na caixa Expressão:

    EnglishMonthName+' '+ CONVERT(CHAR (4), CalendarYear)
    

    A instrução concatena o mês e o ano para cada mês na tabela em uma nova coluna.

  4. Clique em OK.

  5. No painel Tabelas, clique com o botão direito do mouse em Data e clique em Novo Cálculo Nomeado.

  6. Na caixa de diálogo Criar Cálculo Nomeado, digite CalendarQuarterDesc na caixa Nome da coluna; em seguida, digite ou copie e cole o script de SQL a seguir na caixa Expressão:

    'Q' + CONVERT(CHAR (1), CalendarQuarter) +' '+ 'CY ' +
    CONVERT(CHAR (4), CalendarYear)
    

    Esse script de SQL concatena o trimestre e o ano para cada trimestre na tabela em uma nova coluna.

  7. Clique em OK.

  8. No painel Tabelas, clique com o botão direito do mouse em Data e clique em Novo Cálculo Nomeado.

  9. Na caixa de diálogo Criar Cálculo Nomeado, digite CalendarSemesterDesc na caixa Nome da coluna; em seguida, digite ou copie e cole o script de SQL a seguir na caixa Expressão:

    CASE
    WHEN CalendarSemester = 1 THEN 'H1' + ' ' + 'CY' + ' ' 
           + CONVERT(CHAR(4), CalendarYear)
    ELSE
    'H2' + ' ' + 'CY' + ' ' + CONVERT(CHAR(4), CalendarYear)
    END
    

    Esse script de SQL concatena o semestre e o ano para cada semestre na tabela em uma nova coluna.

  10. Clique em OK.

  11. No menu Arquivo, clique em Salvar Tudo.

Definindo o composto KeyColumns e configurando a Coluna de Nome

A propriedade KeyColumns contém coluna ou colunas que representam a chave do atributo. Nesta tarefa, você definirá o composto KeyColumns.

Para definir o composto KeyColumns para o atributo Nome do Mês em Inglês

  1. Abra a guia Estrutura da Dimensão para a dimensão Data.

  2. No painel Atributos, clique no atributo English Month Name.

  3. Na janela Propriedades, clique no campo KeyColumns e, em seguida, clique no botão Procurar (...).

  4. Na caixa de diálogo Colunas de Chave, na lista Colunas Disponíveis, selecione a coluna CalendarYear e, em seguida, clique no botão >.

  5. Agora, as colunas EnglishMonthName e CalendarYear são exibidas na lista Colunas de Chave.

  6. Clique em OK.

  7. Para definir a propriedade NameColumn do atributo EnglishMonthName, clique no campo NameColumn na janela Propriedades e clique no botão Procurar ().

  8. Na caixa de diálogo Coluna de Nome, na lista Coluna de Origem, selecione MonthName e clique em OK.

  9. No menu Arquivo, clique em Salvar Tudo.

Para definir o composto KeyColumns para o atributo Calendar Quarter

  1. No painel Atributos, clique no atributo Calendar Quarter.

  2. Na janela Propriedades, clique no campo KeyColumns e, em seguida, clique no botão Procurar (...).

  3. Na caixa de diálogo Colunas de Chave, na lista Colunas Disponíveis, selecione a coluna CalendarYear e, em seguida, clique no botão >.

    Agora, as colunas CalendarQuarter e CalendarYear são exibidas na lista Colunas de Chave.

  4. Clique em OK.

  5. Para definir a propriedade NameColumn do atributo Calendar Quarter, clique no campo NameColumn na janela Propriedades e clique no botão Procurar ().

  6. Na caixa de diálogo Coluna de Nome, na lista Coluna de Origem, selecione CalendarQuarterDesc e clique em OK.

  7. No menu Arquivo, clique em Salvar Tudo.

Para definir o composto KeyColumns para o atributo Calendar Semester

  1. No painel Atributos, clique no atributo Calendar Semester.

  2. Na janela Propriedades, clique no campo KeyColumns e, em seguida, clique no botão Procurar (...).

  3. Na caixa de diálogo Colunas de Chaves, na lista Colunas Disponíveis, selecione a coluna CalendarYear e, em seguida, clique no botão >.

    Agora, as colunas CalendarSemester e CalendarYear são exibidas na lista Colunas de Chave.

  4. Clique em OK.

  5. Para definir a propriedade NameColumn do atributo Calendar Semester, clique no campo NameColumn na janela de propriedades e clique no botão Procurar ().

  6. Na caixa de diálogo Coluna de Nome, na lista Coluna de Origem, selecione CalendarSemesterDesc e clique em OK.

  7. No menu Arquivo, clique em Salvar Tudo.

Implantando e exibindo as alterações

Depois de alterar atributos e hierarquias, você deve implantar as alterações e processar novamente os objetos relacionados para poder exibir as alterações.

Para implantar e exibir as alterações

  1. No menu Compilar do SQL Server Data Tools, clique em Implantar Tutorial do Analysis Services.

  2. Após receber a mensagem Implantação Concluída com Êxito, clique na guia Navegador do Designer de Dimensão da dimensão Data e, em seguida, clique no botão Reconectar na barra de ferramentas do designer.

  3. Selecione Calendar Quarter na lista Hierarquia. Verifique os membros na hierarquia de atributo Trimestre do Calendário.

    Observe que os nomes dos membros da hierarquia de atributo Calendar Quarter são mais claros e fáceis de serem usados porque você criou um cálculo nomeado para ser usado como nome. Agora, existem membros na hierarquia de atributo Calendar Quarter para cada trimestre do ano. Os membros não são classificados em ordem cronológica. Em vez disso, eles são classificados por trimestre e, depois, por ano. Na próxima tarefa deste tópico, você modificará esse comportamento para classificar os membros da hierarquia de atributo por ano e, depois, por trimestre.

  4. Verifique os membros das hierarquias de atributo Nome do Mês em Inglês e Semestre do Calendário.

    Observe que os membros dessas hierarquias também não são classificados em ordem cronológica. Em vez disso, eles são classificados por mês ou semestre, respectivamente, e, então, por ano. Na próxima tarefa deste tópico, você modificará esse comportamento com o objetivo de alterar essa ordem de classificação.

Alterando a ordem de classificação modificando ordem de membro de chave composta

Nesta tarefa, você poderá alterar a ordem de classificação alterando a ordem das chaves que criam a chave composta.

Para modificar a ordem de membro de chave composta

  1. Abra a guia Estrutura da Dimensão do Designer de Dimensão para a dimensão Data e selecione Calendar Semester no painel Atributos.

  2. Na janela Propriedades, verifique o valor da propriedade OrderBy. Ela deve estar definida como Key.

    Os membros da hierarquia de atributo Semestre do Calendário são classificados por seus valores chave. Em uma chave composta, a ordem das chaves de membro baseia-se primeiro no valor da primeira chave de membro e, depois, no valor da segunda chave de membro. Em outras palavras, os membros da hierarquia de atributo Calendar Semester são classificados primeiro por semestre e, depois, por ano.

  3. Na janela Propriedades, clique no botão Procurar (...) para alterar o valor da propriedade KeyColumns.

  4. Na lista Colunas de Chave da caixa de diálogo Colunas de Chave, verifique se CalendarSemester está selecionado e clique na seta para baixo para inverter a ordem dos membros dessa chave composta. Clique em OK.

    Agora, os membros da hierarquia de atributo são classificados primeiro por ano e, depois, por semestre.

  5. Selecione Calendar Quarter no painel Atributos e clique no botão Procurar (...) da propriedade KeyColumns na janela Propriedades.

  6. Na lista Colunas de Chave da caixa de diálogo Colunas de Chave, verifique se CalendarQuarter está selecionado e clique na seta para baixo para inverter a ordem dos membros desta chave composta. Clique em OK.

    Agora, os membros da hierarquia de atributo são classificados primeiro por ano e, depois, por trimestre.

  7. Selecione Nome do Mês em Inglês no painel Atributos e clique no botão Procurar (...) da propriedade KeyColumns na janela Propriedades.

  8. Na lista Colunas de Chave da caixa de diálogo Colunas de Chave, verifique se EnglishMonthName está selecionado e clique na seta para baixo para inverter a ordem dos membros dessa chave composta. Clique em OK.

    Agora, os membros da hierarquia de atributo são classificados primeiro por ano e, depois, por mês.

  9. No menu Compilar do SQL Server Data Tools, clique em Implantar Tutorial do Analysis Services. Quando a implantação for concluída com êxito, clique na guia Navegador no Designer de Dimensão para a dimensão Data.

  10. Na barra de ferramentas da guia Navegador, clique no botão Reconectar.

  11. Verifique os membros das hierarquias de atributo Calendar Quarter e Calendar Semester.

    Observe que agora os membros dessas hierarquias são classificados em ordem cronológica, por ano e, depois, por trimestre ou semestre, respectivamente.

  12. Verifique os membros da hierarquia de atributo Nome do Mês em Inglês.

    Observe que agora os membros da hierarquia são classificados primeiro por ano e, depois, por mês (em ordem alfabética). Isso ocorre porque o tipo de dados da coluna EnglishCalendarMonth na exibição da fonte de dados é uma coluna da cadeia de caracteres que se baseia no tipo de dados nvarchar no banco de dados relacional subjacente. Para obter informações sobre como ativar os meses a serem classificados cronologicamente em cada ano, consulte Classificando membros de atributo com base em um atributo secundário.

Próxima tarefa na lição

Navegando no cubo implantado

Consulte também

Conceitos

Dimensões em modelos multidimensionais