Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
bruno_bri
Partner - Contributor III
Partner - Contributor III

Load Qlik Sense

Boa tarde pessoal!

Poderiam me ajudar por favor?

No load estou utilizando o mapping load e criando algumas condições com IF criando um novo campo chamado Status.

[Status]:

Mapping Load

[Status_ID],

IF(xxxxx....) AS Status

FROM [lib://Teste/Planilha_01.xlsx]

(ooxml, embedded labels, table is Dados_Status)

;

Agora o passo do applymap, fazendo a ligação com a minha tabela

[Disponibilidade]:

Load * ,

applymap('Status', [Status ID]) as Status,

IF(xxxxxx...., 'Teste',

IF(Status <50, 'Indisponivel') ) AS Disponibilidade. ****Aqui tenho algumas condições com IF criando Um novo campo chamado Disponibilidade; ***Gostaria de utilizar aqui o campo novo que criei acima (Status), mas não consigo pois dá um erro dizendo que o campo não existe.

Alguem poderia me ajudar? Como utilizar um campo novo que estou carregando na memória em um único Load?

Obrigado Pessoal.

****************** Editado 14:18 - Acrescentando informações de como está estruturado o load.

[Disponibilidade]:

Load * ,

if(Condição_01, '01 Disponivel',

if(Condição_02, '02 Disp Parcial',

if(Status < 50, '03 Indisponivel'))) AS Disponibilidade

;

Load * ,

applymap('Status', [Employee ID]) as Status; **Mapeamento que fiz do campo status

/// Load dos dados no excel **

[Funcionarios]: *** Carrega os campos e dados do meu excel, utilizo na minha metrica do campo disponibilidade alguns campos originados da planilha.

LOAD

  "Name",

    "Employee ID",

    "XXX",

  "YYYY",

  "AABB"

   

FROM [lib://Pasta_Teste/Planilha.xls]

(biff, embedded labels, table is [Sheet]);

[Status]: **Criação do campo status

Mapping Load

// Load * ,

[Employee ID],

if(name = 'Teste', '10',

if(name = 'New', '30'

if(name = 'xxx', '50'))) as Status

FROM [lib://Pasta_Status/Planilha_Status.xlsx]

(ooxml, embedded labels, table is Sheet)

;

[Planilha_Status]:

LOAD

  [xxx],

  [yyyy],

  [aaaa]

FROM [lib://Pasta_status/Planilha_Status.xlsx]

(ooxml, embedded labels, table is Forecast5);

1 Solution

Accepted Solutions
Clever_Anjos
Employee
Employee

Voce está usando um campo que está sendo criado, não funciona, tem que fazer em duas fases:

Disponibilidade]:

LOAD *,

IF(Status <50, 'Indisponivel') ) AS Disponibilidade;

Load * ,

applymap('Status', [Status ID]) as Status,

[restante do script aqui]

View solution in original post

5 Replies
Anonymous
Not applicable

Bruno, bom dia!

Você precisa fazer uma "Resident" da tabela Status para poder utilizar o campo Status dela em outra tabela, basta incluir no final da tabela disponibilidade:

[Disponibilidade]:

Load * ,

applymap('Status', [Status ID]) as Status,

IF(xxxxxx...., 'Teste',

IF(Status <50, 'Indisponivel') ) AS Disponibilidade

Resident Status;

Clever_Anjos
Employee
Employee

Voce está usando um campo que está sendo criado, não funciona, tem que fazer em duas fases:

Disponibilidade]:

LOAD *,

IF(Status <50, 'Indisponivel') ) AS Disponibilidade;

Load * ,

applymap('Status', [Status ID]) as Status,

[restante do script aqui]

bruno_bri
Partner - Contributor III
Partner - Contributor III
Author

Olá Clever,

Segui seus passos e deu certo, consegui utilizar o campo status na condição do meu outro campo disponibilidade.

Só que tem um problema, na aplicação eu fiz um teste e criei uma tabela simples e coloquei a dimensão status, não apareceu nenhum dado, está em branco.

bruno_bri
Partner - Contributor III
Partner - Contributor III
Author

Boa tarde!

Obrigado pela ajuda.

Fiz o que disse, mas não funcionou.

Erro abaixo:

The following error occurred:

Table not found

bruno_bri
Partner - Contributor III
Partner - Contributor III
Author

Clever, boa tarde!

Seguindo suas dicas consegui carregar o campo novo e criar a minha métrica no load.

Muito Obrigado.

Abs.