Plantillas de impresión


Puede habilitar las plantillas de impresión en el área de administración de configuración de impresión. Una vez habilitado, puede seleccionar una colección de plantillas de la lista. Tenga en cuenta que la mayoría de las colecciones de plantillas se utilizan únicamente en el canal administrativo para fines de impresión y para otros canales o para adjuntar a un correo electrónico se utilizará la colección "Predeterminada".

Una vez que habilite las plantillas de impresión, podrá crear sus propias plantillas. Puedes comenzar copiando una plantilla existente de cualquiera de las colecciones (recomendado) o intentarlo desde cero.

Las plantillas se escriben utilizando la notación JSON que necesita la biblioteca MakePDF mientras que se utiliza LiquidJS para la sintaxis de la plantilla.

Liquid está mejorado con algunas extensiones patentadas de Betterez que facilitarán algunas cosas, como mostrar montos monetarios y abordar problemas de múltiples monedas.

Vaya a Administración>Impresión>Plantillas de impresión.

Menu administrativo print templates

Puede configurar Sobreescritura de plantillas de impresión para usar diferentes impresoras para diferentes configuraciones de plantillas de impresión. Esto es útil cuando tienes diferentes impresoras para diferentes tipos de boletos o documentos.

Lista de plantillas

La lista de plantillas mostrará todas las plantillas para la colección de plantillas predefinidas (Predeterminada, Zebra, Epson, etc.) y cualquier plantilla personalizada definida a nivel de cuenta.

Lista de plantillas

La lista de plantillas mostrará las plantillas enumeradas por relevancia, de mayor a menor relevancia. Esto indicará qué plantilla se utilizará al imprimir un producto o artículo específico.

Las plantillas de las colecciones de plantillas predefinidas no se pueden editar ni eliminar, pero se pueden copiar y, una vez copiadas, se pueden modificar.

Una propiedad importante que se muestra en esta lista es el Estado de la plantilla; si el estado de la plantilla es Borrador, esa plantilla no se utilizará incluso si su relevancia es mayor que la de otras plantillas. El estado debe ser Publicado para poder utilizarlo. Puede editar el estado en el editor de plantillas.

Creando plantillas

Haga clic en el botón Agregar nuevo en la parte superior derecha de la pantalla.

Nueva Plantilla

Puede crear plantillas personalizadas para una combinación específica de impresora y producto. Seleccione la impresora, el producto y proporcione un nombre. Una vez creada, podrá comenzar a editar la plantilla y obtener una vista previa de los resultados en el editor de creación de plantillas.

Propiedades de la platilla

Asigne un nombre descriptivo a la plantilla para que pueda encontrarla fácilmente en la lista de plantillas.

Seleccione el tipo de plantilla.

Tipo de Plantilla

Si seleccionas el tipo "Producto", verás dos opciones más.

La familia de productos (requerido) y el producto.

Familia de producto

  • Observe que la devolución abierta se muestra aquí como una familia de productos. Si bien es en realidad una muestra de la familia de reservas, debemos mostrarla aquí para poder diseñar plantillas específicas utilizadas para imprimir la parte de devolución abierta de ese tipo de reservas.

Producto

La segunda opción mostrada se completará con los productos de la familia seleccionada arriba. Esto le permitirá diseñar plantillas personalizadas para un producto específico. Esta opción se puede dejar vacía.

Canal para la plantilla

Para la opción de canales, si desea utilizar estas plantillas en todos los canales, déjela en Cualquiera o seleccione un canal específico.

Consumidor

La propiedad del consumidor indica si la plantilla será utilizada por todos los consumidores (Cualquiera), solo por la impresora (Impresora) o cuando el pdf se envíe como archivo adjunto en un correo electrónico (Adjunto).

  • Vea a continuación cómo utilizar el editor de plantillas

Copiar plantillas

Otra forma de crear una nueva plantilla es copiar una existente y modificar sus propiedades y la plantilla según sea necesario.

Copiar Plantillas

Puede modificar todas las propiedades de una plantilla después de hacer clic en el botón copiar en la lista y aceptar Copiar la plantilla.

Modificar propiedades

Una vez guardada, la plantilla se mostrará en la lista como una plantilla "Personalizada".

Plantilla personalizada

  • Vea a continuación cómo utilizar el editor de plantillas

Eliminar plantillas

Puede hacer clic en el icono "Eliminar" en el lado derecho de una plantilla personalizada.

Borrar plantilla

Se mostrará una confirmación; al hacer clic en "Eliminar" se eliminará la plantilla.

Esta acción no es reversible

Confirmación de borrar plantilla

Plantillas de Orden

Las plantillas de orden son un tipo especial de plantillas consideradas metaplantillas.

Esta plantilla tiene un objeto "artículos" y cada "propiedad" en el objeto de artículos se refiere a una plantilla real que debe imprimirse al imprimir el pedido.

El valor en las propiedades debe ser un objeto vacío excepto la propiedad transacción que es un caso especial, ver más abajo

Por el momento las propiedades soportadas son:

"transaction": {}
"pinpad": {},
"invoice": {},
"reservations": {},
"tickets": {},
"flexpasses": {},
"redeemableItems": {},
"paid_ins": {},
"parcels": {},
"gift_certificates": {},
"refunds: {}

Condiciones de transacción en orden

La propiedad transacción puede tener un objeto con la propiedad condiciones.

Las condiciones admiten reglas en la forma aceptada por json-rules-engine

El orden predeterminado tiene las siguientes reglas:

"conditions": {
"any": [
{
"fact": "parcels",
"operator": "greaterThan",
"value": 0,
"path": "$.length"
},
{
"fact": "refunds",
"operator": "greaterThan",
"value": 0,
"path": "$.length"
},
{
"fact": "flexPasses",
"operator": "greaterThan",
"value": 0,
"path": "$.length"
},
{
"fact": "transaction",
"operator": "greaterThan",
"value": 0,
"path": "$.transactionFee"
},
{
"fact": "transaction",
"operator": "lessThan",
"value": 0,
"path": "$.transactionFee"
},
{
"fact": "transaction",
"operator": "contains",
"value": "item",
"path": "$.summary[*].productFamily"
},
{
"fact": "transaction",
"operator": "contains",
"value": "loan",
"path": "$.summary[*].productFamily"
}
]
}

Esto significa que se imprimirá una transacción en un pedido si el pedido contiene al menos un paquete, reembolso o flexPass.

O cuando el valor de transaction.transactioFee no es cero.

O cuando en el resumen de la transacción hay al menos un artículo con la familia de productos de artículo o préstamo.

Observe la propiedad path en las reglas, siguen la sintaxis json-path.

Editar una plantilla

  • Para las plantillas de Orden, consulte arriba.

El editor está compuesto por cuatro paneles principales.

Editor de Plantillas

El panel de detalles y datos a la izquierda, el panel de editor y errores en el centro, y el panel de vista previa y documentación a la derecha.

Panel de detalles

Panel de detalles

El panel de detalles muestra las propiedades de la plantilla. Observe que algunas propiedades son editables pero la mayoría no. Puedes cambiar el nombre, el canal y LO MÁS IMPORTANTE el estado de la plantilla. Una vez que cambie cualquiera de los valores, asegúrese de hacer clic en Guardar en la esquina superior derecha del editor.

Opciones de status

Puede seleccionar Borrador o Publicado para el estado de la plantilla. Borrador le permite trabajar en una nueva plantilla sin que el sistema la utilice hasta que se cambie a Publicada.

Versión

En la parte inferior del panel de datos (es posible que deba desplazarse por el panel para verlo), se encuentra la información de la versión de la plantilla. Esto muestra la última vez que se modificó la plantilla (podría ser el código o cualquiera de las propiedades) y la versión que estás viendo en la ventana del editor. Más sobre versiones y revisiones a continuación.

Panel de datos

Panel de datos

Este panel le permite cargar todos los datos que estarán disponibles para la plantilla según el tipo de plantilla.

Datos predeterminados

De forma predeterminada, los únicos datos que se cargarán son el idioma, el canal y la fecha humana. (Este canal no es lo mismo que la propiedad del canal de plantilla, humanDate proviene de la configuración de la cuenta, igual que el idioma).

Id del artículo

Deberá proporcionar una identificación para el elemento principal de la plantilla como se describe a continuación.

Tipo Familia de productos # de Identificación
transacción transacción
bono bono
certificado de regalo certificado de regalo
srr reserva con ssr
factura factura
Cierre de ubicación Cierre de ubicación
Manifiesto Manifiesto
Orden Orden
Manifiesto de parcela Manifiesto de parcela
Manifiesto de Pasajeros Manifiesto de Pasajeros
Saldo inicial Saldo inicial
producto reserva billete
producto billete billete
producto paquete artículo de paquete
producto Pase flexible Pase flexible
producto pagado pagado en artículo
producto pagado artículo pagado
producto paquete artículo canjeable por un paquete
producto retorno abierto artículo canjeable por devolución abierta

Cargar

Una vez que ingrese el ID del elemento, puede hacer clic en el botón Cargar y el editor intentará cargar la información para el tipo de plantilla según el ID.

Id incorrecto

Si el ID del artículo es incorrecto, no se puede imprimir o el estado no está disponible (por ejemplo, boleto cancelado o modificado). Verá el error de arriba.

data cargada

Si el Id es el correcto los datos se mostrarán ampliados por defecto. Los datos mostrados serán diferentes según el tipo de plantilla en la que esté trabajando y representan todos los datos que la plantilla tendrá disponibles. Una vez cargados los datos, el panel de vista previa mostrará una vista previa de la plantilla utilizando los datos de este panel.

