Fórum Forma de Pagamento #335336
28/12/2006
0
Bom Dia a todos
estou precisando de uma ajuda em como desenvolver o cadastro de forma de pagamento
exemplo tenho uma fatura de R$1.000,00 quero dividir em 5x dai jah é gerada 5 duplicatas de R$200,00 com as datas de vencimento caindo sempre em apenas dias uteis...
não estou conseguindo manipular as datas para gerar cada duplicata para cada mês..se fosse possivel gostaria de gerar dentro de um grid para poder alterar os dias dos venciementos.......
obrigado pelo ajuda
$UCE$$O a todos em 2007
estou precisando de uma ajuda em como desenvolver o cadastro de forma de pagamento
exemplo tenho uma fatura de R$1.000,00 quero dividir em 5x dai jah é gerada 5 duplicatas de R$200,00 com as datas de vencimento caindo sempre em apenas dias uteis...
não estou conseguindo manipular as datas para gerar cada duplicata para cada mês..se fosse possivel gostaria de gerar dentro de um grid para poder alterar os dias dos venciementos.......
obrigado pelo ajuda
$UCE$$O a todos em 2007
$grandaum$
Curtir tópico
+ 0
Responder
Posts
30/12/2006
Aroldo Zanela
Colega,
Geralmente, utilizo um formulário denominado ´Negociação´ e uma das etapas tem algo parecido com o que você procura:
CDS = ClientDataSet
Geralmente, utilizo um formulário denominado ´Negociação´ e uma das etapas tem algo parecido com o que você procura:
var I, N: SmallInt; Data: TDateTime; Restante, Parcela: Currency; Coincidir: Boolean; begin cds.EmptyDataSet; if rxLiquido.Value<=0 then begin MessageDlg(´Nenhum valor líquido para parcelar.´, mtInformation, [mbCancel], 0); exit; end; if cbxFormas.Text=´´ then begin MessageDlg(´Selecione a forma de pagamento.´, mtInformation, [mbOK], 0); exit; end; Parcela:= RoundTo(rxLiquido.Value / rxQtdeParcelas.AsInteger, -2); Restante := rxLiquido.Value; N:= rxQtdeParcelas.AsInteger; Data:= dtpPrimeira.Date; Coincidir:= false; if (rxIntervalo.Value=30) and (MessageDlg(´Ajustar data de vencimento para o mesmo dia?´, mtConfirmation, [mbYes, mbNo], 0) = mrYes) then begin Coincidir:= true; end; for I := 1 to N do begin cds.Append; CDSDATA.Value:= Data; CDSVALOR.Value:= ifThen(I<>N, Parcela, Restante); cds.Post; if Coincidir then Data:= IncMonth(Data, 1) else Data:= dtpPrimeira.Date+(I*rxIntervalo.AsInteger); Restante := Restante - Parcela; end; end;
CDS = ClientDataSet
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)