Kissflow DocsHelp center
Guía del usuarioProcesosAdministración de procesos
Esta página se tradujo automáticamente y está pendiente de revisión editorial.Ver la versión en inglés

Plantillas de documentos

Crea, edita y administra plantillas de documentos para automatizar la generación de archivos PDF relacionados con procesos, como cartas de oferta u órdenes de compra.

Plantillas de documentos

BasicEnterprise

Una plantilla de documento te permite automatizar la generación de archivos PDF relacionados con procesos. Por ejemplo, como responsable de RR. HH. del proceso Recruitment, puedes crear una plantilla de documento que genere cartas de oferta automáticamente cuando se cierre una entrevista.

Note

Debes ser administrador del proceso o desarrollador del proceso para crear una plantilla de documento.

Crear una plantilla de documento

Puedes crear una plantilla de documento desde cero o generar un primer borrador con Kissflow AI.

Crear desde cero

  1. Ve al proceso para el que quieres crear una plantilla de documento.
  2. Haz clic en Manage > Document templates > Create template > Create from scratch.
  3. Introduce un nombre y una descripción para la plantilla de documento.
  4. Haz clic en Create from scratch para abrir la plantilla en el editor y crearla manualmente.

Generar con AI

  1. Ve al proceso para el que quieres crear una plantilla de documento.
  2. Haz clic en Manage > Document templates > Create template > Generate using AI.
  3. Introduce un nombre para la plantilla de documento, por ejemplo, Employee Offer Letter u Purchase Order.
  4. Selecciona un idioma para la plantilla.
  5. Haz clic en Generate. Kissflow AI utiliza estos datos como una instrucción para crear el primer borrador, llamado Draft 1.

Regenerar con AI para mejorar los borradores

Refina un borrador añadiendo más información y, después, haz clic en Regenerate para reflejar los cambios en un nuevo borrador.

Note

Puedes ir a cualquier borrador existente y utilizarlo como base para regenerar un nuevo borrador con los cambios que quieras.

Important

Un borrador solo se puede utilizar para regenerar durante la hora posterior a su creación. Por ejemplo, si el borrador 7 se generó el 19 de enero a las 15:45, puedes utilizarlo para regenerar un nuevo borrador solo antes del 19 de enero a las 16:45. Puedes crear un máximo de 10 borradores cada vez que inicies Generate using AI.

Finalizar un borrador de plantilla

Cuando estés satisfecho con un borrador, ábrelo y haz clic en Use this draft, en la parte superior derecha de la página. El borrador se transfiere al editor de plantillas de documentos, donde puedes personalizar más el documento.

Editar una plantilla de documento

El editor de plantillas admite las opciones de formato estándar que esperarías de cualquier editor de texto, además de insertar campos de proceso, saltos de página, imágenes y tablas de formulario. También puedes escribir manualmente condiciones y bucles.

Tip

Internamente, la plantilla se procesa mediante el motor de plantillas Jinja. Cuando quieras que una línea aparezca solo en determinados casos o que una tabla se repita para cada fila, consulta Escribir lógica en tu plantilla para ver ejemplos que puedes copiar y pegar.

Insertar campos de proceso

