Campo Suggestbox de metadatos
Esta es una implementación del típico componente AJAX de cuadro de sugerencias:
| Atributo | Descripción | Obligatorio |
|---|---|---|
| label | El texto que se muestra como etiqueta en la interfaz de usuario. | true |
| name | Identificador único del campo. Dos campos de metadatos no pueden tener el mismo nombre. El nombre debe ser único. El nombre debe empezar por “okp:”. Utilizar el nombre de un grupo de metadatos como base para el nombre de un campo de metadatos es una buena práctica. Por ejemplo, se ha utilizado “okg:consulting” para el grupo de metadatos y el nombre de campo “okp:consulting.suggestbox”, cambiando “okg” por “okp”. Eso ayuda a encontrar el grupo de metadatos a partir del nombre del campo de metadatos. Utilice únicamente letras, números y guiones bajos: “0-9a-zA-Z_”. |
true |
| width | El ancho del elemento HTML. En el caso de KCenter, la interfaz debe utilizar valores de ancho basados en %; por ejemplo: - width=“50%” funcionará - width=“100px” se ignorará en la interfaz de KCenter. |
false |
| height | El alto del elemento HTML. | false |
| description | Descripción general. | false |
| filterQuery | Una consulta de Hibernate para filtrar los datos. Utilice {0} para colocar la entrada del usuario. | true |
| valueQuery | Una consulta de Hibernate para obtener el valor de un identificador. Utilice {0} para colocar el identificador. | true |
| className | Se utiliza una clase para obtener las opciones seleccionadas. | * |
| filterMinLen | El número mínimo de caracteres de la entrada para empezar a filtrar los resultados. | true |
| dialogTitle | El título del diálogo HTML. | true |
| readonly | El campo establecido no podrá modificarse en la interfaz de usuario. Por defecto el valor es “false”. | false |
| dbColumnSize | Establece el tamaño del campo de la base de datos en el que se almacena el valor. Por defecto, los campos se almacenan en una columna de la base de datos de 128 caracteres. Como la longitud de sus datos puede ser superior a 128 caracteres, el administrador debe actualizar el tamaño de columna por defecto. Consulte la sección de documentación Definición XML de metadatos para ver una explicación detallada del almacenamiento de metadatos en la base de datos de OpenKM. |
|
| defaultAccess | Política de acceso de seguridad por defecto. Por defecto está en “grant”, de modo que todos los usuarios verán la propiedad. |
-
* Hay tres opciones para obtener los valores del suggestbox (es obligatorio utilizar una de ellas):
-
Elementos hijo:
Basado en filterQuery y valueQuery
Sección titulada «Basado en filterQuery y valueQuery»Ahora filterQuery y valueQuery pueden ser consultas SQL normales.
Cree la tabla COUNTRY:
create table COUNTRY ( CT_ID varchar(2), CT_NAME varchar(32), primary key(CT_ID));
insert into COUNTRY (CT_ID, CT_NAME) values ('es', 'Spain');insert into COUNTRY (CT_ID, CT_NAME) values ('pt', 'Portugal');insert into COUNTRY (CT_ID, CT_NAME) values ('it', 'Italy');Definición de metadatos:
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE property-groups PUBLIC "-//OpenKM//DTD Property Groups 3.10//EN" "http://www.openkm.com/dtd/property-groups-3.10.dtd"><property-groups> <property-group label="Consulting" name="okg:consulting"> <suggestbox label="country" name="okp:consulting.suggestbox" width="200px" dialogTitle="Choose country" filterMinLen="3" filterQuery="select ct_id, ct_name from COUNTRY where ct_name like '%{0}%' order by ct_name" valueQuery="select ct_id, ct_name from COUNTRY where ct_id='{0}'" /> </property-group></property-groups>Basado en className
Sección titulada «Basado en className»Para ayudar a obtener una lista de aplicaciones externas o con otros fines, puede construir su propia clase para recuperar los valores de opción de esos sistemas.
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE property-groups PUBLIC "-//OpenKM//DTD Property Groups 3.10//EN" "http://www.openkm.com/dtd/property-groups-3.10.dtd"><property-groups> <property-group label="Consulting" name="okg:consulting"> <suggestbox label="country" name="okp:consulting.suggestbox" width="200px" dialogTitle="Choose country" filterMinLen="3" className="com.openkm.plugin.form.values.SuggestBoxUserList" /> </property-group></property-groups>Para más información, lea Crear su propio plugin de Suggestbox