bonjour,
je dispose d'une datatable qui affiche les valeurs d'une arraylist de la façon suivante:
et voiçi la methode statistique qui calcule les valeur à partir d'une base de donnée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <h:form id="form" style="red"> <p:growl id="growl1" showDetail="true" sticky="true" /> <p:panel id="test" style="background: whitesmoke "> <p:dataTable value="#{eleve.valide}" var="o" paginator="true" rows="10" id="test1" styleClass="myTable" scrollable="true" paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}" rowsPerPageTemplate="10" widgetVar="50" resizableColumns="true" ><!--style="width: auto;"--> <f:facet name="header" > Liste des eleves </f:facet> <p:column filterBy="#{o.header}" width="80px"> <f:facet name="header"> <h:outputText value="En tete" style="color: #ffffff" /> </f:facet> <h:outputText value="#{o.header}"/> </p:column> <p:column sortBy="#{o.texte}" width="360px" > <f:facet name="header"> <h:outputText value="Message " style="color: #ffffff" /> </f:facet> <h:outputText value="#{o.texte}"/> </p:column> <p:column sortBy="#{o.date}" width="300px"> <f:facet name="header"> <h:outputText value="Date" style="color: #ffffff" /> </f:facet> <h:outputText value="#{o.date}"/> </p:column> <p:column sortBy="#{o.status}" width="100px" > <f:facet name="header"> <h:outputText value="Status" style="color: #ffffff" /> </f:facet> <h:outputText value="#{o.status}"/> </p:column> <p:column sortBy="#{o.solde}" width="40px"> <f:facet name="header"> <h:outputText value="Nombre" style="color: #ffffff" /> </f:facet> <h:outputText value="#{o.solde}"/> </p:column> <p:growl id="growl" showDetail="true" sticky="true" /> <p:column width="100px" id="test3"> <f:facet name="header"> <h:outputText value="Statistiques" style="color: #ffffff" /> </f:facet> <p:commandButton value="generer" actionListener="#{eleve.statistiques(o)}" update=":form:growl1" icon="ui-icon-check" style="background: green !important; color: white" /> </p:column> </p:dataTable> </p:panel> </h:form>
la methode calcule bien les differents nombres mais je n'ai pas réussi à afficher le pie dans ma page.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 public void statistiques(EleveBean eleve) { int nbreTotal = 0; int nbreTransmis = 0; int nbreNonTransmis = 0; selectedCompagne = eleve; String relatedTable = selectedCompagne.getRelatedtable(); Connection conn = com.util.ConnectionPool.getGatewayConnection(); nbreTotal = Commons.compterNbre(relatedTable, conn); nbreTransmis = Commons.compterNbreDelivred(relatedTable, conn); nbreNonTransmis = Commons.compterNbreUnDelivred(relatedTable, conn); pieModel = new PieChartModel(); pieModel.set("Delivred", nbreTransmis); pieModel.set("UnDelivred", nbreNonTransmis); pieModel.set("En attente", nbreTotal - (nbreTransmis + nbreNonTransmis)); try { conn.close(); } catch (SQLException ex) { Logger.getLogger(EleveBeanBean.class.getName()).log(Level.SEVERE, null, ex); } }
J'aimerai si c'est possible, lorsque je clique sur le bouton "generer" devant chaque eleve, afficher un popup (ou meme dans la meme page en dessous du datatable ) qui affiche le pieModel qui contient le résultat de ma methode déjà postée.
merci d'avance
Partager