[RESUELTO]Macro p enviar archivo hoja de calculo por correo

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...
Responder
Armando Blanco
Mensajes: 6
Registrado: Sab Nov 10, 2012 12:28 am

[RESUELTO]Macro p enviar archivo hoja de calculo por correo

Mensaje por Armando Blanco »

Hola,

De antemano agradezco la ayuda que me puedan dar con el siguiente problema que tengo, he estado realizando una macros que transfiere datos de un libro a otro de hoja de calculo, me he apoyado para esto en la información que se tiene en el foro y creo que funciona bastante bien, sin embargo requiero que desde el libro origen, envíe ahora el otro libro (sin convertirlo en pdf) por correo electrónico. Cuando realice las primeras pruebas para enviar el primer libro era muy sencillo pero cuando trato de realizarlo en el segundo ya no lo efectúa, y me envía el siguiente error:

Error en tiempo de ejecución de BASIC
Se ha producido una excepción
Type: com.sun.star.lang.Ilegal<argumentException
Message: cannot coerce argument type during coreflection call.


les anexo la macro que hasta ahora he realizado en el documento adjunto.

Adicionalmente les comento que verifique la solución que presentan para el envio de documentos, pero para mi caso se dificultaría mucho aplicar los datos del correo y del STP, porque la macro la implementaría en un programa que se usará en varios equipos con windows xp y openoffice 4.0 pero varios de ellos están instalados en otras ciudades de México y las personas que lo aplicarían no conocen nada de esta información, por eso busco una implementación más sencilla que aunque llenen el formato del correo manualmente.

Nuevamente agradecería su ayuda con este embrollo
Adjuntos
Macro.doc
(4.92 KiB) Descargado 452 veces
Última edición por Armando Blanco el Mié Feb 18, 2015 7:41 pm, editado 1 vez en total.
OpenOffice versi??n 3.4.1 en Windos Xp
Avatar de Usuario
fornelasa
Mensajes: 3268
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Macro para enviar archivo modificado de calculo por corr

Mensaje por fornelasa »

La parte siguiente se entiende bien, aunque a detalle no dices como lo haces, ok no importa, lo importante es que funciona.
Armando Blanco escribió:he estado realizando una macros que transfiere datos de un libro a otro de hoja de calculo, me he apoyado para esto en la información que se tiene en el foro y creo que funciona bastante bien,
Esta parte para mi es NADA clara:
Armando Blanco escribió:sin embargo requiero que desde el libro origen, envíe ahora el otro libro (sin convertirlo en pdf) por correo electrónico.
Sugiero dar detalle de lo anterior.

Saludos, Federico.
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Armando Blanco
Mensajes: 6
Registrado: Sab Nov 10, 2012 12:28 am

Re: Macro para enviar archivo modificado de calculo por corr

Mensaje por Armando Blanco »

Federico, gracias por tu pronta respuesta y te explico, en el primer libro se captura la información (libro origen) y vacía los cambios en un segundo archivo (libro destino) que es un reporte que requerimos, el libro origen es muy pesado para enviarlo y el reporte son de solo dos hojas de datos que se requieren como tal, ya que al convertirlos a PDF no los podemos recuperar y usar directamente como se requiere. Estuve revisando las propuestas de Mauricio, pero no logre adaptarlas al programa, ahora estoy intentando con otras propuestas del foro en particular una enviada por Eltete con la siguiente liga https://forum.openoffice.org/es/forum/v ... 831#p16988 .

En el archivo que envié, trate de realizar esta operación desde el archivo destino abierto.
Agradecería muchisimo tu ayuda.

Saludos

Armando Blanco
OpenOffice versi??n 3.4.1 en Windos Xp
Avatar de Usuario
fornelasa
Mensajes: 3268
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Macro para enviar archivo modificado de calculo por corr

Mensaje por fornelasa »

Hola Armando, antes que nada me gustaría comentar, el que no sé si podré aportar algo al tema, pero de entrada insisto, al menos yo no lo entiendo claramente.
Sugiero aclarar si se puede un poco más el tema con palabras y no con codigo.

