PAGAMENTO PARCELADO... como faço?
Olá amigo(s),
tenho um cadastro de pagamentos onde tenho que dividir um valor total em mensalidades, como faço isso no delphi.
Estou precisando muito deste help!!!
Grato!
Erivando Ramos :lol:
tenho um cadastro de pagamentos onde tenho que dividir um valor total em mensalidades, como faço isso no delphi.
Estou precisando muito deste help!!!
Grato!
Erivando Ramos :lol:
Erivando
Curtidas 0
Respostas
Profjohnny
09/08/2003
ola colega...
tente fazer desta forma...
supomos os seguintes campo
CodigoCliente,Nome,QtdeParcelas,Vencimento,Valor no TableClientes
CodigoItemCliente,CodigoCliente,NumeroParc,Vencimento,Valor no TableItensCliente
no evento desejado coloque o seguinte
var
a:Integer
begin
for a:=1 to TableClientesQtdeParcelas.AsInteger do
begin
TableItensCliente.Append;
TableItensClienteNumeroParcela.AsInteger:=a;
TableItensClienteVencimento.Value:=IncMonth(TableClientesVencimento.Value,a-1);
TableItensClienteValor.Value:=TableClientesValor.Value/TableClientesNumeroParc.Value;
TableItensCliente.Post;
end;
end;
tente fazer desta forma...
supomos os seguintes campo
CodigoCliente,Nome,QtdeParcelas,Vencimento,Valor no TableClientes
CodigoItemCliente,CodigoCliente,NumeroParc,Vencimento,Valor no TableItensCliente
no evento desejado coloque o seguinte
var
a:Integer
begin
for a:=1 to TableClientesQtdeParcelas.AsInteger do
begin
TableItensCliente.Append;
TableItensClienteNumeroParcela.AsInteger:=a;
TableItensClienteVencimento.Value:=IncMonth(TableClientesVencimento.Value,a-1);
TableItensClienteValor.Value:=TableClientesValor.Value/TableClientesNumeroParc.Value;
TableItensCliente.Post;
end;
end;
GOSTEI 0
Erivando
09/08/2003
Estarei aguardando o restante da sua dica.
Até breve!
Erivando Ramos
sosinforamos@bol.com.br
Até breve!
Erivando Ramos
sosinforamos@bol.com.br
GOSTEI 0
Paulo
09/08/2003
Se vc quer gerar parcelas com intervalos de 30 dias eu fiz assim:
Vou t passar partes do código q eu fiz, vc só tem q melhorar.
Plano é uma tabela de plano de pagto com campo de qte q é a quantidade de parcelas q serão geradas. RecCaixa é outra tabela q receberá a movimentação, nela passam todas as transações financeiras.
for i:=1 to (PlanoQteParcelas.AsInteger-1) do begin
Plano.Edit;
PlanoQteParcelas.AsInteger:=(i);
RecCaixa1.First;
repeat
Reccaixa.Insert;
RecCaixaData.AsDateTime:=incmonth(Reccaixadata.asdatetime, (i));
RecCaixa.Post
until
i := PlanoQTEPARCELAS.AsInteger;
end;
Se o plano de pagto for, por exemplo 4X(tabela Plano = 4), será incrementado 4 meses ao RecCaixa(Recebimento). A função incmonth, incorporada ao Delphi, já faz o cálculo em meses comerciais. Caso tenha q passar de um ano para outro, ela já faz tudo sozinha. Vc pode modificar, o exemplo, ao seu modo e gosto. Comigo dá certo. Minha aplicação funciona muito bem assim. O q eu t enviei é só uma mostra, um ´mod´ da minha rotina.
Vou t passar partes do código q eu fiz, vc só tem q melhorar.
Plano é uma tabela de plano de pagto com campo de qte q é a quantidade de parcelas q serão geradas. RecCaixa é outra tabela q receberá a movimentação, nela passam todas as transações financeiras.
for i:=1 to (PlanoQteParcelas.AsInteger-1) do begin
Plano.Edit;
PlanoQteParcelas.AsInteger:=(i);
RecCaixa1.First;
repeat
Reccaixa.Insert;
RecCaixaData.AsDateTime:=incmonth(Reccaixadata.asdatetime, (i));
RecCaixa.Post
until
i := PlanoQTEPARCELAS.AsInteger;
end;
Se o plano de pagto for, por exemplo 4X(tabela Plano = 4), será incrementado 4 meses ao RecCaixa(Recebimento). A função incmonth, incorporada ao Delphi, já faz o cálculo em meses comerciais. Caso tenha q passar de um ano para outro, ela já faz tudo sozinha. Vc pode modificar, o exemplo, ao seu modo e gosto. Comigo dá certo. Minha aplicação funciona muito bem assim. O q eu t enviei é só uma mostra, um ´mod´ da minha rotina.
GOSTEI 0
Profjohnny
09/08/2003
ola colega...
tente fazer desta forma...
supomos os seguintes campo
CodigoCliente,Nome,QtdeParcelas,Vencimento,Valor no TableClientes
CodigoItemCliente,CodigoCliente,NumeroParc,Vencimento,Valor no TableItensCliente
no evento desejado coloque o seguinte
var
a:Integer
begin
for a:=1 to TableClientesQtdeParcelas.AsInteger do
begin
TableItensCliente.Append;
TableItensClienteNumeroParcela.AsInteger:=a;
TableItensClienteVencimento.Value:=IncMonth(TableClientesVencimento.Value,a-1);
TableItensClienteValor.Value:=TableClientesValor.Value/TableClientesNumeroParc.Value;
TableItensCliente.Post;
end;
end;
Sobindo
GOSTEI 0