Perdon... lo del error era un desliz mio.. hasta ahora me esta funcionando.... pero solo con un solo elemento... el resto se me esta colgando..... o sea.. me hace lo que deseo pero en un solo registro (en este caso es de la base de datos)aqui esta el codigo completo.... A VER SI me dicen que estoy haciendo mal....
Código Delphi
[-]
procedure TfrmExportaDatos.bbtnProcesarClick(Sender: TObject);
var
idCuenta,FechaResultado : Integer;
Manzana,Edificio,Apartamento,NoContrato : String;
FechaUltimoPago: tDateTime;
VInmueble, VInicial,VCuota,VPagado,Balance,Resultado : Real;
begin
Cursor := crSQLWait;
While not adoQProyectoExportar.Eof do
begin
idCuenta := adoQProyectoExportar.fieldbyName('idCuenta').value;
NoContrato := adoQProyectoExportar.fieldbyName('NoContrato').value;
Manzana := adoQProyectoExportar.fieldbyName('Manzana').value;
Edificio := adoQProyectoExportar.fieldbyName('Edificio').value;
Apartamento := adoQProyectoExportar.fieldbyName('Apto').value;
FechaUltimoPago := adoQProyectoExportar.fieldbyName('FechaUltimoPago').value;
VInmueble := adoQProyectoExportar.fieldbyName('MontoTotal').value;
VInicial := adoQProyectoExportar.fieldbyName('PagoInicial').value;
VCuota := adoQProyectoExportar.fieldbyName('ValorCuota').value;
VPagado := adoQProyectoExportar.fieldbyName('TotalPagado').value;
Balance := adoQProyectoExportar.fieldbyName('Balance').value;
FechaResultado := trunc(abs(((FechaUltimoPago-Date))));
if (FechaResultado >= 30) and (FechaResultado<=7826) then
case FechaResultado of
30..90:
begin
Resultado := trunc(VCuota * FechaResultado);
EjecutaSPActualizaProyectos(idCuenta,NoContrato,Manzana,Edificio,Apartamento,
VInmueble,VInicial,VCUota,VPagado,Balance,Resultado,0.00,0.00,0.00,0.00,0.00,FechaUltimoPago);
End;
91..180:
begin
Resultado := trunc(VCuota * FechaResultado);
EjecutaSPActualizaProyectos(idCuenta,NoContrato,Manzana,Edificio,Apartamento,
VInmueble,VInicial,VCUota,VPagado,Balance,0.00,Resultado,0.00,0.00,0.00,0.00,FechaUltimoPago);
End;
181..360:
begin
Resultado := trunc(VCuota * FechaResultado);
EjecutaSPActualizaProyectos(idCuenta,NoContrato,Manzana,Edificio,Apartamento,
VInmueble,VInicial,VCUota,VPagado,Balance,0.00,0.00,Resultado,0.00,0.00,0.00,FechaUltimoPago);
End;
361..730:
begin
Resultado := trunc(VCuota * FechaResultado);
EjecutaSPActualizaProyectos(idCuenta,NoContrato,Manzana,Edificio,Apartamento,
VInmueble,VInicial,VCUota,VPagado,Balance,0.00,0.00,0.00,Resultado,0.00,0.00,FechaUltimoPago);
End;
731..7825:
begin
Resultado := trunc(VCuota * FechaResultado);
EjecutaSPActualizaProyectos(idCuenta,NoContrato,Manzana,Edificio,Apartamento,
VInmueble,VInicial,VCUota,VPagado,Balance,0.00,0.00,0.00,0.00,Resultado,0.00,FechaUltimoPago);
End;
7826:
begin
Resultado := trunc(VCuota * FechaResultado);
EjecutaSPActualizaProyectos(idCuenta,NoContrato,Manzana,Edificio,Apartamento,
VInmueble,VInicial,VCUota,VPagado,Balance,0.00,0.00,0.00,0.00,0.00,Resultado,FechaUltimoPago);
End;
End;
Cursor := crDefault;
End;
End;