# Configuración de plantilas +Docs

# Historial de actualizaciones

En está página encontrará las notas de versión, funcionalidades y actualizaciones de Docs+, esto le permitirá estar al día sobre nuevos procesos, funciones y formas de utilizar la plataforma.

##### **Actualización 7 septiembre 2024**  


- Reparación de bugs y mejoras de performance. 
    - Reparado borde de campos editables en impresión de documento.
- Agregada funcionalidad para restricción de caracteres en objetos tipo texto.
- Funciones agregadas: FN.GET\_DAY, FN.GET\_MONTH, FN.GET\_YEAR, FN.FORMAT\_DATE.
- Agregado "<span class="toggle-label">Ajustar tabla al ancho del contenedor".</span>

##### **Actualización 5 septiembre 2024**  


- Reparación de bugs y mejoras de performance. 
    - Reparado funcionamiento de tablas, errores en editor.
    - Reparado borde de tablas en PDF con fondo personalizado.
    - Mejora en performance para renderizado de imágenes.
- Agregada funcionalidad de encabezados dinámicos para tablas.
- Agregada funcionalidad para ejecución de "funciones FN.".
- Agregada funcionalidad para márgenes de seguridad en páginas autogeneradas.
- Agregada funcionalidad para replicación de fondo en páginas autogeneradas.

##### **Actualización 13 agosto 2024**

- Reparación de bugs y mejoras de performance.
- Integración con plataforma PayGateway e importación de campos automáticos.

##### **Actualización 22 junio 2024**

- Reparación de bugs y mejoras de performance. 
    - Mejora en sistema de drag and drop.
- Mejoras en sistema de zoom y conversión de pixeles.
- Funcionalidad para manejo de capas (objetos de página) en editor y en pdf.

##### **Actualización 05 abril 2024** 

- Migración de notas de versión en esta plataforma, se descontinúa el uso de plataforma anterior.

# Antes de comenzar

Esta guía está diseñada específicamente para la plataforma PayGateway y su módulo de generación de documentos llamado "+Docs". Antes de iniciar la configuración, debes poseer un usuario y contraseña de PayGateway. Si aún no tienes tus credenciales, consulta con tu asesor de servicio asignado.

> <span style="color: rgb(22, 145, 121);">NOTA: El uso del módulo +Docs es un servicio de pago, con lo cual, puede incurrir en gastos adicionales a tu factura mensual. Consulta con tu asesor de servicio sobre tarifas, planes, métodos de pago y más. </span>

# Ingreso a +Docs

Podrás ingresar a +Docs realizando los siguietes pasos:

