¿Cómo enviar el registro activo de un formulario access por email en pdf?

Estoy bastante atascado, tengo una base de datos en access 2010 de facturas.

Son 3 tablas relacionadas, factura, clientes y conceptos La bbdd funciona correctamente . Tengo varios botones creados para guardar, buscar, etc.. Todo funciona ok. Incluso el imprimir registro actual.. Funciona bien le doy a imprimir y me imprime el formulario pero con el registro actual.. Osea solo me imprime la factura que tengo en pantalla de ese cliente.

El problema viene cuando intento exportar a pdf, o EnviarPorCorreoObjetoDeBaseDeDatos ... En este caso también funciona el envío y la exportación.. Pero en vez de convertir a pdf solo el registro activo, me genera un PDF con TODAAAASSSS las facturas de ese cliente.

Necesitaría que funcionara igual que el imprimir, que convierta a pdf y envíe el formulario con el registro activo en ese momento.

1 Respuesta

Respuesta
4

Supongamos que en ese registro tienes un campo que lo identifique en particular. En este caso vamos a poner Idcliente y supongamos también que el formulario depende de la tabla Clientes. En el evento puedes poner

Form.RecordSource = "select * from cliente where idcliente=forms!cliente!idcliente"
DoCmd.SendObject acSendForm, "cliente", "PDFFormat(*.pdf)", , , , , , True

Así, el origen de registros del formulario será solo ese registro y por tanto sólo te enviará ese registro.

Le he puesto lo de true para que se abra outllook y en el PDF puedas ver que solo te sale ese registro en particular, luego si quieres le pones false y lo envía directamente

Me sigue sin funcionar, ahora me pide el numero pero no lo envía directamente y da un error. Te doy más detalles.

3 tablas llamadas clientes, factura, facturalinea

Formulario "facturas" que tiene integrado otro formulario en modo campos de la tabla facturalinea. ( Esto ultimo son los conceptos). El formulario tiene como campo único sin duplicados el numero de factura que se llama "numero" . y también campos de otra tabla relacionada "clientes" .

Consigo generando una macro "EnviarPorCorreoObjetoDeBaseDeDatos" que se genere el pdf y que se envíe. El problema es que me manda todas las facturas que ese cliente tiene generadas. Yo necesito que me envié la que tengo en pantalla ( la selección).

He puesto el código que me mandas y me pregunta el numero, pero luego da erro 2059

Gracias de antemano

Creo que lo mejor, en vez de estar escribiendo, es que, si quieres, me mandes un mensaje a [email protected] y te mando un ejemplo, que es como mejor se ve. Si lo haces, en el asunto del mensaje pon tu alias Alejandro, ya que si no sé quien me escribe ni los abro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas