4 Replies Latest reply: Mar 31, 2015 7:51 AM by Dionei Machado RSS

    $Syn Table

    Dionei Machado

      Sou iniciante em qlik e estou com dificuldade no relacionamento das tabelas, no modelo de relacionamento está aparecendo 2 $syn.

      Como poderia resolver isto? Vou enviar imagem do relacionamento.

        • Re: $Syn Table
          Thiago Manoel Gonçalo

          Dionei, boa tarde!

           

          O qlikview tem um conceito de relacionamento por nomenclatura de campos, ou seja, entre duas tabelas todos os campos em que o qlikview verificar que possuem o mesmo nome ele irá relacionar, alem disso, o qlikview quando identifica que há mais de um campo com nomes iguais entre duas tabelas, cria uam chave $syn (chave sintética) que nada mais é do que uma chave que relaciona todos esses campos. Para resolver tal problema, basta renomear os campos das tabelas, afim deles terem apenas um campo de ligação, como mostrado abaixo.

           

          Seguindo a lógica dos campos do seu print.. Segue:

           

          na tabela cliente, renomeie os campos cliente código e cliente loja em uma das tabelas, ou faturamento ou Clientes e se os dois campos precisarem ser ligados a tabela faturamento ficará assim:

           

          CLIENTES:

          LOAD

          [Cliente Codigo]          as Cliente_Cod,

          [Cliente Loja]                as Cliente_Loja,

          [Cliente Codigo]&[Cliente Loja]           as Chave_cliente,

          Cliente

          From....


          Na tabela faturamento, ficará igual..


          FATURAMENTO:

          LOAD

          colocar todos os campos normal,

          [Cliente Codigo]&[Cliente Loja]           as Chave_cliente,

          from


          Desta forma irá criar apenas uma chave de ligação eliminando a chave sintética. Faça tambem para o outro caso.


          Abraços.


          Thiago Gonçalo

          • Re: $Syn Table
            Luciano Vasconcelos

            Boa tarde.

            Os relacionamentos entre as tabelas devem ser por um único campo.

            Você têm duas $syn.

             

            Na tabela Faturamento por exemplo, você ao invés de ter os 2 campos Cliente Código e Cliente Loja, você cria o campo no load assim:

             

            [Cliente Código] & [Cliente Loja] as Cliente_Key.


            Crie o mesmo campo na tabela clientes, além de manter os campos Cliente Código e Cliente Loja.


            Assim você elimina a $syn1.


            A outra segue o mesmo raciocínio.