Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   salto de linea con MAPIMail (https://www.clubdelphi.com/foros/showthread.php?t=74917)

pelikno 18-07-2011 16:29:08

salto de linea con MAPIMail
 
Hola resulta que armo un string des esta manera para enviar por email.

Código Delphi [-]
const
  NL = '%0d%0a';   //SALTO DE LINEA PARA LOS EMAIL
function  TfTransfElect.ArmarStringEmail : string;
var s:string;
 begin
  s :='Señor/a pongo en su conocimiento que el programador  depositará en la cuenta Bancaria Nº '
  + tblAuxNRO_CUENTA.AsString + tblAuxDIG_VERIF_CUENTA.AsString + ', la suma de  ' + CurrToStrf(tblAuxIMPORTE.AsCurrency,ffCurrency    ,2)+'en concepto de: '+NL;

   qryConceptoV.ParamByName('numero').Value:= tblAuxnumero.AsString;
   qryConceptoV.ParamByName('anio').Value:= tblAuxanio.AsString;
   qryConceptoV.ParamByName('recibo').Value:= tblAuxLiquidacion.AsString;
   qryConceptoV.Open;
   while not qryConceptoV.Eof do
   begin
   s:=s +'Destino = '+ qryConceptoVDestino.Value + NL;
   s:=s +'Viatico = '+ qryConceptoVViaticos.AsString + NL;
   s:=s +'Movilidad = '+ qryConceptoVMovilidad.AsString + NL;
   qryConceptoV.Next;
   end;
 end;
ArmarStringEmail:= s;

esta funcion la llamo para enviar el email y le mando la variable s que es el mensaje
Código Delphi [-]
procedure TfTransfElect.EnviarCorreo(Direccion,CC,CO,Asunto,Mensaje: string);
var header, mail : String;
 vmail : TMAPIMail;
begin
  vmail := TMAPIMail.Create(Self);
  with  vmail do
    try
      Subject := Asunto;
      Body := Mensaje;
      Recipients.Add(Direccion);
      if CC <> '' then
        Recipients.Add('CC:'+CC);
      if CO <> '' then
        Recipients.Add('BCC:'+CO);
      EditDialog := false;
      if Send then
         beep
      else
        showmessage (MAPIErrorDescription(vmail.LastError));
    finally
      Free;
    end;
end;

el error es que cuando lo envia, no toma los saltos de linea y el cuerpo del email es el siguiente:
Señor/a pongo en su conocimiento que el programador depositará en la cuenta Bancaria Nº 5033, la suma de $ 133,00 en concepto de: %0D%0ADestino = COMISIONES%0D%0AViatico = 0%0D%0AMovilidad = 19%0D%0ADestino = COMISIONES%0D%0AViatico = 0%0D%0AMovilidad = 19%0D%0ADestino = COMISIONES%0D%0AViatico = 0%0D%0AMovilidad = 19%0D%0ADestino = COMISIONES%0D%0AViatico = 0%0D%0AMovilidad = 19%0D%0ADestino = COMISIONES%0D%0AViatico = 0%0D%0AMovilidad = 19%0D%0ADestino = COMISIONES%0D%0AViatico = 0%0D%0AMovilidad = 19%0D%0ADestino = COMISIONES%0D%0AViatico = 0%0D%0AMovilidad = 19%0D%0A


Alguna idea de porque no me toma los saltos de linea el outlook express
Desde ya Muchas Gracias!!!!

Casimiro Noteví 18-07-2011 17:20:06

Prueba cambiando NL = '#13#10';

pelikno 18-07-2011 17:26:47

Cita:

Empezado por Casimiro Notevi (Mensaje 406720)
Prueba cambiando NL = '#13#10';

No le resultado fue
Señor/a ELISA pongo en su conocimiento que el programador depositará en la cuenta Bancaria Nº 50242, la suma de $ 441,20 en concepto de: #13#10Destino = VARELA#13#10Viatico = 100,8#13#10Movilidad = 0#13#10Destino = SAN VICENTE#13#10Viatico = 100,8#13#10Movilidad = 0#13#10Destino = COMISIONES#13#10Viatico = 0#13#10Movilidad = 19#13#10Destino = URIBELARREA#13#10Viatico = 100,8#13#10Movilidad = 0#13#10Destino = COMISIONES#13#10Viatico = 0#13#10Movilidad = 19#13#10Destino = CAÑUELAS#13#10Viatico = 100,8#13#10Movilidad = 0#13#10

pelikno 19-07-2011 15:03:09

Solucionado!!
 
Lo solucione !!! el problema era que le asignaba el string y no el valor del codigo que corresponde a ese caracter no se si me explico, aca el codigo !!!
Código Delphi [-]
s:= s+ chr(10)+'algo';

Y el resultado es:
s
algo

Gracias a todos (Casimiro :cool:) por la ayuda de todas formas, Saludos.


La franja horaria es GMT +2. Ahora son las 21:38:31.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi