Definir custom fields.
El primer paso será definir las etiquetas para los custom field, para ello es necesario acceder a Ventas minoristas y comercio > Configuración del canal > Configuración de PDV > Perfiles de PDV > Texto de idioma y crear las etiquetas de los nuevos custom fields en cada uno de los idiomas necesarios.
Una vez definidas será necesario crear los custom field y asociar las etiquetas creadas en el paso anterior. Los custom field se gestionan en Ventas minoristas y comercio > Configuración del canal > Configuración de PDV > Perfiles de PDV > Campos personalizados.
Una vez creados estos aparecerán disponibles en el editor de recibos para poder incluirlos en cualquiera de las secciones (Cabecera, líneas o pie)
Definir custom receipts.
Actualmente el sistema permite crear hasta 20 custom receipts diferentes, para crear un nuevo diseño es necesario acceder a Ventas Ventas minoristas y comercio > Configuración del canal > Configuración de PDV > PDV > Formatos de recibo teniendo que especificar el nombre, su tipo (CustomReceiptType1 .. 20), la descripción, el título y su comportamiento.
El siguiente paso será crear el diseño para este nuevo custom receipt en el que se podrá incluir tanto los campos estándar como los custom field creados.
Con todos estos cambios realizados será necesario ejecutar el job 9999 para que se actualicen los datos en CSU.
Imprimir custom receipts.
El siguiente paso será decidir en que momento se va a imprimir el custom receipt que acabamos de crear, para ello tendremos que elegir el trigger adecuado, el listado de triggers disponibles lo podéis encontrar en el siguiente enlace https://learn.microsoft.com/en-us/dynamics365/commerce/dev-itpro/pos-trigger-printing
Por ejemplo podríamos imprimir un custom receipt al finalizar la declaración inicial (PostTenderDeclarationTrigger), al crear un cliente (PostCustomerAddTrigger), al suspender una transacción (PostSuspendTransactionTrigger) o al terminar una transacción (PreEndTransactionTrigger). En cualquiera de los casos será necesario crear una extensión del trigger dentro del POS y notificar al sistema que se quiere imprimir el custom receipt, para ello es necesario ejecutar el siguiente código de TS.
Lo importante de este código es indicarle al sistema que custom receipt se quiere imprimir y esto se indica en la llamada ReceiptRetrievalCriteria a traver del parámetro ReceiptTypeValue que en este caso es ProxyEntities.ReceiptType.CustomReceipt1
Además se debe crear una extensión del CSU donde se debe implementar la solicitud GetCustomReceiptsRequest para el tipo de recibo custom a utilizar de la siguiente forma:
Asignar valores a los custom field.
Para asignar valores a los custom fields será necesario crear una extensión de CSU donde se debe implementar la solicitud GetSalesTransactionCustomReceiptFieldServiceRequest.
Es importante recalcar que los nombres de los custom fields deben coincidir con los definidos en HQ, y además, se deben poner en mayúsculas ya que al traspasarse al CSU se traspasan en mayúsculas.











