[firebase-br] Calculo de reajuste de valores

Alex Ricardo Parolin arparolin em gmail.com
Sex Out 31 08:27:48 -03 2008


Senhores,

Acho que me enganei na hora de passar o problema.

Os preços reajustados ficam gravados na base e o calculo para reajuste
funciona perfeitamente. Para "descalcular" os reajustes, os valores obtidos
NÃO ficarão gravados na base. Os dados permanecerão o mesmo, ou seja, o
usuário utilizando o software cliente poderá desfazer e refazer os calculos
a vontade sem que isso afete os dados no BD.

Oque eu preciso saber é se eu faço este calculo no BD (Stored Procedure?),
no software (qual o melhor modo?) ou em ambos (divido parte do calculo no BD
e parte no software).

Alex

Em 31/10/08, Kelver Merlotti <kmerlotti em gmail.com> escreveu:
>
> > 2. Refaça o controle transacional da sua aplicação.
>
>
> Simples? :-)
>
> 2008/10/30 Valdir Marcos <valdir.marcos em ig.com.br>:
>
> > Boa tarde.
> >
> > Simples:
> > 1. Migre para o FB 2.1.1.
> > 2. Refaça o controle transacional da sua aplicação.
> >
> > Um abraço,
> >
> > Valdir
> >
> >
> >
> > Em 30/10/08, Alex Ricardo Parolin <arparolin em gmail.com> escreveu:
> >>
> >> Senhores,
> >>
> >> Tenho um BD Firebird (1.5) rodando em um cliente. O BD possui uma tabela
> de
> >> negociações e uma tabela de reajustes, com a estrutura a seguir:
> >>
> >> NEGOCIOS
> >> ID (PK)
> >> DataNegocio Date
> >> Empresa
> >> Quantidade
> >> Valor Minimo
> >> Valor Medio
> >> ValorMaximo
> >>
> >> REAJUSTE
> >> ID
> >> Data
> >> Empresa
> >> TipoReajuste
> >> Data do Reajuste
> >> Valor do Reajuste.
> >>
> >> O problema é o seguinte: o sistema é dividido em dois módulos. O modulo
> >> cliente lê os dados do BD eo modulo Admin calcula os valores e os insere
> no
> >> BD. Quando acontece um reajuste, o admin lança o reajuste na tabela
> >> correspondente e sai recalculando os valores da tabela de negócio. Com
> isso
> >> o cliente pode ver sempre os valores corretos, conforme os reajustes
> forem
> >> sendo lançados.
> >>
> >> Exemplo prático: sai um reajuste que divide os valores de uma empresa
> por
> >> dois. Ele é lançado na tabela de reajuste e o Admin sai dividindo todos
> os
> >> valores por dois e a tabela de negocio fica reajustada. Como podem ver,
> os
> >> reajustes são cumulativos.
> >>
> >> Agora preciso fazer o processo inverso, ou seja, descalcular o reajuste.
> O
> >> processo de "descalculo" é o seguinte: pego a data do reajuste e aplico
> a
> >> operação inversa nos valores de negócio cuja data seja igual ou menor a
> >> data
> >> do reajuste e vou fazendo isso progressivamente, da ultima data até a
> >> primeira data, para todos os reajustes e negócios. O usuário pode
> escolher
> >> "descalcular" somente um determinado tipo de reajuste ou vários ao mesmo
> >> tempo.
> >>
> >> A pergunta de um milhão de dólares: COMO FAZER ISSO SEM QUE O SOFTWARE
> >> FIQUE
> >> LENTO? Via aplicação? Via BD? Parte do processo em cada um?  Só pra
> terem
> >> uma idéia, uma empresa pode possuir mais de 100 reajustes (raro), mas
> >> possui
> >> negócios diários desde 1999.
> >>
> >> Atenciosamente,
> >>
> >> Alex
> >> ______________________________________________
> >> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> >> Para saber como gerenciar/excluir seu cadastro na lista, use:
> >> http://www.firebase.com.br/fb/artigo.php?id=1107
> >> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >>
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
>
>
>
>
> --
> Kelver Merlotti
> Coordenador Editorial do Portal www.ActiveDelphi.com.br
> Contato: kelver em activedelphi.com.br
> Google: kmerlotti em gmail.com
> Msn: kmerlotti em hotmail.com
> Tem um segundo? Então, dá uma olhadinha nisso:
> Um site de publicidades, de Portugal, está pagando em euros (quase 3x
> mais que em reais) pra quem estiver disposto a:
>   * Ler anúncios
>   * Visitar sites
>   * Clicar em banners
>   * Navegar na NET
>   * Ler e-mails
>   * Convidar novos usuários
> O pagamento é feito em cheque! Registra lá!! Não custa nada! ;-)
> http://www.publipt.com/pages/index.php?refid=kmerlotti
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista