Boa tarde pessoal
É o seguinte, tenho na minha aplicação uma tela com 2 dataTables, onde eu verifico o valor de um Boolean, depedendo do valor eu mostro o 1 ou o 2, até aí tudo bem, o problema acontece qdo ao clicar em uma das linhas, eu abro o objeto para editar e insiro informações que fariam eu mostrar o dataTable 2 com barras de rolagem, mas depois q eu salvo as alterações e clico no botão voltar, como a tela anterior já está criada, a lista é atualizada, mas a estrutura não renderiza certo, teria que validar novamente e mostrar o dataTable certo.
Acho q fui claro.
Desde já agradeço.
Att.
Diego Silva
Beleza dlsilva1812
Posta o codigo por favor…
[quote=JUniorDOzito]Beleza dlsilva1812
Posta o codigo por favor…[/quote]
Blza JUnior
no Java está assim:
public String atualizar() {
this.situacoes = new TsVeiculoDao().listarVeiculos(usuario);
TsGridPos gridAux = new TsGridPos();
for (int i = 0; i < situacoes.size(); i++) {
gridAux = situacoes.get(i);
if (gridAux.getVeiculo().getObsSitCliente() == null) {
gridAux.getVeiculo().setObsSitCliente("");
}
if (gridAux.getRota() != null) {
if (gridAux.getRota().length() > 50
&& gridAux.getVeiculo().getObsSitCliente().length() > 50) {
exibe = true;
} else {
exibe = false;
}
}
}
return "gridVisualizacao";
}
Na interface e chamo assim:
É bem gambiarrento, mas foi a solução q achei.
<t:dataTable id="TabelaReport" var="lista" style="width: 100%; heigth: 90%"
rows="21" rowClasses="row1, row2" rendered="#{gridVisualizacao.exibe eq 'false'}"
value="#{gridVisualizacao.situacoes}">
<t:column>
<f:facet name="header">
</f:facet>
<h:selectBooleanCheckbox value="#{lista.check}"
title="Clique para selecionar este veículo">
<a4j:support action="#{gridVisualizacao.pegaSelecao}"
event="onclick" />
</h:selectBooleanCheckbox>
</t:column>
<t:column sortable="true">
<f:facet name="header">
<h:outputText value="Operação" />
</f:facet>
<h:outputText value="#{lista.veiculo.operacao.descricao}" />
</t:column>
<t:column sortable="true">
<f:facet name="header">
<h:outputText value="Placa" />
</f:facet>
<a4j:commandLink value="#{lista.placa}"
action="#{gridVisualizacao.carregarDados}">
<f:param name="veiculoId" value="#{lista.veiculo.idVeiculo}" />
</a4j:commandLink>
</t:column>
<t:column sortable="true">
<f:facet name="header">
<h:outputText value="Situação" />
</f:facet>
<h:outputText value="#{lista.veiculo.situacao.descricao}"
style="background-color: #{ lista.veiculo.situacao.cor == 'Vermelha' ? 'red' : lista.veiculo.situacao.cor == 'Azul' ? 'blue' :
lista.veiculo.situacao.cor == 'Amarela' ? 'yellow' : lista.veiculo.situacao.cor == 'Verde' ? 'green' :
lista.veiculo.situacao.cor == 'Branca' ? 'white' : 'black'};
color: #{ lista.veiculo.situacao.cor == 'Vermelha' ? 'white' : lista.veiculo.situacao.cor == 'Azul' ? 'white' :
lista.veiculo.situacao.cor == 'Amarela' ? 'black' : lista.veiculo.situacao.cor == 'Verde' ? 'white' :
lista.veiculo.situacao.cor == 'Branca' ? 'black' : 'black'}" />
</t:column>
<t:column width="125px">
<f:facet name="header">
<h:outputText value="Data/Hora da Posição" />
</f:facet>
<h:outputText value="#{lista.dtAux}" />
</t:column>
<t:column sortable="true">
<f:facet name="header">
<h:outputText value="Localização" />
</f:facet>
<h:outputText value="#{lista.localizacao }" />
</t:column>
<t:column sortable="true">
<f:facet name="header">
<h:outputText value="Rota" />
</f:facet>
<h:outputText value="#{lista.rota}" />
</t:column>
<t:column width="250px">
<f:facet name="header">
<h:outputText value="Obs." />
</f:facet>
<h:outputText value="#{lista.veiculo.obsSitCliente}" />
</t:column>
<t:column>
<f:facet name="header">
<h:outputText value="Última Alteração" />
</f:facet>
<h:outputText value="#{lista.veiculo.dtAux}" />
</t:column>
</t:dataTable>
<t:dataTable id="TabelaReport2" var="lista" style="width: 160%; heigth: 90%"
rows="21" rowClasses="row1, row2" rendered="#{gridVisualizacao.exibe eq 'true'}"
value="#{gridVisualizacao.situacoes}">
<t:column>
<f:facet name="header">
</f:facet>
<h:selectBooleanCheckbox value="#{lista.check}"
title="Clique para selecionar este veículo">
<a4j:support action="#{gridVisualizacao.pegaSelecao}"
event="onclick" />
</h:selectBooleanCheckbox>
</t:column>
<t:column sortable="true" width="80px">
<f:facet name="header">
<h:outputText value="Operação" />
</f:facet>
<h:outputText value="#{lista.veiculo.operacao.descricao}" />
</t:column>
<t:column sortable="true" width="80px">
<f:facet name="header">
<h:outputText value="Placa" />
</f:facet>
<a4j:commandLink value="#{lista.placa}"
action="#{gridVisualizacao.carregarDados}">
<f:param name="veiculoId" value="#{lista.veiculo.idVeiculo}" />
</a4j:commandLink>
</t:column>
<t:column sortable="true">
<f:facet name="header">
<h:outputText value="Situação" />
</f:facet>
<h:outputText value="#{lista.veiculo.situacao.descricao}"
style="background-color: #{ lista.veiculo.situacao.cor == 'Vermelha' ? 'red' : lista.veiculo.situacao.cor == 'Azul' ? 'blue' :
lista.veiculo.situacao.cor == 'Amarela' ? 'yellow' : lista.veiculo.situacao.cor == 'Verde' ? 'green' :
lista.veiculo.situacao.cor == 'Branca' ? 'white' : 'black'};
color: #{ lista.veiculo.situacao.cor == 'Vermelha' ? 'white' : lista.veiculo.situacao.cor == 'Azul' ? 'white' :
lista.veiculo.situacao.cor == 'Amarela' ? 'black' : lista.veiculo.situacao.cor == 'Verde' ? 'white' :
lista.veiculo.situacao.cor == 'Branca' ? 'black' : 'black'}" />
</t:column>
<t:column width="125px">
<f:facet name="header">
<h:outputText value="Data/Hora da Posição" />
</f:facet>
<h:outputText value="#{lista.dtAux}" />
</t:column>
<t:column sortable="true">
<f:facet name="header">
<h:outputText value="Localização" />
</f:facet>
<h:outputText value="#{lista.localizacao }" />
</t:column>
<t:column sortable="true">
<f:facet name="header">
<h:outputText value="Rota" />
</f:facet>
<h:outputText value="#{lista.rota}" />
</t:column>
<t:column width="250px">
<f:facet name="header">
<h:outputText value="Obs." />
</f:facet>
<h:outputText value="#{lista.veiculo.obsSitCliente}" />
</t:column>
<t:column width="100px">
<f:facet name="header">
<h:outputText value="Última Alteração" />
</f:facet>
<h:outputText value="#{lista.veiculo.dtAux}" />
</t:column>
</t:dataTable>
No contrutor eu tenho a mesma rotina onde no momento de criar a tela, ele renderiza certinho… mas o problema é qdo eu dou um clique no botão para voltar que chama o método atualizar.
Se puder ajudar!!
Desde já agradeço.