Ir al contenido
Otras versiones

Cargando…

Crear plantillas de texto

Registre la definición del grupo de metadatos en Administration > Metadata .

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE property-groups PUBLIC "-//OpenKM//DTD Property Groups 2.1//EN"
"http://www.openkm.com/dtd/property-groups-2.1.dtd">
<property-groups>
<property-group label="Sample Template" name="okg:tpl">
<input label="Name" name="okp:tpl.name"/>
<input label="Birth Date" name="okp:tpl.birth_date" type="date" />
<select label="Language" name="okp:tpl.language" type="simple">
<option label="Java" value="java"/>
<option label="Python" value="python"/>
<option label="PHP" value="php" />
</select>
</property-group>
</property-groups>

Para relacionar el campo de formulario de la plantilla con el grupo de propiedades, debe nombrarlos siguiendo una convención de nomenclatura: sustituya “:” y “.” por “_”. Aquí puede ver la correspondencia entre ambos campos:

Nombre del campo de metadatos Nombre del campo de la plantilla Valor del campo de la plantilla
okp:tpl.name okp_tpl_name ${okp_tpl_name!}
okp:tpl.birth_date okp_tpl_birth_date ${okp_tpl_birth_date!}
okp:tpl.language okp_tpl_language ${okp_tpl_language!}

Para este tipo de plantilla crearemos una de tipo HTML. Este es el código fuente de la plantilla:

<html>
<body>
<h1>Sample template</h1>
<table>
<tr>
<td><b>Name</b></td>
<td>${okp_tpl_name!}</td>
</tr>
<tr>
<td><b>Birth Date</b></td>
<td>${okp_tpl_birth_date!?string("yyyy-MM-dd")}</td>
</tr>
<tr>
<td><b>Language</b></td>
<td>${okp_tpl_language!}</td>
</tr>
</table>
</body>
</html>

Las etiquetas ${okp_tpl_name!}, ${okp_tpl_birth_date!} y ${okp_tpl_language!} se sustituirán por los valores introducidos por el usuario. Se producirá un error y se abortará el procesamiento de la plantilla si intenta acceder a una variable inexistente, pero el operador ! gestiona esta situación. Además, puede indicar un valor por defecto para el caso de una variable inexistente con esta expresión:

${missing_value!"The default one"}

El resultado es una conversión a PDF de la plantilla HTML con los datos del cliente solicitados por OpenKM.  

OpenKM utiliza FreeMarker internamente, por lo que puede aprovechar la flexibilidad de formato de FreeMarker. Por ejemplo, puede establecer el formato de fecha de esta forma:

${okp_tpl_birth_date?string("yyyy-MM-dd")}

Puede obtener más información sobre el formato de FreeMarker en: Built-in Reference.  

  • Suba el archivo tpl.html a /okm:templates con el contenido descrito anteriormente.
  • Registre la definición de metadatos okg:tpl en Administration > Metadata 
  • Habilite los metadatos desde los perfiles en Administration > Profiles 
  • Añada el grupo de metadatos okg:tpl al archivo tpl.html.