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]Fluxo de Caixa ou Controle de Caixa

    avatar
    Traxman
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 93
    Registrado : 03/01/2012

    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Fluxo de Caixa ou Controle de Caixa

    Mensagem  Traxman 19/1/2012, 19:57

    Boa tarde amigos!

    Estou com um pequeno problema, que é o seguinte:
    Tenho um formulario chamado FProtocolo onde consta um subformulario FDetalheProtocolo, onde neste consta um campo chamado "Parcela", gostaria que quando adicinaldo um valor neste campo "Parcela" este valor fosse adicionado/somado ao campo "ValVendido" que se encontra na tabela VENDEDORES, isso evidentemente atraves do relacionamento entre os campos "CodVendedor" constantes tanto no subformulario quanto na tabela VENDEDORES.
    ...Aguardando respostas.
    avatar
    Convidad
    Convidado


    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Convidad 19/1/2012, 20:50

    Olá

    Tente colocar código no evento Após Atualizar do campo Parcela ou do subform FDestalheProtocolo, que atualize o campo ValVendido na tabela Vendedores, onde o IDVendedor seja igual ao IDVendedor do registro atual no FDetalheProtocolo, somando ao valor atual existente no campo o valor do campo Parcela no registro atual do FDetalheProtocolo.

    avatar
    Convidad
    Convidado


    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Convidad 20/1/2012, 13:27

    Olá

    Tentou ?

    Bem, qual é o Nome do campo IDVendedor na tabela Vendedores. Tambem é CodVendedor? Este campo é Número ou Texto?

    O campo CodVendedor do subform é uma combo? A coluna acoplada é 1?

    Pode tentar algo como: no evento AfterUpdate do subformulário:

    Private Sub Form_AfterUpdate()
    On Error GoTo Trato

    Dim VlrAtual As Integer
    Dim VlrMais As Integer
    Dim VlrNovo As Integer
    VlrAtual = DLookup("ValVendido", "Vendedores", "CodVendedor=" & Forms!FDetalheProtocolo!CodVendedor)
    VlrMais = Forms!FDetalheProtocolo!Parcela
    VlrNovo = VlrAtual + VlrMais
    DoCmd.RunSQL "UPDATE Vendedores SET Vendedores.ValVendido=VlrNovo WHERE Vendedores.CodVendedor=Forms!FDetalheProtocolo!CodVendedor"
    Exit Sub
    Trato: MsgBox Err.Description

    End Sub
    avatar
    Traxman
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 93
    Registrado : 03/01/2012

    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Traxman 20/1/2012, 14:30

    Bom dia norbs, estou estudando aqui a sua sugestão, lhe responderei a tarde, obrigado.
    avatar
    Traxman
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 93
    Registrado : 03/01/2012

    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Traxman 20/1/2012, 14:58

    norb, fiz exatamente como você me orientou, mas não funcionou.
    E, respondendo as suas perguntas:

    "Bem, qual é o Nome do campo IDVendedor na tabela Vendedores. Tambem é CodVendedor?" (sim, é "CodVendedor")

    " Este campo é Número ou Texto?" (este campo é Número)

    "O campo CodVendedor do subform é uma combo?" (sim, é uma combo)

    "A coluna acoplada é 1?" (sim, a coluna acoplada é a 1)
    avatar
    Convidad
    Convidado


    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Convidad 20/1/2012, 15:09

    Alguma mensagem de erro?
    Não ocorre nada?

    Você está fazendo com que o evento AfterUpdate ocorra?

    Qualquer informação que puder passar ajuda no caminho da solução!
    avatar
    Traxman
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 93
    Registrado : 03/01/2012

    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Traxman 20/1/2012, 17:55

    Não, não aconteceu nada.
    avatar
    Convidad
    Convidado


    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Convidad 20/1/2012, 18:16

    Tente mudar de evento:
    Coloque no Após Atualizar do campo Parcela:

    Private Sub Parcela_AfterUpdate()
    On Error GoTo Trato

    If Not IsNull(Me.Parcela) Then

    Dim VlrAtual As Integer
    Dim VlrMais As Integer
    Dim VlrNovo As Integer
    VlrAtual = Nz(DLookup("ValVendido", "Vendedores", "CodVendedor=" & Forms!FDetalheProtocolo!CodVendedor), 0)
    VlrMais = Forms!FDetalheProtocolo!Parcela
    VlrNovo = VlrAtual + VlrMais
    DoCmd.RunSQL "UPDATE Vendedores SET Vendedores.ValVendido=VlrNovo WHERE Vendedores.CodVendedor=Forms!FDetalheProtocolo!CodVendedor"

    End If

    Exit Sub
    Trato: MsgBox Err.Description
    End Sub

    O texto em azul deve ficar todo em uma linha.
    Para testar, altere o valor do campo Parcela.
    Verifique o valor de ValVendido antes e depois de atualizar o campo Parcela para ver se houve alteração.
    avatar
    Traxman
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 93
    Registrado : 03/01/2012

    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Traxman 23/1/2012, 14:00

    Bom dia norbs!
    Fiz o que me pediu, mas também não aconteceu nada.
    Se puder dá uma olhada aí direto no bd taí o link, obrigado!

    http://dl.dropbox.com/u/55664014/dbpnet.rar
    avatar
    Convidad
    Convidado


    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Convidad 23/1/2012, 14:26

    Observe que alterei a propriedade das variáveis de Integer para Double.
    Altere de Integer para Single ou para Double, conforme as propriedades dos seus números na tabela (Número Simples ou Duplo).


    Private Sub Parcela_AfterUpdate()
    On Error GoTo Trato

    If Not IsNull(Me.Parcela) Then

    Dim VlrAtual As Double
    Dim VlrMais As Double
    Dim VlrNovo As Double

    VlrAtual = Nz(DLookup("ValVendido", "Vendedores", "CodVendedor=" & Forms!FDetalheProtocolo!CodVendedor), 0)
    VlrMais = Forms!FDetalheProtocolo!Parcela
    VlrNovo = VlrAtual + VlrMais

    DoCmd.RunSQL "UPDATE Vendedores SET ValVendido = VlrNovo WHERE CodVendedor = Forms!FDetalheProtocolo!CodVendedor"

    End If

    Exit Sub
    Trato: MsgBox Err.Description
    End Sub
    avatar
    Traxman
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 93
    Registrado : 03/01/2012

    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Traxman 23/1/2012, 14:55

    ...Mudei para double depois para single e continua na mesma, nada acontece, nem certo nem errado.
    avatar
    Traxman
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 93
    Registrado : 03/01/2012

    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Traxman 24/1/2012, 19:28

    boa tarde norbs!
    Me diga uma coisa, você olhou o arquivo que postei?
    Pois utilizei todas as suas sugestões e não funcionou.
    Dá uma olhada aí quando possivel e me dá uma luz, obrigado!
    avatar
    Convidad
    Convidado


    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Convidad 24/1/2012, 19:38


    Baixei, mas não deu pra ver ainda...

    Mas tente isso:

    Private Sub Parcela_AfterUpdate()
    On Error GoTo Trato

    If Not IsNull(Me.Parcela) Then

    DoCmd.RunSQL "UPDATE Vendedores SET ValVendido = ValVendido + Forms!FDetalheProtocolo!Parcela
    WHERE CodVendedor = Forms!FDetalheProtocolo!CodVendedor"

    End If

    Exit Sub
    Trato: MsgBox Err.Description
    End Sub
    avatar
    Traxman
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 93
    Registrado : 03/01/2012

    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Traxman 24/1/2012, 19:50

    Obrigado pela tentativa norbs, mas ainda não aconteceu nada, nem de certo nem de errado.
    avatar
    Traxman
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 93
    Registrado : 03/01/2012

    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Traxman 24/1/2012, 20:08

    norbs...coloquei o seguinte código na propriedade ao sair: >> DoCmd.RunSQL ("update VENDEDOR set ValVendido= (ValVendido+(Formulários![FProtocolo]![FDetalheProtocolo]![Parcela])) where VENDEDOR.CodVendedor=(Formulários![FProtocolo]![FDetalheProtocolo]![CodVendedor]);") <<

    E deu certo, muito obrigado pelas dicas, ajudaram bastante, caso resolvido.
    Brigadão mesmo!!!
    avatar
    Traxman
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 93
    Registrado : 03/01/2012

    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Traxman 24/1/2012, 20:15

    Resolvido!
    avatar
    Convidad
    Convidado


    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Convidad 24/1/2012, 20:26


    Agora funfa!

    Private Sub Parcela_AfterUpdate()
    On Error GoTo Trato

    If Not IsNull(Me.Parcela) Then

    DoCmd.RunSQL "UPDATE VENDEDOR SET ValVendido = ValVendido + Forms!FPROTOCOLO!FDETALHEPROTOCOLO!Parcela WHERE CodVendedor = Forms!FPROTOCOLO!FDetalheProtocolo!CodVendedor"

    End If

    Exit Sub
    Trato: MsgBox Err.Description
    End Sub

    Pode colocar DoCmd.SetWarnings False antes do RunSQL e DoCmd.SetWarnings True depois, para omitir o aviso de confirmação. Mas teste sem antes.

    Cole exatamente o código acima em cima do seu (que está com End Sub sobrando)
    avatar
    Convidad
    Convidado


    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Convidad 24/1/2012, 20:29


    É, logo vi assim que abri seu bd.
    Faltava a referência ao subformulário.

    Você resolveu enquanto eu postava. Parabéns!

    Agradecemos o retorno.

    Conteúdo patrocinado


    [Resolvido]Fluxo de Caixa ou Controle de Caixa Empty Re: [Resolvido]Fluxo de Caixa ou Controle de Caixa

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 26/11/2024, 21:10