Ver Mensaje Individual
  #5  
Antiguo 01-09-2017
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Reputación: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Por lo que entiendo el campo se llama '2010'. '2011', etc.
Si TAValuous['2010'] es la forma de llamar al contenido del campo, entonces tienes que pasarle un string como índice.
Quedaría algo así:

Código Delphi [-]
FOR VVIGENCIA:=2010 TO 2017 DO
begin
   GRIDLIQUIDACION.CELLS[2,I] := StrToInt(TAvaluos[IntToStr(VVIGENCIA)]);
   GRIDLIQUIDACION.CELLS[3,I] := CALCULARIMPUESTO(TAvaluos[IntToStr(VVIGENCIA)]);
end;

o un poco mas claro
Código Delphi [-]
var
   Vigencia : integer;
   NombreCampo : string;

[...]

FOR Vigencia := 2010 TO 2017 DO
begin
   // El nombre del campo corresponde con el valor de vigencia
   NombreCampo := IntToStr(Vigencia);

   // Paso datos de la tabla al grid.
   GRIDLIQUIDACION.CELLS[2,I] := StrToInt(TAvaluos[NombreCampo]);
   GRIDLIQUIDACION.CELLS[3,I] := CALCULARIMPUESTO(TAvaluos[NombreCampo]);
end;

Última edición por duilioisola fecha: 01-09-2017 a las 14:33:58.
Responder Con Cita