Pero, a ver, esto te da algún error? Si es así, cuál?
Lo que "impide" Delphi es la asignación de un string de más de 255 caracteres, pero con concatenaciones como la que haces.... nunca he tenido problemas (bueno, tampoco se si he superado alguna vez los 255)
Bueno, acabo de hacer esta prueba y sin problemas:
Código:
var
str: string;
i: integer;
begin
str := '';
for i := 1 to 270 do
str := str + IntToStr(i);
showmessage(str);
Uno de los problemas que podrías tener es que adotalm['REF'] ocupara más de 255 caracteres, pero eso lo puedes controlar de forma fácil
Código:
if length(adotalm['REF']) <= 255 then
unidades := unidades + '//' + adotalm['REF']
else
unidades := unidades + '//' +
copy(adotalm['REF'], 0, 250) +
copy(adotalm['REF'], 250, length(adotalm['REF']));
Bueno, lo he hecho de cabeza, quizás haya que retocar algo