Tenho uma tela de parcela onde tenho a opção para gerar determinada quantidade 
de parcela, como faço para gerá-las novamente a partir da última parcela 
gerada? Por exemplo, tenho 12 parcelas geradas, gostaria de continuar gerando 
da 13 para frente como faço? Na verdade da primeira vez gero as parcelas 
inicias do contrato, na segunda vez gostaria de gerar as parcelas para 
renovação do mesmo contrato, apenas acrescentando as novas parcelas na 
sequencia.

estou usando esse código: 

procedure TForm1.Btn_IncluirClick(Sender: TObject); 
var 
i: Byte; 
begin 
//Abro o Banco 
ClientDataSet1.Open; 
//Chamo um procedimento para verificar se tem prestação pendente 
verificaparcela; 
// Minha variável no caso i inicialmente é 0 
i:=0; 
// minha variável recebe 1 do numero de parcelas no caso o digitado dentro de 
edParcela.Text 
for i := 1 to StrToInt(edParcela.Text) do 
begin 
// verifico o numero é menor do que o da variavel 
if ClientDataSet1.RecordCount < i then 
// se for insiro 
ClientDataSet1.Insert 
else 
//senao edito 
ClientDataSet1.Edit; 
//PARC vai receber o numero de parcelas que eu digitei 
ClientDataSet1.FieldByName(\'PARC\').Value := i; 
//VALOR vai receber o valor digitado dividido pelo numero de parcelas 
ClientDataSet1.FieldByName(\'VALOR\').Value 
:=(StrToFloat(edtValor.Text)/(StrToInt(edParcela.Text))); 
//DATA recebe a data replicando conforme o numero das parcelas 
ClientDataSet1.FieldByName(\'DATA\').Value:= incMonth( Date, i - 1); 
//Gravo no banco 
ClientDataSet1.Post; 
//vou para o próximo 
Next; 
end; 
//Dou um updade para gravar esse registro no banco lembre-se que quando 
//trabalho com clientDataSet eu trabalho em cachê é necessário dar um 
//ApplyUpdates(0) para gravar no banco o (0) significa o numero de erros 
//claro com certeza isso só vai acontecer se não tiver nenhum erro ok 
ClientDataSet1.ApplyUpdates(0); 
//Mando uma mensagem de texto 
showmessage(\'Arquivo incuido com sucesso\'); 
end;

Responder a