Saludos, Federico.
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Armando Blanco
Mensajes: 6
Registrado: Sab Nov 10, 2012 12:28 am

Re: Macro para enviar archivo modificado de calculo por corr

Mensaje por Armando Blanco »

Hola de nuevo Federico y gracias por tu interés en mi problema, te planteo el problema desde otro enfoque:
1.-Se requiere que desde un archivo de hoja de calculo con una macro envíe otro archivo de hoja de calculo (no PDF) por correo electrónico.
2.- De los ejemplos del foro, para implementarla con el formato que se tiene, se requieren dar datos técnicos del correo electrónico para lograr su envío, el acceso a estos datos no les será posible tenerlos en otras áreas donde se desea implementar la hoja.
3.- El ejemplo que nos proporciona Mauricio, no logré que operase con el programa (no realizaba nada) y el que anote me arroja el error antes citado.
OpenOffice versi??n 3.4.1 en Windos Xp
Avatar de Usuario
fornelasa
Mensajes: 3268
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Macro para enviar archivo modificado de calculo por corr

Mensaje por fornelasa »

Creo que en tu macro hay más problemas que solo el enviar por correo el archivo, concentremonos en como enviar el archivo, esta macro parece funcionar, agrégala y reemplaza donde debas, casi estoy seguro que debe ir ahí, si ahí donde te manda ese mensaje de error que mencionas,

Código: Seleccionar todo

   eMailAddress = "fornelasa@hotmail.com" 'OJO OJO OJO
   eSubject = "Prueba De Correo"
   eMailer = createUnoService("com.sun.star.system.SystemMailProvider")
   eMailClient = eMailer.queryMailClient()
   eMessage = eMailClient.createMailMessage()
   eMessage.Recipient = eMailAddress
   eMessage.Subject = eSubject
   AttachmentURL = convertToUrl("C:/01 Soporte Administrativo/Cortes de Caja/Formato Envio Corte Caja Electronico 2015.ods")
   eMessage.Attachement = Array(AttachmentURL)
   eMailClient.sendMailMessage ( eMessage, com.sun.star.system.MailClientFlags.NO_USER_INTERFACE )
Si te sale un mensaje solo dale permitir y listo ..... a ver que sale :lol:

Saludos, Federico.
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Chelo2
Mensajes: 103
Registrado: Mié Ago 14, 2013 4:25 am
Ubicación: Lomas de Zamora, Buenos Aires, Argentina

Re: Macro para enviar archivo modificado de calculo por corr

Mensaje por Chelo2 »

Siii... me funcionó de maravillas, era justo lo que estaba buscando, enviar un archivo con el cliente de correo predeterminado.

Pude también agregar un cuerpo de mensaje, agregandole además al código:

eBody = "Esto es una prueba. Si sale bien me consagro...."
eMessage.Body = eBody

Y funcionó perfectamente agregando un cuerpo de mensaje!!!. Me queda una duda: ¿Se puede dentro del cuerpo del mensaje hacer un salto de línea? Con mi anterior código que utilizaba (que no podía mandar adjunto) utilizaba &"%0D%0A%0D%0A" para ir a otro párrafo, pero aqui no funcionó. Por ejemplo:

eBody = "Esto es una prueba." &"%0D%0A%0D%0A" &"Si sale me consagro..." (o el contenido de distintas variables que formarían el texto)

Por último, es una segunda duda, que si estiman conveniente lo pongo en otro hilo, pero como es del mismo tema lo expongo:
¿Como se puede establecer las direcciones de copia CC? Siguiendo el mismo razonamiento agregué la siguiente línea:

eCC = "xxxx@xxx.com"
eMessage.CC = eCC

Pero no funcionó. Me da error. hay alguna manera de hacerlo con esta macro?

Un saludo desde Buenos Aires, Argentina y muchas gracias Fernando por el aporte.

Chelo2
OpenOffice 4.1.3 en Windows 7
Avatar de Usuario
fornelasa
Mensajes: 3268
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Macro para enviar archivo modificado de calculo por corr

Mensaje por fornelasa »

