Il leafitem (elemento foglia) rappresenta la singola voce di un menù di secondo livello e può richiamare nella sezione principale di Geoweb® la visualizzazione di diverse tipologie di Schede, come ad esempio:
Il leafitem può essere strutturato, e rappresentare in maniera complessa l'elenco dei contenuti da cui far partire la visualizzazione delle schede. Ad esempio:
Il leafitem è organizzato con i propri tag nell'XML di Progetto.
Di seguito una lista degli attributi, fissi o opzionali, definibili nel leafItem:
In funzione del tipo (type) di LeafItem possono essere definiti dei parametri specifici, che stabiliscono le proprietà del LeafItem stesso. Ciascuno di tali parametri ha degli attributi fissi:
Nome | Descrizione breve |
---|---|
leafItemClassificationMenu | visualizzazione dei record di una classe di Geoweb «classificata» organizzati all’interno dell’albero di classificazione |
leafItemHierarchicalFilterMenu | visualizzazione albero di navigazione per una gerarchia di classi |
leafItemLayoutChange | visualizzazione albero di navigazione planimetrie |
leafItemListFilters | visualizzazione dei record di una classe di Geoweb in una lista «standard» e in liste parzializzate secondo i valori assunti da uno specifico attributo |
leafItemRelationsSetting | |
leafItemSeparator | aggiunge un separatore orizzontale fra due leafItem |
leafItemGHFMC | |
leafItemGHFMCMenu | |
leafItemMCMenu |
Utilizzato per la visualizzazione dei record di una classe di Geoweb (di tipo «classificato») organizzati in un albero di classificazione, presenta il seguente XML di configurazione (che dovrà essere incluso all’interno di un tag di tipo «accordion».
<leafItem name="leafitem_name" label="leafitem_label" image="leafitem_image.png" type="leafItemClassificationMenu"> <parameter name="className" value="class_name" hideToClient="false"></parameter> <parameter name="staticFilters" value="{condition:‘and',columnName:‘attr_name',operator:‘in',filterType:‘string',value:[‘val1,valn']}" hideToClient="false"></parameter> <parameter name="VISUALIZATION_GROUPS" value="groupV1,…,groupVn" hideToClient="false"></parameter> <parameter name="MANAGER_GROUPS" value="groupM1,…,groupMn" hideToClient="false"></parameter> </leafItem>
Permette di visualizzare un menu gerarchico che parzializza i record di una classe geoweb secondo criteri di filtro impostabili. La gerarchia non ha limiti nel numero di annidamenti, ed ogni livello può essere caratterizzato graficamente da una icona La gerarchia è resa attraverso un widget albero dojo, ed i filtri vengono applicati in cascata man mano che si naviga l'albero partendo dal tronco ed andando verso le foglie. I criteri di filtro, ordinati in ordine descrescente, si impostano tramite il parameter con name=“filteringCriteria”, e corrispondono al column_name degli attributi di geoweb costruiti sui campi della tabella che si vogliono usare come criteri di parzializzazione. In alto è presente una toolbar con un tasto refresh, che refresha l'albero ricordandosi i nodi gia aperti. L'albero si refresha comunque in automatico ad ogni operazione di inserimento modifica cancellazione eseguito dalle liste della classe 'gwClassName' Il refresh non è automatico, invece, in seguito a modifiche su record delle classi effettuate tramite azioni/trigger groovy. (a meno di scrivere azioni js, che richiamano groovy, ad hoc)
PARAMETRI
Parametro | Descrizione |
---|---|
gwClassName | String, richiesto, nome della gwClass classificata. |
filteringCriteria | String, richiesto, Imposta i criteri di filtro per ogni livello dell'albero. E' necessario almeno un criterio di filtro (piu' criteri di filtro vanno separati da virgola, e verranno applicati in ordine descrescente da sinistra verso destra).In filteringCriteria si puoi usare 'id_entity_classification' come criterio di filtro. Verra' quindi applicata l'intera gerarchia impostata dalla classificazione. |
orderingCriteria | String, opzionale, array parallelo a filteringCriteria (può essere anche più corto). Valori ammessi (separati da ','): quelli di filteringCriteria |
orderingCriteriaModes | String, opzionale, array parallelo a orderingCriteria (può essere anche più corto), Valori ammessi (separati da ','): ['asc', 'desc'] |
iconImagePaths | String, opzionale, array parallelo a filteringCriteria dove vengono specificate le relative icone per ogni nodo generato dal criterio di filtro. |
showAllAsRoot | Boolean, opzionale, default false, mostra anche un nodo root, riportante la label della classe, che se cliccato mostra la gwClassList della classe senza filtri |
rootLabel | String, opzionale, è la label che viene mostrata in caso di showAllAsRoot a true. In caso di showAllAsRoot a true, con rootLabel assente o stringa vuota viene usata la label della gwClass. |
rootIconImagePath | opzionale, è l'icona realtiva al nodo root. In caso di showAllAsRoot a true, con rootIconImagePath assente viene usata un'immagine di default cartellina. |
autoClickFirstNodeWhenIsFirstMenu | boolean, opzionale, default false. Se a true fa si che, in caso l'albero sia come primo elemento di menu (coordinate 0 0 0) in automatico all'avvio del progetto venga aperta la risorsa relativa al primo nodo (esattamente come onClick utente su elemento root/primo elemento) (dalla versione 4.6.17) |
<leafItem name="menu_name" label="Menu" image="menu.png" type="leafItemHierarchicalFilterMenu"> <parameter name="gwClassName" value="asm_asset" hideToClient="false"></parameter> <parameter name="filteringCriteria" value="year,brand,model,id_entity_classification,barcode" hideToClient="false"></parameter> <parameter name="orderingCriteria " value="year,brand,model" hideToClient="false"></parameter> <parameter name="orderingCriteriaModes " value="desc,asc,asc" hideToClient="false"></parameter> <parameter name="iconImagePaths" value="image_1.png,image_2.png,image_3.png" hideToClient="false"></parameter> <parameter name="showAllAsRoot" value="true" hideToClient="false"></parameter> <parameter name="rootLabel" value="Label elemento root" hideToClient="false"></parameter> <parameter name="rootIconImagePath" value="image_1" hideToClient="false"></parameter> <parameter name="autoClickFirstNodeWhenIsFirstMenu" value="false" hideToClient="false"></parameter> </leafItem>
Utilizzato per la visualizzazione dei record di una classe di Geoweb in una lista «standard» o in liste parzializzate secondo i valori assunti da uno specifico attributo, presenta il seguente XML di configurazione (che dovrà essere incluso all’interno di un tag di tipo «accordion».
Elenco attributi:
Elenco parametri:
Esempi:
<leafItem name="lf_risorse_umane" label="Risorse Umane" image="img_risorse_umane.png" type="leafItemListFilters"> <parameter name="className" value="hr_risorse_umane" hideToClient="false"></parameter> <parameter name="attributeToFilter" value="tipo_rapporto" hideToClient="false"></parameter> </leafItem>
<leafItem name="leafitem name" label="leafitem label" image="leafitem_image.png" type="leafItemListFilters"> <parameter name="className" value="class_name" hideToClient="false"></parameter> <parameter name="attributeToFilter" value="field_name_attribute" hideToClient="false"></parameter> </leafItem>
<leafItem name="leafitem name" label="leafitem label" image="leafitem_image.png" type="leafItemListFilters"> <parameter name="className" value="class_name" hideToClient="false"></parameter> <parameter name="attributeToFilter" value="field_name_attribute" hideToClient="false"></parameter> <parameter name="forcedToCheckDynamicPermissionActionsNamesList" value="gwActionName1,gwActionName2" hideToClient="false"></parameter> </leafItem>
Parametri:
Vincoli: (esempio)
<leafItem type="leafItemSeparator"></leafItem>
Esempio
<leafItem name="generic" label="generic" image="GWD_Room.png" type="leafItemGHFMCMenu"> <parameter name="gwClassName" value="cde_02_team_class" hideToClient="false"></parameter> <parameter name="autoExpand" value="false" hideToClient="false"></parameter> <parameter name="filteringCriteria" value="uk_02_team,cod_03_system" hideToClient="false"></parameter> <parameter name="staticFilters" value="[{condition:'AND', columnName: 'fk_01_project', operator:'=', filterType:'STRING', value: [#{var_cod_01_project}]}]" hideToClient="false"></parameter> <parameter name="iconImagePaths" value="cde35_team.png,cde35_system.png" hideToClient="false"></parameter> <parameter name="showAllAsRoot" value="true" hideToClient="false"></parameter> <parameter name="rootLabel" value="Generic" hideToClient="false"></parameter> <parameter name="rootIconImagePath" value="cde35_team.png" hideToClient="false"></parameter> <parameter name="relationDescriptionList" value="TEAMCLASS_SYSTEM" hideToClient="false"></parameter> <parameter name="classNameRelationList" value="cde_02_team_class,cde_03_system" hideToClient="false"></parameter> <parameter name="allFilteringCriteriaArrayList" value="[['cod_03_system']]" hideToClient="false"></parameter> <parameter name="alliconCriteriaArrayList" value="[['cde35_system.png']]" hideToClient="false"></parameter> <parameter name="allShowNodeLabelArrayList" value="[['false']]" hideToClient="false"></parameter> <parameter name="autoClickFirstNodeWhenIsFirstMenu" value="false" hideToClient="false"></parameter> </leafItem>
Esempio
<leafItem name="cde_deliverable_collaboration" label="generic" image="GWD_Room.png" type="leafItemGwTreeCollectionMenu"> <parameter name="classReference" value="cde_collection" hideToClient="false"></parameter> <parameter name="gwContentClassName" value="cde_deliverable_collaboration" hideToClient="false"></parameter> <parameter name="gwUploadClassName" value="cde_deliverable_upload" hideToClient="false"></parameter> <parameter name="autoExpand" value="false" hideToClient="false"></parameter> <parameter name="filteringCriteria" value="" hideToClient="false"></parameter> <parameter name="iconImagePaths" value="cde35_folder_yellow.png" hideToClient="false"></parameter> <parameter name="showAllAsRoot" value="true" hideToClient="false"></parameter> <parameter name="rootLabel" value="Generic" hideToClient="false"></parameter> <parameter name="rootIconImagePath" value="cde35_folder_yellow.png" hideToClient="false"></parameter> <parameter name="relationDescriptionList" value="father-son,LinkedCollection" hideToClient="false"></parameter> <parameter name="classNameRelationList" value="cde_collection_root,cde_collection" hideToClient="false"></parameter> <parameter name="allFilteringCriteriaArrayList" value="[['cod_collection'],['cod_collection_parent','cod_collection'],['cod_collection']]" hideToClient="false"></parameter> <parameter name="alliconCriteriaArrayList" value="[['cde35_folder_yellow.png'],['cde35_folder_yellow.png','cde35_folder_yellow.png'],['cde35_folder_yellow.png']]" hideToClient="false"></parameter> <parameter name="allShowNodeLabelArrayList" value="[['false'],['false','false'],['false']]" hideToClient="false"></parameter> <parameter name="staticFilters" value="[{condition:'AND', columnName: 'cod_01_project', operator:'=', filterType:'STRING', value: [#{var_cod_01_project}]}]" hideToClient="false"></parameter> <parameter name="staticFiltersForUploadButton" value="[{condition:'AND', columnName:'uk_02_team', operator:'in', filterType:'CUSTOM', customFilter:'uk_02_team in (select uk_02_team from cde_user_map_role where cde_user_map_role.cde_group='TEAM' and cod_role_type not in ('TEAMSUP') and username=#{gw_activeUser})'}]" hideToClient="false"></parameter> <parameter name="autoClickFirstNodeWhenIsFirstMenu" value="false" hideToClient="false"></parameter> </leafItem>