Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Parametro

Eu consigo passar um parametro para minha query?! No lugar das datas chumbadas, e dos código dos clientes, eu passaria os valores onde o usuário escolheria eles

EX:

Select Cli.CLi_Id

  From Cliente Cli, Usr_Cli_Relation Ucr, Pedido_Venda_Capa Pvc

  Where Cli.Cli_Id = Ucr.Cli_Id

  And Cli.Cli_Id != Pvc.Cli_Id

  And Pvc.Cri_Dt = '20120413'

  And Ucr.Usr_Id = '028';

Select Cli.CLi_Id

  From Cliente Cli, Usr_Cli_Relation Ucr, Pedido_Venda_Capa Pvc

  Where Cli.Cli_Id = Ucr.Cli_Id

  And Cli.Cli_Id = Pvc.Cli_Id

  And Pvc.Cri_Dt = '20120413'

  And Ucr.Usr_Id = '028';

1 Solution

Accepted Solutions
cesaraccardi
Specialist
Specialist

Ishimada, você consegue fazer isto em um gráfico criando uma expressão com set Analysis e variáveis... Por exemplo: Crie uma variável vData na tela de variáveis e na expressão do gráfico você faria algo do tipo:
sum({$<DataVenda={'$(vData)'}>} Valor), a variável poderia ser incluída em uma caixa de entrada para que o usuário possa alterar o valor.

View solution in original post

7 Replies
cesaraccardi
Specialist
Specialist

Olá Ishimada, você pode usar variáveis na sua query para filtrar as datas... Mas este filtro só funcionaria ao recarregar os dados, se você quer algo que o usuário filtre e visualize o resultado sem necessidade de recarga deveria fazer isto na interface em alguma tabela/gráfico.


Em todo caso para usar variáveis na query você utiliza a expansão de dólar:

Select * from tabela where data = '$(vData)';

Abraços,
Cesar.

Not applicable
Author

Entao eu quero fazer isso justamente na interface, o usuário vai selecionar o vendedor e a data, ai eu mostraria para o usuário os dados dele.

Nessa query eu retorno isso, porém eu tenho q chumbar o valor. Como eu faria isso na tabela, tem alguma sugestao?

Select Cli.CLi_Id

  From Cliente Cli, Usr_Cli_Relation Ucr, Pedido_Venda_Capa Pvc

  Where Cli.Cli_Id = Ucr.Cli_Id

  And Cli.Cli_Id = Pvc.Cli_Id

  And Pvc.Cri_Dt = '20120413'

  And Ucr.Usr_Id = '028';

cesaraccardi
Specialist
Specialist

Ishimada, você consegue fazer isto em um gráfico criando uma expressão com set Analysis e variáveis... Por exemplo: Crie uma variável vData na tela de variáveis e na expressão do gráfico você faria algo do tipo:
sum({$<DataVenda={'$(vData)'}>} Valor), a variável poderia ser incluída em uma caixa de entrada para que o usuário possa alterar o valor.

Not applicable
Author

Eu entendi o seu conceito, tentei aplicar aqui, mas nao consegui, voce poderia por favor me mandar um exemplo de set analysis?

Malz as perguntas, to comecando a utilizar agora o QlikView

Not applicable
Author

Como eu faço para o valor digitado na caixa de entrada traga os valores q eu quero?

Select Cli.CLi_Id

  From Cliente Cli, Usr_Cli_Relation Ucr, Pedido_Venda_Capa Pvc

  Where Cli.Cli_Id = Ucr.Cli_Id

  And Cli.Cli_Id = Pvc.Cli_Id

  And Pvc.Cri_Dt = '20120413'

  And Ucr.Usr_Id = ''$(vData)'

srchagas
Creator III
Creator III

Bom Dia lshimada

Você não tem o valor de venda de cada venda efetuada?
Por que acho que fica mais facil você pegar esse valor da Select e fazer um SUM na tabela e separar a data em Objeto de Lista

No caso se você tiver DIA-MES-ANO usa alias neles no campo interio e faz


Month(Campo) as mes

Year(campo) as Ano
Day(Campo) as Dia

e assim por diante se quiser expecificação de Hora.

ai no objeto de Dia o usuário seleciona o dia, infelizmente estou sem  pode mexer o Qlikview agora se nao postava como fica

Not applicable
Author

acho q nao expliquei muito bem, oq eu queria saber é o seguinte.

No lugar da variavel COD eu quero substituir pelo valor q o usuário vai digitar na caixa de entrada,e após digitado o valor e ele clicar em OK, o select irá retornar os dados q eu necessito

Select Cli.CLi_Id

  From Cliente Cli, Usr_Cli_Relation Ucr, Pedido_Venda_Capa Pvc

  Where Cli.Cli_Id = Ucr.Cli_Id

  And Cli.Cli_Id = Pvc.Cli_Id

  And Pvc.Cri_Dt = '20120413'

  And Ucr.Usr_Id = ''$(COD)'