Ir al contenido
Otras versiones

Cargando…

Metadata Select field

Atributo Descripción Requerido
label El texto que se muestra como etiqueta en la interfaz de usuario. true
name Identificador único del campo.
Dos metadatos no pueden tener el mismo nombre. El nombre debe ser único.
El nombre debe comenzar por “okp:”.
Es una buena práctica utilizar el nombre del grupo de metadatos como base del nombre del campo de metadatos. Por ejemplo, se ha utilizado “okg:consulting” para el nombre de campo “okp:consulting.select”, cambiando “okg” por “okp”. Eso ayuda a averiguar el grupo de metadatos a partir del nombre del campo de metadatos.
Utilice únicamente letras, números y guion bajo: “0-9a-zA-Z_”.
true
type Valor del tipo. Tipos permitidos:
- simple (se permite una sola opción).
- multiple (se permiten varias opciones).
true
table Nombre de la tabla de metadatos.
La aplicación puede almacenar valores en una tabla de metadatos, que puede utilizarse en esta consulta.
*
width El ancho del elemento HTML.
height El alto del elemento HTML.
optionsQuery Una consulta de metadatos utilizada para obtener las opciones seleccionadas. *
className Una clase utilizada para obtener las opciones seleccionadas. *
suggestion Al añadir metadatos a documentos, la aplicación puede sugerir automáticamente algunos valores basándose en el análisis del contenido del documento. Por defecto, la aplicación incluye algunas implementaciones que pueden ampliarse fácilmente.
- com.openkm.form.suggestion.DocumentContentContainsSuggestion: obtiene sugerencias a partir del contenido del documento (usa String.contains)
- com.openkm.form.suggestion.DocumentContentTokenizerSuggestion: obtiene sugerencias a partir del contenido del documento (usa StringTokenizer).
- com.openkm.form.suggestion.DocumentTermsSuggestion: obtiene sugerencias a partir de los vectores de términos del documento.
Para más información, lea Crear su propio analizador de sugerencias.
false
readonly Establece que el campo no se podrá modificar en la interfaz de usuario. Por defecto el valor es “false”. false
  • * Hay dos opciones para obtener los valores de las opciones:

  • Elementos hijo:

  • El tipo es igual a simple.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE property-groups PUBLIC "-//OpenKM//DTD Property Groups 2.3//EN"
"http://www.openkm.com/dtd/property-groups-2.3.dtd">
<property-groups>
<property-group label="Consulting" name="okg:consulting">
<select label="select label" name="okp:consulting.select" type="simple">
<option label="one" value="001" />
<option label="two" value="002" />
<option label="three" value="003" />
</select>
</property-group>
</property-groups>
  • El tipo es igual a multiple.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE property-groups PUBLIC "-//OpenKM//DTD Property Groups 2.5//EN"
"http://www.openkm.com/dtd/property-groups-2.5.dtd">
<property-groups>
<property-group label="Consulting" name="okg:consulting">
<select label="select label" name="okp:consulting.select" type="multiple">
<option label="one" value="001" />
<option label="two" value="002" />
<option label="three" value="003" />
</select>
</property-group>
</property-groups>
  • La aplicación utiliza dos tablas llamadas OKM_DB_METADATA_TYPE Y OKM_DB_METADATA_VALUE que ayudan a almacenar los valores de las opciones utilizadas en el select. Es muy útil cuando se tiene un gran número de valores.
  • En la tabla OKM_DB_METADATA_TYPE se almacena la definición de la tabla de metadatos (nombre de la tabla, nombre de la columna y tipo de la columna).
  • En la tabla OKM_DB_METADATA_VALUE se almacenan los valores de los registros.

Cree la definición de la tabla de metadatos.

  • Vaya a Administration > Database query.
  • En la parte inferior derecha seleccione JDBC en la lista.
  • Pegue el SQL en el cuadro
DELETE FROM OKM_DB_METADATA_TYPE WHERE DMT_TABLE='country';
INSERT INTO OKM_DB_METADATA_TYPE (DMT_TABLE, DMT_REAL_COLUMN, DMT_TYPE, DMT_VIRTUAL_COLUMN) VALUES ('country', 'col00', 'integer', 'country_id');
INSERT INTO OKM_DB_METADATA_TYPE (DMT_TABLE, DMT_REAL_COLUMN, DMT_TYPE, DMT_VIRTUAL_COLUMN) VALUES ('country', 'col01', 'text', 'country_name');
  • Haga clic en el botón Execute de la parte inferior derecha.

Inserte los valores de la tabla de metadatos:

  • Vaya a Administration > Database query.
  • En la parte inferior derecha seleccione JDBC en la lista.
  • Pegue el SQL en el cuadro
DELETE FROM OKM_DB_METADATA_VALUE WHERE DMV_TABLE='country';
INSERT INTO OKM_DB_METADATA_VALUE (DMV_TABLE, DMV_COL00, DMV_COL01) VALUES ('country', '001', 'Australia');
INSERT INTO OKM_DB_METADATA_VALUE (DMV_TABLE, DMV_COL00, DMV_COL01) VALUES ('country', '002', 'Canada');
  • Haga clic en el botón Execute de la parte inferior derecha.

Por último, la definición XML:

  • En optionsQuery, los valores que comienzan por el carácter $ se identifican como nombres de columna. Véanse $country_id y $country_name más abajo.
  • Pueden utilizarse cláusulas SQL normales como “order by”, etc.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE property-groups PUBLIC "-//OpenKM//DTD Property Groups 2.5//EN"
"http://www.openkm.com/dtd/property-groups-2.5.dtd">
<property-groups>
<property-group label="Consulting" name="okg:consulting">
<select label="country" name="okp:consulting.country" type="simple" table="country"
optionsQuery="select $country_id, $country_name from DatabaseMetadataValue dmv where dmv.table='country' order by $country_name"/>
</property-group>
</property-groups>

Basándose en el analizador de contenido, la aplicación puede sugerir algunos valores de opciones. En la interfaz de usuario, las opciones sugeridas se mostrarán en verde.

La aplicación incluye algunas implementaciones que pueden ampliarse fácilmente.

  • com.openkm.form.suggestion.DocumentContentContainsSuggestion: obtiene sugerencias a partir del contenido del documento (usa String.contains)
  • com.openkm.form.suggestion.DocumentContentTokenizerSuggestion: obtiene sugerencias a partir del contenido del documento (usa StringTokenizer).
  • com.openkm.form.suggestion.DocumentTermsSuggestion: obtiene sugerencias a partir de los vectores de términos del documento.

Para más información, lea Crear su propio analizador de sugerencias.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE property-groups PUBLIC "-//OpenKM//DTD Property Groups 2.3//EN"
"http://www.openkm.com/dtd/property-groups-2.3.dtd">
<property-groups>
<property-group label="Consulting" name="okg:consulting">
<select label="select label" name="okp:consulting.select" type="multiple"
suggestion="com.openkm.form.suggestion.DocumentContentContainsSuggestion">
<option label="one" value="001" />
<option label="two" value="002" />
<option label="three" value="003" />
</select>
</property-group>
</property-groups>