**Paso 1:** Inicia sesión en PayGateway ([ir a inicio de sesión](https://app.pygateway.com/signin))

[![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/0wQimage.png)](https://read.pygateway.com/uploads/images/gallery/2023-12/0wQimage.png)

**Paso 2:** Dirígete al menú "Configuración"

![Screenshot 2023-12-12 at 7.50.10 AM.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/screenshot-2023-12-12-at-7-50-10-am.png)

**Paso 3:** Dirígete al menú "Docs+"

[![Screenshot 2023-12-12 at 7.51.46 AM.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/screenshot-2023-12-12-at-7-51-46-am.png)](https://read.pygateway.com/uploads/images/gallery/2023-12/screenshot-2023-12-12-at-7-51-46-am.png)

**Paso 4:** Podrás ver tu listado de plantillas, para agregar una nueva presiona "Agregar formulario". Para editar una plantilla existente, pulsa el botón editar (lo encontrarás como un lápiz en cada una de las plantillas del listado)

[![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/PBTimage.png)](https://read.pygateway.com/uploads/images/gallery/2023-12/PBTimage.png)

**Paso 5:** Configura tu tu plantilla.

[![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/Nneimage.png)](https://read.pygateway.com/uploads/images/gallery/2023-12/Nneimage.png)

#####  

##### Para aprender más sobre la configuración de plantillas, te invitamos a ver la siguiente página de esta guía.

Ir a configuración de plantilla

# Uso del editor y configuración de documentos



# Configuraciones básicas

Cuando creas un formulario nuevo se mostrará la ventana de configuración inicial, dicha ventana también se mostrará al pulsar el botón "Configuración" en la parte superior derecha de +Docs.

#### **Si estás creando un formulario nuevo:**

Se mostrará la ventana de configuración para que ingreses el nombre del formulario, ingresa el nombre deseado y presiona el botón "Guardar".

<span style="color: rgb(224, 62, 45);">NOTA: Si el formulario es nuevo (y no ha sido guardado), no existirá un "token de formulario", debes guardar previamente tu formulario para obtenerlo.</span>

![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/qqWimage.png)

#### **Si estás editando un formulario previamente guardado:**

Pulsa el botón configuración en la parte superior derecha para mostrar la ventana.

![Screenshot 2023-12-12 at 8.02.57 AM.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/p3xscreenshot-2023-12-12-at-8-02-57-am.png)

#### **Token de formulario:**

El token de formulario es un identificador único que representa a tu formulario, se muestra en la ventana de configuración:

![Screenshot 2023-12-12 at 8.06.30 AM.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/screenshot-2023-12-12-at-8-06-30-am.png)

# Páginas

Las páginas poseen diversas propiedades, a continuación se detallan:

#### Propiedades estándar

- **Fondo de página:** Permite agregar un fondo mediante una imagen.
- **Desactivar impresión de fondo**: Permite desactivar la aparición del fondo previamente cargado, la página aparecerá en blanco si esta opción está activada.
- **Tamaño de fondo:** Permite cambiar el tamaño del fondo en relación con la página, esta medida es un porcentaje %.
- **Tamaño de página**: Permite ajustar el tamaño de la página, esta medida está en milímetros.
- **Tamaños de papel estándar:** Permite cambiar de forma rápida el tamaño de página a formatos preestablecidos.
- **Rotación de página**: Permite rotar la orientación de la página para ser utilizado con impresoras térmicas o de etiquetas.
- **Tipografía por defecto**: Permite cambiar el tipo de fuente por defecto de la página.

[![imagen.png](https://read.pygateway.com/uploads/images/gallery/2024-09/scaled-1680-/pzbimagen.png)](https://read.pygateway.com/uploads/images/gallery/2024-09/pzbimagen.png)

#### Páginas autogeneradas:

Las páginas autogeneradas son creadas cuando el contenido de una tabla excede el tamaño de la página, por lo cual, se crea una página nueva donde continuará el contenido de la tabla.

- **Márgenes de seguridad**: Permiten variar el margen de seguridad (espacio en blanco) utilizado para una página que se generó automáticamente. Esto nos ayuda a evitar la superposición de la tabla sobre headers o footers configurados en el fondo de página.
- **Replicar fondo**: Nos permite replicar o mantener el fondo en las páginas generadas automáticamente. Se tomará el fondo de la página madre (donde se configuró la tabla inicialmente)

[![imagen.png](https://read.pygateway.com/uploads/images/gallery/2024-09/scaled-1680-/1y1imagen.png)](https://read.pygateway.com/uploads/images/gallery/2024-09/1y1imagen.png)

# Botones y controles

<span style="color: rgb(0, 0, 0);">La barra de tareas o botones permite accesar a diversas secciones del formulario, a continuación tienes una descripción de cada botón:</span>

[![Screenshot 2024-05-27 at 6.18.03 PM.png](https://read.pygateway.com/uploads/images/gallery/2024-05/scaled-1680-/screenshot-2024-05-27-at-6-18-03-pm.png)](https://read.pygateway.com/uploads/images/gallery/2024-05/screenshot-2024-05-27-at-6-18-03-pm.png)

1. **Listado de atajos de teclado:** Permite visualizar una lista de atajos de teclado disponibles.
2. **Listado de variables:** Permite visualizar la lista de variables configuradas en todo el documento. Útil como referencia para el llenado de documentos a través de servicios (webservices).
3. **Controles de zoom:** Permite controlar el nivel de zoom para el editor del documento.
4. **Agregar objeto:** Permite crear nuevos objetos en el documento (ir a creación de objetos)
5. **Generar PDF:** Permite observar una vista previa de nuestro documento, <span style="color: rgb(230, 126, 35);">*ATENCIÓN: Al presionar este botón, no se guardarán los cambios realizados en el documento.*</span>
6. **Guardar:** Permite guardar los cambios realizados a nuestro documento.
7. **Configuración**: Permite visualizar la ventana de configuración ([ir a configuraciones básicas](https://read.pygateway.com/books/configuracion-de-plantilas-docs/page/configuraciones-basicas))
8. **Salir del editor**: Permite regresar al entorno de PayGateway.
9. **Vista de propiedades:** Permite visualizar la barra de propiedades de objetos y páginas.
10. **Vista de capas:** Permite visualizar la barra de capas por página.
11. **Agregar página**: Permite crear páginas nuevas en el documento configurado.
12. **Crear desde PDF**: Permite agregar páginas nuevas a partir de un documento PDF subido.

# Objetos y campos

Los objetos son representaciones de campos disponibles en el formulario, al pusar el botón "Agregar objeto" podremos crear un objeto nuevo en el editor del documento. Los objetos son arrastrables (drag and drop) y pueden variar su tamaño dependiendo de los requerimientos del usuario.

![Screenshot 2023-12-12 at 8.22.33 AM.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/screenshot-2023-12-12-at-8-22-33-am.png)

#### **Barra de propiedades de objeto:**

Al seleccionar un objeto, se mostrará en la parte derecha de tu pantalla, la barra de propiedades. Esta permite configurar el objeto y cambiar sus capacidades.

![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/A0simage.png)

### **Tipos de objeto:**

El tipo de objeto define el comportamiento de dicho campo, a continuación verás el listado de tipos:

##### ***Objetos tipo "Texto"***

Los objetos de tipo texto permiten almacenar contenido en forma de texto mediante un editor ("Texto a mostrar" en barra de propiedades de objeto).


![image.png](https://read.pygateway.com/uploads/images/gallery/2024-09/scaled-1680-/image.png)

##### *Propiedades:* 

- **Convertir en campo editable**: Permite insertar en el PDF un campo de tipo texto, que permitirá escribir en su interior.
- **Bloquear multilinea**: Permite configurar un campo editable para solo aceptar una línea de texto, si está desactivado, el campo podrá tener scroll vertical en caso tener más texto.
- **Máximo de caracteres:** Permite bloquear el máximo de caracteres que se insertan en un campo editable.
- **Condicionales**: Permiten condicionar la visibilidad del campo dependiendo de ciertas condiciones (ver sección de condicionales).

#####  

#####  

##### ***Objetos tipo "Imagen"***

Los objetos de tipo texto permiten cargar imágenes para ser posicionadas en el documento. Estas imágenes pueden ser en formato JPG o PNG.

![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/wNeimage.png)

#### **Cambiar tamaño de objeto:**

Puedes cambiar el tamaño de un objeto posicionando tu cursor en su esquina inferior derecha.

![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/QXTimage.png)

#### **Agregar enlaces o links** 

Puedes agregar enlaces "clickeables" en tu documento PDF, sigue los pasos:

1\. Agrega un objeto de tipo texto

2\. Agrega el texto deseado a mostrar en tu enlace.

[![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/bd2image.png)](https://read.pygateway.com/uploads/images/gallery/2023-12/bd2image.png)

3\. Selecciona tu texto, posteriormente, haz clic en el ícono de "link"

![Screenshot 2023-12-12 at 8.58.07 AM.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/screenshot-2023-12-12-at-8-58-07-am.png)

4\. Configura tu enlace, presiona el botón "Save" para finalizar.

![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/3ZBimage.png)

5\. Tu enlace estará listo, puedes posicionarlo en cualquier lugar de tu documento

![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/OCCimage.png)

# Manejo de objetos

Para el manejo de objetos, puedes utilizar los controles específicos para cambiar su tamaño y ángulo.

[![Screenshot 2024-05-28 at 8.30.28 AM.png](https://read.pygateway.com/uploads/images/gallery/2024-05/scaled-1680-/screenshot-2024-05-28-at-8-30-28-am.png)](https://read.pygateway.com/uploads/images/gallery/2024-05/screenshot-2024-05-28-at-8-30-28-am.png)

# Tablas

Las tablas son objetos que pueden mostrar contenido en formato de columnas y filas.

### Agregar una tabla

Puede encontrar el objeto tabla en el menú "Agregar objeto".

[![imagen.png](https://read.pygateway.com/uploads/images/gallery/2024-09/scaled-1680-/vSCimagen.png)](https://read.pygateway.com/uploads/images/gallery/2024-09/vSCimagen.png)

### Configuraciones de tabla

Las tablas contienen diversas configuraciones, a continuación detallamos su significado:

- **Condicionales**: Permiten condicionar la visibilidad de la tabla.
- **Columnas/Filas:** Permite agregar o eliminar columnas y filas de una tabla, esta función solo funcionará para tablas de tipo estático (no llenadas a traves de webservice). Las tablas llenadas por medio de un webservice poseen columnas y filas dinámicas, que tomarán el contenido enviado mediante el servicio.
- **Habilitar encabezados:** Permite mostrar los encabezados de una tabla. Si la tabla es llenada mediante webservices, los encabezados se tomarán desde la información enviada en el servicio.
- **Encabezados dinámicos:** Permiten aceptar encabezados de forma dinámica cuando la tabla se llena a través de un webservice. Los encabezados enviados en el servicio, serán los que aparecerán como encabezado en la tabla.
- **Mostrar borde**: Permite activar o desactivar el borde de la tabla.
- **Espacio entre filas**: Permite cambiar el espaciado o margen entre las filas de la tabla.
- **Ajustar tabla al ancho del contenedor:** Permite ajustar la tabla automáticamente al ancho del contenedor (recuadro azul dibujado por el usuario), esta configuración únicamente está activa con tablas dinámicas, donde el tamaño de las columnas puede variar dependiendo del contenido enviado. Si existen columnas preconfiguradas, los encabezados dinámicos tomarán las configuraciones correspondientes al orden de las columnas configuradas, si envía más encabezados dinámicos que columnas configuradas, se calcularán automáticamente sus anchos.

[![image.png](https://read.pygateway.com/uploads/images/gallery/2024-09/scaled-1680-/gbeimage.png)](https://read.pygateway.com/uploads/images/gallery/2024-09/gbeimage.png)

### Configuraciones de columna  


Las tablas contienen diversas configuraciones, a continuación detallamos su significado:

- **Alineación**: Permite configurar la alineación de la columna completa. Puede ser a la izquierda, centrado, derecha y justificado.

# Funciones o modificadores

Las funciones o modificadores permiten interactuar sobre el contenido impreso en el documento. **Las funciones o modificadores funcionan únicamente en campo de tipo texto y valores en encabezados o filas de tablas.**


### Estructura y modo de uso  


Todas las funciones utilizan la misma estructura:

La palabra "FN.", seguido de el nombre de la función a ejecutar, en este ejemplo, "UPPERCASE". A continuación, deben colocarse paréntesis y en su interior, comillas simples seguido del valor o variable deseada. *Siempre debe finalizarse cerrando la comilla, el paréntesis y colocando punto y coma.*

#### FN.UPPERCASE('\[\[variable\]\]');

**NOTA**: Si no coloca punto y coma al finalizar, no se ejecutará la función.

### Listado de funciones  


A continuación se describe el listado de funciones disponibles:

<table border="1" id="bkmrk-funci%C3%B3n-descripci%C3%B3n-" style="border-collapse: collapse; width: 103.086%; height: 502.4px;"><colgroup><col style="width: 44.3771%;"></col><col style="width: 55.6229%;"></col></colgroup><tbody><tr style="height: 49.4px;"><td style="height: 49.4px;">**Función**

</td><td style="height: 49.4px;">**Descripción**

</td></tr><tr style="height: 29.8px;"><td style="height: 29.8px;">FN.UPPERCASE('texto a convertir');</td><td style="height: 29.8px;">Convertirá el texto enviado a mayúsculas.</td></tr><tr style="height: 29.8px;"><td style="height: 29.8px;">FN.LOWERCASE('texto a convertir');</td><td style="height: 29.8px;">Convertirá el texto enviado a minúsculas.</td></tr><tr style="height: 29.8px;"><td style="height: 29.8px;">FN.CAPITALIZE('texto a convertir');</td><td style="height: 29.8px;">Convertirá la primera letra de la frase en mayúscula.</td></tr><tr style="height: 63.4px;"><td style="height: 63.4px;">FN.MONEY('monto a formatear', '$');</td><td style="height: 63.4px;">Convertirá el número enviado (decimal o entero) a formato de moneda, ajustará a dos decimales el valor y colocará el símbolo de moneda como prefijo al monto.</td></tr><tr style="height: 46.6px;"><td style="height: 46.6px;">FN.FORMAT\_NUM('monto a formatear', '2');</td><td style="height: 46.6px;">Formateará un número (decimal o entero) con el número de decimales solicitado en el segundo parámetro.</td></tr><tr style="height: 63.4px;"><td style="height: 63.4px;">FN.GET\_DAY('2024-05-10', 'Y-m-d');</td><td style="height: 63.4px;">Obtendrá el día a partir de una fecha, el primer parámetro recibe la fecha, el segundo parámetro recibe el formato de dicha fecha. Por defecto, el formato si no se envía es 'Y-m-d'.</td></tr><tr style="height: 63.4px;"><td style="height: 63.4px;">FN.GET\_MONTH('2024-05-01', 'Y-m-d');</td><td style="height: 63.4px;">Obtendrá el mes a partir de una fecha, el primer parámetro recibe la fecha, el segundo parámetro recibe el formato de dicha fecha. Por defecto, el formato si no se envía es 'Y-m-d'.</td></tr><tr style="height: 63.4px;"><td style="height: 63.4px;">FN.GET\_YEAR('2024-05-01');</td><td style="height: 63.4px;">Obtendrá el año a partir de una fecha, el primer parámetro recibe la fecha, el segundo parámetro recibe el formato de dicha fecha. Por defecto, el formato si no se envía es 'Y-m-d'.</td></tr><tr style="height: 63.4px;"><td style="height: 63.4px;">FN.FORMAT\_DATE('2020-02-01', 'Y-m-d', 'd-m-Y');</td><td style="height: 63.4px;">Formateará una fecha enviada, el primer parámetro es la fecha a formatear, el segundo parámetro recibe el formato de entrada de dicha fecha, el tercer parámetro es el formato de salida.  
</td></tr></tbody></table>

##### **Referencia de formatos de fecha**  


<table border="1" id="bkmrk-caracter-descripci%C3%B3n" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 50.0618%;"></col><col style="width: 50.0618%;"></col></colgroup><tbody><tr><td>Caracter  
</td><td>Descripción  
</td></tr><tr><td>Y  
</td><td>Año en formato de 4 dígitos Ej. 2024</td></tr><tr><td>y  
</td><td>Año representado con 2 dígitos, Ej. 22, 24  
</td></tr><tr><td>M  
</td><td>Mes representado con txto (inglés), Ej. April.  
</td></tr><tr><td>m  
</td><td>Mes representado con dos dígitos y ceros al inicio, Ej. 01  
</td></tr><tr><td>D  
</td><td>Día del mes representado en texto (inglés), Ej. Mon, Tue.  
</td></tr><tr><td>d  
</td><td>Día del mes con ceros al inicio `01` a `31`  
</td></tr><tr><td>H  
</td><td>Hora representada en 24 horas con ceros, Ej. `00` al `23`  
</td></tr><tr><td>h  
</td><td>Hora representada en 12 horas, Ej. `01` al `12`</td></tr><tr><td>i  
</td><td>Minutos con ceros al inicio, Ej. 01 al 59  
</td></tr><tr><td>s  
</td><td>Segundos con ceros al inicio, Ej, 01 al 59  
</td></tr></tbody></table>

#####  

##### **Ejemplos de formato de fecha completos:**

<table border="1" id="bkmrk-formato-descripci%C3%B3n-" style="border-collapse: collapse; width: 100%; height: 149px;"><colgroup><col style="width: 30.5315%;"></col><col style="width: 69.4685%;"></col></colgroup><tbody><tr style="height: 29.8px;"><td style="height: 29.8px;">**Formato**  
</td><td style="height: 29.8px;">**Descripción**  
</td></tr><tr style="height: 29.8px;"><td style="height: 29.8px;">'Y-m-d H:i:s'</td><td style="height: 29.8px;">Esto entregará una fecha de el formato 2024-05-01 22:05:30</td></tr><tr style="height: 29.8px;"><td style="height: 29.8px;">'Y-m-d'</td><td style="height: 29.8px;">Esto entregará una fecha de el formato 2024-05-01</td></tr><tr style="height: 29.8px;"><td style="height: 29.8px;">'d/m/Y'</td><td style="height: 29.8px;">Esto entregará una fecha de el formato 01/05/2024</td></tr><tr style="height: 29.8px;"><td style="height: 29.8px;">'d-m-Y'</td><td style="height: 29.8px;">Esto entregará una fecha de el formato 01-05-2024</td></tr></tbody></table>

Puede interactuar cambiando de posición los caracteres para realizar formatos personalizados.

### Contexto de funciones

Las funciones trabarán en el editor de texto y en texto enviado a través de un servicio web.

**Editor de texto**

[![imagen.png](https://read.pygateway.com/uploads/images/gallery/2024-09/scaled-1680-/BfNimagen.png)](https://read.pygateway.com/uploads/images/gallery/2024-09/BfNimagen.png)

**Envío de webservice**

[![imagen.png](https://read.pygateway.com/uploads/images/gallery/2024-09/scaled-1680-/PbQimagen.png)](https://read.pygateway.com/uploads/images/gallery/2024-09/PbQimagen.png)

# Agregar enlaces o links

Puedes agregar enlaces "clickable" en tu documento PDF, sigue los pasos:

1\. Agrega un objeto de tipo texto

2\. Agrega el texto deseado a mostrar en tu enlace.

![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/bd2image.png)

3\. Selecciona tu texto, posteriormente, haz clic en el ícono de "link"

![Screenshot 2023-12-12 at 8.58.07 AM.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/screenshot-2023-12-12-at-8-58-07-am.png)

4\. Configura tu enlace, presiona el botón "Save" para finalizar.

![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/3ZBimage.png)

5\. Tu enlace estará listo, puedes posicionarlo en cualquier lugar de tu documento

![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/OCCimage.png)

# Configuración de contraseña

Para establecer una contraseña en la página, sigue estos pasos:

1\. Accede a la configuración del documento desde la barra de tareas.

[![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/z6mimage.png)](https://read.pygateway.com/uploads/images/gallery/2023-12/z6mimage.png)

2\. Al hacer clic, se abrirá el siguiente cuadro de diálogo. Para habilitar la opción de establecer una contraseña, marca la casilla que dice 'Agregar protección con contraseña'.

[![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/2ebimage.png)](https://read.pygateway.com/uploads/images/gallery/2023-12/2ebimage.png)

3\. Después de activar la casilla 'Agregar protección con contraseña', aparecerá un campo de entrada que te permitirá establecer una contraseña para el documento. Una vez ingresada la contraseña, selecciona el botón 'Guardar' para aplicar los cambios.

[![image.png](https://read.pygateway.com/uploads/images/gallery/2023-12/scaled-1680-/zS0image.png)](https://read.pygateway.com/uploads/images/gallery/2023-12/zS0image.png)

4\. Para deshabilitar la contraseña en el documento, simplemente desmarca la casilla 'Agregar protección con contraseña' y selecciona el botón 'Guardar' para aplicar los cambios.

# Condicionales de objetos y páginas

# Uso y manejo de condicionales  


<div id="bkmrk-" style="clear: left;"></div>Puedes agregar condicionales a páginas y objetos, estos se mostrarán únicamente si los condicionales se cumplen. Siguen una jerarquía de operaciones lógica (AND u OR o también conocidos como Y ú Ó). Para ello, sigue los pasos mencionados a continuación:

### Tipos de condicionales

Existen diversos tipos de condicionales para cambiar la visibilidad de un objeto.

- "=": El condicional "igual" compara dos valores, el objeto se mostrará si los valores son iguales.
- "!=": El condicional "diferente" compara dos valores, el objeto se mostrará si los valores son diferentes.
- "&gt;": El condicional "mayor" compara dos valores, el objeto se mostrará si el primer valor es mayor al segundo (este condicional solo funciona con valores numéricos).
- "&lt;": El condicional "menor" compara dos valores, el objeto se mostrará si el primer valor es menor al segundo (este condicional solo funciona con valores numéricos).
- "&lt;=": El condicional "menor o igual" compara dos valores, el objeto se mostrará si el primer valor es menor o igual al segundo (este condicional solo funciona con valores numéricos).
- "&gt;=": El condicional "mayor o igual" compara dos valores, el objeto se mostrará si el primer valor es mayor al segundo (este condicional solo funciona con valores numéricos).
- "C": El condicional "C" (Contiene), evalúa si el valor configurado se encuentra dentro de los valores enviados.
- "CL": El condicional "CL" (Contiene desde lista), evalúa si el valor configurado se encuentra en una lista. El valor enviado como variable debe ser una lista separada por un carácter o caracteres Ejemplo: A, B, C, D. Adicional, se permite configurar el caracter de separación (por defecto se utiliza coma ","). El sistema separará automáticamente los valores utilizando dicho separador y evaluará si el valor enviado se encuentra en una de esas opciones, esto evita errores provocados por coincidencia de patrones en diversos valores y permite evaluar la coincidencia exacta en la lista.

### Agrupador de condicionales  


Para agregar más de un condicional debe seleccionar un agrupador, este determina cómo se tratarán los condicionales:

Estos pueden ser:

- "Y": Este agrupador es conocido como "AND" o "Y". Define la lógica de condicionales para que deban cumplirse todos los seleccionados con dicho agrupador. (Si se cumple el primer condicional y además se cumple el segundo, etc)
- "Ó": Este agrupador es conocido como "OR" o "Ó". Define la lógica de condicionales para que deban cumplirse al menos una de las condicionales. (Si se cumple el primer condicional o se cumple el segundo, etc).

[![Screenshot 2024-06-05 at 8.42.35 AM.png](https://read.pygateway.com/uploads/images/gallery/2024-06/scaled-1680-/screenshot-2024-06-05-at-8-42-35-am.png)](https://read.pygateway.com/uploads/images/gallery/2024-06/screenshot-2024-06-05-at-8-42-35-am.png)

### Agregar condicional a una página  


Un condicional para página servirá en el caso desees mostrar o no una página dependiendo de la información enviada, para agregarlo, selecciona tu página y dirígete a la sección de "Propiedades de página". En la parte inferior de la barra de propiedades, encontrarás la sección de condicionales. Agrega un condicional y coloca tu variable a evaluar, posteriomente el operador lógico, finalizando con el valor a comparar.

Puedes agregar una o más condicionales, la página se mostrará únicamente si los condicionales se cumplen.

[![Screenshot 2024-05-27 at 6.11.04 PM.png](https://read.pygateway.com/uploads/images/gallery/2024-05/scaled-1680-/screenshot-2024-05-27-at-6-11-04-pm.png)](https://read.pygateway.com/uploads/images/gallery/2024-05/screenshot-2024-05-27-at-6-11-04-pm.png)

### Agregar condicional a un objeto  


Un condicional para objeto servirá en el caso desees mostrar o no dicho objeto dependiendo de la información enviada, para agregarlo, selecciona tu objeto y dirígete a la sección de "Propiedades de texto/imagen (dependiendo de tu objeto)". En la parte superior de la barra de propiedades, encontrarás la sección de condicionales. Agrega un condicional y coloca tu variable a evaluar, posteriomente el operador lógico, finalizando con el valor a comparar.

El objeto se mostrará únicamente si los condicionales se cumplen.

[![imagen.png](https://read.pygateway.com/uploads/images/gallery/2024-05/scaled-1680-/imagen.png)](https://read.pygateway.com/uploads/images/gallery/2024-05/imagen.png)

# Vista de capas

Permite visualizar la barra de capas, en esta se muestran todos los objetos de una página. En caso el objeto sea de tipo imagen, se mostrará una pequeña previsualización de dicho objeto.

### Acceder a vista de capas

Para acceder a la vista de capas, presione el botón "capas", en la barra derecha.

[![Screenshot 2024-05-27 at 6.24.05 PM.png](https://read.pygateway.com/uploads/images/gallery/2024-05/scaled-1680-/screenshot-2024-05-27-at-6-24-05-pm.png)](https://read.pygateway.com/uploads/images/gallery/2024-05/screenshot-2024-05-27-at-6-24-05-pm.png)

En caso el objeto sea de tipo texto y no tenga nombre configurado, se mostrará una pequeña previsualización en el placeholder o texto de vista previa en el campo de nombre de la capa.

### Cambio de profundidad de capas

Puede cambiar la profundidad de los objetos (ordenamiento, uno atrás de otro) mediante la vista de capas. Los objetos en la vista de capas en un orden superior tendrán menor profundidad y estarán más cerca de la vista del usuario en el documento generado. Las capas en un orden inferior, estarán por detrás de los objetos con orden superior.

[![Screenshot 2024-05-27 at 6.27.31 PM.png](https://read.pygateway.com/uploads/images/gallery/2024-05/scaled-1680-/screenshot-2024-05-27-at-6-27-31-pm.png)](https://read.pygateway.com/uploads/images/gallery/2024-05/screenshot-2024-05-27-at-6-27-31-pm.png)

### Nombre de capas

Puede agregar un nombre a las capas para facilitar su manejo e identificación.

[![imagen.png](https://read.pygateway.com/uploads/images/gallery/2024-05/scaled-1680-/VEyimagen.png)](https://read.pygateway.com/uploads/images/gallery/2024-05/VEyimagen.png)

### Superposición de objetos

Es posible superponer objetos mediante el orden de capas, **la superposición solo está disponible para objetos de tipo texto.**

# Códigos QR y de Barras

Docs+ permite crear códigos de barra y códigos QR.

### Tipos de códigos soportados

**Códigos de barras**

- Code 39
- Code 39 con validación
- Code 128
- EAN 13

**Códigos QR**

- QR con validación de alta definición
- QR con validación de media definición
- QR con validación de baja definición


### Para generar uno de ellos, sigue los siguientes pasos

**1. Agrega un objeto de tipo imagen desde la barra superior.**

Selecciona el objeto y dirígete a la barra de propiedades, en la parte inferior encontrarás la sección "Convertir imagen en código QR o Barras". Selecciona el tipo de código seleccionado, no te olvides de colocar tu shortcode (donde se reemplazará el valor enviado en el servicio).

[![imagen.png](https://read.pygateway.com/uploads/images/gallery/2024-05/scaled-1680-/4xKimagen.png)](https://read.pygateway.com/uploads/images/gallery/2024-05/4xKimagen.png)

Tu código QR o de barras se imprimirá según el tamaño y configuración deseada.

[![imagen.png](https://read.pygateway.com/uploads/images/gallery/2024-05/scaled-1680-/FgLimagen.png)](https://read.pygateway.com/uploads/images/gallery/2024-05/FgLimagen.png)