2 Replies Latest reply: Mar 22, 2018 1:19 PM by Jhonatan Vinicius Paulino de Morais RSS

    Como mapear a mesma FK duas vezes?

    Jhonatan Vinicius Paulino de Morais

      Olá pessoal, estou com dificuldades para importar dados de uma tabela que guarda que referencia um mesmo atributos duas vezes mas com nomes distintos.

       

      Segue minha tentativa de mapeamento entre as entidades:

       

      tb_issues

      id as issue_id  -- é a (PK)

      title

      author_id as user_id  -- é a FK do usuário que criou a tarefa

      assigned_to_id as user_id -- é a FK do usuário que recebeu a tarefa

      issue_parent_id as issue_id -- guarda o ID da tarefa relacionada (PAI) da tarefa atual


      tb_users

      id as user_id (PK)

      name


      Observem que se eu mapear os campos com mesmo nome user_id ou issue_id, recebo o erro: Field names must be unique within table


      Mas pelas regras ele deveriam "ser a mesma coisa".


      certamente estou tentando fazer isso da maneira errada. mas mesmo após pesquisas não encontrei outra alternativa para vincular as informações.



      Vocês já resolveram uma situação semelhante a essa?

        • Re: Como mapear a mesma FK duas vezes?
          Alessandro Furtado

          Paulino,

           

          este erro ocorre quando na mesma carga de uma tabela voce tem 2 campos com o mesmo nome

           

          Ex:

           

          Tabela1:

          LOAD

              ABC            as A,

              BCD            as B,

                CDE            as A

          From ......

           

          No seu caso

           

          tb_issues

          id as issue_id  -- é a (PK)

          title

          author_id as user_id  -- é a FK do usuário que criou a tarefa

          assigned_to_id as user_id -- é a FK do usuário que recebeu a tarefa

          issue_parent_id as issue_id -- guarda o ID da tarefa relacionada (PAI) da tarefa atual



          você pode usar ligacoes com tabelas de usuarios mas com nomes diferentes. Assim da o erro.


          Mas é uma abordagem. Teria que estudar para ver o que você precisa no final para ver se isto atende.




          tb_issues:

          LOAD

          id as issue_id,

          title,

          author_id,

          assigned_to_id,

          issue_parent_id

          FROM.....


          e ter varias tabelas para estes nomes


          Author:

          id as author_id

          name as author_name

          FROM.....


          Assigned:

          id as assigned_to_id

          name as assigned_to_id_name

          FROM..

           

          .....

            • Re: Como mapear a mesma FK duas vezes?
              Jhonatan Vinicius Paulino de Morais

              Sim Alexandro,

               

              Eu tinha recarregado mais de uma vez a mesma entidade alterando o nome dela e feito o mapeamento via replicas, a diferença foi que agora (com sua dica) ao invés de replicar todos os atributos o fiz apenas com as chaves.

               

              Eu queria mesmo era saber se existe outros meios de fazer isso via qlik sem ter que fatiar os atributos e 'reimportar' as entidades sob novos nomes.

               

              Agora meu import ficou assim:

               

              tb_issues

              id as issue_id  -- it is my (PK)

              title


              tb_users

              id as user_id (PK)

              name

               

              tb_issues_authors

              issue_id

              author_id

               

              tb_issues_parent

              issue_parent_id

              issue_id

               

              tb_issues_assign

              assigned_to_id

              issue_id


              Muito obrigado por sua resposta.