rich faces: tri de données sur columnGroup
Bonjour les gens.
J'ai actuellement un tableau relativement complexe (un dataTable) qui se présente comme ceci:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129
| <rich:dataTable value=#{monBean.maListe} var="var" id="maTable" rowCLasses="clickable">
<f:facet name="header" >
<rich:columnGroup styleClass="stylTableau">
<rich:column rowspan="3" style="width:3%;COLOR: #003063;">
<h:outputText value="#{messages['NOperation']}"></h:outputText>
</rich:column>
<rich:column rowspan="3" style="width:8%;COLOR: #003063;">
<h:outputText value="#{messages['Action']}"></h:outputText>
</rich:column>
<rich:column rowspan="3" style="width:6%;COLOR: #003063;">
<h:outputText value="#{messages['Numero_d_ecriture']}"></h:outputText>
</rich:column>
<rich:column rowspan="3" style="width:8%;COLOR: #003063;">
<h:outputText value="#{messages['Date_comptable']}"></h:outputText>
</rich:column>
<rich:column rowspan="3" style="width:8%;COLOR: #003063;">
<h:outputText value="#{messages['Date_d_effet']}"></h:outputText>
</rich:column>
<rich:column rowspan="3" style="width:8%;COLOR: #003063;">
<h:outputText value="#{messages['Numero_Contrat']}"></h:outputText>
</rich:column>
<rich:column rowspan="3" style="width:21%;COLOR: #003063;">
<h:outputText value="#{messages['Description_']}"></h:outputText>
</rich:column>
<rich:column rowspan="3" style="width:4%;COLOR: #003063;">
<h:outputText value="#{messages['Etat']}"></h:outputText>
</rich:column>
<rich:column rowspan="3" style="width:5%;COLOR: #003063;" styleClass="rightBorderBoldHeader">
<h:outputText value="#{messages['Affectation']}"></h:outputText>
</rich:column>
<rich:column rowspan="1" colspan="4" style="COLOR: #003063;" styleClass="rightBorderBoldHeader">
<h:outputText value="#{messages['Releves']}"></h:outputText>
</rich:column>
<rich:column rowspan="3" style="width:5%;COLOR: #003063;">
<h:outputText value="#{messages['Loupe']}"></h:outputText>
</rich:column>
<rich:column rowspan="1" colspan="2" breakBefore="true" style="COLOR: #003063;" styleClass="rightBorderBoldHeader">
<h:outputText value="#{messages['Financier']}"></h:outputText>
</rich:column>
<rich:column rowspan="1" colspan="2" style="COLOR: #003063;" styleClass="rightBorderBoldHeader">
<h:outputText value="#{messages['Technique']}"></h:outputText>
</rich:column>
<rich:column breakBefore="true" style="width:6%;COLOR: #003063;" rowspan="1">
<h:outputText value="#{messages['Debit']}"></h:outputText>
</rich:column>
<rich:column rowspan="1" style="width:6%;COLOR: #003063;" styleClass="rightBorderBoldHeader">
<h:outputText value="#{messages['Credit']}"></h:outputText>
</rich:column>
<rich:column rowspan="1" style="width:6%;COLOR: #003063;">
<h:outputText value="#{messages['Debit']}"></h:outputText>
</rich:column>
<rich:column rowspan="1" style="width:6%;COLOR: #003063;" styleClass="rightBorderBoldHeader">
<h:outputText value="#{messages['Credit']}"></h:outputText>
</rich:column>
</rich:columnGroup>
</f:facet>
<rich:columnGroup>
<rich:column style="background:#{monBean.determinerBgColor(var)}">
<a4j:support event="onclick" action="#{monBean.select(var)}"
reRender="maTable" />
<h:outputText value="#{var.valeur1}/>
</richColumn>
<rich:column style="background:#{monBean.determinerBgColor(var)}">
<a4j:support event="onclick" action="#{monBean.select(var)}"
reRender="maTable" />
<h:outputText value="#{var.valeur2}/>
</richColumn>
<rich:column style="background:#{monBean.determinerBgColor(var)}">
<a4j:support event="onclick" action="#{monBean.select(var)}"
reRender="maTable" />
<h:outputText value="#{var.valeur3}/>
</richColumn>
<rich:column style="background:#{monBean.determinerBgColor(var)}">
<a4j:support event="onclick" action="#{monBean.select(var)}"
reRender="maTable" />
<h:outputText value="#{var.valeur4}/>
</richColumn>
<rich:column style="background:#{monBean.determinerBgColor(var)}">
<a4j:support event="onclick" action="#{monBean.select(var)}"
reRender="maTable" />
<h:outputText value="#{var.valeur5}/>
</richColumn>
<rich:column style="background:#{monBean.determinerBgColor(var)}">
<a4j:support event="onclick" action="#{monBean.select(var)}"
reRender="maTable" />
<h:outputText value="#{var.valeur6}/>
</richColumn>
<rich:column style="background:#{monBean.determinerBgColor(var)}">
<a4j:support event="onclick" action="#{monBean.select(var)}"
reRender="maTable" />
<h:outputText value="#{var.valeur7}/>
</richColumn>
<rich:column style="background:#{monBean.determinerBgColor(var)}">
<a4j:support event="onclick" action="#{monBean.select(var)}"
reRender="maTable" />
<h:outputText value="#{var.valeur8}/>
</richColumn>
<rich:column style="background:#{monBean.determinerBgColor(var)}">
<a4j:support event="onclick" action="#{monBean.select(var)}"
reRender="maTable" />
<h:outputText value="#{var.valeur9}/>
</richColumn>
<rich:column style="background:#{monBean.determinerBgColor(var)}">
<a4j:support event="onclick" action="#{monBean.select(var)}"
reRender="maTable" />
<h:outputText value="#{var.valeur10}/>
</richColumn>
<rich:column style="background:#{monBean.determinerBgColor(var)}">
<a4j:support event="onclick" action="#{monBean.select(var)}"
reRender="maTable" />
<h:outputText value="#{var.valeur12}/>
</richColumn>
<rich:column style="background:#{monBean.determinerBgColor(var)}">
<a4j:support event="onclick" action="#{monBean.select(var)}"
reRender="maTable" />
<h:outputText value="#{var.valeur13}/>
</richColumn>
<rich:column style="background:#{monBean.determinerBgColor(var)}">
<a4j:support event="onclick" action="#{monBean.select(var)}"
reRender="maTable" />
<h:outputText value="#{var.valeur14}/>
</richColumn>
<rich:column style="background:#{monBean.determinerBgColor(var)}">
<a4j:support event="onclick" action="#{monBean.select(var)}"
reRender="maTable" />
<h:outputText value="#{var.valeur15}/>
</richColumn>
</rich:columnGroup>
</rich:dataTable> |
Ca fonctionne et s'affiche très bien mais mon soucis est que maintenant on me demande de permetre un tri sur les colonnes Date_comptable, numero_d_ecriture et date_d_effet. J'ai songé utiliser sortable et sortBy dans les rich:column seulement voila: en faisant ça je n'ai aucun changement dans ma page: pas de bitonio qui va bien pour trier d'un seul clic, ni même le moindre tri, que je place ça sur le column en facet, sur celui qui contient les appels de données ou sur les deux. Est ce que quelqu'un aurait une idée de génie à me suggérer?
Merci d'avance.