Ver Mensaje Individual
  #1  
Antiguo 29-07-2013
Ledian_Fdez Ledian_Fdez is offline
Miembro
 
Registrado: jun 2006
Ubicación: Ciudad Habana, Cuba
Posts: 242
Reputación: 18
Ledian_Fdez Va por buen camino
Post Añadir carácter según una posición x a un String

Hola chicos intento hacer una funcion que me permita añadir un carácter según una posición x a un String


Query: Consulta que me devuelve cada cuanto caracteres debo poner un separador.
Resultado de la consulta:
Cita:
posición separador
3 -
3 -
5 -
6 -
11 -
Cadena: variable String que le inserto un separador según la posición.

Código Delphi [-]
function FormateaCadena(Query: TADOQuery, Cadena: String): String;
var
 Valor, Separador : String;
 i,j : integer;
begin
 Query.Open;
 Query.First;
 Separador := Query.Fields[1].AsString; // obtengo el caracter de separador
 for i:= 1 to Query.RecordCount do // ciclo para recorrer la tabla y saber cada cuantos caracteres va el separador
   begin
     for j:=1 to Query.Fields[0].AsInteger do // ciclo para ir armando la cadena con el separador
       begin
        Valor := Valor + Cadena[j]; 
       end;
     Query.Next;
     Valor := Valor + CadenaSeparador;
   end;
 Query.Close;
 Result := Valor;
end;

Al llamar la funcion

Código Delphi [-]
text := FormateaCadena(qryXXX, '10024888'); // text = 100-100-100-248-248- ...

Esta era mi idea pero la verdad no funciona pues el ciclo en j se me repite y pufff ... no logro hacerlo bien.

en espera de su ayuda
y mil grasias de antemano
lo salu2.
Responder Con Cita