none
Carregando novo campo na dimensão usando job RRS feed

  • Pergunta

  • Olá, estou com o seguinte problema: eu adicionei um campo novo em uma dimensão do meu modelo, na dimensão Data. Essa dimensão já existia e já estava devidamente populada. O campo é chamado de 'FinalDeSemanaIndicador', que é um campo varchar(15) que recebe 'Final de Semana' ou 'Dia da Semana'. Fiz a adição desse campo e  dei um UPDATE na tabela  pra preenche-lo. Até ai tudo certo. No entanto, as dimensões desse modelo são preenchidas diariamente, um job roda os pacotes do SSIS. O que acontece eh que esse novo campo está sendo preenchido com valor NULL, o que não era pra acontecer. A tarefa no SSIS que preenche essa tabela simplesmente executa o sql abaixo:

    comando SQL parar inserir dados na Dimensão Data

    insert into DimDataCuboEvolucaoAlunos (Data, Mes, DiadoAno, Ano, DiadoMes, SemanadoAno, Semestre, Trimestre, FinalDeSemanaIndicador)
    select distinct tmp.DataMovimentacao,
    DATEPART(mm, tmp.DataMovimentacao) as mes,
    DATEPART(dayofyear, tmp.DataMovimentacao) as diadoano, DATEPART(year, tmp.DataMovimentacao) as ano,
    DATEPART(d, tmp.DataMovimentacao) as diadomes, DATEPART(wk, tmp.DataMovimentacao) as semanadoano,
    CASE
        WHEN DATEPART(mm, tmp.DataMovimentacao) <=6 THEN 1
        ELSE 2
    END AS semestre,
    DATEPART(qq, tmp.DataMovimentacao) as trimestre,
    CASE
        WHEN DATEPART(dw, tmp.DataMovimentacao) in (1,7) THEN 'Final de Semana'
        ELSE 'Dia da Semana'
    END AS FinalDeSemanaIndicador
    from TmpFatorEvolucaoAlunos Tmp
    where not exists (select dt.data from DimDataCuboEvolucaoAlunos dt
                               where dt.data = tmp.DataMovimentacao)


    Ao meu ver não possui nenhum erro no comando. Mesmo porque quando executo esse select no management studio ele retorna o resultado esperado, ou seja, sem resultado NULL para o campo FinalDeSemanaIndicador.
    Alguém teria alguma idéia do porque disso estar acontecendo???
    Quando eu modifico alguma coisa nas tarefas do SSIS, preciso fazer alguma atualização no Job????


    terça-feira, 29 de abril de 2008 13:36

Respostas

  • Olá Nayron,

     

    Talvez seja desnecessário perguntar mas você não deveria atualizar o modelo no seu cubo ? Não estou certo que ele vá refletir automaticamente o novo membro adicionado na dimensão.

     

    [ ]s,

     

    Gustavo

    terça-feira, 29 de abril de 2008 21:40

Todas as Respostas

  • Olá Nayron,

     

    Talvez seja desnecessário perguntar mas você não deveria atualizar o modelo no seu cubo ? Não estou certo que ele vá refletir automaticamente o novo membro adicionado na dimensão.

     

    [ ]s,

     

    Gustavo

    terça-feira, 29 de abril de 2008 21:40
  • Nayron, você já executou esse pacote sem o Job e ele funciona corretamente?

    Você chegou a salvar o seu .dtsx e realizar o deploy em ambiente de produção?


    Abraços,
    quarta-feira, 30 de abril de 2008 14:31
  • Olá Gustavo,

    atualizei sim o modelo no cubo.
    Consegui resolver o problema com a ajuda de um amigo. Eu tive que utilizar o SSMS conectando no SSIS e "atualizar", carregar novamente os pacotes em Stored Packages>MSDB>Maintenance Plans...
    Ele me explicou que sempre que eu fizer uma mudança nos pacotes la no SSIS tenho que fazer um build no pacote modificado e atualizar ele no SSMS.

    valeu pela atenção...
    quarta-feira, 30 de abril de 2008 18:20
  • E ae Rodrigo,

    Consegui resolver o problema com a ajuda de um amigo. Eu tive que utilizar o SSMS conectando no SSIS e "atualizar", carregar novamente os pacotes em Stored Packages>MSDB>Maintenance Plans...
    Ele me explicou que sempre que eu fizer uma mudança nos pacotes la no SSIS tenho que fazer um build no pacote modificado e atualizar ele no SSMS.


    obrigado pela atenção
    quarta-feira, 30 de abril de 2008 18:21
  • Oi Nayron,

     

    Era algo nesse sentido que eu estava tentando sugerir...

     

    Que bom que foi resolvido.

     

    [ ]s,

     

    Gustavo

     

    quinta-feira, 1 de maio de 2008 00:34
  • Ae Gustavo..
    é verdade... li novamente tua primeira resposta e a solução para o meu probelma era exatamente o que vc sugeriu, vou corrigir minha marcação de resposta correta..

    abraço
    quinta-feira, 1 de maio de 2008 03:20