MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Compartilhe

    Jedu
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 36
    Registrado : 13/02/2018

    [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Jedu em 13/2/2018, 11:11

    Bom dia a todos

    Estou a criar uma Bd para gerir entrada/saída, estoque de produtos.
    Deparei-me com um problema que acho que está relacionado com a forma como construí as tabelas.
    Queira ver se existe uma solução sem ter que refazer tudo novamente
    Como sou novato nestas andanças do Access, não sei muito bem o que fazer, por isso procuro ajuda.

    Criei duas consultas uma entradas e outra para saídas, ambas fazem o somatório das quantidades e até aqui tudo ok
    Mas quando crio uma 3 consulta sobre as consultas de entrada e saída, o somatório propaga-se dando valores errados

    Entrada
    banana-danone-001 tem duas entradas de 50 unidades, a soma está certa.

    [Você precisa estar registrado e conectado para ver esta imagem.]


    Saída

    [Você precisa estar registrado e conectado para ver esta imagem.]

    Estoque
    Aqui está o problema
    Apesar de contabilizar 4 saídas, o correto seria contabilizar apenas 1ª (banana-danone-001)
    Reparei que isso acontece em todas as linhas em que a ID Principio ativo é 2.

    [Você precisa estar registrado e conectado para ver esta imagem.]

    Como posso solucionar este problema?
    Ou vou ter que refazer as tabelas e colocar esses campos (marca comercial, lote, etc... numa tabela de produtos?

    Relações

    [Você precisa estar registrado e conectado para ver esta imagem.]

    Agradeço desde já a ajuda.
    Cumprimentos

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Noobezinho em 13/2/2018, 13:29

    Olá Jorge

    Acredito que tenha que repensar teu projeto.

    Mas dá pra aproveitar o que já fez.

    vejamos:

    Como não vejo tabela de vendas, acredito que seja a tbl_Pedidos/tbl_Detalhes_Pedidos que deve ser dado baixa no estoque.

    Na hora de se fazer o pedido(venda?) deve dar baixa na quantidade do estoque, registro a registro.

    Lembre-se que que a tbl_Detalhes_Pedido contém todas as saídas do estoque.

    Isso é ótimo para se fazer pesquisa de produtos que saíram em determinado período.

    Para a entrada dos produtos, usar um formulário para a tabela entrada/tbl_DetalhesEntrada.

    Pode fazer a entrada  registro a registro como na saída,  ou em lote, fazendo um loop nos registros do subformulário

    DetalhesEntrada.

    Veja que assim, não precisa de consultas para cálculo, apenas código VBA com cálculos básicos.

    [ ]'s

    Jedu
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 36
    Registrado : 13/02/2018

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Jedu em 13/2/2018, 15:02

    Caro Nobezinho

    Sim é isso mesmo, a Tb_Pedidos é a forma de saída, o que seria uma venda.

    Todas as tabelas já têm formulários de entrada de registo.
    O formulário de entrada e o de Pedidos(saída) têm um sub_formulário cada, cuja a origem de dados é as suas receptivas tabelas detalhes, dessa forma consigo dar entrada e a saída de vários produtos numa única entrada ou pedido(saída).

    O meu problema está mesmo onde descrevi antes, o controle de estoque.
    Como não conheço muito bem o Access, não sei que caminhos tenho para resolver o problema.
    Em alguns exemplos que vi aqui no forum, teria de construir uma tabela intermediaria tipo isto:

    [Você precisa estar registrado e conectado para ver esta imagem.]

    Contudo isso levar-me-ia a reformular muita coisa (não é problema)

    Imagino que com VBA, isso se resolva, mas como sou novato não consigo chegar lá.
    Julgo que teria de ser uma espécie de função que condicionasse a diferença das somas (entrada-saida) aos campos que preciso, principio ativo+marca comercial+lote.
    E era mais ou menos isso que procuro.

    Obrigado

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Noobezinho em 13/2/2018, 15:27


    Faça a consulta.


    Faça o rs.OpenRecordset("Coloque aqui a instrução SQL da consulta que criou")

    rs.movefirst ' move para o inicio dos registros

    do while not rs.EOF

    código que deseja para cada registro

    rs.movenext
    loop



    Jedu
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 36
    Registrado : 13/02/2018

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Jedu em 14/2/2018, 19:10

    Caro Nobezinho

    Mais uma vez obrigado pelo interesse, mas agora fiquei completamente perdido.

    Na minha Consulta de Estoque o SQL que aparece é o seguinte:

    SELECT Cs_Entradas.[ID Principio Ativo], Cs_Entradas.[Principio Ativo], Cs_Entradas.[Marca comercial], Cs_Entradas.Lote, Cs_Entradas.[Total Entradas] AS Entradas, Cs_Pedidos.[Total Saida] AS Saidas, (Nz([Entradas])-(Nz([Saidas]))) AS [Estoque Total]
    FROM Cs_Entradas LEFT JOIN Cs_Pedidos ON Cs_Entradas.[ID Principio Ativo] = Cs_Pedidos.[ID Principio Ativo]
    GROUP BY Cs_Entradas.[ID Principio Ativo], Cs_Entradas.[Principio Ativo], Cs_Entradas.[Marca comercial], Cs_Entradas.Lote, Cs_Entradas.[Total Entradas], Cs_Pedidos.[Total Saida];

    Quanto ao resto confesso que não entendi.
    Pode ser um pouco mais claro, estou a começar agora.

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Noobezinho em 14/2/2018, 21:11

    Jorge

    Você escreveu:

    "Todas as tabelas já têm formulários de entrada de registo.
    O formulário de entrada e o de Pedidos(saída) têm um sub_formulário cada, cuja a origem de dados é as suas receptivas tabelas detalhes, dessa forma consigo dar entrada e a saída de vários produtos numa única entrada ou pedido(saída)."

    Lendo com mais atenção, vejo que tem várias tabelas detalhes ?

    Se sim, eu entendi direito, então;

    Num aplicativo de estoque, deve-se ter 1 tabela de estoque, uma tabela pra venda/pedido, 1 tabela para detalhesVenda/pedido, essas duas devem ter relacionamento de  1(vendas/pedidos) para vários(DetalhesPedidos),  2 tabelas de entrada do estoque (entradas e detalhes entrada)

    Desse modo, será muito mais fácil controlar o estoque.

    Relacionamentos se faz em tabelas que realmente seja necessárias, em tabelas secundárias, não  há necessidade.

    Exemplo disso é a tabela de estoque, pois deve existir um formulário para cadastro de produtos  para  adição ao estoque.

    Quando vendemos ou fazemos pedidos, usamos uma caixa de combinação que refrete todos os registros do estoque.

    Se não fizermos isso, a página de relacionamento fica como uma teia, prejudicando a leitura ao que interessa.

    Quanto a lotes de medicamentos, não posso opinar, pois nunca trabalhei com isso.

    Deve verificar junto ao seu cliente ou chefia, como se procede com isso.

    Aguardo...

    Jedu
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 36
    Registrado : 13/02/2018

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Jedu em 14/2/2018, 21:57

    Noobezinho,

    Sim está correto, tem tudo isso menos a tabela Estoque (talvez seja esse o problema).
    Na realidade o Estoque que tenho resulta da criação de duas consultas, uma para entradas e outra para saídas/pedidos, com base nestas duas crio uma 3ª que me vai devolver o estoque.

    Olha deixo aqui o link para a Bd, se quiseres dar uma olhada. [Você precisa estar registrado e conectado para ver este link.]
    Vais ver 6 Consultas, as que dizem teste são as consultas feitas sem apresentar os campos da marca comercial e do lote, nessas os resultados estão ok.
    Nas outras consultas (não teste) tem os campos marca comercial e lote, e no Cs_Estoque o valor dá erro.

    O que eu vejo é que eu construí as consultas com base no campo IDPrincipio_ativo que gera um só código para principio ativo e dai o erro (acho).
    O que me leva a crer que teria de fazer um registo para cada combinação de principio_ativo+Marca Comercial+Lote+etc... (porque tenho mais campos que variam), nem sei...

    Em Excel, é relativamente fácil fazer esse calculo, com o uso de "SE's", mas aqui estou meio perdido ainda. Nem sei por onde começar lol.

    Obrigado

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Noobezinho em 14/2/2018, 22:08


    Jorge

    Então, vai ter muito trabalho dessa maneira.

    Aqui no fórum tem exemplos de controle de estoque, sugiro que pesquise e com base neles,

    faça teu projeto.

    Um controle de estoque, sem um tabela para registrar a quantidade do estoque, e um campo de quantidade minima, para não zerar, me

    parece nada eficiente.

    Pesquise, tem exemplos simples e complexos.

    Vale a pena perder um pouco de tempo agora, do que mais tarde tentar consertar o que já está feito.

    [ ]'s


    Jedu
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 36
    Registrado : 13/02/2018

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Jedu em 14/2/2018, 23:09

    Noobezinho

    Sim, estou a procurar outras opções e a estuda-las para ver o que consigo fazer.

    A realidade deste protejo é que é diferente de um estoque normal (não zerar), no meu caso eu quero que "zere" (esse é o ideal).
    Compreenda, o que entra já tem destino, ou seja entre a chegada e a saída passam apenas algumas horas ou 2-3 dias máximo.

    Só fica o que chegou com problemas e no fim do mês tem destino certo ou o que retornou, saiu mas por vários motivos teve que retornar, neste caso aguarda uma decisão de redireccionamento, ou toma o caminho do fim do mês e sai com destino certo.

    É nesta ultima parte que realmente preciso da BD, para saber o que está em "transito" e o que tem problemas.
    A BD que postei é só uma parte do que ainda tenho que fazer lolo, mas não posso avançar se já tem um problema.

    Bem, seja como for, muito obrigado pela ajuda Wink
    avatar
    tauron
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1051
    Registrado : 07/12/2011

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  tauron em 15/2/2018, 09:14

    Se me permitem um pitaco, independentemente do fluxo de movimentacao/permanencia/quantidade de produtos no estoque, o objetivo sempre sera o mesmo (entrada e saida) e assim obter dados para emitir relatorios. Quem determina se havera quantidade minima sera o cliente.

    Veja o exemplo que postei no link abaixo (mensagem 6) para melhor ilustrar o que o grande Noobezinho argumentou.


    [Você precisa estar registrado e conectado para ver este link.]

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Noobezinho em 15/2/2018, 09:58


    Tauron

    Teu exemplo de tão simples que é " A piece of cake" Razz

    Ótimo para aprendizagem.

    Aproveitei e perguntei ao autor daquele tópico, como ficou.

    [ ]'s

    Jedu
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 36
    Registrado : 13/02/2018

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Jedu em 15/2/2018, 11:20

    Muito bom dia Smile

    Vim dizer que consegui resolver o problema. Bom não sei se é o mais indicado ou se serve para todos, mas fica a dica.

    Primeiro muito obrigado pela ajuda, em especial ao Noobezinho.
    Noobezinho, as nossas conversas fezeram-me pensar em como eu resolveria este problema no Excel, e dessa forma lembrei-me que no passado eu usava muito a concatenação para solucionar algumas coisas.
    Tendo isto em mente recordei também que certa vez usei a concatenação como código para criar registos únicos.
    Era isso que precisava, um código que representasse uma sequência especifica de variáveis, mas sem ter que criar mais entradas, registos,etc...

    Então cheguei a isto (só mostro o caminho para a entrada mas tem de ser repetido para o da saída):

    A minha estrutura tem duas tabelas de detalhes, uma para entrada e outra para saída/pedidos
    Criei um campo "código Teste" que é calculado onde fiz a concatenação [Principio ativo] & [Marca comercial] & [Lote]

    [Você precisa estar registrado e conectado para ver esta imagem.]

    Isto gera um "código". No meu caso são só números  porque resulta da forma como construí as tabelas.
    Na 1ª linha temos o código teste: 21001 - 2 é o meu principio ativo, o 1 é a minha marca comercial e por fim o 001 o meu lote.

    [Você precisa estar registrado e conectado para ver esta imagem.]

    Com isto, foi só criar duas consultas, uma de entrada e outra de saída.

    Usando o meu novo campo "código teste", resulta em:

    [Você precisa estar registrado e conectado para ver esta imagem.]

    Que devolve na seguinte vista:

    [Você precisa estar registrado e conectado para ver esta imagem.]

    Depois de seguir este caminho também para a saída.
    Criei por fim uma nova consulta "Estoque" com base nas consultas anteriores, da seguinte forma:

    [Você precisa estar registrado e conectado para ver esta imagem.]

    Vista:

    [Você precisa estar registrado e conectado para ver esta imagem.]

    E pronto tenho o meu querido estoque a funcionar.
    Só é preciso ter em atenção que os campos da consulta têm de ser os mesmo dos da concatenação, caso contrario isso pode influenciar na forma como os resultados aparecem.

    Bom pessoal, espero que isto possa ajudar alguma coisa no futuro.

    Muito obrigado

    PS.: Se acharem relevante podem copiar, mover, sei lá para o Repositório de Exemplos

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Noobezinho em 15/2/2018, 20:17

    Ótimo

    Que bom que conseguiu!

    Sempre que resolver coloque o resolvido no título do tópico.

    Dessa vez, eu coloco.

    Boa sorte !

    ManuelQuim
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Angola
    Mensagens : 35
    Registrado : 29/10/2015

    Muito Bom Mesmo

    Mensagem  ManuelQuim em 16/2/2018, 15:44

    Excelente! Caro Jedu Será que poderia disponibiliza-lo para estudo. O seu projeto têm alguns aspectos que tenho estado á procura de alcançá-los. Smile  muito bom

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Noobezinho em 16/2/2018, 16:22

    Jorge

    Esqueci de dizer, no Access tem índices multiplos, que faz exatamente o que fez.

    Uma vez criado um índice, geralmente é chave primaria, selecione o campo e clique no botão índice, no menu.

    Vai abrir a janela para para definir quais outros campos farão parte do índice composto.

    Se relaciona logo abaixo do primeiro índice, colocando o nome do campo, deixando o nome do índice em branco.

    Dê uma olhada e estude isso.

    [ ]'s

    Jedu
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 36
    Registrado : 13/02/2018

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Jedu em 17/2/2018, 00:27

    Boas novamente

    Sim ManuelQuim, não está acabado, mas força.

    Como não consigo por aqui o link, porque o sistema está a dizer que não tenho permissões para postar links externos e e-mails, vai a imagem com o link Smile
    [Você precisa estar registrado e conectado para ver esta imagem.]

    Caro Noobezinho, hhuumm....; obrigado pela dica, vou dar uma estudada nisso, não sabia.

    Obrigado

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Noobezinho em 17/2/2018, 00:32

    Jorge

    Se ler com atenção, irá ler:

    Você pode anexar um ou mais arquivos através do seguinte formulário :
    ( 3g2, 3gp, bmp, doc, docm, docx, gif, jpg, m4a, m4v, mov, mp3, mp4, mpg, pdf, png, pps, ppt, pptm, pptx, swf, tif, txt, wma, wmv, xls, xlsb, xlsm, xlsx, ZIP)


    [ ]'s


    Última edição por Noobezinho em 17/2/2018, 01:05, editado 1 vez(es)

    Jedu
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 36
    Registrado : 13/02/2018

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Jedu em 17/2/2018, 00:39

    lolo, Olá Noobzinho

    Certamente um de nós não entendeu.
    Eu não queria por o ficheiro, eu queria por o link para o dropbox onde está o ficheiro. Quando vou ao "inserir um link" colo o link e mando enviar, ele diz-me que não tenho permissões....
    Seria assim, certo ?

    [Você precisa estar registrado e conectado para ver esta imagem.]

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Noobezinho em 17/2/2018, 00:52

    Ah Sim!

    Eu vi o  BD.accdb e conclui que estava tentando anexar o  bd sem zipar.

    Para colocar link do dropbox é só clicar ali No botão com o desenho de uma corrente, ao lado do menu do YouTube. no menu acima do retângulo

    de edição de mensagem e na janela que se abre  colocar o link e embaixo o nome desse link, para exibição na mensagem.

    Lembrando que esse expediente é permitido somente para o dropbox e links para outros tópico do fórum, link externos é proibido.

    Esses links externos são permitidos, tirando o  https:\\www  deles.

    [ ]'s

    Jedu
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 36
    Registrado : 13/02/2018

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Jedu em 17/2/2018, 01:02

    Cool Pois,

    Isso foi o que eu fiz, e diz que não tenho permissões.
    Dá uma olhada na imagem que postei.
    Fiz alguma coisa de errado ?

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Noobezinho em 17/2/2018, 01:20

    Acabei de fazer o teste e está funfando normal

    "[url= [Você precisa estar registrado e conectado para ver este link.] do arquivo[/url]"

    É apenas um exemplo, não tem nada la. E coloquei espaços para poder visualizar.

    Mas olhando atentamente a imagem, vejo que  colocou duas vezes o endereço, por isso não funfou.

    [ ]'s

    Jedu
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 36
    Registrado : 13/02/2018

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Jedu em 17/2/2018, 01:45

    Pois, bem visto, não sei porque está a fazer isso.
    O curioso é que ele na pré visualização aparece-me ok.
    E eu estou a fazer exactamente da mesma forma, como fiz num post lá para cima quando também pus um link para o dropbox.
    Contudo, colando ou escrevendo, o problema é o mesmo, em fim...

    Em relação à tua ideia, muito interessante, para mim não funcionou (por enquanto), porque pelo que percebi, eu iria precisar de uma tabela de produto (com as características do produto) e eu não tenho. Mas percebi a ideia e vou aproveita-la em outro lugar Wink

    Obrigado

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Consulta de Estoque - Somatorio errado - ajuda

    Mensagem  Noobezinho em 17/2/2018, 08:30

    A intensão era essa.

    Que soubesse dos índices múltiplos para futuras necessidade Wink

    [ ]'s

      Data/hora atual: 14/11/2018, 11:51