Si hay algo que no entiendo es porqué seguir intentando usar un record como si fuera una clase.
¿Y porqué no mejor abandonar ese pensamiento estructurado y avanzar hacia el maravilloso mundo que ofrece POO?
Y si esta duda surge porque se disponen de muchos campos y si quiere concatenar muchos de ellos, una posible manera de encarar el problema sería mediante TStringList.
En él se almacenan los datos de cada variable, y luego para concatenar basta con hacer algo como:
Código Delphi
[-]for i := 1 to Listado.Count - 1 do
result := result + Listado.Strins[i];
Aprovechando la propiedad .Values[] se puede hacer correspondencias entre atributos -> Valor. Por ejemplo:
Código Delphi
[-]Listado.Values['DNI'] := '123456789';
Siendo DNI el atributo en cuestión, y así con el resto de atributos imaginados.
Ojo, que lo digo de a memoria, no tengo Delphi abierto a mano.
Saludos,