Skip to content

Tablas y suscriptores

Esta sección pretende detallar la extensibilidad de la solución.

Se indicarán las tablas y los suscritores del sistema para facilitar la creación de extensiones que pueden utilizarse para adecuar la solución a las necesidades del cliente.

Tablas

Las tablas del sistema que permiten la generación de ficheros PDF se describen en los siguientes apartados.

Estas tablas se rellenan a partir de tablas del sistema (ofertas de venta y facturas/abonos de venta/servicio), y a partir de estas tablas, se generan los ficheros PDF que serán firmados digitalmente por la solución.

Informes

  • Nombre de la tabla: INNESGePReports
  • Caption: eSign ePDF Reports
  • Clave primaria: INNESGePCode, INNESGePReportId

Esta tabla se crea a partir de una oferta de venta o factura/abono de venta/servicio de forma automática, anque también se puede crear de forma manual.

Movimientos

  • Nombre de la tabla: INNESGePReportsEntries
  • Caption: eSign ePDF report entries
  • Clave primaria: INNESGePEntryNo

Esta tabla se crea a partir de un informe (tabla Informes).

Suscriptores

Los suscriptores del sistema permiten modificar los siguientes flujos de trabajo:

  • Generación del informe (tabla Informes)
  • Generación del movimiento de informe (tabla Movimientos informes)
  • Envío del archivo pdf por email

Todos los suscriptores se encuentran en la codeunit __INNESGePPublishers.

Creación de tablas

Para cada tabla de las anteriores, se ha añadido un suscriptor que permite modificar el valor de un campo del registro antes de ser insertado.

OnBeforeInsertReportFromSalesHeader

INNESGePPublishers.OnBeforeInsertReportFromSalesHeader(Reports: Record INNESGePReports; SalesHeader: Record "Sales Header")

Se ejecuta antes de hacer el insert en la tabla INNESGePReports cuando se crea desde una oferta de venta.

OnBeforeInsertReportFromSalesInvHeader

INNESGePPublishers.OnBeforeInsertReportFromSalesInvHeader(Reports: Record INNESGePReports; SalesInvHeader: Record "Sales Invoice Header")

Se ejecuta antes de hacer el insert en la tabla INNESGePReports cuando se crea desde una factura de venta registrada.

OnBeforeInsertReportFromSalesCrMemoHeader

INNESGePPublishers.OnBeforeInsertReportFromSalesCrMemoHeader(Reports: Record INNESGePReports; SalesCrMemoHeader: Record "Sales Cr.Memo Header")

Se ejecuta antes de hacer el insert en la tabla INNESGePReports cuando se crea desde un abono de venta registrado.

OnBeforeInsertReportFromServiceInvHeader

INNESGePPublishers.OnBeforeInsertReportFromServiceInvHeader(Reports: Record INNESGePReports; ServiceInvHeader: Record "Service Invoice Header")

Se ejecuta antes de hacer el insert en la tabla INNESGePReports cuando se crea desde una factura de servicio registrada.

OnBeforeInsertReportFromServiceCrMemoHeader

INNESGePPublishers.OnBeforeInsertReportFromServiceCrMemoHeader(Reports: Record INNESGePReports; ServiceCrMemoHeader: Record "Service Cr.Memo Header")

Se ejecuta antes de hacer el insert en la tabla INNESGePReports cuando se crea desde un abono de servicio registrado.

OnBeforeInsertReportEntries

INNESGePPublishers.OnBeforeInsertReportEntries(ReportEntries: Record INNESGePReportsEntries)

Se ejecuta antes de hacer el inserten la tabla INNESGePReportsEntries.

A partir de la clave primaria de INNESGePReportsEntries se puede obtener el informe (tabla Informes).

Generación PDF

Para la generación del PDF existen los siguientes suscriptores.

OnAfterProcessDocumentAdd

INNESGFePublishers.OnAfterProcessDocumentAdd(Reports: Record INNESGePReports; ReportsEntries: Record INNESGePReportsEntries)

Se ejecuta después de generar y firmar el PDF.

La variable Reports contiene el registro del informe creado manualmente o a partir de una entidad por defecto.

La variable ReportsEntries contiene el registro del movimiento de informe creado a partir del informe.

Este evento puede ser util si se quiere obtener el PDF una vez generado y firmado.

Envío de email

Para el envío del email con el archivo pdf existen los siguientes suscriptores.

OnBeforeSendAddSendTo

INNESGePPublishers.OnBeforeSendAddSendTo(ReportEntries: Record INNESGePReportsEntries; var SentTo: Text)

Se ejecuta antes de enviar el email y asignar el campo SentTo.

A partir de la clave primaria de INNESGePReportsEntries se puede obtener el informe (tabla Informes).

El campo SentTo viene informado con el campo Email del cliente pero puede ser modificado. Si se quieren varios destinatarios, deben ir separados por ;.

OnBeforeSendAddAttachments

INNESGePPublishers.OnBeforeSendAddAttachments(ReportEntries: Record INNESGePReportsEntries; var AttachmentTemp: Record INNESGePAttachmentTemp)

Se ejecuta antes de enviar el email y después de adjuntar el pdf.

A partir de la clave primaria de INNESGePReportsEntries se puede obtener el informe (tabla Informes).

Para adjuntar archivos se debe rellenar la variable AttachmentTemp de la tabla INNESGePAttachmentTemp que tiene los siguientes campos:

  • INNESGePName: Text[100]
  • INNESGePAttachment: Blob

Atención

Para enviar archivos adjuntos se deben cumplir los siguientes requisitos: formato PDF de todos los archivos y tamaño máximo de todos los archivos inferior a 20 Mb.

Idiomas

Este documento está disponible en los siguientes idiomas: