Ir al contenido
Otras versiones

Cargando…

Search samples

La mayoría de los métodos usan QueryParams; aquí tiene algunos consejos sobre cómo usarlo.

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, use el valor:
<br>(QueryParams.DOCUMENT | QueryParams.FOLDER) <br>
Restringe la búsqueda a un tipo de nodo.
author String No. El valor debe ser un userId válido. Filtra por el usuario creador.
name String Sí. Filtra por el nombre del nodo.
title String Sí. Filtra por el nombre del título.
keywords List Sí. Filtra por palabras clave.
categories List No. Los valores deben ser UUID de categoría; no utilice una 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 el tipo MIME del documento.
language No. El valor debe ser un idioma válido.
Solo puede aplicarse a nodos de tipo documento.
Filtra por el idioma del documento.
folder No. Si está vacío, se usa por defecto el nodo “/okm:root”.
El valor debe ser un UUID válido; no utilice una 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 por nodos creados después de una fecha.
lastModifiedTo Calendar No. Filtra por nodos creados antes de una fecha.
mailSubject String Sí. Solo se aplica a nodos de tipo correo. Filtra por el campo asunto del correo.
mailFrom String Sí. Solo se aplica a nodos de tipo correo. Filtra por el campo From del correo.
mailTo Sí. Solo se aplica a nodos de tipo correo. Filtra por el campo To del correo.
notes Sí. Filtra por notas.
properties Dictionary<String, String> Sí, en casi todos. Los comodines no pueden aplicarse a valores de campos de metadatos como “date”.
El diccionario de propiedades se compone de pares:
(‘nombre_campo_metadatos’,’valor_campo_metadatos”)
Por ejemplo:
<br>Dictionary<String, String> properties = new Dictionary<String, String>();<br>properties.Add("okp:consulting.name", "name value")<br>
 Filtrando por un rango de fechas:
<br> DateTime date = DateTime.Now;// today<br> DateTime to = new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second, date.Millisecond); <br> DateTime from = to.AddDays(-3);// three days before<br> Dictionary<String,String> properties = new Dictionary<String,String>();<br> properties.Add("okp:consulting.date", ISO8601.formatBasic(from)+","+ISO8601.formatBasic(to));<br>
Al filtrar por un rango de fechas, debe establecer ambos valores (from y to); de lo contrario, OpenKM ignorará el filtro.
 Para filtrar por un campo de metadatos de tipo múltiple como este:
<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:
<br>properties.Add("okp:consulting.multiple", "one;two");<br>
 Donde “one” y “two” son valores válidos y el carácter “;” se usa como separador.
Filtra por valores de un grupo de metadatos.

Ejemplos de comodines:

Variable Ejemplo Descripción
name test*.html Cualquier documento que empiece por los caracteres “test” y termine por los caracteres “.html”
name test?.html Cualquier documento que empiece por los caracteres “test” seguidos de un único carácter y termine por los caracteres “.html”
name ?test* Cualquier documento en el que el primer carácter no importa, pero va seguido de los caracteres “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:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
foreach (QueryResult qr in ws.findByContent("test"))
{
System.Console.WriteLine(qr);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

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:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
foreach (QueryResult qr in ws.findByName("?test*"))
{
System.Console.WriteLine(qr);
                }
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

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:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
List<string> keywords = new List<string>();
keywords.Add("test");
foreach (QueryResult qr in ws.findByKeywords(keywords))
{
System.Console.WriteLine(qr);
                }
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

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:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
QueryParams qParams = new QueryParams();
qParams.domain = QueryParams.DOCUMENT;
qParams.name = "test*.html";
foreach (QueryResult qr in ws.find(qParams, null))
{
System.Console.WriteLine(qr);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

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:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
QueryParams qParams = new QueryParams();
qParams.domain = QueryParams.DOCUMENT;
qParams.name = "test*.html";
ResultSet rs = ws.findPaginated(qParams, 20, 10, null);
System.Console.WriteLine("Total results:" + rs.total);
foreach (QueryResult qr in rs.results)
{
System.Console.WriteLine(qr);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

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:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
ResultSet rs = ws.findSimpleQueryPaginated(20, 10, "name:grial");
System.Console.WriteLine("Total results:" + rs.total);
foreach (QueryResult qr in rs.results)
{
System.Console.WriteLine(qr);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

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:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
ResultSet rs = ws.findMoreLikeThis("c5cb1982-1a99-4741-8a07-a319b9ac3459", 100);
System.Console.WriteLine("Total results:" + rs.total);
foreach (QueryResult qr in rs.results)
{
System.Console.WriteLine(qr);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

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

Ejemplo:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
// All keywords without filtering
System.Console.WriteLine("Without filtering");
Dictionary<String, int> keywords = ws.getKeywordMap(new String[]{"test", "test2"});
foreach (KeyValuePair<string,int> kvp in keywords)
{
System.Console.WriteLine(kvp.Key + " is used :" + kvp.Value);
}
// Keywords filtered
System.Console.WriteLine("Filtering");
keywords = ws.getKeywordMap(new String[]{"test"});
foreach (KeyValuePair<string,int> kvp in keywords)
{
System.Console.WriteLine(kvp.Key + " is used :" + kvp.Value);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

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.

Ejemplo:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8180/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
foreach (Document doc in ws.getCategorizedDocuments("/okm:categories/invoices"))
{
System.Console.WriteLine(doc);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

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

Ejemplo:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
QueryParams qParams = new QueryParams();
qParams.domain = QueryParams.DOCUMENT;
qParams.name = "test*.html";
foreach (QueryResult qr in ws.find(qParams))
{
System.Console.WriteLine(qr);
}
// Save the search to be used later
qParams.queryName = "sample search";
ws.saveSearch(qParams);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

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

Ejemplo:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
foreach (QueryParams qParams in ws.getAllSearchs())
{
if (qParams.queryName.Equals("sample search"))
{
// Change some value.
qParams.name = "admin*.html";
ws.updateSearch(qParams);
}
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
getSearch(int qpId) QueryParams Obtiene los parámetros de las búsquedas guardadas.

Ejemplo:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
int qpId = 1; // Some valid search id
QueryParams qParams = ws.getSearch(qpId);
System.Console.WriteLine(qParams);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

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

Ejemplo:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
foreach (QueryParams qParams in ws.getAllSearchs())
{
System.Console.WriteLine(qParams);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

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

Ejemplo:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
int qpId = 1; // Some valid search id
ws.deleteSearch(qpId);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
findByQueryPaginated(int offset, int limit, String query, String propertiesPlugin) ResultSet Devuelve una lista de resultados paginados filtrados por los valores de los parámetros.

Ejemplo:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host, username, password);
try
{
ResultSet rs = ws.findByQueryPaginated(20, 10, "name:grial", null); System.Console.WriteLine("Total results:" + rs.total); foreach (QueryResult qr in rs.results) { System.Console.WriteLine(qr); }
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}