Modelagem de dados | Qlik Community
19 Replies Latest reply: Jun 26, 2015 1:26 PM by Yuri Nicolett
Marcos Antonio Sanches Jul 10, 2014 4:09 PM
Estou com um pequeno problema, estou desenvolvendo uma aplicação que irá ter mais de uma tabela fato e algumas dimensões, porém as tabelas não tem campos em comum, tirando a tabela de Notas Fiscais e Itens. já andei lendo sobre link table e concatenação mais não tenho a menor ideia de como fazer isso. abaixo tem uma imagem do meu modelo de dados para ilustrar o que tenho de resolver.
Categories: Data Model
Re: Modelagem de dados
Eduardo Alexandre Jul 10, 2014 4:30 PM (in response to Marcos Antonio Sanches)
Em qlq modelagem de dados só é possível se houver campos "chaves" nas duas tabelas. Que pelo visto não é seu modelo.
Você pode ate concatenar as tabelas, mas o Qlikview irá fazer um produto cartesiano, ligando todos os campos possível, podendo aumentar o numero de linhas da tabela de forma consideravel.
O que você pode fazer é alterar o nome dos campos para criar a chave..
Ex. Tabela de NF deve estar ligada a tabela cliente e produto. Porem precisa ver qual o campo que deve ter esse relacionamento..
Se quiser ajuda, publique um excel com alguns registros para montarmos uma nova modelagem
Clever Anjos Jul 10, 2014 4:51 PM (in response to Marcos Antonio Sanches)
Como disse o Eduardo, essa modelagem possui pouco valor de análise.
Avalie corretamente quais são as chaves entre as tabelas
Fernando Tonial Jul 11, 2014 8:03 AM (in response to Marcos Antonio Sanches)
Você deve fazer a associação entre as tabelas atraves de um campo chave.
Segue um exemplo para você:
D2_FILIAL&'|'&
D2_DOC&'|'&
D2_SERIE AS [%Chave_NF_Saida],
D2_TOTAL,
SQL Select * from SD110;
F2_FILIAL&'|'&
F2_DOC&'|'&
F2_SERIE AS [%Chave_NF_Saida],
F2_VEND1,
SQL Select * from SF110;
Isso você deve fazer para todas tabelas de seu modelo de dados.
Associando NF com Cliente, ITEM com Produto e assim conforme a sua necessidade.
Marcos Antonio Sanches Jul 11, 2014 6:52 AM (in response to Fernando Tonial )
Obrigado pelas dicas, entendo que eu tenho de criar as chaves isso já existe em um primeiro modelo de dados que eu fiz para esta aplicação com a tabela de NF como a única tabela fato, porém agora no minimo terei mais duas tabelas fato para trabalhar, e com isso o modelo que eu tinha feito não funcionou mais.
A pessoa que nos da uma ajuda aqui de vez em quando disse para eu criar uma espécie de tabela "integradora" que faria o link entre todas as tabelas do modelo, mais realmente eu não sei como fazer isso.
Carlos De Sa Jul 11, 2014 7:27 AM (in response to Marcos Antonio Sanches)
Pela Minha experiência em Protheus, faria as ligações
SF2 -- SD2 --> F2_NUMERO=D2_DOC / F2_SERIE=D2_SERIE
SF2 -- SA2 --> F2_CLIENTE = D2_CLIENTE / F2_LOJA = D2_LOJA
*Verificar para não trazer nota de devolução na SF2.
SB2/SBM - SD2 --> CÓDIGO DO PRODUTO
O Vendedor(SA3) está no cadastro do cliente(SA1) ou é gravado na NF ?
Marcos Antonio Sanches Jul 11, 2014 7:59 AM (in response to Carlos De Sa)
Então o vendedor é gravado em um campo no campo A1_VEND da SA1 como eu posso incluir as Notas Fiscais de Devolução?
Carlos De Sa Jul 11, 2014 8:40 AM (in response to Marcos Antonio Sanches)
Salvo o engano, terá que ver o D2_TIPO, provável que esteja como D ou B
e F2_CLIENTE/F2_LOJA deverá vincular com o SA2(Fornecedor).
Fernando Tonial Jul 11, 2014 7:38 AM (in response to Marcos Antonio Sanches)
De uma olhada nesse link, removi o http para não passar pela moderação.
dicasqlikview.blogspot.com.br/2011/02/trabalhando-com-mais-de-uma-tabela-fato.html
Marcos Antonio Sanches Jul 11, 2014 8:16 AM (in response to Fernando Tonial )
Eu li a matéria muito boa, me esclareceu algumas duvidas porém acabaram surgindo outras, novato é assim mesmo eu acho, a linktable vai fazer a ligação com todas as tabelas? ou somente com as que tem campos em comum?
Meu modelo está ficando assim está certo?
Fernando Tonial Jul 11, 2014 8:36 AM (in response to Marcos Antonio Sanches)
Nesse modelo que vc passou não há necessidade de link table, pois a associação entre elas pode ser feita apenas pelo campo Chave que vc criou, pois acredito que não tenha NOTA FISCAL sem ITEM e vice-versa.
Uma link table é necessário quando não tempos todas as associações ou relações entre os dados, por exemplo Realizado e Orçado, sendo nesse caso imprescindível a link table com um campo chave Concatenando com os Atributos Chaves em comum entre as duas e mais o tempo (data por exemplo).
Marcos Antonio Sanches Jul 11, 2014 8:50 AM (in response to Fernando Tonial )
Então por isso mesmo, que eu postei isso porque eu tenho de adicionar a tabela fato de metas, que é mais uma tabela fato no modelo. ai fica como você disse orçado X realizado mais no caso, meta X realizado, isso que gerou todo o meu problema.
Fernando Tonial Jul 11, 2014 9:06 AM (in response to Marcos Antonio Sanches)
Em principio você deve colocar os campos em comum entre a NF e METAS mais a DATA.
Vocês possuem metas por ITEM?
Marcos Antonio Sanches Jul 11, 2014 10:18 AM (in response to Fernando Tonial )
Então em principio os únicos comuns na entre a tabela de metas e a de notas fiscais é o campo representante (vendedor) as metas são em cima dos produtos. por isso essa minha confusão com esse modelo de dados. no momento meu modelo está assim.
Fernando Tonial Jul 11, 2014 10:50 AM (in response to Marcos Antonio Sanches)
Você deve saber a relação entre a NF e Representante, pelo jeito essa informação não esta na NF, sendo necessário colocar na NF.
Depois de você colocar essa informação na NF terá que fazer uma ChaveRepresentante com a concatenação do Código Representante, Data e sua tabela de ligação deve ter a ChaveRepresentante, Código Representante e Código Data.
Marcos Antonio Sanches Jul 11, 2014 12:24 PM (in response to Fernando Tonial )
Obrigado pela ajuda Fernando
Me desculpe sou bem burrão ainda em matéria de qlikview e não entendi nada do que você me falou vou tentando qualquer coisa eu posto aqui.
Fernando Tonial Jul 11, 2014 12:33 PM (in response to Marcos Antonio Sanches)
Marcos, fique tranquilo que logo vc entenderá oq estou falando.
Para você fazer qualquer coisa em QlikView é necessário conhecer as relação entre as tabelas do banco de dados. Caso vc não conhece, solicita ajuda algum colega que conhece o relacionamento das tabelas do TOTVS PROTHEUS.
Marcos Antonio Sanches Jul 11, 2014 12:35 PM (in response to Fernando Tonial )
Então estou tentando acho que um dia eu consigo, o problema que o protheus aqui não tem chave todas as chaves tem de ser criadas dentro do qlikview. por isso que é meio dificil para mim entender como fazer isso.
Carlos Alexandre Souza Jun 25, 2015 11:12 PM (in response to Marcos Antonio Sanches)
Boa tarde estou com a mesma dificuldade em relacionar a tabela de meta do Protheus. Vocês conseguiram resolver o relacionamento da tabela CT estou enviando a imagem de como estou relacionando sendo: Preciso relacionar a tabela META DE VENDA campo CT_GRUPO a tabela ITENS DA NOTA campo CHV_GRUPO. Se alguém puder me ajudar agradecido.