Tenga en cuenta que en algunos casos es posible que desee utilizar diferentes ID para diferentes artículos que pueden tener características diferentes, incluso si pertenecen al mismo producto y tipo. Por ejemplo: las reservas en una misma cuenta a veces tienen información de asiento y otras no dependiendo del horario. Quizás quieras probar cómo se comporta tu plantilla con las diferentes reservas.

Data oculta

Puede contraer los datos para facilitarle la vida mientras trabaja en las plantillas y centrarse solo en algunos de los datos a la vez.

Editar data

Como se indicó anteriormente, a veces el mismo tipo o producto puede tener datos ligeramente diferentes del artículo que seleccionó para probar. Puede "editar" los datos usando el botón Editar datos. Una vez que se editen los datos, el editor recargará la vista previa (ver más abajo).

Vista Previa

La edición de datos no se conserva y no modifica ninguno de los datos de la cuenta. Al recargar el elemento o el editor se restablecerán los datos a su estado original.

Panel de edición

El panel del editor funciona con "Monaco", que es también el editor de texto de Visual Studio Code.

Panel de edición

Esto proporciona algunas características interesantes como resaltado de sintaxis, finalización de código y colapso de secciones. También presenta un mini mapa a la derecha del editor que puede ayudar al navegar por plantillas largas.

Algunos de los errores de sintaxis se pueden ignorar ya que a Monaco le cuesta entender que estamos trabajando en un archivo JSON que también admite la sintaxis Liquid.

Panel de errores

El panel de error o Terminal se encuentra debajo del editor.

Panel de errores

Cuando hay un error, mostrará el código de estado al intentar procesar la plantilla y el resultado una vez que la plantilla se procesó con los datos en el panel de datos.

Panel de errores

Puede hacer clic en la flecha en la parte superior del panel Terminal para expandirlo y poder ver la información fácilmente. Si tiene cuidado, generalmente puede encontrar el error en el código generado al procesar la plantilla.

error panel

Panel de vista previa (no disponible en plantillas del tipo Orden)

El panel de vista previa se cargará cada vez que se modifique la plantilla o se vuelvan a cargar o editar los datos.

Vista Previa

Esto permite una retroalimentación muy rápida donde puedes ver casi en tiempo real cómo los cambios en la plantilla se reflejarán en el PDF.

Es necesario cargar los datos para que funcione la vista previa.

Si hay algún error en la plantilla de impresión (y por alguna razón el sistema no logra acceder a la plantilla configurada por defecto), el sistema no va a poder imprimir el pdf solicitado (ticket, transacción, factura, etc...). Esto puede también ocacionar que el correo de confirmación no sea enviado, puesto que el sistema no pudo producir el pdf que debería llevar adjunto. Si encuentra que no está imprimiendo o que no se está enviando el correo de confirmación, asegúrese que la plantilla de impresión correspondiente no está generando un error. De ser así, por favor corríja la plantilla e intente imprimir o enviar el correo de confirmación nuevamente.

Panel de documentación

El panel de documentación consta en realidad de 3 paneles diferentes para las plantillas normales y cambia un poco para las plantillas de pedidos.

Pestaña Documentación
Para plantillas sin pedidos

Panel de documentación

Esta pestaña tiene documentación sobre las extensiones personalizadas de Betterez.

Para plantillas de pedidos

Panel de documentación

Esta pestaña tiene documentación sobre la estructura necesaria para una plantilla de Pedido.

Pestaña Documentos líquidos (no disponible en plantillas del tipo Orden)

Panel de documentación

Esta pestaña tiene documentación sobre Liquid JS.

Pestaña MakePDF (no disponible en plantillas del tipo Orden)

Panel de documentación

Esta pestaña tiene documentación sobre MakePDF.

Pestaña Probador de reglas (solo disponible para el tipo de Orden)

Puede utilizar esta pestaña para probar las reglas.

Ambiente de prueba de reglas

Crea una regla, escribe algunos datos simulados y hace clic en el botón Probar regla.

Puedes recibir errores si la regla que escribes no sigue el formato adecuado.

Errores en el ambiente de pruebas

Errores en el ambiente de pruebas

Si no tiene ningún dato en la ventana de datos al probar la regla, obtendrá un "UNDEFINED_FACT"

Errores en el ambiente de pruebas

Si los datos no coinciden con la regla (aquí buscamos al menos un elemento en la propiedad de parcelas), obtendrá un resultado "INCOINCIDENTE".

Ambiente de prueba

Si todo funciona, deberías ver un resultado "COINCIDIDO".

Ambiente de prueba

Guardar y revertir

Salvar

Una vez que haga clic en el botón Guardar, se creará una nueva revisión de la plantilla y también se conservará la versión anterior.

Mensaje

Si una plantilla tiene varias versiones, se mostrará un botón Revertir junto al botón Guardar. Al hacer clic en este botón, se revertirá la plantilla al punto de guardado anterior.

Mensaje

Botón de Rollback

Roolback BORRA todo lo anterior al punto de guardado anterior y no hay ningún botón de rehacer o avanzar.