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

    Dúvida ao calcular e atualizar valores em campos

    avatar
    sthoose
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 24
    Registrado : 28/02/2011

    Dúvida ao calcular e atualizar valores em campos Empty Dúvida ao calcular e atualizar valores em campos

    Mensagem  sthoose Qua 04 Abr 2012, 17:46

    Tenho um formulário de vendas, e um subformulário nele onde relaciono os ítens da venda.
    No subformulario tenho um campo que totaliza o valor do pedido ( pois soma os subtotais de cada ítem acrescentado).
    No formulário principal, tenho um campo que captura esse valor de total (R$) dos ítens.
    No formulário principal também tenho outros campos que utilizam esse valor para realizar alguns calculos: ex: calculo do frete, calculo de impostos, despesas adicionais e um total geral do pedido.

    O que ocorre é que apenas o campo que captura o valor total do subformulário se atualiza, os outros não. Já coloquei uma rotina que refaz os cálculos no evento após atualizar do campo, mas não funciona...só se eu clicar nele e teclar TAB. Coloquei o comando para chamar essa rotina ( de recalculo) em todos os campos para que ao atualizar (por exemplo ) o valor do frete, todo o calculo seja refeito...Daí funciona...

    Gostaria de saber se alguem já utilizou algo parecido, e se tem como fazer com que esse recalculo ocorra automaticamente, e enquanto for atualizando os dados do subformulário ?
    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5120
    Registrado : 20/04/2011

    Dúvida ao calcular e atualizar valores em campos Empty Re: Dúvida ao calcular e atualizar valores em campos

    Mensagem  Silvio Qua 04 Abr 2012, 18:25

    Olá, boa noite...seja bem vindo ao nosso fórum...

    Já tentou o comando : DoCmd.RunCommand acCmdRefresh no evento ( após atualizar ) do campo que você precisa ?


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."
    avatar
    abasilio
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 05/09/2012

    Dúvida ao calcular e atualizar valores em campos Empty Re: Dúvida ao calcular e atualizar valores em campos

    Mensagem  abasilio Qui 05 Mar 2015, 18:20

    Tenho o mesmo problema. O comando "DoCmd.RunCommand acCmdRefresh" não resolve.

    Este problema se dá quando se tenta somar, no cabeçalho ou rodapé de um subformulário com vários registros, um campo calculado do subformulário. Não estou falando de campos calculados criados diretamente na tabela, e sim de campos calculados criados nos formulários/subformulários.

    Ao criar um totalizador para somar um desses campos calculados , surge a mensagem: "#Erro". Aparentemente, o Access não soma um campo num subformulário a não ser que ele exista na tabela e esteja gravado na tabela.

    Para resolver este problema, criei um campo a mais na tabela, e o coloquei também no subformulário. E criei uma rotina para atualizar este campo (físico) com o conteúdo do campo calculado. Até aí, resolvido o problema. Porém, se o campo calculado faz cálculos com um número qualquer do formulário e esse número for alterado posteriormente, nenhum dos campos físicos gravados na tabela são atualizados. Não adianta dar Requery no subformulário. Eu só consigo atualizar o conteúdo desse campo em cada um dos registros se clicar em cada um deles estando com uma função de atualizar esse campo ao ser clicado.

    Outra forma que pensei de resolver esse problema é criar uma rotina, no campo do formulário, para executar uma consulta para atualizar esses campos do subformulário. Mas... será que realmente é necessário fazer isso tudo? Não há um comando ou uma forma de fazer que permita que se possa criar um campo totalizador no cabeçalho/rodapé de um subformulário que simplesmente some o conteúdo de campos calculados?

    Att.

    André Basílio.
    tauron
    tauron
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1416
    Registrado : 07/12/2011

    Dúvida ao calcular e atualizar valores em campos Empty Dúvida ao calcular e atualizar valores em campos

    Mensagem  tauron Qui 05 Mar 2015, 20:20

    Amigo, se puder postar seu bd para que possamos ajuda-lo. Mas tente em outros eventos como por exemplo (ao receber foco, ao perder foco etc)
    avatar
    abasilio
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 05/09/2012

    Dúvida ao calcular e atualizar valores em campos Empty Re: Dúvida ao calcular e atualizar valores em campos

    Mensagem  abasilio Qui 05 Mar 2015, 21:38

    Eu fiz isso, Tauron. Mas, como eu disse, eu estava tendo que atualizar os campos em diversos lugares, tal como citado na minha mensagem anterior, e em várias fases diferentes. Eu estava achando isso muito gambiarra, pois eu estava tendo que fazer cerca de 20 atualizações em diversos locais diferentes. Se eu me esquecesse de criar a rotina para atualizar um desses lugares, meu sistema calcularia um valor incorretamente.

    Pelo jeito, o Access realmente tem problema para somar totais em campos calculados dentro de subformulários (campos calculados criados no próprio subformulário).

    Então, vi uma dica que parecia inocente, que não resolvia o problema em si, mas ensinava uma outra forma de fazer a mesma coisa. Essa dica dizia para, ao invés de criar campos calculados dentro de subformulários e trabalhar diretamente com a tabela como fonte de dados em um subformulário, para que fosse criada uma consulta com todas as fórmulas que se desejasse nessa consulta, e colocar essa consulta como fonte de dados para o subformulário. FOI BATATA! DEU CERTÍSSIMO!

    Tive que mexer em todo o subformulário, removendo os campos de cálculos que já estavam criados, e colocar em seus lugares os campos já calculados da consulta. Deu um pouco de trabalho pra fazer isso, mas em pouco mais de uma hora meu sistema já estava funcionando exatamente do jeito que eu precisava!

    Foi excelente a dica! Sugiro que outras pessoas com a mesma dificuldade façam esses subformulários da mesma forma como eu fiz. Fica muito mais fácil, rápido e confiável!

    Muito obrigado pelo apoio!
    tauron
    tauron
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1416
    Registrado : 07/12/2011

    Dúvida ao calcular e atualizar valores em campos Empty Dúvida ao calcular e atualizar valores em campos

    Mensagem  tauron Sex 06 Mar 2015, 09:44

    Poste o bd somente com as partes que julgas necessário para que possamos dar uma olhada.

    Conteúdo patrocinado


    Dúvida ao calcular e atualizar valores em campos Empty Re: Dúvida ao calcular e atualizar valores em campos

    Mensagem  Conteúdo patrocinado


      Data/hora atual: Sex 22 Nov 2024, 22:14