En este grupo En todos

Foro de Access

Norberto Burle
Experto: gestión de incidencias operat...
Escrito por Norberto Burle
el 27/12/2009

Gracias por el tip ahora el problema es que recibo un mensaje que dice "name conflict with existing module project or object library".
No entiendo la causa ya que solo tengo un a rutina (la del correo) parece que access 2007 tiene sus cosas.
Con respecto a que estoy tratando de hacer es algo muy sencillo estoy tratando de hacer un sistema que me permita enviar recibos a familias ya que este recibo le permite una deduccion impositiva.
Ahora bien si la familia tiene "n" hijos recibira "n " recibos.
Esta parte si funciona (familias con 2 hijos reciben 2 recibos c/u con el nombre del respectivo hijo) el e-mail (nombre de campo email) esta en la pantalla por lo que a cada "tarjeta" de familia solo habria que apretar el boton o hacer una rutina en forma automatica para enviar desde Access los recibos respectivos.
La verdad es que el correo con direcciones dinamicas en Access tiene su embrollo........

Juan Cots
Valencia, España
Escrito por Juan Cots
el 28/12/2009

Lo siento Norberto pero al parecer ha ocurrido algún tipo de error y no se ve tu último mensaje, inténtalo de nuevo y si no se ve, hazlo en un hilo nuevo

Un saludo

Norberto Burle
Experto: gestión de incidencias operat...
Escrito por Norberto Burle
el 29/12/2009

Si por lo visto se ha perdido
Bueno lo que estoy haciendo es un sistema que envia recibos a padres.
Si la familia tiene 2 hijos recibiran 2 recibos (cada uno a nombre de un hijo diferente),
Todo esto funciona bien pero el e-mail que esta en la pantalla es dinamico , es decir a cada familia un email disitinto y es ahi donde empieza el rollo.

En cunato a al tip anterior ahora recibo un mensaje que el nombre entra en coflicto con un objeto , procedure etc.....

La verdad es que estoy estancado en este que es el ultimo punto (el e-mail).

Por lo visto el access 2007 en este asunto no fue optimizado.

Muchas gracias y feliz año

Juan Cots
Valencia, España
Escrito por Juan Cots
el 29/12/2009

Hola Norberto.
Lo de que el nombre entra en conflicto..... Probablemente tienes alguna función con el mismo nombre que algún módulo, revísalo.... Los módulos pueden tener cualquier nombre... Solo son contenedores, lo importante son las funciones que contienen.

En cuanto a lo del email como te decía anteriormente sin saber que estás intentando, no se decirte

Un saludo

Norberto Burle
Experto: gestión de incidencias operat...
Escrito por Norberto Burle
el 29/12/2009

Lo que estoy tratando de hacer es añadir un boton en el formulario que al apretarlo me envie un e-mail a la direccion que se encuentra en pantalla.
Cada pantalla es un record por lo que la direccion de e-mail cambia con cada uno.
La idea es que tome el e-mail en pantalla (o en la tabla correspondiente a la pantalla) y envie el e-mail adjuntando el reporte correspondiente que en este caso es un recibo.

Juan Cots
Valencia, España
Escrito por Juan Cots
el 29/12/2009

Básicamente así:

Dim Correo As String
Correo = me. CampoEMail
DoCmd. SendObject acSendReport, "NombreInforme", acFormatHTML, Correo, , , _
"Asunto: Envio de Informe ", , True

Solo tienes que sustituir campoEMail por el nombre real en el formulario de tu campo y NombreInforme por el nombre real del informe a adjuntar.

Un saludo

Norberto Burle
Experto: gestión de incidencias operat...
Escrito por Norberto Burle
el 29/12/2009

Bueno Juan , ahora que lo veo es super sencillo y lo mas importante es que funciona, realmmente te lo agradezco.
La ultima pregunta pero esto ya es relacionado al hacer correr el programa cada vez que envia un mail me aparece una pantalla desde el Outlook que dice algo asi
"Un programa esta tratando de enviar un correo desde tu cuenta....... " y tres botones permitir , denegar, y ayuda
La verdad es que la ayuda no sirve para nada como hago para que esta pantalla desaparezca?
Alguna idea?

Luisma Luismi
Empresariales universidad complutense ...
Escrito por Luisma Luismi
el 22/11/2010

Hola, he publicado tu código y funciona perfectamente es una maravilla. El problema que tengo es que necesito publicar el propio informe en el texto del mensaje del e-mail.

Yo lo que quiero es avisar a los clientes que hicieron un pedido que no se envió porque algún artículo estaba agotado. Necesito avisarles y decirles en el propio texto del email que sus artículos están ya disponibles y que le recordamos que eran tales artículos los que pidió: Y ahí aparezca el informe con sus 3 o 4 productos. Yo he utilizado en lugar de un informe una consulta, para los artículos del pedido porque es más rápido.

Vaya por delante que no tengo ni idea de programación, pero probando en tu codigo, he metido 3 lineas y y he conseguido que se publique en el texto del e-mail pero el problema es que si el pedido tiene 3 artículos, en el texto del e-mail solo aparece el primero,y no aparecen los otros 2 artículos.

Por favor, si pudieras echarme un cable te te lo agradecería mucho, porque voy a salir loco.

Te dejo el código que llevo hecho hasta el momento y que funciona, pero solo muestra un producto del pedido y no muestra el resto (aunque en el archivo adjunto sí que aparecen los 3 artículos):

Private Sub Comando0_Click()
Dim dbs As Database
Dim qdfNew As QueryDef
Dim rst As DAO. Recordset
Dim strSql As String
Dim Correo As String
Dim identificador As Long
Set dbs = CurrentDb

StrSql = "SELECT * FROM [clientesalosqueavisartabla]"
Set rst = CurrentDb. OpenRecordset(strSql, dbOpenDynaset)
If rst. EOF = False Then
rst. MoveLast
rst. MoveFirst
Do Until rst. EOF
dbs.QueryDefs.Delete ("pruebaconsultacorreoorigendedatosdeconsultafinal")
identificador = rst! Id
Set qdfNew = dbs. CreateQueryDef("pruebaconsultacorreoorigendedatosdeconsultafinal", _
"SELECT * FROM [clientesalosqueavisartabla] WHERE [clientesalosqueavisartabla]. Id = " & identificador)
Correo = rst! [e-mail]
tablaproductosSql = "SELECT * FROM [consultafinalproductos]"
Set productos = CurrentDb. OpenRecordset(tablaproductosSql, dbOpenDynaset)
mensaje = productos! [order_item_name]
todo = Correo & mensaje
DoCmd. SendObject acSendQuery, "consultafinalproductos", acFormatHTML, Correo, , , _
"Asunto: Ya Podemos enviar su pedido ", todo, False
rst. MoveNext
Loop
End If
dbs. Close
rst. Close
End Sub

Gracias por anticipado y un saludo

Karleot Carrera
Santiago, Chile
Escrito por Karleot Carrera
el 13/07/2011

Buenas tardes.

Os distraigo un instante; para ver si me pueden dar una manito---

quisiera crear un modulo donde el destinatario "para:" obtenga la informacion de una caja de texto que està descrita en un formulario.

la caja de texto se llama txtpara.

Entonces
me interesa que realize algo bien simple

Private Sub cmdenviarcorreo_Click()
DoCmd. SendObject acSendTable, _
"stroscaja", _
acFormatXLS, _
" aqui deberia tomar el contenido de la caja de texto del formulario fmr_consultas" _
"", _
"", _
"Documentos Para Insertar", _
"Adjunto archivo con carpetas en consulta", _
True
End Sub

Agradesco de antemano su dispocicion

Oscar Zavala
Jalisco, México
Escrito por Oscar Zavala
el 20/09/2011

Hola experto:

Primero que nada muchas gracias por toda la ayuda, ahora bien he utilizado el código que pones pero me sale un error al crear el Query automaticamente, te lo pongo.

Run-time Error 3075:

