Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
jhonatan_morais
New Contributor II

Como mapear a mesma FK duas vezes?

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?

1 Solution

Accepted Solutions
MVP
MVP

Re: Como mapear a mesma FK duas vezes?

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..

.....

2 Replies
MVP
MVP

Re: Como mapear a mesma FK duas vezes?

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..

.....

jhonatan_morais
New Contributor II

Re: Como mapear a mesma FK duas vezes?

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.