Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-11-2007
gsilvei gsilvei is offline
Miembro
 
Registrado: jul 2006
Posts: 44
Poder: 0
gsilvei Va por buen camino
dbgrid/outlook

Hola a todos, en un DBGrid, cargo una lista de E-mail.
Y me gustaria saber si es posible, de alguna forma, seleccionar todos los e-mail y pasarlos para el outlook.
Consigo mandar un solo e-mail, de un registro, y en realidad quiero mandar todos los que el dbgrid me muestra.

Código Delphi [-]
ShellExecute(Handle, 'open', pchar('mailto:'+ClientDataSet1email.Value+'?subject=Mala Direta...'), '', '',SW_SHOW);

gracias
saludos
Responder Con Cita
  #2  
Antiguo 02-11-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Prepare una función sencilla y si quieres usala:

Código Delphi [-]
procedure TForm1.EnviarCorreoMultiple(DBGrid :TDBGrid; CampoEmail, Asunto :String);
var
  Direcciones :String;
begin
  Direcciones := '';
  with DBGrid.DataSource.DataSet do
  begin
    First; //Vamos al primer registro...
    while not Eof do //Recorramos el DataSet hasta el ultimo registro...
    begin
      Direcciones := Direcciones + FieldByName(CampoEmail).AsString + ';'; //Agrega Direcciones...
    Next;
    end;
  end;

  SetLength(Direcciones, Length(Direcciones) -1); //Quitemos el punto y coma que sobra...

  ShellExecute(Handle, 'open',
  pchar('mailto:'+Direcciones+'?subject='+Asunto),  '', '',SW_SHOW);
end;

Para llamarla es muy sencillo, asi:

EnviarCorreoMultiple(DBGrid1, 'email', 'Mala Direta...');
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #3  
Antiguo 02-11-2007
gsilvei gsilvei is offline
Miembro
 
Registrado: jul 2006
Posts: 44
Poder: 0
gsilvei Va por buen camino
Hola Jhonny,
gracias por la ayuda,
funciono correctamente,
solo una pregunta mas, que despues de estar verificando me di cuenta,
el outlook tiene un limite para adicionar direcciones de e-mail,
y mi table tiene mas de 150 e-mails, hay alguna forma de que mi dbgrid me muestre de a 50 e-mails por ejemplo?
gracias nuevamente,
saludos.
Responder Con Cita
  #4  
Antiguo 02-11-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Desde tu dataset filtras de 50 en 50:

Si es un Query puedes usar tu motor de BD para traer de 50 en 50 registros o si no usar la propiedad filter del mismo.

Si es una tabla tambien podras hacer uso de su propiedad filter .

Pero si lo prefieres podrias hacerlo uno que otro retoque a la función que te pase anteriormente, de manera que cada que llegue al numero limite llame a ShellExecute, haga una pausa y siga con los demas....
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Menu del Outlook frankmch Varios 3 09-11-2007 12:45:28
Outlook Alejandro73 Varios 2 22-08-2006 21:57:55
Outlook Mario1980 Varios 0 04-07-2005 17:44:13
Outlook express Flores Servers 0 12-11-2003 20:07:38
OutLook con reglas cmgenny Windows 0 18-08-2003 21:18:13


La franja horaria es GMT +2. Ahora son las 08:13:15.


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