Formatos de Impresión con HTML
Un Formato de Impresión con HTML es tu propio diseño, escrito en código HTML/Razor, para imprimir un documento completo de AdmCloud (una factura, una orden de compra, una recepción, una acción de nómina, etc.) tal como tú lo quieras: con tu logo, tus colores, tus tablas y tus textos, en vez del formato estándar del sistema. Una vez creado, lo asignas como formato por defecto de ese tipo de documento y AdmCloud lo usa automáticamente cada vez que lo imprimes o generas su PDF.
¿Qué es y para qué sirve?
Cada factura, orden de compra, recepción, orden de producción y decenas de otros documentos que
genera AdmCloud tienen un formato de impresión por defecto. Un Formato de Impresión con
HTML te permite reemplazar ese diseño estándar por uno propio: escribes código HTML mezclado
con código Razor (por ejemplo @Model.CompanyInfo.CompanyName) que AdmCloud compila al
momento de imprimir, sustituyendo cada expresión por el dato real del documento (cliente, líneas,
totales, impuestos, datos de tu empresa, etc.).
Es distinto de los Formatos de Impresión de Cheques: aquellos posicionan datos sueltos por coordenadas sobre un papel de cheque pre-impreso, mientras que un Formato de Impresión con HTML dibuja el documento completo (bordes, tablas, colores, imágenes) de principio a fin, ya sea para generar un PDF o para imprimir directamente como HTML (por ejemplo, en una impresora térmica o matricial).
Los datos disponibles para usar en el código (el nombre del cliente, las líneas del documento, los totales, etc.) varían según el tipo de documento que estés formateando; cada tipo tiene su propio "modelo" de datos, que puedes explorar en la pestaña Diccionario de Datos si tu cuenta la tiene habilitada.
Cómo se usa
- Crea un nuevo formato. Entra a Formatos de Impresión con HTML y usa el menú Nuevo desde Plantilla: elige Vacío para empezar desde cero, o selecciona uno de los tipos de documento listados para partir de un diseño de ejemplo ya armado para ese documento (la lista solo muestra los documentos habilitados en tu plan y módulos activos).
- Indica a qué documento aplica. En el campo Objeto selecciona el tipo de documento (factura, orden de compra, recepción, etc.) para el que es este formato. Este campo se oculta automáticamente cuando el formato se crea desde un Registro Personalizado, pues en ese caso ya está implícito.
- Elige el tipo de salida. Activa PDF para generar un documento paginado (con márgenes, encabezado y pie de página repetidos en cada hoja), o déjalo desactivado para imprimir directamente como una sola página HTML (típico de impresoras térmicas o matriciales). Al activar PDF aparecen los campos de márgenes, alto de encabezado y alto de pie de página.
-
Escribe el código del documento. En la pestaña Formato
HTML, escribe tu HTML combinado con expresiones Razor (
@Model.Propiedad) para insertar los datos reales del documento. Si activaste PDF, puedes además escribir un Encabezado HTML y un Pie de Página HTML independientes, que se repiten en cada hoja; en ellos puedes usar las variables especiales{page}(página actual),{total-pages}(total de páginas),{date}(fecha de impresión) y{time}(hora de impresión). - Consulta qué datos tienes disponibles. Si tu cuenta tiene habilitada la pestaña Diccionario de Datos, ábrela para ver el nombre y tipo de cada propiedad del documento que estás formateando, incluyendo listas (por ejemplo, las líneas de la factura) y objetos anidados.
- Revisa la vista previa en tiempo real. El panel derecho renderiza tu código con datos de ejemplo dentro de un recuadro aislado (no toca información real). Usa el botón Actualizar para regenerarla con los últimos cambios del editor; si tu código tiene un error, en lugar del diseño verás el mensaje de error para corregirlo.
- Deja que la Inteligencia Artificial ajuste el diseño por ti (si está disponible). Con el botón Modificar con IA, describe en español lo que quieres cambiar (por ejemplo, "cambia el color principal a azul" o "agranda el logo") y la IA reescribe el código del formato; revísalo en el editor antes de guardar.
- Restringe quién puede ver o editar el código, si lo necesitas. Activa Solo permitir acceso a la estructura al propietario para que únicamente tú (el usuario que aparece como Propietario) puedas entrar a editar o consultar el código de este formato.
- Guarda el formato. Con el botón Guardar. Después de guardarlo puedes volver a Editarlo cuando lo necesites.
- Actívalo como formato por defecto. Un formato nuevo no se usa automáticamente: entra a Formatos de Impresión por Defecto (enlazado también desde el aviso azul de esta pantalla) y selecciona tu formato para el tipo de documento correspondiente. Desde ese momento, AdmCloud lo usará cada vez que imprimas o generes ese documento.
Guardar el formato no cambia, por sí solo, lo que ven tus usuarios al imprimir: siempre debes asignarlo en Formatos de Impresión por Defecto para que entre en uso.
Capacidades principales
- Diseño libre en HTML/Razor sobre el documento completo (no solo posiciones sueltas como los Formatos de Cheques).
- Aplica a decenas de tipos de documento: facturas, notas, recibos, órdenes de compra y venta, recepciones, despachos, transferencias de inventario, órdenes de producción, acciones de nómina, viajes, órdenes y solicitudes de servicio, y más, según los módulos activos en tu plan.
- Dos modos de salida: PDF (paginado, con márgenes y encabezado/pie de página propios repetidos en cada hoja) o HTML (una sola página, ideal para impresoras térmicas o matriciales).
- Variables especiales
{page},{total-pages},{date}y{time}disponibles en el encabezado y pie de página del modo PDF. - Vista previa instantánea con datos de ejemplo, en un recuadro aislado, que se actualiza con solo cambiar de tipo de documento o pulsar Actualizar.
- Diccionario de Datos integrado en el propio editor (cuando está habilitado) para consultar cada campo disponible sin salir de la pantalla.
- Modificar con IA (cuando está habilitado): describe los cambios visuales en lenguaje natural y deja que la IA reescriba el código por ti.
- Control de acceso por Propietario, con la opción de restringir la edición y consulta del código solo a esa persona.
- Creación directa desde un Registro Personalizado, sin necesidad de elegir manualmente el tipo de documento.
- Validaciones de seguridad automáticas: el sistema bloquea el guardado si el código contiene instrucciones consideradas peligrosas.
Campos clave
| Campo | Para qué sirve |
|---|---|
| Nombre | Identifica el formato en la lista y al momento de asignarlo como formato por defecto. Es obligatorio y no puede repetirse. |
| Objeto | Tipo de documento al que aplica este formato (factura, orden de compra, recepción, etc.). Determina qué datos de ejemplo se usan en la vista previa y qué propiedades ves en el Diccionario de Datos. |
| Si está activo, el formato genera un documento paginado con márgenes y encabezado/pie de página propios; si está inactivo, imprime como una sola página HTML. | |
| Margen Superior / Inferior / Izquierdo / Derecho | Espacio en blanco alrededor del contenido en el modo PDF. |
| Alto de Encabezado / Alto de Pie de Página | Altura reservada, en el modo PDF, para el Encabezado HTML y el Pie de Página HTML en cada hoja. |
| Encabezado HTML / Pie de Página HTML | Código que se repite en la parte superior e inferior de cada hoja del PDF; admite las variables {page}, {total-pages}, {date} y {time}. |
| Formato HTML | El código principal (HTML + Razor) que dibuja el cuerpo del documento con los datos reales. |
| Propietario | Usuario responsable del formato; puede transferirlo o restringir su acceso. |
| Solo permitir acceso a la estructura al propietario | Si está activo, solo el Propietario puede ver o editar el código de este formato; los demás usuarios solo pueden usarlo si está asignado como formato por defecto. |
Validaciones al guardar
- Nombre obligatorio: no se puede guardar un formato sin nombre.
- Nombre único: no se permite crear un formato con un nombre que ya use otro formato existente.
- Código obligatorio: el campo Formato HTML no puede quedar vacío.
- Propietario obligatorio y activo: el formato debe tener asignado un usuario responsable, y ese usuario debe estar activo en el sistema.
- Formatos protegidos: si el formato tiene marcado "Solo permitir acceso a la estructura al propietario", únicamente el Propietario puede editarlo o eliminarlo.
- Código sin instrucciones prohibidas: por seguridad, el sistema rechaza el guardado si el código (incluido el generado con IA) contiene ciertas instrucciones consideradas peligrosas o usa algo que no está permitido en los formatos (archivos, variables del sistema, reflection), e indica el elemento y la línea.
- Tiempo máximo de 30 segundos: al imprimir o en la vista previa, un formato que tarda más (por ejemplo, por un ciclo que nunca termina) o una función que se llama a sí misma sin fin se detienen con un error.
- No se puede eliminar un formato en uso: si el formato está asignado como formato por defecto de un tipo de documento (a nivel de empresa o de alguna sucursal), o forma parte de un Plugin publicado, el sistema bloquea la eliminación hasta que lo desasignes.
Facturación electrónica: código QR y datos de firma
Si tu empresa emite comprobantes fiscales electrónicos (e-CF) en República Dominicana, cada documento electrónico impreso debe mostrar el código QR, el código de seguridad y la fecha de firma digital que exige la DGII. Los formatos estándar de AdmCloud ya los incluyen, pero un formato personalizado solo muestra lo que está escrito en él: si lo creaste desde cero, o antes de activar la facturación electrónica, probablemente no los tenga.
Aplica a los formatos de los documentos que se firman electrónicamente: facturas a crédito y al contado, facturas de promoción, notas de crédito y de débito de clientes, devoluciones de contado, facturas y recepciones de proveedores, gastos y notas de crédito y de débito de proveedores.
Cómo te avisa el sistema
- Al crear o editar un formato de uno de esos documentos, si le faltan los datos aparece sobre el editor el aviso Este formato no incluye los datos de facturación electrónica. Cuando los agregas, el aviso se pone en verde.
- En el listado de formatos, los que no los tienen llevan la etiqueta Sin datos de e-CF y aparecen en un aviso arriba de la lista, con un enlace a cada uno. El aviso muestra los primeros 10; si hay más, pulsa Mostrar todos para desplegar el resto en una lista con barra de desplazamiento (y Mostrar menos para volver a contraerla).
- En Formatos de Impresión por Defecto se avisan los formatos asignados que no los tienen.
- Al grabar un formato sin los datos, el sistema te pide confirmar. Puedes grabarlo igual, por ejemplo si ese formato solo se usa en sucursales que todavía no emiten comprobantes electrónicos.
Agregarlos automáticamente
- Abre el formato en edición.
- En el aviso, pulsa Agregar automáticamente. El sistema agrega el bloque al final del documento, justo antes de
</body>(después de los totales y las firmas), resalta las líneas nuevas en el editor y actualiza la vista previa. - Revisa la vista previa: el ejemplo se muestra como un documento firmado, con un QR de prueba, el código de seguridad y la fecha de firma.
- Pulsa Grabar. Si el resultado no te convence, pulsa Deshacer en el aviso antes de hacer otros cambios.
Agregarlos a mano
- Abre la pestaña Facturación electrónica (o pulsa Ver cómo agregarlo en el aviso).
- Pulsa Copiar y pega el bloque en el Formato HTML donde quieras que aparezca, normalmente al final, después de los totales y las firmas. También puedes poner el cursor en ese lugar del código y pulsar Insertar en el cursor.
- Si quieres, ajusta el diseño (alineación, tamaño del QR, tipo de letra), pero no borres el
@ifni las propiedades@Model.ElectronicInvoicing…. - Revisa la vista previa y graba el formato.
Este es el bloque:
@* Facturación electrónica (DGII): código QR, código de seguridad y fecha de firma. No borrar. *@
@if (Model.ElectronicInvoicingPrintType == AdmCommon.ElectronicInvoicingPrintTypeEnum.SIGNED_WITH_DATA_TO_PRINT_DOM)
{
<div style="text-align: right; margin-top: 15px;">
<img src="@Model.ElectronicInvoicingQRUrl" style="width: 100px;" alt="QR" /><br />
<div>Código de seguridad: @Model.ElectronicInvoicingSignInformation</div>
<div>Fecha de Firma Digital: @Model.ElectronicInvoicingSignDateTime.ToString("dd-MM-yyyy")</div>
</div>
}
El bloque solo se muestra en documentos firmados electrónicamente. Un documento con comprobante fiscal tradicional, o uno que todavía no se ha firmado, se imprime sin él, así que el mismo formato sirve para los dos casos.
Si tu formato es PDF y quieres el QR en todas las hojas, puedes pegar el bloque en el Pie de Página HTML en vez del cuerpo; en ese caso sube el Alto Pie de Página para que quepa. Lo habitual es dejarlo una sola vez, al final del cuerpo.
Disponibilidad, plan y permisos
- El acceso a agregar, editar o eliminar formatos está controlado por el permiso "Formatos de Impresión de Documentos", asignable por usuario o por grupo de usuarios en Seguridad.
- Los tipos de documento que puedes elegir en el campo Objeto (y en el menú "Nuevo desde Plantilla") dependen de los módulos y capacidades activos en tu plan; por ejemplo, las Órdenes de Producción requieren el módulo de Manufactura, los Viajes requieren el módulo de Transporte, y las Acciones de Empleado y Activos requieren el módulo de Nómina/RRHH.
- Crear un formato para el registro de Clientes es una función adicional, disponible solo si tu cuenta la tiene activada (típicamente en el plan Enterprise).
- El botón "Modificar con IA" y la pestaña "Diccionario de Datos" son funciones que deben estar activadas para tu cuenta; si no las ves, es porque no están habilitadas en tu compañía.
- El aviso y la pestaña "Facturación electrónica" aparecen solo en empresas de República Dominicana con facturación electrónica activa, en todos los planes que la incluyen (ver Facturación electrónica).
- Transferir un formato a otra empresa que administras requiere el plan Enterprise con la función "Crear Plugins" activa, y no está disponible en empresas de evaluación.
- Para que un formato tenga efecto al imprimir, debe asignarse en Formatos de Impresión por Defecto.
Consejos y errores comunes
Usa siempre la vista previa mientras editas: te muestra el resultado con datos de ejemplo sin afectar tus documentos reales, así puedes probar cambios de color, tablas o textos con total libertad antes de guardar.
¿La vista previa muestra un mensaje de error en vez del diseño? Es un error al
compilar tu código: revisa que cada @Model.Propiedad que escribiste exista para el
Objeto seleccionado (consulta el Diccionario de Datos) y que las etiquetas HTML estén bien
cerradas.
¿Guardaste el formato pero al imprimir sigue saliendo el diseño anterior? Falta asignarlo en Formatos de Impresión por Defecto para el tipo de documento correspondiente; guardar el formato por sí solo no lo activa.