Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Produtos Vendidos Hoje:
only({$<Ano ={$(=Year(today()))}, Mês={$(=Month(today()))}, Dia={'<=$(=Day(Today()))'},[Movimento_Tipo_Operacao]={'DEV','VND','VPC','VEF','FPV','CVE'} >} CalendarDate)
Gostaria de saber produtos vendidos hoje, que não tiveram vendas a mais de 03 meses, Antes da data atual.
Exemplo: produto 1 vendeu hoje 29/08/2017
Preciso saber ser este mesmo produto tinha antes da venda hoje, mais de 90(29/06/2017) dias sem vendas anterior a data de hoje de vendas?
Boa tarde,
Segue o seu arquivo com o que vc precisa implementado. Basta ajustar o código ao seu arquivo de dados qvd, pois como tive que recarregar o arquivo, criei um qvd a parte.
Qualquer dúvida à disposição.
Oi Agnaldo, desculpa a pergunta, mas não seria mais simples criar um campo "Ultima Venda" e fazer um Interval com a venda atual na area de script?
O problema que vou criar um relatório fixo, não selecionar datas.
Você tem alguma ideia...
Em 29 de agosto de 2017 14:25, Eduardo DImperio <qcwebmaster@qlikview.com>
escreveu:
Qlik Community <https://community.qlik.com/?et=watches.email.thread>
Produtos vendidos hoje, que não tiveram venda > 90 dias.
resposta de Eduardo DImperio
<https://community.qlik.com/people/eduardo.dimperio?et=watches.email.thread>
em Qlik Brasil - Visualize a discussão completa
<https://community.qlik.com/message/1334302?et=watches.email.thread#1334302>
Oi Agnaldo, desculpa a demora.
Vamos por partes e vamos chegar numa solução bacana.
O que você quer dizer com relatório fixo? Você vai ter uma data fixa, um relatorio que vai acontecer apenas uma vez?
O que eu entendi do seu problema, voce tem um produto X que foi vendido pela ultima vez em uma data Y, se essa data Y for maior que 3 meses contando o dia de hoje voce quer listar o produto X. E que semana que vem quando voce for realizar novamente essa consulta, ira pegar o os produtos X que não foram vendidos a mais de 3 meses a partir dessa nova data (uma semana depois).
Se for esse o caso, sua data inicial e final irão mudar diariamente. Por isso não entendi o relatório fixo.
Agnaldo,
Tenta algo mais ou menos dessa forma.
only({$<Ano ={$(=Year(today()))}, Mês={$(=Month(today()))}, Dia={'<=$(=Day(Today()))'},
[Movimento_Tipo_Operacao]={'DEV','VND','VPC','VEF','FPV','CVE'}
[Data da Fatura] = {"Sum({$<[Ano/Mês]=, [Mês/Ano]=, Ano=, Mês =, [Data da Fatura] = {">=$(=AddMonths(max([Data da Fatura]),-3)) <=$(=AddMonths(max([Data da Fatura]),0))"}>}Valor)<=0"}
>} CalendarDate)
A minha ideia é procurar quem teve venda menor ou igual a Zero nos últimos 3 meses.
Qualquer coisa coloca só essa separada, somente com a dimensão de Data pra ir ajustando, posso ter errado alguma sintaxe, depois você colocar para procurar na data somente a expressão ajustada.
Sum({$<[Ano/Mês]=, [Mês/Ano]=, Ano=, Mês =, [Data da Fatura] = {">=$(=AddMonths(max([Data da Fatura]),-3)) <=$(=AddMonths(max([Data da Fatura]),0))"}>}Valor)<=0"}
Espero ter ajudado.
Todos os dias vai sair relatório de vendas. diário.
sum({$<Ano ={$(=Year(today()))}, Mês={$(=Month(today()))}, Dia={'<=$(=Day(Today()))'},[Movimento_Tipo_Operacao]={'DEV','VND','VPC','VEF','FPV','CVE'} >} preco_final)
Eu preciso bonificar as vendedoras que estão vendedo produtos antigos.
Então preciso apenas que saia num relatórios os produtos vendidos no dia atual que não foi vendido a mais de 90 dias.
Um parametros seria fazer pela compra.(PARAMETROS ABAIXO)
MAX([Movimento_Tipo_Operacao]={'CMP'} >} CalendarDate)
Entao, era o que eu imaginava.
Voce pode fazer por Set Analisys como o Francisco esta sugerindo.
Eu prefiro fazer via script.
Load
SUM(preco_final)
WHERE
MATCH([Movimento_Tipo_Operacao],'DEV','VND','VPC','VEF','FPV','CVE') AND Interval(TODAY()-DATA_Ultima_Compra)>90
Estou presumindo que existe um campo com a data da ultima compra no seu BD.
Depois é só colocar uma task que voce vai ter o relatório atualizado todo dia
Pessoal,
Veja que a data das vendas do dia atual dos produtos.
VND:
sum({$<Ano ={$(=Year(today()))},Mês={$(=Month(today()))},Dia={$(=Day(today()))},[Movimento_Tipo_Operacao]={'VND'} >}Preco_Final)
Preciso bonificar vendedores que vendem produtos com faixa 60,90,180 dias.
Exemplo:
produto 17147 - Vendeu 1805,92 - Data Venda 25/08/2017
Caso ele tenha a ultima venda acima desta que esteja na faixa maior que 60 90 180 dias que coloque a data na sua receptiva coluna.
O Proprietário que bonificar os vendedores que estão conseguindo vender produtos sem vendas por faixa venda.
O qvw esta acima,
o Load está abaixo...
LOAD CalendarDate,
Trimestre,
Mês,
Semana,
Dia,
Ano,
MesAno
FROM
(qvd);
LOAD
CodigoProduto,
Prod_Serv_Nome,
CalendarDate,
Sequencia,
Movimento_Prod_Serv_Qtde,
Preco_Final,
CodigoFilial,
date(Data_Efetivado_Estoque) as Data_Efetivado_Estoque,
Movimento_Tipo_Operacao,
MATCH([Movimento_Tipo_Operacao],'COM') AND Interval(TODAY()-Data_Efetivado_Estoque)<180 as Ultima_Compra,
MATCH([Movimento_Tipo_Operacao],'VND') AND Interval(TODAY()-Data_Efetivado_Estoque)<180 as Ultima_Venda,
Apelido
FROM
(qvd);
Oi Agnaldo,
Match() deve ser usado para verificar se um valor esta contido
Interval() é usado pra calcular a diferença entre duas datas e precisa de um timestamp como parametro de saida.
e quando voce utiliza os dois é pra checar uma condição, no seu caso esta para guardar valor em um campo.
Imagino que deveria ser assim o codigo:
LOAD
CodigoProduto,
Prod_Serv_Nome,
CalendarDate,
Sequencia,
Movimento_Prod_Serv_Qtde,
Preco_Final,
CodigoFilial,
date(Data_Efetivado_Estoque) as Data_Efetivado_Estoque,
Movimento_Tipo_Operacao,
IF(MATCH([Movimento_Tipo_Operacao],'COM') AND Interval(TODAY()-Data_Efetivado_Estoque)<180,Data_Efetivado_Estoque,'Ultima Compra a mais de 180 dias') as Ultima_Compra,
IF(MATCH([Movimento_Tipo_Operacao],'VND') AND Interval(TODAY()-Data_Efetivado_Estoque)<180,Data_Efetivado_Estoque,'Ultima Venda a mais de 180 dias') as Ultima_Venda,
Apelido
FROM
(qvd);
Nesse exemplo, é feita a comparação da data de hoje com o Data_Efetivado_Estoque, se ele for menor que 180 dias vai aparecer no relatorio essa data, se ele for maior que 180 dias aparece uma mensagem de aviso (ou o que voce achar mais adequado).
Segue esses links pra te ajudar.
Boa tarde,
Segue o seu arquivo com o que vc precisa implementado. Basta ajustar o código ao seu arquivo de dados qvd, pois como tive que recarregar o arquivo, criei um qvd a parte.
Qualquer dúvida à disposição.