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]Enviar valor de tabela para uma variável.

    avatar
    .pL-
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 03/06/2011

    [Resolvido]Enviar valor de tabela para uma variável. Empty Enviar valor de tabela para uma variável.

    Mensagem  .pL- 4/6/2011, 19:53

    Olá pessoal, como vão todos!?
    Estou com uma aplicação que ao realizar uma venda, deveria mostrar um mensagem mostrando a confirmação e um protocolo.
    Este protocolo nada mais é do que um campo da tabela de vendas que gera um numero automático a cada registro.

    Então eu estava pensando em algo do tipo:

    variavel = "ultimo valor inserido no campo protocolo da tabela vendas"
    Msgbox = ("Venda realizada, seu protocolo é: "variavel" ")

    Porém ao tentar este código:


    Private Sub bt_vender_Click()
    v3 = (rs.Fields("quantidade") - txt_quantidade2) 'quantidade atual menos a vendida
    status = "Aprovado" 'valor para inserir na tabela de vendas
    CurrentDb.Execute "update tab_produtos set quantidade=" & v3 & " where descricao ='" & txt_produto2 & "'" 'atualizando o campo de quantidade da tabela produtos (estoque)
    CurrentDb.Execute "insert into vendas(produto, valor_unitario, valor_total, quantidade, status) values ('" & txt_produto2 & "'," & txt_valorunitario2 & ",'" & txt_valortotal2 & "', " & txt_quantidade2 & ", '" & status & "')"
    'inserindo na tabela vendas o novo registro.
    aux = rs.Fields("protocolo")
    MsgBox ("Venda realizada com sucesso, Protocolo é: " & aux & " ")
    End Sub


    Me da a mensagem de erro: Item não encontrado nesta coleção.
    Sendo que rs.fields("protocolo") fica vazio.

    Então minha dúvida é essa:
    Como eu faço para armezar na variável o valor do campo "protocolo" do último registro?

    Grato desde já!
    avatar
    Convidado
    Convidado


    [Resolvido]Enviar valor de tabela para uma variável. Empty Re: [Resolvido]Enviar valor de tabela para uma variável.

    Mensagem  Convidado 4/6/2011, 19:59

    Seria algo assim

    Dim NomedaVariavel
    NomedaVariavel = DLast ("CampoProtocolo", "TabelaVendas", "ID='" & Me!ID_no_Form & "'")
    Msgbox = ("Venda realizada, seu protocolo é: "NomeDaVariavel" ")

    Teste assim amigo
    avatar
    Convidado
    Convidado


    [Resolvido]Enviar valor de tabela para uma variável. Empty Re: [Resolvido]Enviar valor de tabela para uma variável.

    Mensagem  Convidado 4/6/2011, 20:02

    ou

    Dim NomedaVariavel as Double
    NomedaVariavel = DMax("CampoProtocolo", "TabelaVendas", "ID='" & Me!ID_no_Form & "'")
    Msgbox = ("Venda realizada, seu protocolo é: "NomeDaVariavel" ")
    avatar
    .pL-
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 03/06/2011

    [Resolvido]Enviar valor de tabela para uma variável. Empty Re: [Resolvido]Enviar valor de tabela para uma variável.

    Mensagem  .pL- 4/6/2011, 20:12

    Boa noite Haryson!
    Ao testar esse código me retornou o erro:
    O Microsoft Access não pode localizar o campo 'ID_no_Form' referido na sua expressão

    O nome do meu formulário é "Form_vendas", tentei algumas alterações neste parâmetro, mas não obtive sucesso...

    Nome da tabela: vendas
    Nome do campo: Protocolo

    aux = DLast("protocolo", "vendas", "ID='" & Me!ID_Form_vendas & "'")
    MsgBox ("Venda realizada com sucesso, Protocolo é: " & aux & " ")
    avatar
    Convidado
    Convidado


    [Resolvido]Enviar valor de tabela para uma variável. Empty Re: [Resolvido]Enviar valor de tabela para uma variável.

    Mensagem  Convidado 4/6/2011, 20:16

    Ora meu querido... Eu coloquei assim para especificar... que

    Este campo é o campo em seu form onde fica a ID da sua tabela...
    O nome que o seu campo que contem a ID tem...
    avatar
    Convidado
    Convidado


    [Resolvido]Enviar valor de tabela para uma variável. Empty Re: [Resolvido]Enviar valor de tabela para uma variável.

    Mensagem  Convidado 4/6/2011, 20:18

    Todos esses nomes no exemplo são fictícios.. colocamos apenas para exemplificar.. pois nao sabemos quais os nomes contidos em sua tabela ou em seu form..
    Voce tem que substituí-los pelos nomes contidos em seu aplicativo

    Abraços
    avatar
    .pL-
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 03/06/2011

    [Resolvido]Enviar valor de tabela para uma variável. Empty Re: [Resolvido]Enviar valor de tabela para uma variável.

    Mensagem  .pL- 4/6/2011, 20:33

    Entendi, porém ainda me restou uma dúvida...
    Não consigo entender o que seria esse ID da Tabela...
    Seria a Primary Key?

    No caso a minha primary key é o próprio campo protocolo então substitui assim:
    aux = DLast("protocolo", "vendas", "ID=" & protocolo & " ")

    Porém retorna o erro:
    A expressão que você inseriu como parâmetro de consulta gerou esse erro: 'ID'
    avatar
    Convidado
    Convidado


    [Resolvido]Enviar valor de tabela para uma variável. Empty Re: [Resolvido]Enviar valor de tabela para uma variável.

    Mensagem  Convidado 4/6/2011, 20:40

    Claro.. A chave Primaria.. Primary Key, ID da tabela.. Campo AutoNumeracao-ID....
    Varios Nomes.. Mesmo fim..
    ID = Identification.. a Chave de identificação de sua linha na tabela.. ela gere todos os registros na tabela...
    avatar
    Convidado
    Convidado


    [Resolvido]Enviar valor de tabela para uma variável. Empty Re: [Resolvido]Enviar valor de tabela para uma variável.

    Mensagem  Convidado 4/6/2011, 20:45

    Amigo
    A sua tabela tem uma chave primaria..
    O seu Form tem um campo ligado a esta chave primaria (a caixa texto que comporta este campo tem um nome - Qual o nome da caixaTexto)

    Vamos Supor
    Primary Key = XXXXXX
    Nome do Campo no Form = YYYYYYY
    Nome da Tabela = NNNNNNN
    Nome do Campo a ser pesquizado = CCCCCCCC
    aux = DLast("CCCCCCC", "NNNNNNN", "XXXXXXX=" & YYYYYYY & " ")

    Por ai.. teste..
    avatar
    .pL-
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 03/06/2011

    [Resolvido]Enviar valor de tabela para uma variável. Empty Re: [Resolvido]Enviar valor de tabela para uma variável.

    Mensagem  .pL- 4/6/2011, 20:50

    Meu amigo!!!
    Agora sim entendi !!! Mil desculpas pela confusão!!

    Fiz as modificações conforme sua explicação e deu certo !!!

    Sou muito grato por sua colaboração !!!
    avatar
    Convidado
    Convidado


    [Resolvido]Enviar valor de tabela para uma variável. Empty Re: [Resolvido]Enviar valor de tabela para uma variável.

    Mensagem  Convidado 4/6/2011, 21:25

    Não apenas fico feliz que tenha resolvido... como tambem feliz de ter conseguido ajudar... Significa que a cada dia aprendo mais...
    Assim é a vida.. não conseguimos se não tentamos..

    Ate mais..

    O Fórum agradece o retono

    Conteúdo patrocinado


    [Resolvido]Enviar valor de tabela para uma variável. Empty Re: [Resolvido]Enviar valor de tabela para uma variável.

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 8/11/2024, 00:34