Boas Walter... observando atentamente teus relacionamentos percebi que não estão bem.
Nos relacionamentos observei que adicionou duas vezes a tabela clientes, ficando clientes e clientes_1, esta voce relacionou no campo NomeCLiente e deveria ser relacionado no campo Código do cliente.
1 - Alterei esta relação
2 - no form Pedidos, a combo que seleciona o cliente alterei o campo para o campo Código do Cliente.
3 - Exclui na tabela pedidos o campo NomeCliente pois não há necessidade de gravar o nome do cliente na tabela pedidos, basta apenas o campo código do cliente, posto que as tabelas estão relacionadas, com este relacionamento de posse do código do cliente podes buscar a informação na tabela clientes quando desejar.
Sobre agrupamento em consultas:
A consulta que tentou realizar duplica os nomes porque em algum dos campos da tabela pedidos tem informações diferentes, e o agrupamento so ocorre se os valores fossem iguais, observe neste exemplo:
Cliente X - Valor Pedido 100,00
Cliente x - Valor Pedido 120,00
Cliente y - Valor Pedido 20,00
Cliente y - Valor Pedido 20,00
A sua consulta exibirá:
Cliente X - Valor Pedido 100,00
Cliente x - Valor Pedido 120,00
Cliente y - Valor Pedido 20,00
>>> O cliente y será agrupado, no entanto o cliente X não pois o campo Valor Pedido possui informações diferentes...
Se somá-los ele agrupará mas caso contrário exibirá os dois registros para o mesmo cliente.
Portanto em consultas agrupadas apenas coloque os campos que tem valores iguais.
O campo data como está exibindo o Max, ele nao duplicará, mas se o deixar normal exibirá tantos registros para o cliente X quanto o numero de pedidos com datas diferentes.
A SQL para o que pretende, baseado no novo relacionamento
SELECT Clientes.CódigoDoCliente, Clientes.NomeEmpresa, Pedidos.CódigoDoFuncionário, Max(Pedidos.DataDoPedido) AS MáxDeDataDoPedido, Clientes.EndereçoDeCobrança, Clientes.CEP, Clientes.Bairro, Clientes.Cidade, Clientes.Estado, Clientes.CPF, Clientes.CNPJ, Clientes.IE, Clientes.Email, Clientes.Fornecedores, Clientes.Observações, Clientes.NúmeroTelefone, Clientes.NúmeroTelefoneCom1, Clientes.NúmeroTelefoneCom2, Clientes.Site, Clientes.NomeDoContato, Clientes.RG, Clientes.NúmeroCelular
FROM Clientes INNER JOIN Pedidos ON Clientes.CódigoDoCliente = Pedidos.CódigoDoCliente
GROUP BY Clientes.CódigoDoCliente, Clientes.NomeEmpresa, Pedidos.CódigoDoFuncionário, Clientes.EndereçoDeCobrança, Clientes.CEP, Clientes.Bairro, Clientes.Cidade, Clientes.Estado, Clientes.CPF, Clientes.CNPJ, Clientes.IE, Clientes.Email, Clientes.Fornecedores, Clientes.Observações, Clientes.NúmeroTelefone, Clientes.NúmeroTelefoneCom1, Clientes.NúmeroTelefoneCom2, Clientes.Site, Clientes.NomeDoContato, Clientes.RG, Clientes.NúmeroCelular;
>>>> De uma revisada em seus relacionamentos, Há consultas que fez como a anterior que utiliza no relatorio Cliente x Vendedor que foi baseada em uma consulta e em uma tabela, sem necessidade.
Podes aplicar uma expressão SQL diretamente na fonte de registro de forms ou relatórios sem necessidade de criar consultas gráficas.
Quanto menos consultas utilizar seu BD ficará mais limpo e eficaz, utilize o recurso de consultas quando for realmente necessário.
https://dl.dropbox.com/u/26441349/FreisiWal.rar
Cumprimentos.
Última edição por PILOTO em 29/8/2012, 20:01, editado 1 vez(es) (Motivo da edição : Corigir texto em falta)