Este es el código generado:
Código HTML:
Ver original<div style="position:relative;z-index:10;width:600px;padding:10px;" id="mostrarprecios" name="mostrarprecios">
<div class="concelda anchoc">Codigo
</div> <div class="concelda anchod">Descripción
</div> <div class="concelda anchop">Precio
</div> <div class="concelda anchou">Unidad
</div> <div class="concelda anchoi"> </div> <div class="concelda anchoa"> </div>
<div style="background-color: rgb(245, 245, 245);" class="confila" id="9517" onmouseover="javascript:color(this.id,1);" onmouseout="javascript:color(this.id,2);"> <div class="concelda anchoc">D35AC010
</div> <div class="concelda anchod">PINTURA PLÁSTICA COLOR
</div> <div class="concelda anchop">5,38
</div> <div class="concelda anchou">m²
</div> <div class="concelda anchoi"> <a href="#" onclick="javascript:abrei('ainfo0','aimage0');"><img id="aimage0" src="images/precios/subir.png"></a> <div class="concelda anchoa"> <a href="#" onclick="javascript:agregarPartida('D35AC010','PINTURA PLÁSTICA COLOR','5,38','m²');"><img id="apartida0" src="precios/apartida.png"></a>
<div style="display: table-row;" class="ainfo" id="ainfo0">
<a class="derecha" href="#" onclick="javascript:var capaio = document.getElementById('ainfo0');capaio.style.display = 'none';document.getElementById('aimage0').src = 'images/precios/bajar.png';"><img id="aimage0" src="images/precios/cerrar.png"></a>
<span>m². Pintura plástica color lisa PROCOLOR mix o similar en paramentos verticales y horizontales, lavable dos manos, i/lijado y emplastecido.
</span>
<div class="concelda">Elemento
</div> <div class="concelda">Cantidad
</div> <div class="concelda">Unidad
</div> <div class="concelda">Concepto
</div> <div class="concelda">Precio
</div> <div class="concelda">Importe
</div> <div class="concelda">U01FZ101
</div> <div class="concelda">0,06
</div> <div class="concelda">Oficial 1ª pintor
</div> <div class="concelda">0,00
</div> <div class="concelda">0,00
</div> <div class="concelda">U01FZ105
</div> <div class="concelda">0,06
</div> <div class="concelda">Ayudante pintor
</div> <div class="concelda">0,00
</div> <div class="concelda">0,00
</div> <div class="concelda">U36CA001
</div> <div class="concelda">0,50
</div> <div class="concelda">kg
</div> <div class="concelda">Pintura plástica mate color Bruguer
</div> <div class="concelda">0,00
</div> <div class="concelda">0,00
</div> <div class="concelda">%CI
</div> <div class="concelda">0,07
</div> <div class="concelda">Costes indirectos..(s/total)
</div> <div class="concelda">0,00
</div> <div class="concelda">0,00
</div>
con este codigo asp utilizando javascript
:
Código ASP:
Ver originalvar consulta = "select TOP 20 c.clave, c.codigo, c.unidad, c.resumen, c.precio, c.fecha, c.tipo, t.texto ";
consulta += "from precioc AS c INNER JOIN preciot AS t ON c.codigo = t.codigo ";
consulta += "where c.codigo LIKE \'D_______\' ";
consulta += "and c.resumen LIKE \'%" + vcolu + "%\' ";
consulta += "COLLATE SQL_LATIN1_GENERAL_CP1_CI_AI ";
consulta += "order by c.codigo, c.resumen ASC"
consulSE(); // Ejecutamos la CONSULTA. //
var respuestas = dato;
dato = '';
// 2. Mostramos las respuestas encontradas para la búsqueda realizada. //
if ( !respuestas == 0 || !respuestas == null || !respuestas == undefined || !respuestas == "" || !respuestas == " " )
{
%> <div class="contabla">
<div class="confila">
<div class="concelda anchoc">Codigo</div>
<div class="concelda anchod">Descripción</div>
<div class="concelda anchop">Precio</div>
<div class="concelda anchou">Unidad</div>
<div class="concelda anchoi"> </div>
<div class="concelda anchoa"> </div>
</div>
</div>
<%
for (i=0;i<respuestas.length;i++)
{
var importela = respuestas[i][4] * 1 * ( 1 + igag + ibee );
%> <div class="contabla">
<div class="confila" id="<%=respuestas[i][0]%>" onMouseOver="javascript:color(this.id,1);" onMouseOut="javascript:color(this.id,2);">
<div class="concelda anchoc"><%=respuestas[i][1]%></div>
<div class="concelda anchod"><%=respuestas[i][3]%></div>
<div class="concelda anchop"><%=formatNumber(importela)%></div>
<div class="concelda anchou"><%=respuestas[i][2]%></div>
<div class="concelda anchoi">
<a href="#" onClick="javascript:abrei('<%='ainfo' + i%>','<%='aimage' + i%>');"><img id="<%='aimage' + i%>" src="http://www.presupueston.com/images/precios/bajar.png" /></a>
</div>
<div class="concelda anchoa">
<a href="#" onClick="javascript:agregarPartida('<%=respuestas[i][1]%>','<%=respuestas[i][3]%>','<%=formatNumber(importela)%>','<%=respuestas[i][2]%>');"><img id="<%='apartida' + i%>" src="http://www.presupueston.com/images/precios/apartida.png" /></a>
</div>
</div>
</div>
<div class="ainfo" id="<%='ainfo' + i%>">
<a class="derecha" href="#" onClick="javascript:var capaio = document.getElementById('<%='ainfo' + i%>');capaio.style.display = 'none';document.getElementById('<%='aimage' + i%>').src = 'http://www.presupueston.com/images/precios/bajar.png';"><img id="<%='aimage' + i%>" src="http://www.presupueston.com/images/precios/cerrar.png" /></a>
<span><%=respuestas[i][7]%></span>
<br />
<%
var consulta = "select d.clave, d.codigo, d.concepto, d.rendimiento, c.unidad, c.resumen, c.precio ";
consulta += "from preciod AS d INNER JOIN precioc AS c ON d.concepto = c.codigo ";
consulta += "where d.codigo = \'" + respuestas[i][1] + "\' ";
consulta += "order by d.clave, d.concepto ASC"
consulSE(); // Ejecutamos la CONSULTA. //
var epartida = dato;
dato = '';
if ( !epartida == 0 || !epartida == null || !epartida == undefined || !epartida == "" || !epartida == " " )
{
%> <div class="contabla">
<div class="confila">
<div class="concelda">Elemento</div>
<div class="concelda">Cantidad</div>
<div class="concelda">Unidad</div>
<div class="concelda">Concepto</div>
<div class="concelda">Precio</div>
<div class="concelda">Importe</div>
</div>
<%
var sucodi = 0;
var eimporte = 0;
var eprecio = 0;
for (j=0;j<epartida.length;j++)
{
if ( !epartida[j][2] == String("%CI") )
{
sucodi += ( epartida[j][3] * epartida[j][6] );
eimporte = epartida[j][3] * epartida[j][6];
eprecio = epartida[j][6];
}
else
{
eprecio = sucodi;
eimporte = sucodi * epartida[j][3];
}
%> <div class="confila">
<div class="concelda"><%=epartida[j][2]%></div>
<div class="concelda"><%=formatNumber(epartida[j][3])%></div>
<div class="concelda"><%=epartida[j][4]%></div>
<div class="concelda"><%=epartida[j][5]%></div>
<div class="concelda"><%=formatNumber(eprecio)%></div>
<div class="concelda"><%=formatNumber(eimporte)%></div>
</div>
<%
}
%> </div>
<%
}
else
{
%> <p>Esta partida no tiene detalle de elementos de coste</p>
<%
}
%> </div>
<%
}
}
else
{
%> No hay partidas que se correspondan con la consulta, utiliza una sola palabra.
<%
}
Llevo todo el día dando vueltas y no termino de verlo, pero creo que viendolo con claridad se puede ver al vuelo:
- Por un lado no recorre todos los elementos del primer for, solo el primero elemento.
- Este if no me funciona: if ( !epartida[j][2] == String("%CI") ), cuando debería por que el valor %CI se muestra por pantalla tal cual.
gracias, un saludo.