Le query private possono essere create da qualsiasi utente. Queste query sono disponibili
solo per il proprietario della query e dall'amministratore di sistema.
Come amministratore di sistema, è possibile gestire le query memorizzate private
che appartengono a un determinato utente.
- Creare una query memorizzata privata per l'ID utente Smith.
Ad esempio, il seguente frammento di codice crea una query memorizzata per istanze di processo e la salva col nome CustomerOrdersStartingWithA per l'ID utente Smith.
process.createStoredQuery("Smith", "CustomerOrdersStartingWithA",
"DISTINCT PROCESS_INSTANCE.PIID, PROCESS_INSTANCE.NAME",
"PROCESS_INSTANCE.NAME LIKE 'A%'",
"PROCESS_INSTANCE.NAME",
(Integer)null, (TimeZone)null,
(List)null, (String)null);
Il risultato della query memorizzata è un elenco ordinato di tutti i nomi delle istanze di processo che cominciano con la lettera A e i relativi PIID (process instance ID) associati.
- Eseguire la query definita dalla query memorizzata.
QueryResultSet result = process.query("Smith", "CustomerOrdersStartingWithA",
(Integer)null, (Integer)null, (List)null);
new Integer(0));
Questa operazione restituisce gli oggetti che corrispondono ai criteri. In questo caso, tutti gli ordini del cliente che iniziano con la lettera A.
- Ottenere un elenco di nomi delle query private di proprietà di un
determinato utente.
Ad esempio, il seguente frammento del codice illustra
come ottenere un elenco di query private di proprietà dell'utente Smith.
String[] storedQuery = process.getStoredQueryNames("Smith");
- Visualizzare i dettagli di una query specifica.
Il seguente
frammento del codice illustra come visualizzare i dettagli della query CustomerOrdersStartingWithA
di proprietà dell'utente Smith.
StoredQuery storedQuery = process.getStoredQuery
("Smith", "CustomerOrdersStartingWithA");
String selectClause = storedQuery.getSelectClause();
String whereClause = storedQuery.getWhereClause();
String orderByClause = storedQuery.getOrderByClause();
Integer threshold = storedQuery.getThreshold();
String owner = storedQuery.getOwner();
- Eliminare una query privata memorizzata.
Il seguente frammento
del codice illustra come eliminare una query privata di proprietà dell'utente Smith.
process.deleteStoredQuery("Smith", "CustomerOrdersStartingWithA");