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]Como resgatar saldo de estoque?

    Compartilhe

    IuriEmanuel
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 17
    Registrado : 23/08/2018

    [Resolvido]Como resgatar saldo de estoque?

    Mensagem  IuriEmanuel em 3/10/2018, 14:13

    Olá meus amigos, estou criando um sistema e preciso saber qual modelo correto de saber o estoque do produto. Já tentei criar uma consulta, agrupando por total e deu certo, já utilizei o DSoma e também deu certo. Mas imagino que esta não seja a forma correta, pois utilizaria muito processamento e o sistema deve rodar em rede. Como será que os grandes ERPs profissionais somam? Será que é na base do DSoma (SELECT) também?

    IvanJr.
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 111
    Registrado : 22/11/2016

    Re: [Resolvido]Como resgatar saldo de estoque?

    Mensagem  IvanJr. em 3/10/2018, 17:57

    A maioria tem uma tabela de estoque pronta ao invés de somar toda entrada e subtrair a soma de todas as saídas de todos os produtos.

    Ex1: se cadastrar um produto na tabela produtos, também será cadastrado este produto na tabela estoque com a quantidade 0.
    Ex2: se lançar a entrada do produto na tabela entradas, também a quantidade deste produto será alterada na tabela estoque.
    Ex3: se lançar a saído do produto na tabela saídas, também a quantidade deste produto será alterada na tabela estoque.
    Ex4: se excluir um produto na tabela produtos, também será excluído este produto na tabela estoque.

    Tudo feito com triggers (equivalente as macro de dados no ms access) diretamente na base de dados.

    Um pouco sobre do uso de triggers para estoque tem neste link >> [Você precisa estar registrado e conectado para ver este link.]

    IuriEmanuel
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 17
    Registrado : 23/08/2018

    Re: [Resolvido]Como resgatar saldo de estoque?

    Mensagem  IuriEmanuel em 4/10/2018, 00:26

    Interessante! Daria o mesmo resultado se eu fizesse do modo abaixo também, não é?

    Por exemplo, eu tenho uma rotina que movimenta a tabela "ProdutoMovimento". Eu posso criar, um campo na minha tabela produto chamado "Estoque" e, daí, dentro da própria rotina, fazer algo tipo.

    Public Sub MovProduto (ProdID, Quantidade, Descricao)

    Alem da query para inserir registro na movimentação

     Dim nEstoque As String

     Estoque = DLookup ("Estoque",tblMovProduto,"ProdID =" & ProdID) ' Usar o DLookup uma vez que a função retornaria apenas um registro mesmo, não há necessidade de linhas de código para criar um Recordset.

     DoCmd.RunSQL "UPDATE " & tblMovProduto & " SET Estoque = nEstoque  WHERE ProdID = " & ProdID & ""

    End Sub

    Estou correto? Teria também a função de ao excluir uma venda por exemplo, utilizar a mesma linha de raciocínio para debitar o estoque, uma vez que não haveria registros ou "gatilho" para excluir-los também.

    IvanJr.
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 111
    Registrado : 22/11/2016

    Re: [Resolvido]Como resgatar saldo de estoque?

    Mensagem  IvanJr. em 4/10/2018, 04:15

    Nem é preciso usar o DLookup para descobrir a quantidade atual na tabela para só depois fazer a operação, já pode colocar direto na SQL mesmo.

    Código:
    Public Sub MovProduto (ProdID, Quantidade, Tipo)

    'alem da query para inserir registro na movimentação

    'tipo 1 é entrada
    'tipo 2 é saída

    DoCmd.RunSQL "UPDATE tblMovProduto SET Estoque = Estoque " & iif(Tipo=1," + "," - ") & Quantidade & " WHERE ProdID = " & ProdID

    End Sub

    IuriEmanuel
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 17
    Registrado : 23/08/2018

    Re: [Resolvido]Como resgatar saldo de estoque?

    Mensagem  IuriEmanuel em 9/10/2018, 11:28

    Muito Obrigado, Ivan!!
    Esta sua sugestão e também a dica de usar o proprio campo para atualizar o Update me ajudou não apenas nesta parte do projeto mas reduziu muito o meu código que usa o mesmo método para outras atividades.

    Obrigado!!

    IvanJr.
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 111
    Registrado : 22/11/2016

    Re: [Resolvido]Como resgatar saldo de estoque?

    Mensagem  IvanJr. em 18/10/2018, 18:31

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

      Data/hora atual: 22/10/2018, 11:27