Inserta un campo del sistema o del proceso de cualquiera de estas formas:

  • Escribe dos llaves sin espacios entre ellas ({{) para ver la lista de campos utilizados en el proceso actual y, después, selecciona el que quieras insertar.
  • Arrastra un campo desde el panel izquierdo hasta el editor de plantillas.

Campos compatibles

Dentro de las plantillas de documentos solo se admiten las tablas de formulario y los siguientes tipos de campo:

  • Texto
  • Área de texto
  • Número
  • Moneda
  • Correo electrónico
  • Número de secuencia
  • Fecha
  • Fecha y hora
  • Lista desplegable
  • Sí/No
  • Usuario, incluidos los campos de usuario que permiten varios usuarios
  • Imagen
  • Firma

Campos no compatibles

Estos tipos de campo no son compatibles dentro de las plantillas de documentos:

  • Botón de opción
  • Lista desplegable de selección múltiple
  • Casilla de verificación
  • Búsqueda
  • Búsqueda remota
  • Archivo adjunto
  • Archivo adjunto inteligente
  • Agregación
  • Geolocalización
  • Escáner
  • Lista de comprobación
  • Clasificación
  • Control deslizante
  • Texto enriquecido
  • Botón

Tip

Si necesitas un valor de un campo no compatible en el PDF, añade un campo compatible al formulario, complétalo a partir del campo no compatible mediante una fórmula o un paso de integración e inserta ese campo. Por ejemplo, un campo Número con una fórmula puede contener el valor de un campo Agregación.

Insertar saltos de página

Añade tantas páginas como quieras al documento. Haz clic en el botón Page break () de la barra de herramientas para insertar uno.

Añadir una tabla

Inserta en la plantilla de documento una tabla de formulario creada como parte del proceso de la misma forma que insertarías un campo: arrástrala y suéltala en el editor de plantillas.

Important

Al arrastrar una tabla de formulario al editor, se añade una línea de código encima y debajo de ella, por ejemplo {% for Line_Items in Table__Line_Items %} y {% endfor %}. Estas líneas hacen que la tabla se repita una vez por cada fila. Mantén ambas líneas exactamente como están escritas, excepto que puedes añadir una condición al final de la línea for, como se muestra en Tablas.

Introduce los nombres de los encabezados de las columnas y utiliza llaves dobles para insertar un campo de proceso como valor de una columna. Dentro de la tabla, un campo se escribe como el nombre de la tabla, un punto y el nombre del campo, por ejemplo {{ Line_Items.Quantity }}.

Note

No puedes arrastrar y soltar un campo mientras configuras el valor de un campo específico de una tabla; utiliza llaves dobles.

Para numerar las filas, filtrar las filas que aparecen o calcular el total de una columna, consulta Tablas, en la sección Escribir lógica en tu plantilla.

Escribir lógica en tu plantilla

Utiliza lógica cuando una oración deba aparecer solo cuando una opción Sí/No esté activada, cuando un párrafo deba cambiar según una lista desplegable o cuando una tabla deba omitir algunas filas. Escribe etiquetas breves en el editor y la plantilla decide qué imprimir cuando se genera el PDF.

Hay tres elementos de sintaxis:

  • {{ Field_ID }} imprime un valor. Esto es lo que inserta el selector de campos.
  • {% ... %} toma una decisión o repite algo. Cada {% if %} termina con {% endif %} y cada {% for %} termina con {% endfor %}. La única excepción es la forma abreviada dentro de una etiqueta de impresión, {{ 'Yes' if Paid else 'No' }}, que no necesita una etiqueta de cierre.
  • | (una barra vertical) aplica un filtro a un valor: {{ Name | upper }} imprime el nombre en mayúsculas y {{ Rating | int }} convierte el texto en un número entero. Los filtros se pueden encadenar de izquierda a derecha.

Los ejemplos siguientes utilizan ID de campos de muestra como Need_Another_Interview. Sustitúyelos por los ID de tu propio proceso. Escribe {{ en el editor para ver los ID de tus campos, que pueden diferir de las etiquetas que aparecen en el formulario.

Tres aspectos que debes conocer primero

  1. Los números y las fechas llegan como texto. Los valores de Número, Moneda, Fecha y Fecha y hora ya tienen formato (mediante la configuración de Formato) antes de que la plantilla los reciba. Un campo Número que contiene 4 llega como el texto "4", uno mayor como "1,200.00" y un campo Moneda como "12,500.00 USD" o "$12,500.00". Para comparar o calcular, conviértelo primero: Rating | int para un número entero pequeño, Quantity | replace(',', '') | float cuando el valor pueda alcanzar 1.000 o más. Comparar sin convertir provoca el error An unexpected error occurred. Para Moneda, realiza las operaciones en el formulario con un campo Número y una fórmula en lugar de hacerlo en la plantilla; el código o símbolo y el estilo de separador elegido dificultan convertir el texto de forma fiable.
  2. Un campo vacío está ausente, no en blanco. Cuando un campo no tiene valor, no se envía a la plantilla. Imprimir un campo ausente no muestra nada y probarlo con {% if Comments %} se considera falso, por lo que esta es la forma correcta de comprobar si un campo está vacío. Las pruebas como Score != 0 son verdaderas para un campo vacío, porque «ausente» no equivale a cero.
  3. Algunos campos son más que texto. Un campo Sí/No es un valor verdadero o falso, por lo que {% if Toggle %} es todo lo que necesitas. Un campo Usuario siempre llega con Name, _id y Kind, así que {{ Approver.Name }} imprime el nombre y queda vacío cuando no hay nadie asignado. Un campo Usuario que permite varios usuarios llega como una lista de usuarios de este tipo. Una tabla de formulario es una lista de filas, por eso necesita un bucle {% for %}.

Note

En los ejemplos siguientes, cada etiqueta aparece en su propia línea para facilitar la lectura. En el editor, cada línea es un párrafo, por lo que una etiqueta en su propia línea deja un párrafo vacío en el PDF cuando su condición es falsa. Cuando un ejemplo funcione, mueve las etiquetas a la misma línea que el texto que controlan (consulta el último ejemplo de Condiciones).

Condiciones

Mostrar una línea solo cuando una opción Sí/No esté activada

{% if Need_Another_Interview %}
Second interviewer: {{ Interviewer_2.Name }}
{% endif %}

Cuando la opción está activada, se imprime la línea. Cuando está desactivada, no se imprime nada. No escribas == "Yes"; el campo ya es verdadero o falso.

Imprimir Sí o No en lugar de Verdadero o Falso

{{ 'Yes' if Package_Paid else 'No' }}

La misma estructura funciona con cualquier elección binaria, por ejemplo, imprimir una palabra según un número: {{ 'Deposit' if Payment_Mode | int == 1 else 'Cheque' }}.

If, else if y else

{% if Band == 'BL1' or Band == 'CL1' %}
Notice period: 2 months
{% elif Band == 'DL1' %}
Notice period: 1 month
{% else %}
Notice period: 3 months
{% endif %}

Une las condiciones con las palabras and, or y not. Los símbolos || y && del generador de fórmulas no son válidos aquí y provocan un error de sintaxis. Una forma más breve de probar varios valores es: {% if Band in ['BL1', 'CL1'] %}.

Ocultar un campo vacío o imprimir un marcador de posición

{% if Comments %}Comments: {{ Comments }}{% endif %}

Comments: {{ Comments | default('N/A') }}

La primera línea no imprime nada cuando Comments está vacío. La segunda siempre imprime algo, utilizando N/A como valor alternativo. Para un campo Usuario, prueba el nombre: {% if Approver.Name %}.

Comparar números

{% if Rating | int >= 2 %}Meets the bar{% endif %}

{% if Overall_Rating is defined and Overall_Rating | int != 0 %}
Rated {{ Overall_Rating }}
{% endif %}

Sin | int (o | float para decimales), la comparación falla durante la vista previa o la generación con An unexpected error occurred, porque el valor es texto. is defined significa «este campo tiene un valor»; el segundo ejemplo lo comprueba primero, por lo que una clasificación vacía no imprime nada en lugar de superar la prueba != 0.

Evitar un espacio en blanco cuando la condición es falsa

Thank you for your order.
{% if Gift_Note %}Gift note: {{ Gift_Note }}{% endif %}
Regards, Sales

Mantén las etiquetas de apertura y cierre en el mismo párrafo que el texto que controlan. Una etiqueta en una línea independiente se convierte en un párrafo vacío cuando la condición es falsa, y ese es el espacio en blanco que aparece en el PDF. Para ocultar un bloque completo de párrafos, coloca {% if %} al principio del primer párrafo y {% endif %} al final del último.

Tablas

Cuando sueltas una tabla de formulario, el editor escribe el bucle por ti: {% for Line_Items in Table__Line_Items %} ... {% endfor %}. Todo lo que se encuentre entre esas dos etiquetas se repite una vez por fila y Line_Items representa la fila actual. Estos ejemplos se basan en ese bucle.

Numerar las filas

{% for Line_Items in Table__Line_Items %}
{{ loop.index }}. {{ Line_Items.Item }} x {{ Line_Items.Quantity }}
{% endfor %}

Imprime 1. Pen x 2, 2. Ink x 1 y así sucesivamente. Dentro de un bucle, loop.index cuenta a partir de 1, loop.first y loop.last son verdaderos en la primera y la última fila, y loop.length es el número de filas.

Mostrar solo algunas filas o dividir una tabla en varias

{% for Line_Items in Table__Line_Items if Line_Items.Category == 'HRA' %}
{{ Line_Items.Item }}
{% endfor %}

Añade if y una condición al final de la línea for escrita por el editor; solo se imprimen las filas que coincidan. loop.index cuenta únicamente las filas impresas. Para mostrar la misma tabla de formulario como tres tablas separadas en el PDF, suelta la tabla tres veces y añade una condición diferente a cada línea for.

Mostrar una oración si coincide alguna fila

{% if Table__Line_Items | selectattr('Category', 'equalto', 'HRA') | list %}
HRA is included in this payslip.
{% endif %}

Se interpreta como «seleccionar las filas cuya Category sea igual a HRA». | list recopila las filas coincidentes para que la condición pueda comprobar si existe alguna; cuando no hay coincidencias, la condición es falsa. Utiliza 'ne' (distinto), 'gt' (mayor que) o 'lt' (menor que) en lugar de 'equalto'.

Imprimir NIL para una tabla vacía, contar filas y calcular el total de una columna

{% if Table__Line_Items %}
(your table goes here)
{% else %}
NIL
{% endif %}

Items: {{ Table__Line_Items | length }}
Total quantity: {{ Table__Line_Items | map(attribute='Quantity') | map('int') | sum }}

La última línea se interpreta como «tomar la Quantity de cada fila, convertirla en un número y sumarlas». Los totales solo funcionan con números, por lo que map('int') (o map('float')) convierte primero la columna. Para una columna Número que pueda alcanzar 1.000 o más, elimina el separador antes de convertirla: map('replace', ',', '') | map('float'). Para un cálculo por fila: {{ (Line_Items.Quantity | float) * (Line_Items.Rate | float) }}, añadiendo | round(2) alrededor de toda la expresión si necesitas dos decimales. Para los totales monetarios, añade al formulario un campo Número que sume la columna con una fórmula e inserta ese campo; así evitas convertir texto de Moneda en la plantilla.

Reutilizar un conjunto filtrado de filas

{% set travel = Table__Expenses | selectattr('Category', 'equalto', 'Travel') | list %}
{% if travel %}
{% for Expenses in travel %}{{ loop.index }}. {{ Expenses.Item }}{% endfor %}
Rows: {{ travel | length }}
{% else %}
No travel expenses
{% endif %}

{% set %} guarda las filas coincidentes con el nombre que elijas, para que puedas recorrerlas, contarlas y comprobar si no hay ninguna sin repetir el filtro cada vez.

Usuarios y texto

Nombres de un campo de varios usuarios

{{ Approvers | map(attribute='Name') | join(', ') }}

Imprime Asha Menon, Ravi Nair. Esto es lo que inserta el editor cuando arrastras el campo Name de un campo de varios usuarios a la plantilla. Para un campo Usuario individual, {{ Requester.Name }} es suficiente.

Convertir texto separado por comas en una lista

{% for item in Services.split(',') %}
- {{ item.strip() }}
{% endfor %}

Convierte Audit, Tax, Advisory en tres líneas. Los campos de texto también admiten {{ Name | upper }}, {{ Summary | truncate(80) }} y {{ Reference | replace('-', '/') }}.

El formato no es lógica

El orden de las fechas, la zona horaria, el símbolo o código de moneda y los separadores de números se configuran mediante el botón Format de la barra de herramientas, no mediante etiquetas. Consulta Dar formato a los campos de moneda, número y fecha. No existe ninguna etiqueta que escriba una cantidad con palabras. Si necesitas «Cincuenta mil» en el PDF, calcula el valor en un campo de texto del formulario o en un paso de integración e inserta ese campo.

Qué no debes escribir

Cada uno de estos ejemplos produce el error Action failed due to syntax error in document template, falla con An unexpected error occurred o imprime silenciosamente un resultado incorrecto.

EscribeEscribe en su lugarMotivo
A == 'x' || B == 'y'A == 'x' or B == 'y'|| es sintaxis del generador de fórmulas, no de las plantillas
A && BA and BIgual
isBlank(A), isnotblank(A)not A, ALas funciones del generador de fórmulas no existen en las plantillas
{% if Rating >= 2 %}{% if Rating | int >= 2 %}Los números llegan como texto; este ejemplo falla con "An unexpected error occurred"
{% if Score != 0 %}{% if Score is defined and Score | int != 0 %}Un campo vacío está ausente, no equivale a cero
{% if Toggle == "Yes" %}{% if Toggle %}Sí/No ya es verdadero o falso
{% if A %} sin {% endif %}Cierra siempre con {% endif %} o {% endfor %}Es la causa más común del error después de pegar o duplicar contenido
{{ Table__Line_Items.Quantity }}{{ Line_Items.Quantity }} dentro del bucleLa tabla es una lista de filas; los campos pertenecen a la fila
{{ Amount | currency }}Botón Format > CurrencyNo existe una etiqueta de este tipo; el formato se configura en la barra de herramientas

Para cualquier aspecto que no se cubra aquí, la referencia de plantillas Jinja enumera todas las etiquetas y filtros. Solo están disponibles los integrados; no se pueden añadir funciones personalizadas.

Insertar una imagen

Añade una imagen de cualquiera de estas formas:

  1. Desde tu ordenador: arrastra un archivo de imagen desde tu ordenador hasta el editor de plantillas.
  2. Desde una página web: haz clic con el botón derecho en la imagen y selecciona Copy image address. En el editor de plantillas, haz clic en el icono Insert image, haz clic con el botón derecho y pega la dirección de la imagen; después, haz clic en Done. Pasa el cursor sobre la imagen para darle formato, cambiar su tamaño o eliminarla.
  3. Copiar y pegar: copia una imagen de un documento existente (por ejemplo, de Microsoft Word o Google Docs) y pégala directamente en el editor de plantillas.

Tip

También puedes copiar y pegar contenido de texto desde cualquier fuente externa en el editor.

Insertar un encabezado y un pie de página

Un encabezado aparece en la parte superior de un documento PDF y un pie de página, en la parte inferior. Ambos se utilizan normalmente para información que se repite en todas las páginas, como el nombre del documento, los encabezados, los números de página, las imágenes o la fecha.

  1. Haz clic en Header & Footer en el editor para abrir una ventana independiente para el encabezado y el pie de página. La altura del encabezado y del pie de página se establece mediante los márgenes superior e inferior del lienzo base; cámbialos con el botón Margins. Dentro del editor de encabezado y pie de página, puedes configurar márgenes superior e inferior adicionales, hasta un máximo de 400 px. El lienzo base también determina los márgenes izquierdo y derecho del encabezado y del pie de página, y no se pueden cambiar desde el editor.

  2. Añade contenido al encabezado y al pie de página:

    • Contenido textual
    • Imágenes y tablas estáticas
    • Número de página y cantidad de páginas

    Note

    No puedes insertar una child table en el encabezado ni en el pie de página. Las condiciones como {% if %} sí funcionan allí.

  3. Cuando hayas añadido el contenido necesario, haz clic en Save y, después, en Preview para ver cómo se procesará la plantilla de documento.

Dar formato a los campos de moneda, número y fecha

Si tu plantilla incluye un campo Number, Currency, Date o DateTime campo, puedes controlar cómo se muestran sus valores mediante la opción Format. Hay tres categorías de formato disponibles: Currency, Number y Timezone.

Important

Los cambios de formato se aplican a todos los campos de ese tipo dentro de la plantilla de documento; no se pueden limitar a un campo específico. Los valores llegan a la plantilla con el formato aplicado, por eso un campo Número es texto dentro de una condición (consulta Tres aspectos que debes conocer primero).

Moneda

Elige si los valores monetarios muestran el código de moneda después del valor o el símbolo de moneda antes de este.

Número

Elige cómo se separan los números dentro de los campos Number y Currency. Hay cuatro estilos de separador disponibles; el estilo estadounidense se aplica de forma predeterminada.

Fecha y zona horaria

Elige la zona horaria y el orden de fecha utilizados para mostrar los campos Date y DateTime. Si el formulario muestra las fechas como DD/MM/YYYY, pero el PDF las muestra como MM/DD/YYYY, esta es la configuración que debes cambiar. A medida que eliges una opción, sobre las opciones de formato aparece una vista previa del resultado esperado.

Personalizar la página

Utiliza la opción Page setup para configurar el diseño y la apariencia básicos del documento.

Orientación de la página

Elige Portrait o Landscape para tus páginas.

Color de página

Establece el color de fondo de tus páginas.

Márgenes

Configura los márgenes de la página:

  • Auto: establece automáticamente los cuatro márgenes (superior, inferior, izquierdo y derecho) en 92 px.
  • Custom: te permite establecer cada margen manualmente.

Haz clic en Apply para guardar los cambios.

Obtener una vista previa de una plantilla de documento

Haz clic en Preview, en la parte superior del editor, cuando termines de crear el borrador. Desde la pantalla de vista previa, puedes maximizar la vista o descargar el documento como PDF.

Note

La plantilla de documento se guarda automáticamente cuando obtienes una vista previa, pero también puedes hacer clic en Save en cualquier momento.

Encontrar un error de sintaxis

Si Preview o el paso Generate a PDF document falla con Action failed due to syntax error in document template, la plantilla contiene una etiqueta que el motor no pudo leer. El mensaje no indica la línea, así que comprueba lo siguiente en orden:

  1. Etiquetas sin cerrar. Cada {% if %} necesita un {% endif %} y cada {% for %}, un {% endfor %}. Es la causa más común, especialmente después de pegar contenido o duplicar una plantilla.
  2. Símbolos del generador de fórmulas. Busca ||, && y nombres de funciones como isBlank( en la plantilla. Sustitúyelos como se muestra en Qué no debes escribir.
  3. Una etiqueta dividida por el formato. Aplicar negrita o un color a una parte de una etiqueta, por ejemplo solo al nombre del campo dentro de {{ }}, divide la etiqueta en dos. Selecciona la etiqueta completa y elimina su formato; después, vuelve a aplicar formato solo al texto que la rodea.
  4. Comparar texto con un número. {% if Rating >= 2 %} falla con An unexpected error occurred en lugar de mostrar el mensaje de sintaxis. Añade | int.
  5. Líneas de tabla editadas. Si el {% for ... %} o {% endfor %} alrededor de una tabla de formulario se eliminó o modificó de cualquier forma distinta a añadir una condición, vuelve a insertar la tabla.

Para localizar el problema, duplica primero la plantilla (Administrar una plantilla de documento) y trabaja en la copia: elimina la mitad de las etiquetas de lógica, obtén una vista previa y repite el proceso con la mitad que siga fallando. La plantilla original permanece intacta hasta que encuentres la solución.

Asociar una plantilla de documento con un conector de proceso

Automatiza la generación de archivos PDF conectando tu proceso con una plantilla de documento mediante el conector de proceso.

  1. En el conector, selecciona el paso Generate a PDF document.

  2. Configura una conexión con la cuenta necesaria.

  3. Elige un proceso y, después, selecciona el ID de instancia del proceso; normalmente es el ID del paso de activación, para que el PDF se genere para el elemento que inició la integración.

  4. Selecciona la plantilla de documento que se asignará al proceso.

  5. Introduce un título para el documento y decide si quieres adjuntarlo a un campo del formulario del proceso. Si es así, selecciona el campo de archivo adjunto que quieras utilizar.

    Note

    Puedes actualizar los campos para ver los campos del formulario añadidos recientemente. También puedes asignar campos del paso de activación o de pasos de acción anteriores; estos valores se completan automáticamente cuando se ejecuta la acción.

  6. Haz clic en Next.

  7. Añade un paso del conector de correo electrónico de Kissflow para compartir el PDF generado como archivo adjunto de correo electrónico.

  8. Completa los campos del correo electrónico y, en Attachments > Fields > Generate PDF, selecciona el campo key.

  9. Activa la integración para activarla.

Administrar una plantilla de documento

  1. Ve a tu proceso y haz clic en Manage > Document templates.
  2. Elige una plantilla, haz clic en More options () y, después, edítala, cámbiale el nombre, duplícala o elimínala.

Idiomas compatibles

Las plantillas de documentos son compatibles con los siguientes idiomas:

  • Inglés
  • Italiano (Italiano)
  • Ruso (Русский)
  • Alemán (Deutsch)
  • Español (Español)
  • Francés (Français)
  • Portugués brasileño (Portuguesê (Brazil))
  • Chino simplificado (简体中文)
  • Coreano (한국어)
  • Japonés (日本語)
  • Vietnamita (Tiếng Việt)
  • Tailandés (ภาษาไทย)
  • Árabe (العربية)
  • Polaco (Język Polski)
  • Eslovaco (Slovenčina)
  • Checo (Čeština)
  • Ucraniano (Українська)
  • Hindi (हिन्दी)
  • Rumano (Română)

What's next

En esta página