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

4 participantes

    [Resolvido]Limite de Compra

    avatar
    fabioavila
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 273
    Registrado : 22/03/2011

    [Resolvido]Limite de Compra Empty [Resolvido]Limite de Compra

    Mensagem  fabioavila Qua 17 Fev - 21:27

    Ola amigos,

    Estou tentando colocar uma regra para quando o valor da compra for maior que o Limite de compra do Cliente ele dar uma Mensagem na tela , porem não estou conseguindo.

    Segue o codigo que estou usando, porém não me retorna nada :

    Código:
    Dim db As DAO.Database
    Dim rst As DAO.Recordset


    Set db = CurrentDb
    'Abre a tabela e seleciomna o cliente
    Set rst = db.OpenRecordset("Select * from tbl_clientes where strNome ='" & Me.Matricula & "'")
    'Verifica se tem saldo antes de fazer a venda
    If rst!Limite >= Me.txttotal Then
    'se tiver saldo retira o valor da venda
      rst.Edit
      rst!Limite = rst!Limite - Me.txttotal.Value
     
      rst.UPDATE
      'se não emite mensagem
      Else
      MsgBox ("Venda acima do limite"), vbCritical, "Sem credito para comprar"
      'desfaz a venda
    Me.Undo
        End If
    rst.Close: Set rst = Nothing
    db.Close: Set db = Nothing

    End Sub
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  Noobezinho Qui 18 Fev - 6:57

    Olá Fabio

    Isso está correto?

    OpenRecordset("Select * from tbl_clientes where strNome ='" & Me.Matricula & "'")

    Creio que não!!

    { }'s


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    crysostomo
    crysostomo
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 75%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2408
    Registrado : 23/01/2018

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  crysostomo Qui 18 Fev - 9:12

    Bom dia, amigo não mexo muito com rst mexo muito com DLookup, mas essa lógica ai acho que não pega, pois ela só vai atrás do campo nome.
    Tem que verificar os 2 campos  a matrícula e o limite.
     Se o jão tem saldo x


    .................................................................................
    Obs.: Coloque somente as partes defeituosas para que possamos encontrar e entender o problema mais rápido para lhe ajudar. Disponho.
    Uma mão ajuda a outra.
    Feliz aquele que transfere o que sabe e aprende o que ensina.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  Noobezinho Qui 18 Fev - 9:24

    É isso mesmo Crysostomo

    Quanto a não mexer com rst (recordset) via VBA, sugiro que estude, é de entendimento fácil.
    E é uma mão na roda para manipular registros das tabelas( ou consultas).


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.

    crysostomo gosta desta mensagem

    avatar
    fabioavila
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 273
    Registrado : 22/03/2011

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  fabioavila Qui 18 Fev - 20:05

    Ola Noobezinho

    Na verdade eu peguei aki no forum esse código e estou tentando adaptar pra mim, poderia dar uma ajuda ?

    Abraços
    avatar
    fabioavila
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 273
    Registrado : 22/03/2011

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  fabioavila Qui 18 Fev - 21:30

    Havia um erro n alinha abaixo e fiz a correção

    OpenRecordset("Select * from tbl_clientes where strNome ='" & Me.Matricula & "'")


    Código:

    Set rst = db.OpenRecordset("Select * from Clientes where Nome ='" & Me.CLIENTE & "'")


    Porém ele da dando erro aki: NENHUM REGISTRO ATUAL.


    If rst!Limite >= Me.txttotal Then


    Att
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  Noobezinho Sex 19 Fev - 4:53

    Fabio

    Cole os campos e o tipo de dados de cada, aqui pra vermos, pf.


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    crysostomo
    crysostomo
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 75%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2408
    Registrado : 23/01/2018

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  crysostomo Sex 19 Fev - 6:43

    Bom dia galera, como vai?
    cole a parte do bd aqui, pois não estou entendendo a lógica, como que ele vai ver se o cliente A tem o saldo X.
     
    O que estou entendendo é que o recordset vai verificar somente o cliente  e não se o saldo que ele tem.
    sendo que o saldo já é o limite do cliente.

    @Noobezinho, terminando de fazer a documentação de um projeto vou começar ver e praticar o recordset.


    .................................................................................
    Obs.: Coloque somente as partes defeituosas para que possamos encontrar e entender o problema mais rápido para lhe ajudar. Disponho.
    Uma mão ajuda a outra.
    Feliz aquele que transfere o que sabe e aprende o que ensina.
    scandinavo
    scandinavo
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1005
    Registrado : 11/11/2009

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  scandinavo Sex 19 Fev - 8:40

    Agora que vi estes código eu disponibilizei

    Veja um exemplo

    Crisstomo

    (pois não estou entendendo a lógica, como que ele vai ver se o cliente A tem o saldo X.)

    o código não vai mais ate a tabela porque já carregou todas as informações do registro
    Esta linha faz a verificação
    If rst!Limite >= Me.txttotal Then

    Limite de credito e assim que for pagando as parcelas o saldo vai sendo alterado.



    Disponibiliza o projeto
    Anexos
    [Resolvido]Limite de Compra AttachmentLimiteCerdito.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (31 Kb) Baixado 7 vez(es)
    scandinavo
    scandinavo
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1005
    Registrado : 11/11/2009

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  scandinavo Sex 19 Fev - 9:05

    Consegui replicar o erro aqui

    Porém ele da dando erro aki: NENHUM REGISTRO ATUAL.

    If rst!Limite >= Me.txttotal Then

    você esta digitando o valor a pagar e o sistema não encontra o cliente.

    ou seja a alguma coisa de errado com os nomes do seu formulário com o código VBA
    avatar
    fabioavila
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 273
    Registrado : 22/03/2011

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  fabioavila Sex 19 Fev - 22:57

    Ola amigos,

    segue o bd,

    https://cutt.ly/jlt4C6u


    Att
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  Noobezinho Sab 20 Fev - 4:36

    O link não está funfando, Fabio


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    scandinavo
    scandinavo
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1005
    Registrado : 11/11/2009

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  scandinavo Sab 20 Fev - 8:38

    1 você esta usando a fonte de controle como referencia no código VBA e não o nome do campo.
    2 coloquei o id do cliente  como chave primaria
    3 para melhor entendimento dos nomes de campos sempre renomeie as cmbox para melhor identificação

    Código:
    Dim db As DAO.Database
    Dim rst As DAO.Recordset


    Set db = CurrentDb
    'Abre a tabela e seleciomna o cliente
    Set rst = db.OpenRecordset("Select * from Clientes where ID =" & Me.Combina??o187.Column(0) & "")
    'Verifica se tem saldo antes de fazer a venda
    If rst!LIMITE > Me.txttotal Then
    'se tiver saldo retira o valor da venda
      rst.Edit
      rst!LIMITE = rst!LIMITE - Me.txttotal.Value
     
      rst.UPDATE
      'se n?o emite mensagem
      Else
      MsgBox ("Venda acima do limite"), vbCritical, "Sem credito para comprar"
      'desfaz a venda
    Me.Undo
        End If
    rst.Close: Set rst = Nothing
    db.Close: Set db = Nothing

    Anexos
    [Resolvido]Limite de Compra Attachmentlimite.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (106 Kb) Baixado 18 vez(es)
    avatar
    fabioavila
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 273
    Registrado : 22/03/2011

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  fabioavila Sab 20 Fev - 19:25

    Ola scandinavo

    Agora funcionando , só mais uma dúvida tem como eu mudar a Mensagem para que eu posso escolhe se libero a venda mesmo com o LIMITE SIM ou NAO ?

    Obrigado
    scandinavo
    scandinavo
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1005
    Registrado : 11/11/2009

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  scandinavo Seg 22 Fev - 6:58

    Assim

    Código:
    Dim db As DAO.Database
    Dim rst As DAO.Recordset


    Set db = CurrentDb
    'Abre a tabela e seleciomna o cliente
    Set rst = db.OpenRecordset("Select * from Clientes where ID =" & Me.Combina??o187.Column(0) & "")
    'Verifica se tem saldo antes de fazer a venda
    If rst!Limite >= Me.txttotal Then
    'se tiver saldo retira o valor da venda
      rst.Edit
      rst!Limite = rst!Limite - Me.txttotal.Value
     
      rst.UPDATE
      'se n?o emite mensagem
      Else
      'pergunta se deseja continuar com a venda se sim
     If MsgBox("Venda acima do limite. Continuar com a venda?", vbQuestion + vbYesNo, "Sem credito") = vbYes Then
     'ficara com saldo negativo
      rst.Edit
      rst!Limite = rst!Limite - Me.txttotal.Value
      rst.UPDATE
     Else
      'desfaz a venda
    DoCmd.SetWarnings False 'bloque aviso
    DoCmd.RunCommand acCmdDeleteRecord
    DoCmd.SetWarnings True 'libera aviso
        End If
        End If
       
    rst.Close: Set rst = Nothing
    db.Close: Set db = Nothing

    fabioavila gosta desta mensagem

    avatar
    fabioavila
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 273
    Registrado : 22/03/2011

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  fabioavila Ter 23 Fev - 20:24

    scandinavo

    Ele está dando a msg tendo ou não limite, tem como mostra somente para o cliente que não tem Limite.

    Obrigado
    scandinavo
    scandinavo
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1005
    Registrado : 11/11/2009

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  scandinavo Qua 24 Fev - 8:50

    Fiz o teste aqui e esta normal.


    Tem certeza que os clientes tem limites disponíveis.


    Se alguém mais quiser fazer o teste fiquem a vontade.
    avatar
    fabioavila
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 273
    Registrado : 22/03/2011

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  fabioavila Qua 24 Fev - 10:38

    Ola

    Foi mal não percebi que a medida que esta vendendo ele da dando diminuindo o saldo dele , ta funcionando sim ok

    Obrigado
    scandinavo
    scandinavo
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1005
    Registrado : 11/11/2009

    [Resolvido]Limite de Compra Empty Re: [Resolvido]Limite de Compra

    Mensagem  scandinavo Sex 26 Fev - 7:05

    Valeu.

    Lembre que no exemplo la em cima tem o código que retorna o credito toda vez que o cliente fizer um pagamento.

      Data/hora atual: Ter 7 Fev - 18:58