Hola al grupo.
Tengo un problema con la inserciòn de elementos en un array dinàmico que explico a continuacòn.
Tengo un dataset con registros el cual paso a un objeto con propiedades al que se le asignan los valores del dataset, registro a registro, y se genera una inserciòn en un array previamente declarado.
Bien, todo perfecto, el array se genera, pero me estoy dando cuenta que cada que inserto un elemento, TODOS los elementos toman los valores del ùltimo elemento insertado.
Es decir, tengo los elementos MARIA, PEDRO, JUAN, MARTA
Inserto el primero perfecto, pero cuando inserto el segundo, el primer elemento que se insertò como Marìa toma el valor de PEDRO, y el segundo pues ese es PEDRO, y cuando inserto el tercer elemento el primer y segundo elemento pasan a ser JUAN.
Bueno, dejo un còdigo para ver si me pueden orientar.
Gracias
var vlArregloMovi : Edo; vlArregloTotales : Array_Of_Edo; Begin //-- Dataset al inicio self.oVTReg.FindFirst; for nCiclo := 0 to self.oVTReg.RecordCount -1 do Begin vlArregloMovi := Edo.Create; vlArregloMovi.Persona := Self.oVTReg.FieldByName('Persona').AsString; vlArregloMovi.mesPago := Self.oVTReg.FieldByName('Mes_Pago').AsString; vlArregloMovi.moneda := Self.oVTReg.FieldByName('Moneda').AsString; vlArregloMovi.Total := Self.oVTReg.FieldByName('Total').AsString; SetLength(vlArregloTotales , nCiclo + 1 ); vlArregloTotales [nCiclo] := vlArregloMovi; vlArregloMovi.DESTROY; self.oVTReg.FindNext; End;
Saludos y gracias por la ayuda.
Editado por FerCastro, 11 mayo 2017 - 01:53 .