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


3 participantes

    [Resolvido]Converter sql em Vba

    avatar
    Chamon Consultoria
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 266
    Registrado : 31/08/2012

    [Resolvido]Converter sql em Vba Empty [Resolvido]Converter sql em Vba

    Mensagem  Chamon Consultoria 27/9/2016, 13:04

    Bom dia!

    Bd em Access 2010.

    tbl_ComprasItens e tbl_RemessaItensSaida

    Campos:

    NUMEROENTRADA : formato texto - Representa o número da NF da compra do produto
    CODPRO: formato Número Inteiro Longo - Representa o código do produto.

    Criei uma consulta união para apurar o saldo de cada produto por NF de compra, pois trata-se de controle de remessas para industrialização e às vezes esse retorno ocorre de forma parcial, assim é necessário exibir o saldo de cada produto na sua respectiva nota.

    Essa consulta união está funcionando perfeitamente, porém gostaria de transformá-la em um função Vba.

    Abaixo segue a consulta união visualizada em sql:


    SELECT tbl_ComprasItens.NUMEROENTRADA, tbl_ComprasItens.CODPRO, tbl_ComprasItens.QUANTIDADE AS QDENTRADA, 0 AS QDSAIDA
    FROM tbl_ComprasItens
    GROUP BY tbl_ComprasItens.NUMEROENTRADA, tbl_ComprasItens.CODPRO, tbl_ComprasItens.QUANTIDADE;


    UNION ALL SELECT tbl_RemessaItensSaida.NUMEROENTRADA, tbl_RemessaItensSaida.CODPRO, 0, Sum(tbl_RemessaItensSaida.QUANTIDADE) AS SomaDeQUANTIDADE
    FROM tbl_RemessaItensSaida
    GROUP BY tbl_RemessaItensSaida.NUMEROENTRADA, tbl_RemessaItensSaida.CODPRO;


    O Objetivo é apurar o saldo de cada produto através dos campos : tbl_ComprasItens.QUANTIDADE menos Sum(tbl_RemessaItensSaida.QUANTIDADE) e salvar esse saldo no campo ESTOQUE da tbl_ComprasItens.

    Fiz várias tentativas sem sucesso.

    Marco Messa
    Marco Messa
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 291
    Registrado : 28/06/2010

    [Resolvido]Converter sql em Vba Empty Re: [Resolvido]Converter sql em Vba

    Mensagem  Marco Messa 27/9/2016, 13:25

    Você pode criar uma consulta de atualização no Access com a seguinte instrução:

    Código:
    UPDATE
       tbl_ComprasItens CI
    SET
       CI.ESTOQUE = CI.QUANTIDADE - (
          SELECT
             SUM(RIS.QUANTIDADE)
          FROM
             tbl_RemessaItensSaida RIS
          WHERE
             RIS.NUMEROENTRADA = CI.NUMEROENTRADA
             AND RIS.CODPRO = CI.CODPRO
       )

    Depois é só criar uma chamada para essa consulta em algum formulário, em um botão ou algo do tipo.


    .................................................................................
    Tea with me that I book your face Cool
    avatar
    Chamon Consultoria
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 266
    Registrado : 31/08/2012

    [Resolvido]Converter sql em Vba Empty Re: [Resolvido]Converter sql em Vba

    Mensagem  Chamon Consultoria 27/9/2016, 15:01

    Marco, desculpe mas não entendi o procedimento.

    Segue anexo com as tabelas e uma consulta atualização.

    Anexos
    [Resolvido]Converter sql em Vba AttachmentConsultaAtualizacao.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (32 Kb) Baixado 20 vez(es)
    Marco Messa
    Marco Messa
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 291
    Registrado : 28/06/2010

    [Resolvido]Converter sql em Vba Empty Re: [Resolvido]Converter sql em Vba

    Mensagem  Marco Messa 27/9/2016, 15:24

    Não tenho access aqui instalado, mas o que você deve fazer é ir no criador de consulta, abrir o modo SQL, que provavelmente fica a esquerda no menu, e inserir aquele trecho que te passei.
    Lembre-se de fazer uma cópia dos dados antes caso não seja o resultado que você espera (ou mesmo uma cópia do banco todo).


    .................................................................................
    Tea with me that I book your face Cool
    avatar
    Chamon Consultoria
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 266
    Registrado : 31/08/2012

    [Resolvido]Converter sql em Vba Empty Re: [Resolvido]Converter sql em Vba

    Mensagem  Chamon Consultoria 27/9/2016, 16:09

    Marco,

    Criei a consulta conforme sua orientação e inseri um botão de comando para chama-la.

    Ao clicar no botão nada acontece.

    Ao clicar na consulta aparece a mensagem: A operação deve usar uma consulta atualizável.

    Marco Messa
    Marco Messa
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 291
    Registrado : 28/06/2010

    [Resolvido]Converter sql em Vba Empty Re: [Resolvido]Converter sql em Vba

    Mensagem  Marco Messa 27/9/2016, 16:54

    Dê uma olhada como criar uma consulta de atualização:

    https://www.youtube.com/watch?v=uaE4ZFrn0C0

    Mas creio que se você clicar em Modo de Exibição e colocar no modo SQL já funcionará.


    .................................................................................
    Tea with me that I book your face Cool
    avatar
    Chamon Consultoria
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 266
    Registrado : 31/08/2012

    [Resolvido]Converter sql em Vba Empty Re: [Resolvido]Converter sql em Vba

    Mensagem  Chamon Consultoria 27/9/2016, 20:54

    Marco, fiz como sugeriu, mas não funcionou.

    Em anexo imagens da consulta em Sql e no modo estrutura.
    Anexos
    [Resolvido]Converter sql em Vba AttachmentTela2.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (90 Kb) Baixado 7 vez(es)
    avatar
    Chamon Consultoria
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 266
    Registrado : 31/08/2012

    [Resolvido]Converter sql em Vba Empty Re: [Resolvido]Converter sql em Vba

    Mensagem  Chamon Consultoria 28/9/2016, 12:06

    Eis a solução, créditos para Avelino Sampaio.

    Dim rs As DAO.Recordset
    Dim strSql As String
    Set rs = CurrentDb.OpenRecordset("qrySaldos")
    Do While Not rs.EOF
    strSql = "UPDATE tbl_ComprasItens SET ESTOQUE = " & rs!saldo
    strSql = strSql & " WHERE numeroEntrada & CodPro = '" & rs!numeroEntrada & rs!codPro & "';"
    CurrentDb.Execute strSql
    rs.MoveNext
    Loop
    rs.Close
    Set rs = Nothing
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    [Resolvido]Converter sql em Vba Empty Re: [Resolvido]Converter sql em Vba

    Mensagem  Cláudio Más 28/9/2016, 12:32

    A informação de saldo em estoque não deveria estar na tabela de produtos?
    Não seria uma redundância ter o campo também na tabela de compras?
    Marco Messa
    Marco Messa
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 291
    Registrado : 28/06/2010

    [Resolvido]Converter sql em Vba Empty Re: [Resolvido]Converter sql em Vba

    Mensagem  Marco Messa 28/9/2016, 12:35

    Desculpe mas eu realmente não tenho como baixar o banco, não tenho o Access instalado.


    .................................................................................
    Tea with me that I book your face Cool
    avatar
    Chamon Consultoria
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 266
    Registrado : 31/08/2012

    [Resolvido]Converter sql em Vba Empty Re: [Resolvido]Converter sql em Vba

    Mensagem  Chamon Consultoria 28/9/2016, 18:04

    Marcos, sem problema, obrigado pela atenção.

    Cláudio, obrigado pela atenção, mas nesse caso em particular existe a necessidade desse campo estar nessa tabela, pois é um controle de estoque distinto.

    Mais uma vez, obrigado a vocês!

    Conteúdo patrocinado


    [Resolvido]Converter sql em Vba Empty Re: [Resolvido]Converter sql em Vba

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 26/4/2024, 14:30