I would like to know if it's possible to use data exporter in a p:dialog.
I explain my issue :
I have a datatable with buttons in each row for editing, deleting, details etc...
When i click on the button it opens a p dialog.
Now what i want is to export the datas from the p dialog but it's not working, maybe is there another solution?
=> HERE'S THE DATATABLE WITH A BUTTON "DETAILS"
Code: Select all
<h:messages />
<p:growl id="messages"/>
<p:dataTable id="tbl" var="projet" value="#{projetMB.allProjets}" rows="8" styleClass="primeTable"
selection="#{projetMB.selectedPr}" rowKey="#{projet.projetId}"
paginator="true" paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink}
{LastPageLink} {RowsPerPageDropdown} "
currentPageReportTemplate="Affiche ({startRecord}-{endRecord}) sur ({totalRecords}) Eléments"
rowsPerPageTemplate="5,8,10,15" widgetVar="pr" lazy="false" >
<!-- CheckBox pour la selection multiple -->
<p:column selectionMode="multiple" style="width:16px;text-align:center" exportable="false"/>
<!-- Eléments de la table "Projet" -->
<p:column headerText="Id" filterBy="#{projet.projetId}" filterStyle="display:none">
<h:outputText value="#{projet.projetId}" />
</p:column>
<p:column headerText="Nom" filterBy="#{projet.nom}" filterStyle="display:none" >
<h:outputText value="#{projet.nom}" />
</p:column>
<p:column headerText="Type" filterBy="#{projet.typeProjet}" filterStyle="display:none" >
<h:outputText value="#{projet.typeProjet}" />
</p:column>
<p:column headerText="Etat" filterBy="#{projet.etatProjet}" filterStyle="display:none" >
<h:outputText value="#{projet.etatProjet}" />
</p:column>
<p:column headerText="Priorite" filterBy="#{projet.prioriteProjet}" filterStyle="display:none" >
<h:outputText value="#{projet.prioriteProjet}" />
</p:column>
<!-- Clé étrangère -->
<p:column headerText="Id client" filterBy="#{projet.client.clientId}" filterStyle="display:none" >
<h:outputText value="#{projet.client.clientId}" />
</p:column>
<!-- Clé étrangère -->
<p:column headerText="Id Feuille" filterBy="#{projet.feuilleTemps.idFT}" filterStyle="display:none" >
<h:outputText value="#{projet.feuilleTemps.idFT}" />
</p:column>
<!-- Colonne "Action" pour les boutons Details, Modifier,Supprimer -->
<p:column headerText="Actions" exportable="false"> <!-- On exporte pas la dernière colonne -->
<!-- Bouton Details -->
<p:commandButton id="toolTip5" update=":form:projetDetail" icon="fa fa-search-plus"
oncomplete="PF('projetDialog').show()" rendered="#{sessionMB.userChefProjet}"
style="background-color:#c0d4f9; ">
<f:setPropertyActionListener value="#{projet}" target="#{projetMB.selectedProjet}" />
<p:tooltip for="toolTip5" value="Détails projet" style="font-size:10px; " position="bottom" />
</p:commandButton>
</p:column>
</p:dataTable>
Code: Select all
<p:dialog header="Détails Projet" widgetVar="projetDialog" modal="true" showEffect="fade"
hideEffect="clip" resizable="true" minimizable="true" maximizable="true" >
<p:outputPanel id="projetDetail" >
<p style="font-size:16px; font-style:italic; font-weight:bold;">
Informations relatives au projet : "#{projetMB.selectedProjet.nom}" </p>
<hr/><br/>
<div id="cadreDetailProjet" > <br/>
<p:panelGrid columns="2" >
<h:outputText value="Id projet :" />
<h:outputText value="#{projetMB.selectedProjet.projetId}" />
<h:outputText value="Nom projet :" />
<h:outputText value="#{projetMB.selectedProjet.nom}" />
<h:outputText value="Type projet :" />
<h:outputText value="#{projetMB.selectedProjet.typeProjet}" />
<h:outputText value="Etat projet :" />
<h:outputText value="#{projetMB.selectedProjet.etatProjet}" />
<h:outputText value="Priorite projet :" />
<h:outputText value="#{projetMB.selectedProjet.prioriteProjet}" />
<!-- Clé Etrangère -->
<h:outputText value="Id client :" />
<h:outputText value="#{projetMB.selectedProjet.client.clientId}" />
<!-- Clé Etrangère -->
<h:outputText value="Id feuille temps :" />
<h:outputText value="#{projetMB.selectedProjet.feuilleTemps.idFT}" />
<br/>
</p:panelGrid>
</div>
<!-- HERE I WANT TO EXPORT THE DATA -->
<p:commandButton ajax="false" icon="fa fa-file-text" value="Export"
style="background-color:#c0d4f9; font-size:14px;">
<p:dataExporter type="pdf" target="tbl" fileName="DetailsProjets" selectionOnly="true"
options="#{projetMB.pdfOpt}" />
</p:commandButton>
</p:outputPanel>
</p:dialog>