Ir al contenido

Search samples

La mayoría de los métodos usan QueryParams. Aquí tiene algunos consejos sobre cómo usarlos.

Variables Tipo Admite 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 autor de creación.
name String Sí. Filtra por el nombre del nodo.
title String Sí. Filtra por título.
keywords List Sí. Filtra por palabras clave.
categories List No. Los valores deben ser UUIDs de categoría; no use valores 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 se aplica a nodos de tipo documento.
Filtra por el tipo MIME del documento.
language No. El valor debe ser un idioma válido.
Solo se aplica a nodos de tipo documento.
Filtra por el idioma del documento.
folder No. Cuando está vacío, se usa por defecto el nodo “/okm:root”.
El valor debe ser un UUID válido; no use un valor de ruta.
Filtra por una carpeta.
folderRecursive Boolean No. Solo tiene sentido establecer esta variable a true cuando la variable folder no está vacía. Activa el filtrado recursivo por una carpeta.
lastModifiedFrom Calendar No. Filtra por nodos modificados después de una fecha.
lastModifiedTo Calendar No. Filtra por nodos modificados 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”.

Primero debe crear el objeto webservice:

OKMWebservices ws = OKMWebservicesFactory.newInstance(host);

A continuación, debe iniciar sesión mediante el método “login”. Puede acceder al método “login” desde el objeto webservice “ws”, tal y como se muestra a continuación:

ws.login(user, password);

Llegados a este punto puede usar todos los métodos de search desde la clase “search”, tal y como se muestra a continuación:

