Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Importei Duas Tabelas para o Qlik onde cada uma possui um campo que remete para o mês e ano de referencia. A TABELA1 apresenta esse campo no formato '201901' e a TABELA2 apresenta no formato '01JAN2019' . Após a importação criei um campo calculado na TABELA2 adaptando o formato desse campo, (não sei se utilizei a forma mais correta), a expressão utilizada foi a seguinte:
replace (replace (replace (replace (replace (replace (replace (replace (replace (replace (replace (replace (mid (Dt_Imob, 6,4) & mid (Dt_Imob, 3,3), 'JAN', '01') , 'FEB', '02'), 'MAR', '03'), 'APR', 04), 'MAY', '05'), 'JUN', '06'), 'JUL', '07 '),' AUG', '08'), 'SEP', '09'), 'OCT', '10'), 'NOV', '11'), 'DEC', '12')
O resultado esta ok, a TABELA2 agora tem um campo calculado exatamente igual ao campo nativo da TABELA1, porem, ao relacionar as Tabelas o resultado é vazio, como se não houvesse vínculos validos entre Elas. Tenho Duas Duvidas:
A Primeira é, existe uma forma mais eficiente de realizar a criação desse campo, talvez usando hum IF?
A Segunda, qual o problema nessa associação entre as tabelas? Seria Algum erro de formato entre os campos (string x int) e o que poderia ser feito para resolver?
Obrigado
Possível mente o formato dos campos estava diferente.
Para resolver o problema basta seguir os seguintes passos:
Load
Date(Date#(Data, 'YYYYMM'), 'DD/MM/YYYY') as Data
FROM Tabela1
Load
Date(Date#(Data, 'DDMMMYYYY'), 'DD/MM/YYYY') as Data
FROM Tabela2
Basicamente a estratégia é usar a função Date# para ler a string como data. Depois usar a função Date para definir o mesmo formato de visualização.
Atenção:
As datas da tabela um serão sempre no primeiro dia do mês. Você pode colocar a função MonthStart na segunda tabela para garantir sempre o match perfeito entre as chaves.
Para ajudar os usuários a encontrar respostas verificadas, não se esqueça de marcar uma resolução como correta
Possível mente o formato dos campos estava diferente.
Para resolver o problema basta seguir os seguintes passos:
Load
Date(Date#(Data, 'YYYYMM'), 'DD/MM/YYYY') as Data
FROM Tabela1
Load
Date(Date#(Data, 'DDMMMYYYY'), 'DD/MM/YYYY') as Data
FROM Tabela2
Basicamente a estratégia é usar a função Date# para ler a string como data. Depois usar a função Date para definir o mesmo formato de visualização.
Atenção:
As datas da tabela um serão sempre no primeiro dia do mês. Você pode colocar a função MonthStart na segunda tabela para garantir sempre o match perfeito entre as chaves.
Para ajudar os usuários a encontrar respostas verificadas, não se esqueça de marcar uma resolução como correta