barra de progresso dinâmica

Bom dia.

Procurei por alguns tópicos aqui, onde eu possa fazer uma espécie de barra de progresso, mas ela deverá ser dinâmica e possivelmente retrátil.

Ex:

Tenho um valor X= R$450,00

Quero comparar este valor X com um valor que será variável num formulário. Logo, 450,00 é o valor máximo da barra, porém, a cada item adicionado neste formulário que venha a aumentar o valor ou diminuir, deve alterar a barra. É possível fazer?

Se sim, alguém tem alguma idéia/exemplo?

Desde já, obrigado.

Att.

André Zullo.’.

Sim eh possível. Só não entendi ser retrátil

Quando digo retrátil, por exemplo, é que se o usuário remover um item do formulário, que no caso é um formulário de pedido de venda, o valor diminuirá, então neste caso a barra não será de progressão, ela regredirá, indicando que o valor diminuiu de acordo a algo que era “permitido”.

Como posso fazer isso? Devo usar um botão?

Att.

André Zullo.’.

O termo retrátil significa recolher expandir através de uma ação do usuário via mouse ou touch.
Mas entendi.
Vou montar um código simples como sugestão

Imagino que sua aplicação seja um mestre/detalhe, e ao inserir registros no detalhe,você queira apresentar uma barra de progresso no formulário mestre.

Não sei se você possui algum campo na tabela mestre que guarde o percentual, caso não primeiro deve criar um campo do tipo text (habilitado como label) para apresentar a barra de progresso.

No evento onvalidatesucess do formulário detalhe, você deve fazer o cálculo. Acredito que o cálculo você saiba como fazer. O resultado deve ser o percentual final calculado.

Como teste usaremos a macro sc_master_value apresentando o percentual no campo virtual criado. Assim que chegar nesse ponto, passo as próximas coordenadas para montar a barra de progresso.

Boa tarde Haroldo, desde já, agradeço sua ajuda meu Irmão.

Então, exatamente é um Mestre-Detalhe.

Eu já tenho dois campos virtuais no Mestre que já recebo valores do Detalhe via sc_master_value, ambos valores (meu máximo permitido e o atual). A única diferença é que recalculo eles no evento OnAfterUpdate.

Agora preciso montar a barra. O valor máximo da barra virá de um destes campos, o outro apenas incrementará a barra.

Explicando a regra do negócio: Em tempo de execução do pedido, o sistema calcula qual a margem de lucro mínima que posso ter nele.
Logo, margem_minima é o máximo da minha barra.
O outro cálculo é a minha margem_real, ela também é calculada em tempo de execução e variará ao acrescentar ou remover itens.

Ex: Margem_mínima = 40%
-Margem Real = 20%

Neste caso, a barrinha deverá estar carregada até a metade.

Att.

André Zullo.’.

O Cálculo deverá ser feito na aplicação detalhe então os valores para cálculo devem estar disponíveis nessa aplicação.

Ao campo virtual que pedi para criar é para apresentação da barra de progresso.

Siga os passos que solicitei em postagem anterior, e assim que estiver funcionando te mostro como transformar o percentual apresentado em uma barra de progresso.

Boa noite Haroldo.

Foi isso que fiz, o cálculo que preciso já fiz no detalhe e já estou enviando ele via sc_master_value para o mestre.

Att.

André Zullo.’.

Beleza.

Continuando…

Como imagino jogar nesse campo no formulário mestre uma visualização representando o uma barra de progresso com seu respectivo percentual?

Não sei se conhece bem CSS e HTML Mas imagine dias div´s uma dentro da outra. A interna posicionada a partir da esrquerda e com um tamnho de x% referente a sua div pai? E para essa div interna um cor de background (que pode ser diferente conforme o valor do percentual).

Criar essas tags html jogar dentro de uma variável e com a sc_master_value escrever esse código no campo desejado.

Exemplo de código: http://opensource.locaweb.com.br/locawebstyle-v2/manual/componentes/barra-progresso/

Se desejar animação na barra de progresso aí a programação deverá ser mais avançada.