new user message
Funciones propias[editar]
- / = imprime línea en blanco.
- OperacionValor: Devuelve el objeto OperacionValor a imprimir (tabla operacion_valor).
- operacionesValor: Itera sobre la colección OperacionValor.operacion.operacionesValor devolviendo objetos OperacionValor (tabla operacion_valor).
- Operacion: Devuelve el objeto OperacionValor.operacion, clase Operacion (tabla operacion).
- itemsValor: Itera sobre la colección OperacionValor.valor.itemsValor devolviendo objetos ItemValor/ItemFactura/ItemConvenio/etc (tabla item_valor).
- valoresConcepto: Itera sobre la colección OperacionValor.valor.valoresConcepto devolviendo objetos ValorConcepto (tabla valor_conceptos).
- comentarios: Los datos incluídos sirven para orientar al usuario de la plantilla, pero no salen impresos.
- format: lpad / rpad / cpad (texto a imprimir, longitud a rellenar, [caracter de relleno])
- rellena a izquierda / derecha / centra texto.
- -si la longitud a rellenar es menor que la longitud del texto a imprimir, entonces corta el texto.
- -si no se especifica ningún caracter de relleno, entonces completa con espacios.
- format: alltrim (texto a imprimir)
- -devuelve el texto indicado, borrando los espacios en blanco a izquierda y a derecha.
- -devuelve la fecha en el formato longDate definido en application.
- format: shortDate (fecha)
- -devuelve la fecha en el formato shortDate definido en application.
- format: longDateTime (fecha)
- -devuelve la fecha y la hora en el formato dd/mm/yyyy hh:mm:ss, definido en application.
- -convierte cualquier tipo de dato en string.
- -devuelve la parte entera del número ingresado, convertido en string.
- -devuelve la longitud del dato ingresado, convertido en string.
- -devuelve el código ASCii del número ingresado, convertido en string.
- format: stringNoVacio (número)
- -devuelve el número ingresado, convertido en string.
- -si el valor es nulo, devuelve el texto 0,00.
- format: stringNoVacioDto (número)
- -devuelve el número ingresado, convertido en string.
- -si el valor es nulo, devuelve el texto -0,00.
- format: leftpad / rightpad / centerpad (dato a imprimir)
- -rellena por izquierda / derecha / centra el texto del dato ingresado,
- siempre con espacios en blanco,
- hasta completar la cantidad de caracteres indicada como Ancho Máximo en el motor de impresión.
- format: leftpad / rightpad / centerpad (título, dato)
- -si el valor de dato es nulo,
- -no imprime texto alguno.
- -si el valor de dato no es nulo,
- -concatena los valores título y dato,
- -rellena por izquierda / derecha / centra el texto completo,
- siempre con espacios en blanco,
- hasta completar la cantidad de caracteres indicada como Ancho Máximo en el motor de impresión.
- format: leftpad / rightpad (título, dato, número)
- -si el valor de dato es nulo,
- -no imprime texto alguno.
- -si el valor de dato no es nulo,
- -concatena los valores título y dato,
- -rellena por izquierda / derecha el texto completo,
- siempre con espacios en blanco,
- hasta completar la cantidad de caracteres indicada como Ancho Máximo en el motor de impresión menos el valor indicado en el parámetro número.
- format: concatenar (número de campo, string de datos serializados)
- -concatena los valores del string de datos separados por |,
- ajusta la longitud del campo indicado por el primer parámetro,
- hasta completar la cantidad de caracteres indicada como Ancho Máximo en el motor de impresión.
- -por ejemplo:
- format:concatenar(2, " 1|ADALAT 30| 44,00| 44,00")
- format: enlazar (string de 2 datos serializados)
- -concatena los 2 valores del string de datos separados por |,
- ajusta la longitud del 1er. campo hasta completar la cantidad de caracteres
- indicada como Ancho Máximo en el motor de impresión.
- -por ejemplo:
- format:enlazar("A c/Afil. d/aplicar Cob. 1a. :| 40,00")
- -imprime una línea separadora formada por caracteres --------------
- hasta completar la cantidad de caracteres indicada como Ancho Máximo en el motor de impresión.
- -imprime una línea separadora condicional,
- -formada por caracteres ------------
- hasta completar la cantidad de caracteres indicada como Ancho Máximo en el motor de impresión.
- -la condición viene dada por el valor contenido en dato,
- si es nulo, el separador no se imprime.
- -por ejemplo:
- <%@format:separador(operacionesValor[valor/tipoValor/id=1]/valor/entidad/nombre)%>
- si existen bonos, imprime el separador --------------------------
- format: separador (dato, título)
- -imprime una línea separadora condicional,
- -formada por caracteres ------------ con el valor indicado en título, centrado
- hasta completar la cantidad de caracteres indicada como Ancho Máximo en el motor de impresión.
- -la condición viene dada por el valor contenido en dato,
- si es nulo, el separador no se imprime.
- -por ejemplo:
- <%@format:separador(operacionesValor[valor/tipoValor/id=1]/valor/entidad/nombre,'- BONO -')%>
- si existen bonos, imprime el separador ---------- BONO ----------
- -si el valor del dato recibido no es nulo, imprime su valor string
- -si el valor del dato recibido es nulo, imprime un string vacío: ""
- format: cgoAfilCob (total, montoCobertura)
- -si existe la Cobertura (montoCobertura > 0),
- devuelve el importe que resta para el Afiliado: total - montoCobertura
- -si no existe la Cobertura (montoCobertura = 0),
- devuelve cero, con lo que no se imprime ningún dato.
- -avanza la posición a imprimir hasta la línea indicada por el parámetro.
NOTA: SI LA AUSENCIA DEL DATO A IMPRIMIR TIENE QUE ELIMINAR EL RENGLÓN ACTUAL SE TIENE QUE ENCERRAR ENTRE MAYOR Y MENOR LA FUNCIÓN. EJ: <<%=....%>>
Funciones definidas para cada tipo de dispositivo (Plantillas v3)[editar]
Estos comandos actúan sólo si el dispositivo lo permite.
- -envía un comando de inicialización a la impresora que la configura a sus valores iniciales.
- -envía un comando de normalización de la letra, a sus valores iniciales.
- -imprime en negrita (o enfatizado) el valor string del dato recibido.
- vuelve a las condiciones iniciales al finalizar la línea.
- -imprime en cursiva (o en itálica) el valor string del dato recibido.
- vuelve a las condiciones iniciales al finalizar la línea.
- -imprime con letra subrayada el valor string del dato recibido.
- vuelve a las condiciones iniciales al finalizar la línea.
- -imprime con letra condensada el valor string del dato recibido.
- vuelve a las condiciones iniciales al finalizar la línea.
- -imprime con letra expandida a lo ancho el valor string del dato recibido.
- vuelve a las condiciones iniciales al finalizar la línea.
- -imprime con letra expandida en alto el valor string del dato recibido.
- vuelve a las condiciones iniciales al finalizar la línea.
- -envía un comando de corte parcial de la cinta de papel.
- -envía un comando de corte total de la cinta de papel.
- -envía los comandos de configuración previos para imprimir un código de barras.
- imprime el código de barras del valor del dato recibido.
- vuelve a las condiciones iniciales al finalizar la línea.
Funciones de jxpath[editar]
- string concat (string, string, string, ...)
- -devuelve la concatenación de sus argumentos.
- -devuelve la suma, para cada nodo del set de nodos del argumento, del resultado de convertir los valores string del nodo a números.
objeto
|
atributo
|
función
|
tabla
|
método
|
nuevo método
|
Farmacia
|
Razón Social
|
<%=
|
operacion_valor
|
valor/nodoCreacion/razonSocial
|
obtRazonSocial()
|
Farmacia
|
Razón Social 2
|
<%=
|
operacion_valor
|
valor/nodoCreacion/razonSocialLinea2
|
obtRazonSocialLinea2()
|
Farmacia
|
Dirección
|
<%=
|
operacion_valor
|
valor/nodoCreacion/direcciones[1]
|
Farmacia
|
Tel.
|
<%=
|
operacion_valor
|
valor/nodoCreacion/telefonosConcatenados
|
Farmacia
|
C.U.I.T.
|
<%=
|
operacion_valor
|
valor/nodoCreacion/cuit
|
Farmacia
|
I.V.A.
|
<%=
|
operacion_valor
|
valor/nodoCreacion/objSituacionIva/nombre
|
Farmacia
|
I.Br.
|
<%=
|
operacion_valor
|
valor/nodoCreacion/ingresosBrutos
|
Cliente
|
Nombre
|
<%=
|
operacion_valor
|
valor/entidad/nombre
|
Cliente
|
Apellido
|
<%=
|
operacion_valor
|
valor/entidad/apellido
|
Cliente
|
Dirección
|
<%=
|
operacion_valor
|
valor/entidad/direcciones[1]
|
Cliente
|
Teléfono
|
<%=
|
operacion_valor
|
valor/entidad/telefonosConcatenados
|
Afiliado
|
Nombre
|
<%@
|
operacion
|
operacionesValor[valor/tipoValor/id=2]/valor/nombreAfiliado
|
Afiliado
|
Nro
|
<%@
|
operacion
|
operacionesValor[valor/tipoValor/id=2]/valor/numeroAfiliado
|
Valor
|
Fecha
|
<%=
|
operacion_valor
|
valor/fechaCreacion
|
Valor
|
Número
|
<%=
|
operacion_valor
|
valor/codificacion
|
Producto
|
Nombre
|
<%#
|
item_valor
|
producto/nombreCorto
|
Producto
|
Descuento de ítem
|
<%#
|
item_valor
|
descuento
|
Producto
|
Descuento Automático/Forzado
|
<%#
|
item_valor
|
descuentoAfiliado
|
Producto
|
Descuento General (manual)
|
<%#
|
item_valor
|
descuentoGeneral
|
Receta
|
O. Social
|
<%#
|
item_valor
|
sum(itemsReceta/montoTotalCubierto)
|
Valor
|
TOTAL
|
<%=
|
operacion_valor
|
valor/valoresConcepto[subTipoValorCpto/concepto/id=501]/monto
|
Valor
|
OBRAS SOCIALES
|
<%@
|
operacion
|
operacionesValor[valor/tipoValor/id=2]/valor/montoPrincipal
|
Valor
|
CUENTA CORRIENTE
|
<%@
|
operacion
|
operacionesValor[valor/tipoValor/id=22]/valor/montoPrincipal
|
Valor
|
CUOTA CUENTA CORRIENTE
|
<%@
|
operacion
|
operacionesValor[valor/tipoValor/id=21]/valor/montoPrincipal
|
Valor
|
TARJETA
|
<%@
|
operacion
|
operacionesValor[valor/tipoValor/id=9]/valor/montoPrincipal
|
Valor
|
CHEQUE TERCEROS
|
<%@
|
operacion
|
operacionesValor[valor/tipoValor/id=5]/valor/montoPrincipal
|
Valor
|
EFECTIVO
|
<%@
|
operacion
|
operacionesValor[valor/tipoValor/id=3]/valor/montoPrincipal
|
Valor
|
Exento
|
<%=
|
operacion_valor
|
valor/valoresConcepto[subTipoValorCpto/concepto/id=503 and subTipoValorCpto/visiblePos=1]/monto
|
Valor
|
Gravado
|
<%=
|
operacion_valor
|
valor/valoresConcepto[subtipoValorCpto/concepto/id=541]/monto
|
Vendedor
|
Nombre
|
<%=
|
operacion_valor
|
valor/objUsuarioCreacion/alias
|
Puesto
|
Nombre
|
<%=
|
operacion_valor
|
operacion/puestoVenta/nombre
|
Para la obtención de la sintaxis de comandos se debe recurrir a los manuales de cada modelo de impresora fiscal.
A modo de ejemplo se transcriben algunos de los caracteres más usados:
modelo impresora
|
HEXA
|
ASCII
|
descripción
|
Bematech
Epson
|
\u001B
|
ESC
|
Por definición del protocolo, todo comando empieza con 1B
|
Bematech
Epson
|
\u001B@
|
ESC @
|
Inicializa la impresora
|
Bematech
|
\u001Btn
|
ESC t n
|
Selecciona la página de código n:
n = 2 (PÁGINA DE CÓDIGO 850 – Falla)
n = 3 (PÁGINA DE CÓDIGO 437)
n = 4 (PÁGINA DE CÓDIGO 860)
n = 5 (PÁGINA DE CÓDIGO 858)
|
Bematech
|
\u001Bln
|
ESC l n
|
Programa el margen izquierdo para la columna n
|
Epson
|
\u001Bl
|
ESC l
|
Posiciona margen izquierdo
|
Bematech
Epson
|
\u000E
|
SO
|
Selecciona expandido por una línea
|
Bematech
|
\u0014
|
DC4
|
Cancela modo expandido de una línea
|
Bematech
Epson
|
\u000F
|
SI
|
Selecciona modo condensado
|
Bematech
Epson
|
\u0012
|
DC2
|
Cancela modo condensado
|
Bematech
|
\u001BE
|
ESC SO
|
Selecciona expandido por una línea
|
Bematech
|
\u001BF
|
ESC SI
|
Selecciona modo condensado
|
Epson
|
\u001BF
|
ESC F
|
Cancela modo enfatizado
|
Bematech
Epson
|
\u001Bm
|
ESC m
|
Realiza un corte parcial de papel
|
Epson
|
\u001BM
|
ESC M
|
Selecciona el ancho elite
|
Epson
|
\u001B0
|
ESC 0
|
Selecciona 1/8 de pulgada de línea de espacio
|
Epson
|
\u001B-
|
ESC -
|
Selecciona/cancela modo subrayado
|
Epson
|
\u001BW
|
ESC W
|
Selecciona/cancela el modo expandido
|
Ejemplo Modelo[editar]
Hagamos un seguimiento, línea a línea, de la plantilla Factura Bematech MP4000 TH (45) cargada en zWeb:
1) \u001B@\u001Bt2\u001Bl\u0001
- ESC @ = inicializa la impresora;
- ESC t 2 = selecciona la página de código 850;
- ESC l 1 = programa el margen iazquierdo para la columna 1.
2) \u000E<%=format:rpad((valor/nodoCreacion/razonSocial),19)%>
- SO = selecciona expandido por una línea;
- Busca en la tabla operacion_valor la Factura;
- Imprime 19 caracteres de la Razón Social del Nodo Creación de la Factura,
- si tiene más de 19 caracteres: los corta,
- si tiene menos: completa a derecha con espacios.
3) \u0014\u000F<%=format:rpad((valor/nodoCreacion/razonSocialLinea2),42)%>
DC4 = cancela modo expandido de una línea;
- SI = selecciona modo condensado;
- Busca en la tabla operacion_valor la Factura;
- Imprime 42 caracteres de la Razón Social 2a línea del Nodo Creación de la Factura,
- si tiene más de 42 caracteres: los corta,
- si tiene menos: completa a derecha con espacios.
4) \u000F<%=format:rpad((valor/nodoCreacion/direcciones[1]),42)%>
- SI = selecciona modo condesado;
- Busca en la tabla operacion_valor la Factura;
- Imprime 42 caracteres de la 1er Dirección del Nodo Creación de la Factura,
- si tiene más de 42 caracteres: los corta,
- si tiene menos: completa a derecha con espacios.
5) \u000FTel.: <%=format:rpad((valor/nodoCreacion/telefonosConcatenados),42)%>
- SI = selecciona modo condensado;
- Busca en la tabla operacion_valor la Factura;
- Imprime 42 caracteres con los Teléfonos del Nodo Creación de la Factura,
- si ocupan más de 42 caracteres: los corta,
- si ocupan menos: completa a derecha con espacios.
6) \u000FC.U.I.T. : <%=format:rpad((valor/nodoCreacion/cuit),30)%>
- SI = selecciona modo condensado;
- Imprime el texto 'C.U.I.T. : ';
- Busca en la tabla operacion_valor la Factura;
- Imprime 30 caracteres del CUIT del Nodo Creación de la Factura,
- si tiene más de 30 caracteres: los corta,
- si tiene menos: completa a derecha con espacios.
7) \u000FI.V.A. : <%=format:rpad((valor/nodoCreacion/objSituacionIva/nombre),30)%>
- SI = selecciona modo condensado;
- Imprime el texto 'I.V.A. : ';
- Busca en la tabla operacion_valor la Factura;
- Imprime 30 caracteres del nombre de la Situación de IVA del Nodo Creación de la Factura,
- si tiene más de 30 caracteres: los corta,
- si tiene menos: completa a derecha con espacios.
8) \u000FI.Br. : <%=format:rpad((valor/nodoCreacion/ingresosBrutos),30)%>
- SI = selecciona modo condensado;
- Imprime el texto 'I.Br. : ';
- Busca en la tabla operacion_valor la Factura;
- Imprime 30 caracteres del nombre del nro. de Ingresos Brutos del Nodo Creación de la Factura,
- si tiene más de 30 caracteres: los corta,
- si tiene menos: completa a derecha con espacios.
9) /
- Imprime una línea en blanco.
10) \u000FCliente : <%=format:rpad((valor/entidad/nombre),30)%>
- SI = selecciona modo condensado;
- Imprime el texto 'Cliente : ';
- Busca en la tabla operacion_valor la Factura;
- Imprime 30 caracteres del Nombre del Cliente asociado a la Factura,
- si tiene más de 30 caracteres: los corta,
- si tiene menos: completa a derecha con espacios.
11) \u000F<%=format:rpad((valor/entidad/apellido),30)%>
- SI = selecciona modo condensado;
- Busca en la tabla operacion_valor la Factura;
- Imprime 30 caracteres del Apellido del Cliente asociado a la Factura,
- si tiene más de 30 caracteres: los corta,
- si tiene menos: completa a derecha con espacios.
12) \u000FDireccion: <%=format:rpad((valor/entidad/direcciones[1]),30)%>
- SI = selecciona modo condensado;
- Imprime el texto 'Direccion: ';
- Busca en la tabla operacion_valor la Factura;
- Imprime 30 caracteres de la 1er Dirección del Cliente asociado a la Factura,
- si tiene más de 30 caracteres: los corta,
- si tiene menos: completa a derecha con espacios.
13) \u000FTelefono.: <%=format:rpad((valor/entidad/telefonosConcatenados)</span<,30)%>
- SI = selecciona modo condensado;
- Busca en la tabla operacion_valor la Factura;
- Imprime 30 caracteres con los Teléfonos del Cliente asociado la Factura,
- si ocupan más de 30 caracteres: los corta,
- si ocupan menos: completa a derecha con espacios.
14) \u000F<%@concat('Afiliado: <',format:rpad((operacionesValor[valor/tipoValor/id=2]/valor/nombreAfiliado),20),'>
\u000FNro. <',format:lpad((operacionesValor[valor/tipoValor/id=2]/valor/numeroAfiliado),12),'>')%>
- SI = selecciona modo condensado;
- Busca en la tabla operacion la Receta;
- Imprime la concatenación de los textos:
- - 'Afiliado: '
- - 20 caracteres del Nombre del Afiliado de la Receta,
- si tiene más de 20 caracteres: los corta,
- si tiene menos: completa a derecha con espacios.
- - 'Nro. '
- - 12 caracteres del Número del Afiliado de la Receta,
- si tiene más de 12 caracteres: los corta,
- si tiene menos: completa a izquierda con espacios.
15) \u000FFecha : <%=format:rpad(format:longDate((valor/fechaCreacion)),20)%>
- SI = selecciona modo condensado;
- Busca en la tabla operacion_valor la Factura;
- Convierte la Fecha Creación de la Factura a longDate;
- Imprime 20 caracteres de la fecha obtenida,
- si tiene más de 20 caracteres: los corta,
- si tiene menos: completa a derecha con espacios.
16) \u0012\u001BE FACTURA <%=format:rpad((valor/letraFactura),1)%> - <%=format:rpad((valor/codificacion),13)%>\u001BF
- DC2 = cancela modo condensado;
- ESC SO = selecciona expandido por una línea;
- Imprime el texto ' FACTURA ';
- Busca en la tabla operacion_valor la Factura;
- Imprime la Letra de la Factura (1 caracter);
- Imprime el texto ' - '
- Busca en la tabla operacion_valor la Factura;
- Imprime 13 caracteres del Número de la Factura,
- si tiene más de 13 caracteres: los corta,
- si tiene menos: completa a derecha con espacios.
17) \u0012------------------------------------------
- DC2 = cancela el modo condensado;
- Imprime el texto '------------------------------------------'.
18) \u000F Cant Descripcion P Unit. P.Total
- SI = selecciona modo condensado;
- Imprime el texto 'Cant Descripcion P Unit. P.Total'.
19) \u0012------------------------------------------
- DC2 = cancela el modo condensado;
- Imprime el texto '------------------------------------------'.
20) \u000F<%#concat(format:lpad(format:string((cantidad)),6),' ',format:rpad((producto/nombreCorto),23),' ',format:lpad(format:string((precioUnitario)),12),' ',format:lpad(format:string((total)),12),'
\u000F Descuento <',format:lpad(format:string((descuentoGeneral)),12),'>
\u000F O. Social <',format:lpad(format:string(sum(itemsReceta/precioUnitario)),12),'>')%>
- SI = selecciona modo condensado;
- Comienza a iterar sobre la tabla item_valor y, para cada Ítem de la Factura, imprime la concatenación de los textos:
- - 6 caracteres (completados a izquierda con espacios) de la Cantidad convertida a texto.
- - espacio en blanco
- - 23 caracteres (completados a derecha con espacios) del Nombre Corto del Producto.
- - espacio en blanco
- - 12 caracteres (completados a izquierda con espacios) del Precio Unitario convertido a texto.
- - espacio en blanco
- - 12 caracteres (completados a izquierda con espacios) del Total convertido a texto.
- - 'Descuento '
- - 12 caracteres (completados a izquierda con espacios) del Descuento General convertido a texto.
- - 'O. Social '
- - 12 caraceteres (completados a izquierda con espacios) de la suma de los precios Unitarios de los Ítems de la Receta convertida a texto.
21) \u0012------------------------------------------
- DC2 = cancela el modo condensado;
- Imprime el texto '------------------------------------------'.
22) \u0012\u001BE TOTAL <%=format:lpad(format:string((valor/valoresConcepto[subTipoValorCpto/concepto/id=501]/monto)),12)%>\u001BF
- DC2 = cancela modo condensado;
- ESC SO = selecciona expandido por una línea;
- Imprime el texto 'TOTAL ';
- Busca en la tabla operacion_valor la Factura;
- Imprime 12 caracteres del Monto convertido a texto del subTipoValorConcepto tipo Total Neto de la Factura,
- si tiene más de 12 caracteres: los corta,
- si tiene menos: completa a izquierda con espacios;
- ESC SI = selecciona modo condensado.
23) \u000FOBRAS SOCIALES <%@format:lpad(format:string((operacionesValor[valor/tipoValor/id=2]/valor/montoPrincipal)),10)%>
- SI = selecciona modo condensado;
- Imprime el texto 'OBRAS SOCIALES ';
- Busca en la tabla operacion la Receta;
- Imprime 10 caracteres del Monto convertido a texto del subTipoValor Concepto Principal de la Receta,
- si tiene más de 10 caracteres: los corta,
- si tiene menos: completa a izquierda con espacios.
24) \u000FCUENTA CORRIENTE <%@format:lpad(format:string((operacionesValor[valor/tipoValor/id=22]/valor/montoPrincipal)),10)%>
- SI = selecciona modo condensado;
- Imprime el texto 'CUENTA CORRIENTE ';
- Busca en la tabla operacion la Cuenta Corriente;
- Imprime 10 caracteres del Monto convertido a texto del subTipoValor Concepto Principal de la Cuenta Corriente,
- si tiene más de 10 caracteres: los corta,
- si tiene menos: completa a izquierda con espacios.
25) \u000FCUOTA CUENTA CORRIENTE <%@format:lpad(format:string((operacionesValor[valor/tipoValor/id=21]/valor/montoPrincipal)),10)%>
- SI = selecciona modo condensado;
- Imprime el texto 'CUOTA CUENTA CORRIENTE ';
- Busca en la tabla operacion la Cuota de Cuenta Corriente;
- Imprime 10 caracteres del Monto convertido a texto del subTipoValor Concepto Principal de la Cuota de Cuenta Corriente,
- si tiene más de 10 caracteres: los corta,
- si tiene menos: completa a izquierda con espacios.
26) \u000F<%@concat(format:rpad((operacionesValor[valor/tipoValor/id=9]/valor/entidadSaldable/nombre),33),format:lpad(format:string((operacionesValor[valor/tipoValor/id=9]/valor/montoPrincipal)),10))%>
- SI = selecciona modo condensado;
- Busca en la tabla operacion la Cuota de Tarjeta;
- Imprime la concatenación de los textos:
- - 33 caracteres (completados a derecha con espacios) del Nombre de la Entidad Saldable de la Cuota de Tarjeta.
- - 10 caracteres (completados a izquierda con espacios) del Monto convertido a texto del subTipoValorConcepto Principal de la Cuota de Tarjeta.
27) \u000FCHEQUE TERCEROS <%@format:lpad(format:string((operacionesValor[valor/tipoValor/id=5]/valor/montoPrincipal)),10)%>
- SI = selecciona modo condensado;
- Imprime el texto 'CHEQUE TERCEROS ';
- Busca en la tabla operacion el Cheque de Terceros;
- Imprime 10 caracteres del Monto convertido a texto del subTipoValor Concepto Principal del Cheque de Terceros,
- si tiene más de 10 caracteres: los corta,
- si tiene menos: completa a izquierda con espacios.
28) \u000FEFECTIVO <%@format:lpad(format:string((operacionesValor[valor/tipoValor/id=3]/valor/montoPrincipal)),10)%>
- SI = selecciona modo condensado;
- Imprime el texto 'EFECTIVO ';
Busca en la tabla operacion el Billete;
- Imprime 10 caracteres del Monto convertido a texto del subTipoValor Concepto Principal del Billete,
- si tiene más de 10 caracteres: los corta,
- si tiene menos: completa a izquierda con espacios.
29) \u0012------------------------------------------
- DC2 = cancela el modo condensado;
- Imprime el texto '------------------------------------------'.
30) \u000FExento : <%=concat(format:lpad(format:string((valor/valoresConcepto[subTipoValorCpto/concepto/id=503 and subTipoValorCpto/visiblePos=1]/monto)),10),' Gravado: ',format:lpad(format:string((valor/valoresConcepto[subTipoValorCpto/concepto/id=541]/monto)),10))%>
- SI = selecciona modo condensado;
- Imprime el texto 'Exento : ';
- Busca en la tabla operacion_valor la Factura;
- Imprime la concatenación de los textos:
- - 10 caracteres (completados a izquierda con espacios) del Monto convertido a texto del subTipoValorConcepto Visible en T&S de tipo Total Bruto No Gravado.
- - ' Gravado: '
- - 10 caracteres (completados a izquierda con espacios) del Monto convertido a texto del subTipoValorConcepto de tipo Total Bruto Gravado POS.
31) \u000FVendedor : <%=format:rpad((valor/objUsuarioCreacion/alias),30)%>
- SI = selecciona modo condensado;
- Imprime el texto 'Vendedor : ';
- Busca en la tabla operacion_valor la Factura;
- Imprime 30 caracteres del Alias del Usuario Creación de la Factura,
- si tiene más de 30 caracteres: los corta,
- si tiene menos: completa a derecha con espacios.
32) \u000FPuesto : <%=format:rpad((operacion/puestoVenta/nombre),30)%>
- SI = selecciona modo condensado;
- Imprime el texto 'Puesto : ';
- Busca en la tabla operacion_valor la operación de Venta;
- Imprime 30 caracteres del Nombre del Puesto de Venta,
- si tiene más de 30 caracteres: los corta,
- si tiene menos: completa a derecha con espacios.
33) \u0012------------------------------------------
- DC2 = cancela el modo condensado;
- Imprime el texto '------------------------------------------'.
34) \u000F(comprobante sin valor fiscal)
- DC2 = cancela el modo condensado;
- Imprime el texto '(comprobante sin valor fiscal)'.
35) \u001Bw
- ESC 119 = corte total.