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 03-11-2012
Vales08 Vales08 is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 133
Poder: 14
Vales08 Va por buen camino
Envio de email automaticamente

Buenas tardes, es la primera vez que me toca programar envio de email, por lo tanto estoy muy desorientada.. Les comento lo que necesito para ver si me pueden ayudar, eh visto mucho codigo pero no se por donde empezar..

Estoy haciendo un programa que cumple la funcion de otorgar turnos para un hospital. Se permite el ingreso de pacientes, profesionales, turnos, historias clinicas y demas.. Lo que yo necesito es que cuando se genere un turno a tal dia y tal fecha a determinado paciente, se le comunique automaticamente a dicho paciente de su turno con la fecha y la hora..
No necesito armar un formulario con edit y un memo para crear un correo porque no es la idea..
Cada paciente tiene cargado su email, por lo tanto se le tendria que mandar el correo a ese email automáticamente..

No se si habra algun codigo de este estilo que necesito..

Muchas gracias de antemano.. Estoy utilizando Delphi 7
Responder Con Cita
  #2  
Antiguo 04-11-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Vales.

Justamente se trató un tema similar hoy en este hilo.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #4  
Antiguo 04-11-2012
Vales08 Vales08 is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 133
Poder: 14
Vales08 Va por buen camino
Muchas gracias por sus aportes, voy a probar con todo esto para ver si logro lo que quiero...
Responder Con Cita
  #5  
Antiguo 06-11-2012
Lenny Lenny is offline
Miembro
 
Registrado: jun 2007
Posts: 161
Poder: 17
Lenny Va por buen camino
Arrow Ejemplo

Estimado, no sé si es exactamente lo que necesitas, en mi caso me toco hacer algo similar para otros propósitos y pase varios días rebuscando el cómo ajustar los códigos y ayudas (invaluables por lo demás) que amablemente (a pesar de lo pregunton y bruto para entender que soy) los integrantes de CLUBDELPHI me fueron dando, mas menos te explico y dejo mi código modificado mas menos a tu idea para orientarte al respecto:
SI necesitas que se envié automático al generar X acción (generar orden, guardar info, hora especifica, etc) la mejor opción (de todas las que probé la que mejor funciona para este caso) es usar de las indy el "IdMessage" e "IdSMTP".
El IdSMTP lo rellenas con los datos de la cuenta que enviara el mail (Host, Password, port, username) ahora a definir cuales serian los pasos previos antes de enviar el mail.
Supongo que al generar la orden debes tener los datos del paciente, el día, la fecha y el doc que lo va a atender, dependiendo de cómo trabajes esta info puedes guardarla en una variable u obtenerlas directamente de la base de datos (en este caso ni idea cual usas, yo utilizo mysql).
Ahora el código según todo esto debería quedar algo así:

Código Delphi [-]
procedure TEnvioConsultas.Button1Click(Sender: TObject);
var
Lista: String;
begin

....
....
....

BDatos.RegConsulta_T.Edit;
BDatos.RegConsulta_T.FieldbyName ('EstadoConsulta').AsString:= 'Enviado';
BDatos.RegConsulta_T.FieldbyName ('FechaGeneracion').AsDateTime:= now;
BDatos.RegConsulta_T.Post;

IdMessage1.ContentType := 'text/plain';
IdMessage1.CharSet := 'UTF-8';
IdMessage1.Recipients.EMailAddresses := Lista;
IdMessage1.From.Address:= 'sistemaconsulta@matasanos.org';
IdMessage1.Subject:='Clinica Matasanos - Consulta';
IdMessage1.Body.Text:=
'Para su información :' + #13#10 + #13#10 +
                   'El usuario/a '+ BDatos.RegConsulta_T.FieldbyName('Usuario').asString +
                   ' ha ingresado su consulta ' + BDatos.RegConsulta_T.FieldbyName('Consulta').asString +
                   ', Orden N° '+ BDatos.RegConsulta_T.FieldbyName('Orden').asString + ' Con fecha '+ BDatos.RegConsulta_T.FieldbyName('FechaIngreso').asString +'''' +  #13#10 +
                   'Area/Especialista:'+ BDatos.RegConsulta_T.FieldbyName('AreaEspecialista').asString + '''' + #13#10 +
                   'Doctor: : '+ BDatos.RegConsulta_T.FieldbyName('Doctor').asString +'''' + #13#10 +
                   'Descripción de la consulta: '+ BDatos.RegConsulta_T.FieldbyName('DesCOnsulta').asString +''''+ #13#10 +
                   'Por favor comunicarse a la brevedad para confirmar la hora y asistencia.' + #13#10 +
                   '' + #13#10 +
                   'Atte.' + #13#10 +
                   'Clinica Matasanos, si lo matamos Dios asi lo quiso, si queda vivo es por que somos los mejores.';