Pues yo estoy mas confundido, el que pregunta es Armando Blanco, le funciona a Chelo2 y luego aparece un tal Fernando ¡¡que alguien me explique!!! :knock: :knock:
Saludos, Federico.
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
xiseme
Mensajes: 1918
Registrado: Lun Nov 24, 2008 1:13 pm

Re: Macro para enviar archivo modificado de calculo por corr

Mensaje por xiseme »

Ummm... un tal Fernando... un tal Fernando... O sea que al final resulta que Fernando no es el amigo de Federico :lol: :lol: (perdón por la broma)
Todo es mejorable, estamos dispuestos a mejorar. ¿Yo? ... poco a poco.
Nunca hay acritud en mis comentarios, si lo pareciera, seguro que me he expresado mal.
Avatar de Usuario
fornelasa
Mensajes: 3268
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Macro para enviar archivo modificado de calculo por corr

Mensaje por fornelasa »

xiseme ..... yo ni conozco al Fernando :lol: :lol:

Chelo2, creo que en el "asunto" del correo electrónico es imposible dar retornos de carro, lo sé porque "eso" no se puede hacer ni manualmente, al menos no en OutLook.
....... si es para otro lado intenta con:

Código: Seleccionar todo

eBody = "Esto es una prueba." & chr(13) & "Si sale bien me consagro...."
Con respecto a lo otro .... tendría que ser mas o menos asi:

Código: Seleccionar todo

eMessage.BccRecipient = Array("fornelasa@hotmail.com")
 eMessage.CcRecipient = Array("fornelasa@hotmail.com")
Saludos, Federico.
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Chelo2
Mensajes: 103
Registrado: Mié Ago 14, 2013 4:25 am
Ubicación: Lomas de Zamora, Buenos Aires, Argentina

Re: Macro para enviar archivo modificado de calculo por corr

Mensaje por Chelo2 »

:lol: :lol: :lol: :lol: :lol: :lol: Federicoooo!!! mil disculpas!!!! es la segunda vez que te bautizo Fernandoooo!!!!

No se por qué asocio tu nick "Fornelasa" Con Fernando y no con Federico. Una vez me puede pasar... pero ya dos!!! es imperdonable lo mio... :lol: :lol: :lol: :lol:

Muchas gracias por tu respuesta, lo voy a probar y después les cuento. Si sale subo un archivo con el ejemplo armado por si a alguien le resulta de utilidad...

Un saludo desde Buenos Aires, Argentina.

Chelo2
OpenOffice 4.1.3 en Windows 7
Avatar de Usuario
SLV-es
Mensajes: 4894
Registrado: Jue Ago 26, 2010 1:25 am
Ubicación: España
Contactar:

Re: Macro para enviar archivo modificado de calculo por corr

Mensaje por SLV-es »

Chelo2 escribió:No se por qué asocio tu nick "Fornelasa" Con Fernando y no con Federico. Una vez me puede pasar... pero ya dos!!! es imperdonable lo mio...
Alejandro, Fernando... Fornelasa... La culpa la tiene Madonna y las bromas que te causa tu mente :lol: :lol: :lol:
+info en la web "no oficial" dedicada a OpenOffice en Español
AOO 4.1.2 y LibO 4.4.6 en W10 y en Lliurex
No respondo mensajes privados sobre AOO, por favor, utiliza el foro para tus preguntas
Armando Blanco
Mensajes: 6
Registrado: Sab Nov 10, 2012 12:28 am

Re: Macro para enviar archivo modificado de calculo por corr

Mensaje por Armando Blanco »

RESUELTO. :bravo: Federico, muchas gracias, disculpa la tardanza en mi contestación pero estaba implementando la información que me enviaste. Saludos
OpenOffice versi??n 3.4.1 en Windos Xp
Avatar de Usuario
fornelasa
Mensajes: 3268
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Macro para enviar archivo modificado de calculo por corr

Mensaje por fornelasa »

¡Perfecto! que bueno que funcionó ....... pero Armando por favor no le digas a nadie que ese codigo me lo pirateé de aqui, de FJCC-ES :oops:
https://forum.openoffice.org/en/forum/v ... 20&t=69204

Saludos, Federico.
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Responder