GD Access    GD Access    Grupo de Discussão  Ir para Categorias  Grupos técnicos  Ir para Fóruns  Access    Filtro ao inverso. Clientes sem movimentação.
Go
Novo
Procurar
Notificar
Ferramentas
Responder
  
-star Rating Vote!  Login/Cadastrar 
Programador Júnior

Figura de  Dennis
postado
Tenho uma consulta utilizado duas tabelas, CLIENTES e PEDIDOS, onde aparecem todos os clientes e suas respectivas movimentações.

Pede-se:

Como faço para conseguir um relatório dos clientes q não ocorreram movimentações no ultimo mes, ou no ultimo seis meses??? O período será informado posteriormente.

Exemplo: Clientes q não fizeram pedidos nos ultimos dozes meses.

Espero ter sido claro.

This message has been edited. Last edited by: Dennis,


Dennis Alan
msn: dennisamg1@msn.com

*****************************

Windows XP SP2
Office 2003
 
Postagens: 142 | Registrado: 20 November 2003Reply With QuoteReport This Post
Programador Pleno

postado Hide Post
Dennis...

Coloque alguns exemplos (como o mostrado abaixo) de registros para esclarecer.

Tabela: Clientes
campo1 campo2 campo3
XXxxxx XXXxxx XXXXxxx
Yyyyy Yyyyy YYyyyy
 
Postagens: 188 | Registrado: 03 January 2005Reply With QuoteReport This Post
Programador Pleno

postado Hide Post
Experimenta:

SELECT CLIENTE FROM CLIENTE
WHERE CLIENTE NOT IN
(
SELECT CLIENTE FROM PEDIDO
WHERE DATA BETWEEN DataInicial AND DataFinal
GROUP BY CLIENTE)

Aqueles que retornarem, não efetuaram pedido no período.

Abraços,
Fernanda
 
Postagens: 275 | Localização: São Paulo / SP | Registrado: 25 April 2004Reply With QuoteReport This Post
Estagiário

postado Hide Post
Creio que se você fizer um left ou right join entre o relacionamento da consulta das duas tabelas e depois listar onde pedidos=vazio entre a data que você deseja pode funcionar.
 
Postagens: 30 | Registrado: 09 November 2005Reply With QuoteReport This Post
Moderador
Diretor

postado Hide Post
As duas respostas acima funcionam bem. A primeira (da Maria Fernanda) é sintaticamente mais clara, mas a segunda (do Richard) provavelmente terá melhor performance.


----------------------------------------------------
Luiz Cláudio C. V. Rocha
Microsoft MVP Office - MCP - MOS
http://msmvps.com/officedev - http://www.accessfaq.com.br
 
Postagens: 6148 | Localização: São Paulo, SP, Brasil | Registrado: 02 February 2001Reply With QuoteReport This Post
Programador Júnior

Figura de  Dennis
postado Hide Post
Naum entendi muito bem como seria a sugestão do Richard.

Explique mais detalhadamente, por favor.


Dennis Alan
msn: dennisamg1@msn.com

*****************************

Windows XP SP2
Office 2003
 
Postagens: 142 | Registrado: 20 November 2003Reply With QuoteReport This Post
Programador Júnior

Figura de  Dennis
postado Hide Post
A tabela EMPRESAS é utilizado os campos EMPCODIGO (código do cliente) e EMPRZSOCIA (ração social do cliente).

A outra tabela usada é ORCVENS1, onde utilizo os campos ORCDATA (data de emissão), ORCODIGO (código da movimentação), e DADCHAPA (placa do veículo).

Na tabela ORCVENS1 existe também, um campo EMPCODIGO onde é feito o relacionamento.


Dennis Alan
msn: dennisamg1@msn.com

*****************************

Windows XP SP2
Office 2003
 
Postagens: 142 | Registrado: 20 November 2003Reply With QuoteReport This Post
Programador Júnior

Figura de  Dennis
postado Hide Post
Por favor,

Alguém me ajude a solucionar pois estou sendo cobrado.

Muito obrigado.


Dennis Alan
msn: dennisamg1@msn.com

*****************************

Windows XP SP2
Office 2003
 
Postagens: 142 | Registrado: 20 November 2003Reply With QuoteReport This Post
Programador Pleno

postado Hide Post
Dennis...

tente o seguinte:
Em uma nova consulta...
Coloque no modo SQL...
Copie este SQL e teste.... Deve ajudá-lo

Select count(o.empcodigo) as total,e.* from empresas as e left join orcvens1 as o on o.empcodigo=e.empcodigo where o.orcdata>=cdate("01/10/2005") and o.orcdata<cdate("01/11/2005")

Nesta consulta aparecerá o total de cada empresa no mês 10.
Não se esqueça de conferir o nome das tabelas e campos...

Ajudou?
 
Postagens: 188 | Registrado: 03 January 2005Reply With QuoteReport This Post
Programador Júnior

Figura de  Dennis
postado Hide Post
Agradeço profundamente a ajuda mas, o que estou precisando é os clientes que naum tiveram movimentação, naum vieram a empresa de uma determinada data à frente.

Objetivo deste relatório:

Contactar os clientes para saber porque naum estaum voltando a empresa, se ocorreu algum problema... coisas do tipo.


Dennis Alan
msn: dennisamg1@msn.com

*****************************

Windows XP SP2
Office 2003
 
Postagens: 142 | Registrado: 20 November 2003Reply With QuoteReport This Post
Programador Júnior

Figura de  Dennis
postado Hide Post
Help me!!!


Dennis Alan
msn: dennisamg1@msn.com

*****************************

Windows XP SP2
Office 2003
 
Postagens: 142 | Registrado: 20 November 2003Reply With QuoteReport This Post
Programador Pleno

postado Hide Post
Dennis...

Você testou a consulta que enviei????
 
Postagens: 188 | Registrado: 03 January 2005Reply With QuoteReport This Post
Programador Júnior

Figura de  Dennis
postado Hide Post
Testei...

Fiz as alterações... o q apareceu foi os clientes q tiveram movimentação...


Dennis Alan
msn: dennisamg1@msn.com

*****************************

Windows XP SP2
Office 2003
 
Postagens: 142 | Registrado: 20 November 2003Reply With QuoteReport This Post
Programador Pleno

postado Hide Post
Dennis...

Verifique se está com LEFT JOIN, e não INNER JOIN no select...

Mas se você quiser que eu teste, mande para mim um bd com as duas tabelas e alguns registros para eu fazer a consulta.
E indique se você quer: clientes ou empresas ou se eles são a mesma coisa.

mrramires@hotmail.com
 
Postagens: 188 | Registrado: 03 January 2005Reply With QuoteReport This Post
  Powered by Social Strata  
 

GD Access    GD Access    Grupo de Discussão  Ir para Categorias  Grupos técnicos  Ir para Fóruns  Access    Filtro ao inverso. Clientes sem movimentação.

©