IdSMTP1.Connect;
IdSMTP1.Send(IdMessage1);
IdSMTP1.Disconnect;
Close;
  MessageBox(Handle,
             PChar('La consulta fue ingresada con exito.' + #13#10 +
                   'Consulta N° ' + DBEdit1.Text +'.'),
             PChar('Clinica Matasanos'),
             MB_OK + MB_ICONINFORMATION + MB_DEFBUTTON1 + MB_APPLMODAL);
end;


Es una forma sencilla de enviar mails predefinidos y automaticos, hasta el momento nunca he tenido problemas con este codigo y cada vez que necesito hacer un autoenvio despeus de ciertas condiciones utilizo algo como esto.

El RegConsulta_T es un Table, cambio de nombre para pdoer identificarlos mas facil, en la linea "IdMessage1.Recipients.EMailAddresses := Lista;" la palabra lista la tengo como variable por si necesitas enviar este mail a mas de una persona u/o registro, puedes tratar eso como mejor estimes.

Espero no haber lateado mucho y estar mas menos cercano a lo que necesitas, me han ayudado demasiado y he aprendido mucho en Club Delphi como para no intentar al menos devolver la mano con personas que se topan con los mismos problemas que uno ya ha solucionado, ojala te sirva todo esto, estare pendiente a tus comentarios.
Saludos!!!

PD: alguien me puede decir por que demonios me quedo "corrida" la respuesta (mas grande que los otras respuestas)???

Última edición por Lenny fecha: 06-11-2012 a las 16:50:31. Razón: Complemento al codigo
Responder Con Cita
  #6  
Antiguo 06-11-2012
Vales08 Vales08 is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 133
Poder: 14
Vales08 Va por buen camino
Muchas gracias Lenny, precisamente estaba necesitando algo asi, lo voy a probar y consultar con mi director de tesis, Ojala funcione y no tenga mayor dificultad..
Es muy cierto, yo tambien eh aprendido y me han ayudado muchos los de foro club delphi.. Es por ello que siempre acudo a ustedes porque se que es informacion y ayuda confiable..

Los estare informando como me fue..

PD: para mi te quedo muy largo porque el codigo delphi era largo y te extendio el cuadrado de la respuesta mas ancho..

Muchas gracias.-
Responder Con Cita
  #7  
Antiguo 06-11-2012
Lenny Lenny is offline
Miembro
 
Registrado: jun 2007
Posts: 161
Poder: 17
Lenny Va por buen camino
Talking

Jajajaja dale, sorry eres "Estimada" en ves de "Estimado", Estimada espero te sirva el codigo y el director de tesis este de acuerdo con el, en todo caso este codigo lo tengo ams menos "dominado" por si no entiendes algo o necesiats hacer algun cambio y no sepas como, cualquier cosa estaremos atentos para ayudarte en lo que podamos, eso si, favor dar la version de delphi que usas, base de datos, conector, etc para poder responder lo mas especifico posible, quedamos atentos a tus comentarios...

PD: Seeeee... puede ser eso del codigo largo...
PD2: Cuidado con quienes se pongan muy "amables" por estos lares, mira que una mujer con estos intereces entre tanto hombre... Naaaa, broma... saludos...
Responder Con Cita
  #8  
Antiguo 07-11-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Lenny Ver Mensaje
PD2: Cuidado con quienes se pongan muy "amables" por estos lares, mira que una mujer con estos intereces entre tanto hombre... Naaaa, broma... saludos...
Hay más chicas en clubdelphi, incluso una de ellas es moderadora y una super experta programadora delphi y sql, se trata de Caro.
Responder Con Cita
  #9  
Antiguo 07-11-2012
Lenny Lenny is offline
Miembro
 
Registrado: jun 2007
Posts: 161
Poder: 17
Lenny Va por buen camino
Talking

Cita:
Empezado por Casimiro Notevi Ver Mensaje
Hay más chicas en clubdelphi, incluso una de ellas es moderadora y una super experta programadora delphi y sql, se trata de Caro.
Jajajaja, dale, es bueno saberlo, solo lo dije en tono de broma como menciono al final, no sea que espante a la niña con mis comentarios saludos...
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
Como enviar un email automaticamente con PHP JoAnCa PHP 3 09-03-2010 22:06:34
Envio de email con ProgressBar MaMu Internet 3 28-04-2008 05:35:27
Envio de Email al cambiar la IP Caral Varios 6 11-03-2008 02:28:53
Envio de email luisneria Internet 2 27-04-2007 12:17:30
envio de email. condor Varios 2 27-05-2004 15:28:22


La franja horaria es GMT +2. Ahora son las 17:28:43.


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