ws.search.find(qParams, null)

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);
try
{
ws.login(user, password);
QueryParams qParams = new QueryParams();
qParams.domain = QueryParams.DOCUMENT;
qParams.name = "test*.html";
foreach (QueryResult qr in ws.search.find(qParams, null))
{
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 sortField, bool sortReverse, 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);
try
{
ws.login(user, password);
QueryParams _params = new QueryParams();
_params.domain = QueryParams.DOCUMENT + QueryParams.FOLDER;
_params.name = "test*";
foreach (QueryResult qr in ws.search.find(_params, SearchSortField.LAST_MODIFIED, true, null))
{
Console.WriteLine(qr.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
findSimpleNodeBasePaginated(QueryParams queryParams, int offset, int limit) SimpleNodeBaseResultSet Devuelve una lista paginada de resultados SimpleNodeBase 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;
using com.openkm.sdk4csharp.impl;
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);
try
{
ws.login(user, password);
QueryParams qParams = new QueryParams();
qParams.domain = QueryParams.DOCUMENT;
qParams.name = "test*";
SimpleNodeBaseResultSet snbrs = ws.search.findSimpleNodeBasePaginated(qp, 0, 10);
System.Console.WriteLine("Total results:" + snbrs.total);
foreach (SimpleNodeBase snb in snbrs.results)
{
System.Console.WriteLine(snb.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
findSimpleNodeBasePaginated(QueryParams queryParams, String sortField, boolean sortReverse, int offset, int limit) SimpleNodeBaseResultSet Devuelve una lista paginada de resultados SimpleNodeBase 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;
using com.openkm.sdk4csharp.impl;
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);
try
{
ws.login(user, password);
QueryParams qParams = new QueryParams();
qParams.domain = QueryParams.DOCUMENT;
qParams.name = "test*";
SimpleNodeBaseResultSet snbrs = ws.search.findSimpleNodeBasePaginated(params, SearchSortField.AUTHOR, true, 0, 10);
System.Console.WriteLine("Total results:" + snbrs.total);
foreach (SimpleNodeBase snb in snbrs.results)
{
System.Console.WriteLine(snb.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
findSimpleNodeBasePaginated(QueryParams queryParams, String sortField, bool sortReverse, int offset, int limit, String pluginName) SimpleNodeBaseResultSet Devuelve una lista paginada de resultados SimpleNodeBase 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;
using com.openkm.sdk4csharp.impl;
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);
try
{
ws.login(user, password);
QueryParams qp = new QueryParams();
qp.name = FOLDER_NAME1 + "*";
qp.domain = QueryParams.FOLDER;
SimpleNodeBaseResultSet result = ws.search.findSimpleNodeBasePaginated (qp, SearchSortField.AUTHOR, true, 0, 10, "com.openkm.plugin.search.TestNodeSearch");
Console.WriteLine("Total: " + result.total);
foreach (SimpleNodeBase nodeBase in result.results)
{
if (nodeBase != null)
{
Console.WriteLine(nodeBase.toString());
}
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

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

El valor del parámetro categoryId debe ser un UUID de carpeta de categoría o una ruta.

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);
try
{
ws.login(user, password);
foreach (Document doc in ws.search.getCategorizedDocuments("50b7a5b9-89d2-430e-bbc9-6a6e01662a71"))
{
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.

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

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);
try
{
ws.login(user, password);
QueryParams qParams = new QueryParams();
qParams.domain = QueryParams.DOCUMENT;
qParams.name = "test*.html";
foreach (QueryResult qr in ws.search.find(qParams))
{
System.Console.WriteLine(qr);
}
// Save the search to be used later
qParams.queryName = "sample search";
ws.search.saveSearch(qParams);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
updateSearch(QueryParams params) void Actualiza 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);
try
{
ws.login(user, password);
foreach (QueryParams qParams in ws.search.getAllSearchs())
{
if (qParams.queryName.Equals("sample search"))
{
// Change some value.
qParams.name = "admin*.html";
ws.search.updateSearch(qParams);
}
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
getSearch(int qpId) QueryParams Obtiene 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);
try
{
ws.login(user, password);
int qpId = 1; // Some valid search id
QueryParams qParams = ws.search.getSearch(qpId);
System.Console.WriteLine(qParams);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
getAllSearches() List Recupera una lista con 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);
try
{
ws.login(user, password);
foreach (QueryParams qParams in ws.search.getAllSearches())
{
System.Console.WriteLine(qParams.queryName);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
deleteSearch(int qpId) void Elimina 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);
try
{
ws.login(user, password);
int qpId = 1; // Some valid search id
ws.search.deleteSearch(qpId);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
getSearchConfig(String pluginName) NodeSearchConfig Devuelve un objeto NodeSearchConfig.

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);
try
{
ws.login(user, password);
NodeSearchConfig nodeSearchConfig = ws.search.getSearchConfig("com.openkm.plugin.search.TestNodeSearch");
Console.WriteLine(nodeSearchConfig.toString());
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
getSearchPlugins() SearchPluginList Devuelve un objeto SearchPluginList.

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);
try
{
ws.login(user, password);
SearchPluginList pluginList = ws.search.getSearchPlugins();
foreach (SearchPlugin searchPlugin in pluginList.searchPlugins)
{
Console.WriteLine(searchPlugin.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
findSimpleNodeBaseByQueryPaginated(String query, int offset, int limit) SimpleNodeBaseResultSet Devuelve una lista paginada de resultados filtrados por los valores del parámetro query.

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);
try
{
ws.login(user, password);
SimpleNodeBaseResultSet snbr = ws.search.findSimpleNodeBaseByQueryPaginated("text:grial AND name:t*.pdF", 0, 10);
foreach (SimpleNodeBase nodeBase in snbr.results)
{
if(nodeBase != null)
{
System.Console.WriteLine(nodeBase.toString());
}
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
findSimpleNodeBaseByQueryPaginated(String query, String sortField, bool sortReverse, int offset, int limit) SimpleNodeBaseResultSet Devuelve una lista paginada de resultados filtrados por los valores del parámetro query.

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);
try
{
ws.login(user, password);
SimpleNodeBaseResultSet snbr= ws.search.findSimpleNodeBaseByQueryPaginated("text:grial AND name:t*.pdF", SearchSortField.NAME, true, 0, 10);
foreach (SimpleNodeBase nodeBase in snbr.results)
{
if(nodeBase != null)
{
System.Console.WriteLine(nodeBase.toString());
}
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
findByQuery(String query, 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);
try
{
ws.login(user, password);
foreach (QueryResult qr in ws.search.findByQuery("keyword:test AND name:t*.pdf", null))
{
System.Console.WriteLine(qr);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
findByQuery(String query, String sortField, bool sortReverse, String propertiesPlugin) List Devuelve una lista de resultados filtrados por el parámetro query.

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);
try
{
ws.login(user, password);
foreach (QueryResult qr in ws.search.findByQuery("keyword: test", SearchSortField.NAME, true, null))
{
System.Console.WriteLine(qr);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
findAllDefaultByNodeClass(long ncId) List Recupera una lista de búsquedas guardadas para una NodeClass.

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);
try
{
ws.login(user, password);
long ncId = 1;
List<QueryParams> queryParams = ws.search.findAllDefaultByNodeClass(ncId);
foreach (QueryParams qParams in queryParams)
{
System.Console.WriteLine(qParams.queryName);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
findWithMetadata(QueryParams _params, String propertiesPlugin, List groups) List Devuelve una lista de resultados con valores de metadatos filtrados por el 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);
try
{
ws.login(user, password);
// QueryParams
QueryParams qp = new QueryParams();
qp.folderRecursive = true;
qp.domain = QueryParams.DOCUMENT | QueryParams.FOLDER | QueryParams.RECORD | QueryParams.MAIL;
qp.name = "test*";
// Properties
Dictionary<string, string> properties = new Dictionary<string, string>();
properties.Add("okp:consulting.name", "test");
qp.properties = properties;
// Groups
List<string> groups = new List<string>();
groups.Add("okg:consulting");
List<QueryResult> queryResults = ws.search.findWithMetadata(qp, null, groups);
foreach (QueryResult qResult in queryResults)
{
System.Console.WriteLine(qResult.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
findWithMetadata(QueryParams queryParams, String sortField, bool sortReverse, String propertiesPlugin, List groups) List Devuelve una lista de resultados con valores de metadatos filtrados por el 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);
try
{
ws.login(user, password);
// QueryParams
QueryParams qp = new QueryParams();
qp.folderRecursive = true;
qp.domain = QueryParams.DOCUMENT | QueryParams.FOLDER | QueryParams.RECORD | QueryParams.MAIL;
qp.name = "test*";
// Properties
Dictionary<string, string> properties = new Dictionary<string, string>();
properties.Add("okp:consulting.name", "test");
qp.properties = properties;
// Groups
List<string> groups = new List<string>();
groups.Add("okg:consulting");
List<QueryResult> queryResults = ws.search.findWithMetadata(qp, SearchSortField.NAME, true, null, groups);
foreach (QueryResult qr in queryResults)
{
Console.WriteLine(qr.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
findWithMetadataPaginated(QueryParams queryParams, int offset, int limit, String propertiesPlugin, List groups) ResultSet Devuelve una lista paginada de resultados con valores de metadatos filtrados por el 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);
try
{
ws.login(user, password);
// QueryParams
QueryParams qp = new QueryParams();
qp.domain = QueryParams.DOCUMENT | QueryParams.FOLDER | QueryParams.RECORD | QueryParams.MAIL;
qp.name = "test*";
// Properties
Dictionary<string, string> properties = new Dictionary<string, string>();
properties.Add("okp:consulting.name", "test");
qp.properties = properties;
// Groups
List<string> groups = new List<string>();
groups.Add("okg:consulting");
ResultSet resulSet = ws.search.findWithMetadataPaginated(qp, 0, 10, null, groups);
System.Console.WriteLine("Total results: " + rs.total.ToString());
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
findWithMetadataPaginated(QueryParams queryParams, String sortField, bool sortReverse, int offset, int limit, String propertiesPlugin, List groups) ResultSet Devuelve una lista paginada de resultados con valores de metadatos filtrados por el 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);
try
{
ws.login(user, password);
// QueryParams
QueryParams qp = new QueryParams();
qp.domain = QueryParams.DOCUMENT | QueryParams.FOLDER | QueryParams.RECORD | QueryParams.MAIL;
qp.name = "test*";
// Properties
Dictionary<string, string> properties = new Dictionary<string, string>();
properties.Add("okp:consulting.name", "test");
qp.properties = properties;
// Groups
List<string> groups = new List<string>();
groups.Add("okg:consulting");
ResultSet rs = ws.search.findWithMetadataPaginated(qp, SearchSortField.AUTHOR, true, 0, 10, null, groups);
Console.WriteLine("Total results: " + rs.total.ToString());
foreach (QueryResult qr in rs.results)
{
Console.WriteLine(qr.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
getMimeTypes() List Recupera una lista de tipos MIME.

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);
try
{
ws.login(user, password);
foreach (MimeType mimeType in ws.search.getMimeTypes())
{
System.Console.WriteLine(mimeType.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Descripción:

Método Valores de retorno Descripción
csvExport(String lang, QueryParams queryParams, List propertyGroups, bool compact) InputStream Exporta como csv una lista de resultados filtrados por los valores del parámetro queryParams.

El parámetro lang debe cumplir con ISO 639-1.

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);
try
{
ws.login(user, password);
QueryParams _params = new QueryParams();
_params.domain = QueryParams.DOCUMENT + QueryParams.FOLDER;
_params.name = "test*";
List <string > propertyGroups = new List<string>();
propertyGroups.Add("okg:consulting");
propertyGroups.Add("okg:technology");
Stream stream = ws.search.csvExport("es-ES", _params, propertyGroups, false);
FileStream destFile = new FileStream("C:\\Testing\\export.csv", FileMode.OpenOrCreate);
stream.CopyTo(destFile);
destFile.Dispose();
stream.Dispose();
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}