2016-06-06 14 views
2

Ich versuche, einen Gesamtwert auf meiner DataTable zu zeigen, mein Code ist ähnlich der Primzahlen-Showcase DataTable - SummaryRow und immer noch nicht funktioniert.ZusammenfassungRow in p: DataTable funktioniert nicht

<p:dataTable id="dtCaixa" var="list" value="#{caixaMB.list}" paginator="true" rows="7" 
           paginatorPosition="bottom" rowsPerPageTemplate="10,15,20" liveScroll="true" 
           paginatorAlwaysVisible="false" emptyMessage="Nenhuma entrada!" liveResize="true">               


         <p:column headerText="Nome" sortBy="#{list.produtoFK.nome}" style="width:15%;"> 
          <h:outputText value="#{list.produtoFK.nome}" /> 
         </p:column> 

         <p:column headerText="Funcionário" sortBy="#{list.funcionarioFK.nome}"> 
          <h:outputText value="#{list.funcionarioFK.nome}" /> 
         </p:column> 

         <p:column headerText="Quantidade" sortBy="#{list.quantidade}"> 
          <h:outputText value="#{list.quantidade}" /> 
         </p:column> 

         <p:column headerText="Preço" >         
          <h:outputText value="#{list.produtoFK.preco}" rendered="#{not empty list.produtoFK}"> 
           <f:convertNumber pattern="R$ #0.00" locale="pt_BR"/> 
          </h:outputText> 
         </p:column> 

         <p:column headerText="Total" sortBy="#{list.total}" > 
          <h:outputText value="#{list.total}" > 
           <f:convertNumber pattern="R$ #0.00" locale="pt_BR"/> 
          </h:outputText> 
         </p:column> 

         <p:column headerText="Remover" class="centered"> 
          <p:commandButton icon="ui-icon-trash" title="excluir" onclick="PF('confirmaExclusao').show();"> 
           <f:setPropertyActionListener target="#{caixaMB.itemSelecionado}" value="#{list}" /> 
          </p:commandButton>          
         </p:column> 

         <p:summaryRow> 
          <p:column colspan="3" style="text-align:right"> 
           <h:outputText value="Total:" /> 
          </p:column> 
          <p:column> 
           <h:outputText value="#{caixaMB.total}">           
           </h:outputText> 
          </p:column> 
         </p:summaryRow> 

        </p:dataTable> 

Hat jemand eine Idee, warum passiert das?

+2

was ist dein Problem genau hier? –

Antwort

5

Sie müssen die dataTable mit mindestens einer Spalte sortieren, wenn Sie summaryRow verwenden möchten. Überprüfen Sie die Primefaces-Dokumentation.

z. Setzen Sie das Attribut sortBy="#{myList.myOrderValue}" auf den Tag <p:datatable>.

+0

Sie müssen mindestens eine Spalte sortieren, wenn Sie ** ** summaryRow ** verwenden möchten, es befindet sich auf der Vitrine und in der Dokumentation. – mcastilloy2k

+0

Ich habe bereits einige Spalten mit sortBy, wie Sie jetzt auf den Code sehen (ich habe es aktualisiert). – Thales

+0

Wenn Sie das Attribut ** sortBy ** für das Tag "" nicht hinzufügen, müssen Sie die Spalte manuell mit der Kopfschaltfläche sortieren. – mcastilloy2k