Descripción de ítem en múltiple líneas
Es posible especificar la descripción (campo descripcion
) de un ítem usando varias líneas, usando uno (o en el caso de Microsoft Windows, dos) de estos caracteres:
- Carácter nueva línea: El más común en Internet, usado nativamente por Linux, Android y macOS.
- Abreviatura ASCII:
LF
- Decimal:
10
- Hexadecimal:
0x09
- Secuencia de escape C:
\n
- Abreviatura ASCII:
- Carácter retorno de carro: Usado antiguamente por Mac OS Classic.
- Abreviatura ASCII:
CR
- Decimal:
13
- Hexadecimal:
0x0C
- Secuencia de escape C:
\r
- Abreviatura ASCII:
- Carácter pleca: Para especificar una nueva línea usando el formato texto.
- Carácter:
|
- Decimal:
124
- Hexadecimal:
0x7C
- Carácter:
Microsoft Windows usa una combinación de CR
y LF
para denotar un cambio de línea.
Al momento de generar el XML, Fabo cambiará todos estos caracteres por un carácter LF
. Una secuencia de varios de estos caracteres unidos será colapsado en un único carácter LF
, lo que implica que no podrá haber líneas en blanco.
Ejemplo
Si se consigna el siguiente valor en el campo descripcion
:
SERVICIO DE PINTADO|Incluye pared exterior|No incluye baldes de pintura
Fabo generará el XML separando cada línea con un carácter LF
, que será mostrado por la mayoría de editores como varias líneas:
1 2 3 |
|
El formato JSON no permite nuevas líneas dentro de los valores, por lo que debes usar la secuencia de escape de C para especificar las nuevas líneas, o usar plecas. Es válido combinar varios de los caracteres. Por ejemplo:
1 |
|
Uso de propiedad descripcion_extra
La propiedad descripcion_extra
del ítem es una forma conveniente de añadir una segunda línea a descripcion
sin usar un carácter de nueva línea. Su valor se añadirá al valor de descripción
preponiendo un carácter LF
.
Esta propiedad también puede contener caracteres de nueva línea para dividir la descripción en más líneas.
Ejemplo
Si se consigna los siguientes valores (el ejemplo es solo demostrativo, no sigue el formato requerido por la API, como json
o texto
)
1 2 |
|
El XML será creado uniendo ambas propiedades con el carácter LF
:
1 2 |
|
Ya que la propiedad descripcion_extra
permite también separar más líneas, el ejemplo anterior de “SERVICIO DE PINTADO” puede ser consignado de la siguiente manera:
1 2 |
|
o en JSON usando los caracteres de Microsoft Windows de cambio de línea (el ejemplo es solo demostrativo, el JSON es incompleto):
1 2 |
|
obteniendo el mismo resultado.
Representación impresa
Cuando la descripción del ítem incluye más de una línea, la primera será dibujada en negrita. Por ejemplo, usando el ejemplo del inicio de esta nota:
SERVICIO DE PINTADO|Incluye pared exterior|No incluye baldes de pintura
Este valor de la propiedad descripcion
será mostrado en la representación impresa de la siguiente manera:
SERVICIO DE PINTADO
Incluye pared exterior
No incluye baldes de pintura
Usando el valor del segundo ejemplo:
1 2 |
|
La representación impresa lo mostrará en dos líneas:
TARJETA DE VIDEO AUSOM-3000
S/N 1234-5678
Ejemplo de comprobante
Puedes ver un comprobante de ejemplo en “Boletas con descripción en múltiples líneas”.