MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


    [Resolvido]Problema com entrada estoque

    avatar
    thiagonsilvaa
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 384
    Registrado : 12/01/2017

    [Resolvido]Problema com entrada estoque Empty [Resolvido]Problema com entrada estoque

    Mensagem  thiagonsilvaa 16/1/2018, 15:45

    Boa tarde !
    Estou tentando adaptar um código disponibilizado aqui no fórum pelo nosso amigo Fabio Paes em um projeto que estou desenvolvendo porém não estou conseguindo.

    Trata-se de entrada de estoque. O código que tentei adaptar seria este:
    Código:
    'Criado por Fabio Paes
    '   Em 25/07/2017

    DoCmd.RunCommand acCmdSaveRecord 'Salvo o Registro antes de começar a selecionar os dados
    Dim DB As Database 'Declaro as variaveis utilizadas no codigo
    Dim rsO, rsD As DAO.Recordset 'Variavel rsO=Fara a consulta dos produtos lançados na NF (Origem)
                                        'rsD=Fara a consulta do produto a ser adicionado o Estoque
                                        'rsD2=Fara a consulta do produto a ser DIMINUIDO a qnt da OC
    Set DB = CurrentDb() 'defino que irei Utilizar o BD atual
    'Realizo a consulta e trago todos os produtos lançados na NF em questão
    Set rsO = DB.OpenRecordset("SELECT * FROM Tbl_Detcompra WHERE idcompra = " & Me.CodCompra & "")
    '----------------------------------------------------------------------------------------------------------------
        Do While Not rsO.EOF 'Repetirei Até que não haja mais registros no rsO
            'Faço a consulta e pego SOMENTE o produto em questão para adidionar o estoque
        Set rsD = DB.OpenRecordset("SELECT * FROM Tbl_PRODUTOS WHERE CodProduto = " & Forms!FormCompra!subCompra!Produto.Column(0) & "")
            'Acrescenta a quantidade de cada produto ao estoque
            rsD.Edit
            rsD!Estoque = rsD!Estoque + rsO!Quantidade
            rsD.Update
            
        rsO.MoveNext 'Movo para proximo registro para Iniciar a Atualização do Novo produto...
        Loop    'Fim da alteração e Inicio da nova repetição para o Novo produto
    '--------------------------------------------------------------------------------------------------------------
    'Fecha as Conexoes abertas
    Set DB = Nothing
    Set rsO = Nothing
    Set rsD = Nothing
    MsgBox "Entrada efetuada com sucesso !", vbInformation, "Entrada"
    Me.Recalc

    Na hora que clico no botão salvar o código acontece porém os resultados não são os esperados.

    Vou postar o bd para facilitar a análise, o formulário envolvido é o "FormCompra".

    Gratidão desde já.
    Anexos
    [Resolvido]Problema com entrada estoque AttachmentProjeto.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (278 Kb) Baixado 26 vez(es)
    avatar
    thiagonsilvaa
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 384
    Registrado : 12/01/2017

    [Resolvido]Problema com entrada estoque Empty Problema com entrada estoque

    Mensagem  thiagonsilvaa 16/1/2018, 16:35

    Boa tarde.

    Venho informar que consegui resolver meu problema.

    Apenas criei uma relação entre a coluna "idproduto" da tbl_detcompra com o campo idproduto(chave primária) vindo da tabela "tbl_produtos", assim atualizando conforme o codigo do produto.

    Segue o código:
    Código:
    'Criado por Fabio Paes
    '  Em 25/07/2017

    DoCmd.RunCommand acCmdSaveRecord 'Salvo o Registro antes de começar a selecionar os dados
    Dim DB As Database 'Declaro as variaveis utilizadas no codigo
    Dim rsO, rsD As DAO.Recordset 'Variavel rsO=Fara a consulta dos produtos lançados na NF (Origem)
                                        'rsD=Fara a consulta do produto a ser adicionado o Estoque
                                        'rsD2=Fara a consulta do produto a ser DIMINUIDO a qnt da OC
    Set DB = CurrentDb() 'defino que irei Utilizar o BD atual
    'Realizo a consulta e trago todos os produtos lançados na NF em questão
    Set rsO = DB.OpenRecordset("SELECT * FROM Tbl_Detcompra WHERE idcompra = " & Me.CodCompra & "")
    '----------------------------------------------------------------------------------------------------------------
        Do While Not rsO.EOF 'Repetirei Até que não haja mais registros no rsO
            'Faço a consulta e pego SOMENTE o produto em questão para adidionar o estoque
        Set rsD = DB.OpenRecordset("SELECT * FROM tbl_PRODUTOS WHERE CodProduto = " & rsO!idproduto & "")
            'Acrescenta a quantidade de cada produto ao estoque
            rsD.Edit
            rsD!Estoque = rsD!Estoque + rsO!Quantidade
            rsD.Update
           
        rsO.MoveNext 'Movo para proximo registro para Iniciar a Atualização do Novo produto...
        Loop    'Fim da alteração e Inicio da nova repetição para o Novo produto
    '--------------------------------------------------------------------------------------------------------------
    'Fecha as Conexoes abertas
    Set DB = Nothing
    Set rsO = Nothing
    Set rsD = Nothing
    MsgBox "Entrada efetuada com sucesso !", vbInformation, "Entrada"
    Me.Recalc

    Gratidão.
    Tópico resolvido

      Data/hora atual: 7/11/2024, 20:37