Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Tenho um Subroutine no Qlik Sense que carrega uma tabela que eu passar por parâmetro. Porém agora estou tentando passar um parâmetro que seria o WHERE, gostaria de passar da seguinte maneira.
Ex.: " [Tipo]='Outros' AND [TP]='NZ' " .
Mas o Qlik Sense não reconhece nenhum valor dentro da Subroutine quando passo desta maneira. Alguém teria alguma ideia de como proceder??
SUB GerarTabela(vTabela, vWhere)
$(vTabela):
LOAD *
FROM $(vTabela)
WHERE $(vWhere);
END SUB
Então você vai ter que dar uma contornada.
Veja assim:
SUB Rotina(p1, p2)
TRACE p1 = $(p1);
TRACE p2 = $(p2);
ENDSUB
SET where = campo = 'valor';
CALL Rotina('Teste', '$(where)');
Fala jovem, tudo certo?
Como você está fazendo a passagem de parâmetros?
Tudo certo!!
Estou passando desta maneira:
Meu terceiro parâmetro é meu "Where". só assim funciona. Mas ele fica mostrando em vermelho.. e se eu tiver mais instruções dentro desse "Where", fica um tanto quanto ilegível.
Então você vai ter que dar uma contornada.
Veja assim:
SUB Rotina(p1, p2)
TRACE p1 = $(p1);
TRACE p2 = $(p2);
ENDSUB
SET where = campo = 'valor';
CALL Rotina('Teste', '$(where)');
Amigo!!
Ficou perfeito, era isso mesmo que queria. Ficou mais legível desta forma.
Muito Obrigado!