Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rdpacato

Criar lista de vetor

Recommended Posts

Pessoal,

 

Preciso preencher uma lista de um vetor com valores dinâmicos, mas não está dando certo minha lógica:

 

Os vetores que preciso deixar igual a este:

var data = 
google.visualization.arrayToDataTable([
['tempo', 'Velocidade', 'Rotacao do Motor','Nvl Combustivel'],
['Set/05', 165, 200, 
40],
['Set/09', 135, 40, 
80],
['Set/11', 157, 350, 
32],
['Set/15', 139, 70, 
22],
['Set/20', 136, 400, 
90]
]); 

Este é o que estou tentando, mas está com erro por causa das vírgulas...

 

var data = google.visualization.arrayToDataTable([
[
<c:forEach var="medicao" items="${medicoes}">
'${medicao.dtHoraDispositivo}',
'${medicao.codDispositivo}',
'${medicao.ultMensagem}',
<c:choose>
<c:when test="${medicao.velocidadeInst != null}">
<c:set var="velocidadeInst" value="true"/>
'${medicao.velocidadeInst}',
</c:when>
<c:when test="${medicao.rotMotor != null}">
<c:set var="rotMotor" value="true"/>
'${medicao.rotMotor}',
</c:when>
<c:when test="${medicao.nvlCombus != null}">
<c:set var="nvlCombus" value="true"/>
'${medicao.nvlCombus}',
</c:when> 
<c:when test="${medicao.consInsCombus != null}">
<c:set var="consInsCombus" value="true"/>
'${medicao.consInsCombus}',
</c:when> 
<c:when test="${medicao.distPerc != null}">
<c:set var="distPerc" value="true"/>
'${medicao.distPerc}',
</c:when>
<c:when test="${medicao.tempViagem != null}">
<c:set var="tempViagem" value="true"/>
'${medicao.tempViagem}',
</c:when>
<c:when test="${medicao.consMedCombus != null}">
<c:set var="consMedCombus" value="true"/>
'${medicao.consMedCombus}',
</c:when>
</c:choose>
'${medicao.latitude}',
'${medicao.longitude}'
 
</c:forEach>
]
]);

 

Esta primeira lista é a de títulos, referente a primeira linha do item da lista que mostrei de exemplo ( ['tempo', 'Velocidade', 'Rotacao do Motor','Nvl Combustivel'], )

 

 

então como é dinâmico preciso verificar se é diferente de nulo, se sim, eu seto uma variável para verificar depois na lista de resultado para mostrar ou não.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, pq vc não devolve o json certinho do backend ?

 

Requisita com ajax e trás o json formatado, em vez de ir interpolando código.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi William beleza? não manjo muito (quase nada na verdade) de ajax... por isso nem sei ao certo do que você ta falando rsrs..

 

vou procurar por isso.. mas não sei se consigo por esse caminho...

 

O que cheguei perto foi colocar no vetor com .push , mas não sei como colocar ele dentro do formao que quero [valores,]

 

 

 

 
 
var titulos=[];
 
 
<c:forEach var="medicao" items="${medicoes}">
<c:choose> 
<c:when test="${medicao.dtHoraDispositivo != null}">
titulos.push('${medicao.dtHoraDispositivo}');
</c:when>
</c:choose>
<c:choose>
<c:when test="${medicao.codDispositivo != null}">
titulos.push('${medicao.codDispositivo}');
</c:when>
</c:choose>
<c:choose>
<c:when test="${medicao.ultMensagem != null}">
titulos.push('${medicao.ultMensagem}');
</c:when>
</c:choose>
<c:choose>
<c:when test="${medicao.velocidadeInst != null}">
<c:set var="velocidadeInst" value="true"/>
titulos.push('${medicao.velocidadeInst}');
</c:when>
</c:choose>
<c:choose>
<c:when test="${medicao.rotMotor != null}">
<c:set var="rotMotor" value="true"/>
titulos.push('${medicao.rotMotor}');
</c:when>
</c:choose> 
<c:choose>
<c:when test="${medicao.nvlCombus != null}">
<c:set var="nvlCombus" value="true"/>
titulos.push('${medicao.nvlCombus}');
</c:when>
</c:choose>
<c:choose>
<c:when test="${medicao.consInsCombus != null}">
<c:set var="consInsCombus" value="true"/>
titulos.push('${medicao.consInsCombus}');
</c:when>
</c:choose>
<c:choose>
<c:when test="${medicao.distPerc != null}">
<c:set var="distPerc" value="true"/>
titulos.push('${medicao.distPerc}');
</c:when>
</c:choose>
<c:choose>
<c:when test="${medicao.tempViagem != null}">
<c:set var="tempViagem" value="true"/>
titulos.push('${medicao.tempViagem}');
</c:when>
</c:choose>
<c:choose>
<c:when test="${medicao.consMedCombus != null}">
<c:set var="consMedCombus" value="true"/>
titulos.push('${medicao.consMedCombus}');
</c:when>
</c:choose> 
titulos.push('${medicao.latitude}');
titulos.push('${medicao.longitude}');
</c:forEach>

Compartilhar este post


Link para o post
Compartilhar em outros sites

William, você poderia me ajudar a apontar essa url?

 

Pq não sei como fazer para fazer um select na minha base de dados.... essa é da documentação do google mesmo:

var wrapper = new 
google.visualization.ChartWrapper({
'chartType':'LineChart',
'dataSourceUrl':'http://spreadsheets.google.com/tq?key=pCQbetd-CptGXxxQIG7VFIQ&pub=1',
'query':'SELECT A,D WHERE D > 100 ORDER BY 
D',
'options': {'title':'Population Density (people/km^2)', 
'legend':'none'}
});

Ou conseguir varrer um vetor (var vetor []) para pegar o item ou separar eles da lista quando usa (.join):

for(int i = 0; i < dataResult.getNumberOfColumns(); 
i++){
dataResult.addRow(resultados.join(", ")); 
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.