Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bom dia!
Precisaria de ajuda para o finalizar quadro resumo da consulta em anexo, são os valores que estão zerados.
Este resumo é um espelho para o quadro apresentado a direita, que contém as vendas para os clientes nas duas coleções.
Abaixo coloquei os valores esperados quando a seleção for a mencionada no exemplo.
Se puderem ajudar agradeço antecipadamente
Cesar,
Se eu entendi, você só considera as emissões ocorridas no período de vigência da coleção. Correto?
Caso seja isso, acredito que os ajustes que fiz em sua aplicação vão atender a sua necessidade.
Criei um Flag no script que identifica se a emissão ocorreu dentro da vigência da coleção, assim a expressão fica mais simples.
Analisa se te atende.
Abs,
Felipe
Acredito que a melhor maneira é você criar um campo flag para marcar o que é ou não da coleção atual.
A forma que esta fazendo a sua expressão pode ficar muito complexa para determinadas agregações e isso seria facilitado com a criação do campo flag
Bom dia Yuri Obrigado pelo retorno!
É que a coleção atual vai variar conforme o filtro que eu fizer no campo Coleção Atual.
A coleção anterior está vinculada a ela através da tabela Agrupamentos.
Por isso que ao ler as vendas da coleção anterior, eu desprezo o filtro feito e leio com todas as possibilidades da coleção anterior: P(DES_COD_COLECAO_ANTERIOR).
Sempre será feito um único filtro na coleção atual e um único filtro no representante.
Já consumi quase um dia tentando ler essa combinação (atual X anterior) e até agora sem sucesso.
Grato pela atenção
Cesar,
Seguem as expressões:
Count({<DES_COD_COLECAO={'$(=Only(DES_COD_COLECAO_ANTERIOR))'},DES_COD_CLIENTE-={"=Count({<DES_COD_COLECAO={$(=Only(DES_COD_COLECAO))}>}DES_COD_CLIENTE)"}>}DISTINCT DES_COD_CLIENTE)
Sum({<DES_COD_COLECAO={'$(=Only(DES_COD_COLECAO_ANTERIOR))'},DES_COD_CLIENTE-={"=Count({<DES_COD_COLECAO={$(=Only(DES_COD_COLECAO))}>}DES_COD_CLIENTE)"}>}DES_QTD_ORIGINAL)
Count({<DES_COD_COLECAO={'$(=Only(DES_COD_COLECAO))'},DES_COD_CLIENTE-={"=Count({<DES_COD_COLECAO={$(=Only(DES_COD_COLECAO_ANTERIOR))}>}DES_COD_CLIENTE)"}>}DISTINCT DES_COD_CLIENTE)
Sum({<DES_COD_COLECAO={'$(=Only(DES_COD_COLECAO))'},DES_COD_CLIENTE-={"=Count({<DES_COD_COLECAO={$(=Only(DES_COD_COLECAO_ANTERIOR))}>}DES_COD_CLIENTE)"}>}DES_QTD_ORIGINAL)
Espero ter ajudado.
Abs,
Felipe
Boa tarde Felipe!
Além de ajudar ensinou muito, só ficou um detalhe, quando testo se ocorreu venda na coleção diferente da que estou analisando devo considerar o período da coleção, perceba que incluí na sua expressão o primeiro teste do período de venda da coleção anterior, ok, está funcionando, mas como eu incluo o teste do período de venda da coleção atual? Tentei colocar junto ao count mas não funcionou, abaixo a sua expressão sem o segundo teste e a minha alteração que não está funcionando, se puder mais uma vez me ajudar eu agradeço.
Obrigado Antecipadamente
Sua Expressão, já com o teste do período da coleção anterior que está funcionando:
Count({<DES_COD_COLECAO={'$(=Only(DES_COD_COLECAO_ANTERIOR))'}, DES_DAT_EMISSAO = {">=$(=DES_DAT_INICIO_COLECAO_ANTERIOR)<=$(=DES_DAT_TERMINO_COLECAO_ANTERIOR)"},
DES_COD_CHAVE_CLIENTE -={"=Count({< DES_COD_COLECAO={$(=Only(DES_COD_COLECAO))} >}DES_COD_CHAVE_CLIENTE)"} >} DISTINCT DES_COD_CHAVE_CLIENTE)
Com o teste incluído (em Negrito)
Count({<DES_COD_COLECAO={'$(=Only(DES_COD_COLECAO_ANTERIOR))'}, DES_DAT_EMISSAO = {">=$(=DES_DAT_INICIO_COLECAO_ANTERIOR)<=$(=DES_DAT_TERMINO_COLECAO_ANTERIOR)"},
DES_COD_CHAVE_CLIENTE -={"=Count({< DES_COD_COLECAO={$(=Only(DES_COD_COLECAO))} , DES_DAT_EMISSAO = {">=$(=DES_DAT_INICIO_COLECAO)<=$(=DES_DAT_TERMINO_COLECAO)"} >}DES_COD_CHAVE_CLIENTE)"} >} DISTINCT DES_COD_CHAVE_CLIENTE)
Cesar,
Se eu entendi, você só considera as emissões ocorridas no período de vigência da coleção. Correto?
Caso seja isso, acredito que os ajustes que fiz em sua aplicação vão atender a sua necessidade.
Criei um Flag no script que identifica se a emissão ocorreu dentro da vigência da coleção, assim a expressão fica mais simples.
Analisa se te atende.
Abs,
Felipe
Ah... uma observação:
A verificação se a emissão ocorreu dentro da vigência não alterou o resultado, pois para a vigência selecionada e para anterior não ocorreram emissões fora da vigência da coleção.
Obrigado Felipe, sua solução me ajudou bastante.
Ficou perfeito
Bom dia Felipe!
Sim, não tinha nenhuma venda fora do período, mas isso foi uma só coincidência para o modelo que disponibilizei. Você me perdoe mas preciso fazer mais uma pergunta, no questionamento que lhe fiz anteriormente para colocar mais um teste dentro da leitura, é de muita importância para mim, pois tenho uma maldita coleção chamada de Permanente, ela tem esse nome pois é vendida durante todo o ano, então por exemplo, se eu selecionar uma coleção permanente, preciso fazer as comparações dela com ela própria, mas dentro de períodos diferentes. Por isso que incluir mais um teste dentro do primeiro modelo que você me enviou seria importante. Se tiver jeito, peço sua ajuda.
Obrigado
Oi, Cesar.
A lógica tá pronta, basta adicionar na tabela "Agrupamentos" os dados dessa coleção permanente, em que a coleção anterior é a mesma, mas as datas da coleção anterior são do ano anterior.
Abs,
Felipe