Skip to main content
Woohoo! Qlik Community has won “Best in Class Community” in the 2024 Khoros Kudos awards!
Announcements
Nov. 20th, Qlik Insider - Lakehouses: Driving the Future of Data & AI - PICK A SESSION
cancel
Showing results for 
Search instead for 
Did you mean: 
isaiasdd
Creator
Creator

Montar String para passar por parâmetro para variável

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
1 Solution

Accepted Solutions
marco_almeida
Creator II
Creator II

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)');

 

Grupo Telegram Qlik Brasil: https://t.me/joinchat/AeRmnUmcxQ02L00g3x-HtQ

View solution in original post

4 Replies
marco_almeida
Creator II
Creator II

Fala jovem, tudo certo?

Como você está fazendo a passagem de parâmetros?

Grupo Telegram Qlik Brasil: https://t.me/joinchat/AeRmnUmcxQ02L00g3x-HtQ
isaiasdd
Creator
Creator
Author

Tudo certo!!

Estou passando desta maneira:

parametro_QS.PNG

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.

marco_almeida
Creator II
Creator II

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)');

 

Grupo Telegram Qlik Brasil: https://t.me/joinchat/AeRmnUmcxQ02L00g3x-HtQ
isaiasdd
Creator
Creator
Author

Amigo!!

Ficou perfeito, era isso mesmo que queria. Ficou mais legível desta forma. 

Muito Obrigado!