Ivalid use of `,`,`! `,`()`, in query expresion [IDEAS-DE-MEJORA]-IDIDEA = 4`.

Entiendo que se estan utilizando caracteres que acces no entiende, de igual manera te pego mi código para ver si puedes ver mi error. Gracias.






Option Compare Database

Private Sub Command0_Click()



Dim dbs As Database
Dim qdfNew As QueryDef
Dim rst As DAO. Recordset
Dim strSql As String
Dim Correo As String
Dim identificador As Long
Set dbs = CurrentDb

StrSql = "SELECT * FROM [IDEAS-DE-MEJORA]"
Set rst = CurrentDb. OpenRecordset(strSql, dbOpenDynaset)


If rst. EOF = False Then
rst. MoveLast
rst. MoveFirst
Do Until rst. EOF
dbs.QueryDefs.Delete ("IDEAS-DE-MEJORA Query")
identificador = rst! IDIDEA
Set qdfNew = dbs. CreateQueryDef("IDEAS-DE-MEJORA Query", _
"SELECT * FROM [IDEAS-DE-MEJORA] WHERE [IDEAS-DE-MEJORA]. IDIDEA = " & identificador)
Correo = rst! EMAIL
DoCmd. SendObject acSendReport, "IMPLEMENTADORES", acFormatPDF, Correo, , , _
"Asunto: Nueva Idea de Mejora ", , False
rst. MoveNext

Loop
End If
dbs. Close
rst. Close


End Sub



Ismael Morales
Bío Bío, Chile
Escrito por Ismael Morales
el 04/07/2012

Private Sub RPEnviar_Click()
Dim xxx1, xxx2, xxx3, xxx4 As Variant
Dim xxx5 As Variant
Dim rst As DAO. Recordset

Set rst = CurrentDb. OpenRecordset("PPEmail")
If rst. EOF Then
' está vacia.
rst. Close
Set rst = Nothing
Exit Sub
End If
While Not rst. EOF
xxx1 = "Reparo Carátula N° " & rst! NCaratula & " - CBR San Pedro de la Paz"
xxx2 = vbCrLf & "Informamos a usted que la Carátula Folio N° " & rst! NCaratula & " " & " presenta el siguiente reparo:" & vbCrLf & vbCrLf & rst! Descripcion
xxx3 = "Para efectuar las correcciones que sean procedentes, acérquese a nuestras oficinas en el siguiente horario: Lunes a Viernes de 08:30 a 18:00 horas."
xxx4 = " ¡¡ESTE CORREO ES SOLO INFORMATIVO - NO RESPONDER!"
xxx5 = "! PARA CONSULTAS VISITE NUESTRO SITIO WEB ¡¡" & " ( https://www.xxx.cl ) "
DoCmd. SendObject , "", acFormatHTML, rst! CBREmail, "", "", xxx1, xxx2 & vbCrLf & vbCrLf & xxx3 & vbCrLf & vbCrLf & "Atentamente," & vbCrLf & vbCrLf & "CONSERVADOR DE BIENES RAICES, COMERCIO Y MINAS" & vbCrLf & vbCrLf & "SAN PEDRO DE LA PAZ " & vbCrLf & vbCrLf & xxx4 & vbCrLf & vbCrLf & xxx5, , False
rst. MoveNext
Wend

Rst. Close
Set rst = Nothing
MsgBox "Proceso de Envío ha finalizado", vbInformation, "AVISO REPAROS"

End Sub


Estimado Experto, quisiera poder colocar o resaltar con Negrita parte del mensaje Ejemplo (" ¡¡ESTE CORREO ES SOLO INFORMATIVO - NO RESPONDER! ")

o poder colocar una Imagen de aviso a los clientes pero no lo he logrado, el texto aparece plano y sin formato especial.


Atte.
Ismael Morales

Juan Pablo Wibaux
Buenos Aires, Argent...
Escrito por Juan Pablo Wibaux
el 21/09/2012

Hola Juan, te agradezco de antemano todos tus aportes y te pido de ser posible una ayudita relacionada con este hilo.
Quiero a traves de un btn enviar un mail a un destinatario que eligiria de un txt de un form, con un asunto que selecciono con un select case de un grupo de opciones según de que se trate. Lo principal y que no puedo lograr es que el cuerpo del mensaje, tenga "pegado" el resultado de una consulta, que surgira de la misma seleccion del grupo de opciones.
Desde ya muchas gracias.
Saludos Cordiales

Rodrigo Garcia
Santiago, Chile
Escrito por Rodrigo Garcia
el 19/10/2012

Por favor ayudaaaaaa!

tengo un lío que no se como resolver,

tengo una base de datos con muchas facturas de diferentes clientes, existe algo
que pueda clasificar todas las facturas de cada cliente y le envíe un estado de cuenta no con el resumen de impagos, sino con el detalle de cada factura,

la base de datos contiene estos elementos
codigo cliente, nombre, factura, fecha de emision, fecha de vencimiento, dias de demora, valor de la factura y el mail, tengo otra base de datos en acces que contiene el codigo de cliente, nombre y email.

se puede enviar el detalle de cada factura en filas hacia abajo en un email automático, con un cuerpo de mensaje?

les agradeceria demasiado, continuar en mi actual trabajo
depende de que pueda desarrollar esto.

saludos cordiales.

y muchas gracias

mi correo es

rodrigo300@hotmail. Cl

por si necesitan la base de datos o algo

agradeceré demasiado su ayuda.