ricerca tramite tag
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-18-2014 06:13 PM
Ciao a tutti ragazzi,
sto implementando un custom wf con activiti e mi sono piantato sulla funzione principale di quest'ultimo: la ricerca di documenti aventi un determinato tag all'interno del repository di Alfresco.
Leggendo in letteratura ho provato ad utilizzare la javascript API "childrenByTags(tag)", ma non funziona cioè non mi trova niente.
Da evidenziare che utilizzo Alfresco Community 4.2.d e sono passato da sorl a lucene perchè avevo dei problemi nella visualizzazione dei tag. Può essere la causa del mio problema? Ho provato a usare anche la "luceneSearch()",ma anche qua niente da fare.
E' giusta tale sintassi?
Poi devo riuscire a stampare i nome dei documenti(scriptNode.name?)nel task che segue il service task che effettua la ricerca. Come posso fare? Io non conosco la dimensione dell'array che mi verrà restituito a priori e quindi non posso appoggiare ciascun valore in una variabile di processo.
Grazie a chiunque risponderà.
sto implementando un custom wf con activiti e mi sono piantato sulla funzione principale di quest'ultimo: la ricerca di documenti aventi un determinato tag all'interno del repository di Alfresco.
Leggendo in letteratura ho provato ad utilizzare la javascript API "childrenByTags(tag)", ma non funziona cioè non mi trova niente.
var tag = "sigima";var taggedNodes =companyhome.childrenByTags(tag);
Da evidenziare che utilizzo Alfresco Community 4.2.d e sono passato da sorl a lucene perchè avevo dei problemi nella visualizzazione dei tag. Può essere la causa del mio problema? Ho provato a usare anche la "luceneSearch()",ma anche qua niente da fare.
var luceneTagQuery = "PATH:"/cm:companyhome/cm:taggable/cm:sigima/member"";var nodes = search.luceneSearch(luceneTagQuery);
E' giusta tale sintassi?
Poi devo riuscire a stampare i nome dei documenti(scriptNode.name?)nel task che segue il service task che effettua la ricerca. Come posso fare? Io non conosco la dimensione dell'array che mi verrà restituito a priori e quindi non posso appoggiare ciascun valore in una variabile di processo.
Grazie a chiunque risponderà.
Labels:
- Labels:
-
Archive
2 REPLIES 2
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-19-2014 04:46 AM
Ciao,
L'uso del childrenByTags è corretto… non ho idea del perchè non ti funzioni. Cosa fai con la variabile taggedNodes dopo la ricerca?
Per quanto riguarda lucene, non devi mettere /cm:companyhome all'inizio (che tra l'altro è sbagliato: dovrebbe essere /app:company_home).
Sempre con lucene puoi anche provare ad usare
L'uso del childrenByTags è corretto… non ho idea del perchè non ti funzioni. Cosa fai con la variabile taggedNodes dopo la ricerca?
Per quanto riguarda lucene, non devi mettere /cm:companyhome all'inizio (che tra l'altro è sbagliato: dovrebbe essere /app:company_home).
Sempre con lucene puoi anche provare ad usare
TAG:"tagname"
.
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-19-2014 06:04 AM
Grazie della risposta
Allora ora la childrenByTags sembra funzionare.
Con la variabile taggedNodes voglio riuscire a stampare nello user task successivo la lista dei nodi restituiti dalla ricerca.
Mi è stato detto che è possibile passare l'array taggedNodes all'interno di una variabile di processo.
E' giusto il setVariable? Cioè la variabile taggedNodes è visibile già a livello di processo? Perchè ho provato a scrivere
ma mi restituisce un errore dicendomi che task non è definito.
Nel file model-custom poi ho messo
Tale codice dovrebbe permettermi di visualizzare gli elementi dell'array di cui non conosco la dimensione esatta. E' giusto?

Allora ora la childrenByTags sembra funzionare.
Con la variabile taggedNodes voglio riuscire a stampare nello user task successivo la lista dei nodi restituiti dalla ricerca.
<serviceTask id="alfrescoScripttask1" name="fornisce elenco aziende" activiti:class="org.alfresco.repo.workflow.activiti.script.AlfrescoScriptDelegate"> <extensionElements> <activiti:field name="script"> <activiti:string> var tag = "collaborazione"; var taggedNodes =companyhome.childrenByTags(tag); execution.setVariable('wf_taggedNodesNames',execution.getVariable('taggedNodes')); </activiti:string> </activiti:field> </extensionElements> </serviceTask>
Mi è stato detto che è possibile passare l'array taggedNodes all'interno di una variabile di processo.
E' giusto il setVariable? Cioè la variabile taggedNodes è visibile già a livello di processo? Perchè ho provato a scrivere
execution.setVariable('wf_taggedNodesNames',task.getVariable('taggedNodes'));
ma mi restituisce un errore dicendomi che task non è definito.
Nel file model-custom poi ho messo
<aspect name="wf:aziendeScelte"> <properties> <property name="wf:taggedNodesNames"> <type>d:text</type> <multiple>true</multiple> </property> </properties> </aspect>
Tale codice dovrebbe permettermi di visualizzare gli elementi dell'array di cui non conosco la dimensione esatta. E' giusto?
