Ir al contenido
Otras versiones

Cargando…

Search samples

Casi todos los métodos utilizan QueryParams. Aquí tiene algunos consejos sobre cómo utilizarlo.

Variables Tipo Permite comodines Restricciones Descripción
domain long No. Valores disponibles:
- QueryParams.DOCUMENT
- QueryParams.FOLDER
- QueryParams.MAIL
- QueryParams.RECORD
Por defecto el valor es QueryParams.DOCUMENT.
Para buscar documentos y carpetas utilice el valor:
<br>(QueryParams.DOCUMENT | QueryParams.FOLDER) <br>
Restringe la búsqueda a tipos de nodo.
author String No. El valor debe ser un userId válido. Filtra por el usuario creador.
name String Sí. Filtra por nombre de nodo.
title String Sí. Filtra por título.
keywords Set Sí. Filtra por palabras clave.
categories Set No. Los valores deben ser un UUID de categoría; no utilice un valor de ruta. Filtra por categorías.
content Sí. Filtra por contenido binario.
mimeType No. El valor debe ser un tipo MIME válido y registrado.
Solo puede aplicarse a nodos de tipo documento.
Filtra por tipo MIME del documento.
language No. El valor debe ser un idioma válido.
Solo puede aplicarse a nodos de tipo documento.
Filtra por idioma del documento.
folder No. Cuando está vacío, se utiliza por defecto el nodo “/okm:root”.
El valor debe ser un UUID válido; no utilice un valor de ruta.
Filtra por una carpeta.
folderRecursive Boolean No. Solo tiene sentido establecer esta variable como true cuando la variable folder no está vacía. Habilita el filtrado recursivo por una carpeta.
lastModifiedFrom Calendar No. Filtra los nodos creados después de una fecha.
lastModifiedTo Calendar No. Filtra los nodos creados antes de una fecha.
mailSubject String Sí. Solo se aplica a nodos de correo. Filtra por el campo de asunto del correo.
mailFrom String Sí. Solo se aplica a nodos de correo. Filtra por el campo remitente del correo.
mailTo Sí. Solo se aplica a nodos de correo. Filtra por el campo destinatario del correo.
notes Sí. Filtra por notas.
properties Map<String, String> Sí, para casi todos. En valores de campos de metadatos como “date”, no se pueden aplicar comodines.
El mapa de propiedades se compone de pares:
(‘nombre_campo_metadato’,‘valor_campo_metadato’)
Por ejemplo:
<br>Map<String, String> properties = new HashMap();<br>properties.put("okp:consulting.name", "name value");<br>
Filtrado por rango de fechas:
<br>Calendar to = Calendar.getInstance(); // hoy<br>to.set(0, Calendar.HOUR);<br>to.set(0, Calendar.MINUTE);<br>to.set(0, Calendar.SECOND);<br>to.set(0, Calendar.MILLISECOND);<br>Calendar from = (Calendar) to.clone();<br>from.add(-3, Calendar.DATE); // tres días antes<br>Map<String,String> properties = new HashMap<>();<br>properties.put("okp:consulting.date", ISO8601.formatBasic(from)+","+ISO8601.formatBasic(to));<br>
Cuando filtre por un rango de fechas debe establecer ambos valores (from y to); en caso contrario OpenKM ignorará el filtro.
Para filtrar por un campo de metadatos de tipo múltiple como este:
cs<br><select label="Multiple" name="okp:consulting.multiple" type="multiple"><br> <option label="One" value="one"/><br> <option label="Two" value="two"/><br> <option label="Three" value="three" /><br></select><br>
Debe hacer:
bash<br>properties.put("okp:consulting.multiple", "one;two");<br>
Donde “one” y “two” son valores válidos y el carácter “;” se utiliza como separador.
Filtra por valores de grupos de metadatos.

Ejemplos de comodines:

Variable Ejemplo Descripción
name test*.html Cualquier documento que empiece por “test” y termine en “.html”.
name test?.html Cualquier documento que empiece por “test” seguido de un único carácter y termine en “.html”.
name ?test* Cualquier documento en el que el primer carácter no importa, pero va seguido de “test”.

Descripción:

Método Valores de retorno Descripción
findByContent(String content) List Devuelve una lista de resultados filtrados por el valor del parámetro content.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.QueryResult;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8180/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
for (QueryResult qr : ws.findByContent("test")) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findByName(String name) List Devuelve una lista de resultados filtrados por el valor del parámetro name.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.QueryResult;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8180/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
for (QueryResult qr : ws.findByName("test*.html")) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findByKeywords(List keywords) List Devuelve una lista de resultados filtrados por los valores del parámetro keywords.

Ejemplo:

package com.openkm;
import java.util.Arrays;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.QueryResult;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
for (QueryResult qr : ws.findByKeywords(Arrays.asList("test"))) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
find(QueryParams queryParams, String propertiesPlugin) List Devuelve una lista de resultados filtrados por los valores del parámetro queryParams.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.QueryParams;
import com.openkm.sdk4j.bean.QueryResult;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
QueryParams qParams = new QueryParams();
qParams.setDomain(QueryParams.DOCUMENT);
qParams.setName("test*.html");
for (QueryResult qr : ws.find(qParams, null)) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findPaginated(QueryParams queryParams, int offset, int limit, String propertiesPlugin) ResultSet Devuelve una lista de resultados paginados filtrados por los valores del parámetro queryParams.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.QueryParams;
import com.openkm.sdk4j.bean.QueryResult;
import com.openkm.sdk4j.bean.ResultSet;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
QueryParams qParams = new QueryParams();
qParams.setDomain(QueryParams.DOCUMENT);
qParams.setName("test*.html");
ResultSet rs = ws.findPaginated(qParams, 20, 10, null);
System.out.println("Total results:"+rs.getTotal());
for (QueryResult qr : rs.getResults()) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findSimpleQueryPaginated(String statement, int offset, int limit) ResultSet Devuelve una lista de resultados paginados filtrados por los valores del parámetro statement.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.QueryResult;
import com.openkm.sdk4j.bean.ResultSet;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
ResultSet rs = ws.findSimpleQueryPaginated("name:grial", 20, 10);
System.out.println("Total results:"+rs.getTotal());
for (QueryResult qr : rs.getResults()) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findMoreLikeThis(String uuid, int max) ResultSet Devuelve una lista de documentos que el motor de búsqueda considera similares.

El uuid es el UUID de un documento.

El valor max se usa para limitar el número de resultados devueltos.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.QueryResult;
import com.openkm.sdk4j.bean.ResultSet;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
ResultSet rs = ws.findMoreLikeThis("f123a950-0329-4d62-8328-0ff500fd42db", 100);
System.out.println("Total results:"+rs.getTotal());
for (QueryResult qr : rs.getResults()) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getKeywordMap(List filter) Map<String, Integer> Devuelve un mapa de palabras clave con su contador, filtrado por otras palabras clave.

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8180/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
// All keywords without filtering
System.out.println("Without filtering");
Map<String, Integer> keywords = ws.getKeywordMap(new ArrayList<String>());
for (String key : keywords.keySet()) {
System.out.println(key + " is used :" + keywords.get(key) );
}
// Keywords filtered
System.out.println("Filtering");
keywords = ws.getKeywordMap(Arrays.asList("test"));
for (String key : keywords.keySet()) {
System.out.println(key + " is used :" + keywords.get(key) );
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getCategorizedDocuments(String categoryId) List Recupera una lista de todos los documentos relacionados con una categoría.

El valor del parámetro categoryId debe ser el UUID o la ruta (path) de una carpeta de categoría.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Document;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8180/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
for (Document doc : ws.getCategorizedDocuments("/okm:categories/invoices")) {
System.out.println(doc);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
saveSearch(QueryParams params) Long Guarda unos parámetros de búsqueda.

La variable queryName del parámetro params debe estar inicializada.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.QueryParams;
import com.openkm.sdk4j.bean.QueryResult;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
QueryParams qParams = new QueryParams();
qParams.setDomain(QueryParams.DOCUMENT);
qParams.setName("test*.html");
for (QueryResult qr : ws.find(qParams,null)) {
System.out.println(qr);
}
// Save the search to be used later
qParams.setQueryName("sample search");
ws.saveSearch(qParams);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
updateSearch(QueryParams params) void Actualiza unos parámetros de búsqueda guardados previamente.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.QueryParams;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
for (QueryParams qParams : ws.getAllSearchs()) {
if (qParams.getQueryName().equals("sample search")) {
// Change some value.
qParams.setName("admin*.html");
ws.updateSearch(qParams);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getSearch(int qpId) QueryParams Obtiene los parámetros de una búsqueda guardada.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.QueryParams;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
int qpId = 12; // Some valid search id
QueryParams qParams = ws.getSearch(qpId);
System.out.println(qParams);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getAllSearchs() List Recupera una lista de todos los parámetros de búsqueda guardados.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.QueryParams;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
for (QueryParams qParams : ws.getAllSearchs()) {
System.out.println(qParams);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
deleteSearch(int qpId) void Elimina unos parámetros de búsqueda guardados.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
int qpId = 12; // Some valid search id
ws.deleteSearch(qpId);
} catch (Exception e) {
e.printStackTrace();
}
}
}