Salve,
come posso rendere un campo della ricerca avanzata di tipo combobox?
Ciao!
Per fare quello che dici, se ho compreso bene, devi andare su share-config-custom.xml in (share_home)/src/main/resources.
Lì, se già non lo hai configurato, devi creare un elemento simile a questo:
<config evaluator="model-type" condition="QName del tuo Tipo">
<forms>
<form id="search">
<field-visibility>
<show id="QName del tuo metadato"/>
</field-visibility>
<appearance>
<field id="QName del tuo metadato">
<control template="template del combobox" />
</field>
</appearance>
</form>
</forms>
</config>
con questo frammento di codice " <control template="template del combobox" />" personalizzi il template di visualizzazione/selezione del metadato che ti interessa. Cercando un po' in giro forse questo:
<control template="/org/alfresco/components/form/controls/selectone.ftl" />
dovrebbe fare al caso tuo ma non lo ho testato personalmente (dovresti poi poter impostare le opzioni di scelta con una linea di codice del tipo <control-param name="options"></control-param>).
Comunque ne esistono tanti altri da provare, bisogna solo trovare quello che più si adatta alle tue necessità.
Se invece ti basta un menù a tendina tra cui scegliere tra valori preimpostati allora la soluzione è diversa.
Spero di esserti stato utile
Luca
Ciao Luca,
i valori che devo visualizzare è un metadato presente in tutti i file che archivio
ho modificato il codice del file share-config-custom.xm
<config evaluator="model-type" condition="PROG:attachment">
<forms>
<form id="search">
<field-visibility>
<show id="PROGrogetto" />
<show id="PROG:fornitore" />
<show id="PROG:nomefinestra" />
<show id="PROG:numerodocumento" />
<show id="PROG:codicefascicolo" />
<show id="PROG:nomeprocedura" />
<show id="PROG:idmissione" />
</field-visibility>
<appearance>
</appearance>
</form>
</forms>
</config>
<config evaluator="model-type" condition="nomefinestra">
<forms>
<form id="search">
<field-visibility>
<show id="nomefinestra"/>
</field-visibility>
<appearance>
<field id="nomefinestra">
<control template=""/org/alfresco/components/form/controls/selectone.ftl" />
</field>
</appearance>
</form>
</forms>
</config>
ma non va, dove sbaglio?
da qui in poi
<config evaluator="model-type" condition="nomefinestra">
Non capisco bene cosa cerchi di fare. La condition dovrebbe essere qualcosa del tipo "prefixbjectName", insomma un QName.
Forse, se il tuo intento è far vedere il metadato del tuo tipo PROG:attachment non lo devi definire come un elemento config a se stante ma tra i tag
<appearence>
</appearence>
Però se potessi farmi leggere l'errore che ti darei potrei di sicuro essere più preciso.
Inoltre ho un dubbio, il metadato che tu vuoi far vedere com'è strutturato? Per fare ciò che dici temo debba essere faccettato, in modo tale che i valori inseriti in tale metadato possano poi essere usati come filtri nelle ricerche.
io ricevo dei file da un altro sistema, con dei metadati,
ho costruito un modello con gli stessi metadati: PROG:attachment
ho modificato il file share-config-custom.xml, inserendo il mio modello, tutto ok, visualizzo i metadati nella pagina ricerca avanzata.
uno di questi medadati, nomefinestra, vorrei che fosse di tipo a tendina e visualizzasse tutte le voci presenti nei file per il metadato nomefinestra.
spero di essere stato chiaro
Fammi capire bene, questo nomefinestra, che suppongo sia PROG:nomefinestra, lo vuoi utilizzare come filtro di ricerca o solo visualizzare a tendina tra i risultati della ricerca?
Inoltre, se ho capito bene tu lo hai solo come metadato non anche come tipo giusto?
intendi PROG:nomefinesta?
intendo visualizzarlo come filtro di ricerca
è solo un metadato
Allora avevo capito bene,
Devi abilitare il faceting di quel metadato nel modello, tieni presente però che così non potrai selezionare esattamente i valori che sono nel file, ma avrai a disposizione dei filtri basati su quel metadato rispetto alle statistiche degli inserimenti. Così facendo potrai usarlo come filtro di ricerca.
Configurando opportunamente share con un tamplate che fa al caso tuo come quello di prima dovresti ottenere quello che cerchi!
Se hai ancora problemi fammi sapere
ps. a meno che non sai esattamente che valori possa assumere quel metadato e hai la certezza che sono quelli e solo quelli, ed allora risolvi più facilmente inserendo una constraint nel modello e tutto il resto viene automaticamente.
Luca
scusami ma non riesco a seguirti:
Devi abilitare il faceting: se intendi che devo creare dei filtri nella pagina faceted-search gia lo faccio per tutti i metadati,
io vorrei far diventare un metadato presente nella ricerca avanzata di tipo tendina, che visualizzi il contenuto presente in quel metadato in tutti i documenti archiviati, il valore del metadato potrebbe essere qualsiasi visto che arriva da un altro sistema, mi serve solo per filtrare la ricerca.
se poi devo modificare la proprietà del metadato all'interno del modello, non posso piu farlo perchè ci sono gia dei documenti archiviati con quel modello
Nat
allego la stampa della pagina ricerca avanzata, il campo in questione è Tipo Documento
Nel modello che hai fatto, sotto ogni metadato si può esplicitare la proprietà di indicizzazione così:
<index enabled="true">
<atomic>true</atomic>
<stored>false</stored>
<tokenised>false</tokenised>
<facetable>true</facetable>
</index>
Come vedi nell'esempio sopra io ho reso il mio metadato facetable per far funzionare i filtri.
Ora, purtroppo, come dici bene tu, se già hai documenti nel repository e non hai impostato prima queste proprietà non penso che sia possibile modificarlo, però non voglio darti certezze perchè non le ho neanche io non avendo mai provato prima.
Mi dispiace, spero di esserti stato utile
Luca
Archive content from product discussions in Italian.
This group is now closed and content is read-only.
By using this site, you are agreeing to allow us to collect and use cookies as outlined in Alfresco’s Cookie Statement and Terms of Use (and you have a legitimate interest in Alfresco and our products, authorizing us to contact you in such methods). If you are not ok with these terms, please do not use this website.