Ir para conteúdo

POWERED BY:

Arquivado

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

Alexandre Murayama

Listar em linhas e colunas.

Recommended Posts

Pessol, bom dia!!!

 

Estou com um problemão. Preciso fazer uma tabela de consultas em que os registros são listados alguns em linhas e outros em colunas. Quebrei a cabeça, perdi cabelo, queimei neurônios, fiquei com cãibra nos dedos e nada!!! Alguém pode me dar uma luz? Abaixo segue um modelo de como teria que ficar:

 

 

Hab1 Hab2 Hab3 Hab4 Hab5

Funcionario 1 Nota1 Nota2 Nota3 Nota4 Nota5

Funcionario 2 Nota1 Nota2 Nota3 Nota4 Nota5

Funcionario 3 Nota1 Nota2 Nota3 Nota4 Nota5

Funcionario 4 Nota1 Nota2 Nota3 Nota4 Nota5

Funcionario 5 Nota1 Nota2 Nota3 Nota4 Nota5

 

 

Com certeza esse modelo tosco tá confuso, explico:

 

Onde estiver Funcionário, seria a listagem em linhas dos funcionários, Hab seria a listagem em colunas das habilidades do infeliz e Nota também listada em colunas, as notas de cada habilidade do infeliz.

O problema dessa pirombeta é que só consigo listar tudo em linhas!!!

 

Se alguém tiver alguma idéia fico grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, pra começar você está invertendo os nomes.

 

Quando lista na vertical é coluna, e quando lista na horizontal é linha. Pelo que entendi do que você explicou, está ao contrário. Mas isso não altera o que você precisa né, rs...

 

Esses dados estão em um banco de dados?

 

Você pode utilizar um loop para montar uma tabela, exemplo:

 

<table>
<%do until rs.eof%>
<tr>
<td>
<%=rs("funcionario")%>
<td>
<%=rs("nota1")%>
</td>
<td>
<%=rs("nota2")%>
</td>
<td>
<%=rs("nota3")%>
</td>
<td>
<%=rs("nota4")%>
</td>
</tr>
<%loop%>
</table>

Caso a estrutura que encontra-se seus dados não te permitam montar algo dessa forma, poste como está que vemos o que pode ser feito.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, eu tô procurando a mesma coisa.. acontece que eu só consigo listar 1 por linha. Gostaria de colocar três iten em uma mesma linha e não consigo achar em lugar algum. Um abraço para todos!!

 

O que tenho é isto:

 

<tr ><td width=100%><table border=1 bordercolor="#cccc99" align=center>
	<tr><th>Código</th><th>ID Produto</th><th>Presente</th><th>Quant</th><th>Preço Unit</th><th>Preço Total</th><th>Status</th></thead></tr></tr>
	<%
	Dim prod_cat_id,prod_id,prod_nome,prod_descricaop,prod_preco,malha1,codigo,comprador
,id, total, precototal, preco_total_iten , bonus, prod_estoque
	malha1 = "sim"
	while not lista_produtos.EOF
		prod_cat_id = lista_produtos("cat_id")
		prod_id = lista_produtos("id")
		prod_nome = lista_produtos("nome")
		prod_descricaop = lista_produtos("descricaop")
		prod_preco = lista_produtos("preco")
		precototal = lista_produtos("preco")
		preco_total_iten = prod_descricaop * prod_preco
		codigo = lista_produtos("descricaog")
		comprador = lista_produtos("comprador")
		id = lista_produtos("id")
		total = total + preco_total_iten
		bonus = total * 0.05
		
		while not lista_estoque.EOF
		prod_estoque = itens.quant
		%>				  
		<tr width=100% valign=top align=center class=<%=malha1%>><td align=center><%=codigo%></td><td><%=id%></td><td><%=prod_nome%></td><td align=center><%=prod_descricaop%></td><td align=center>R$ <%=prod_preco%>,00</td><td align=center>R$ <%=preco_total_iten%>,00</td><td align=center><%=prod_estoque%></td></tr>
		
			<%
		lista_produtos.movenext
		If malha1 = "sim" Then malha1 = "nao" Else malha1 = "sim" End If
	wend
end if
lista_produtos.Close
lista_estoque.Close
set lista_produtos = Nothing
set lista_estoque = Nothing
%>
		
		
		

<%
	set lista_produtos = lojaDB.Execute("SELECT * FROM produtos WHERE cat_id="& cat_id &" AND disp='S'   ORDER BY descricaog")
	If lista_produtos.EOF Then 
	Response.Write "<tr><td><h4>" & msgnada & "</h4></td></tr>"
Else 
%>
	<tr ><td width=100%><table border=1 bordercolor="#cccc99" align=center>
	<tr><th>Código</th><th>ID Produto</th><th>Presente</th><th>Quant</th><th>Preço Unit</th><th>Preço Total</th><th>Status</th></thead></tr></tr>
	<%
	malha1 = "sim"
	while not lista_produtos.EOF
		prod_cat_id = lista_produtos("cat_id")
		prod_id = lista_produtos("id")
		prod_nome = lista_produtos("nome")
		prod_descricaop = lista_produtos("descricaop")
		prod_preco = lista_produtos("preco")
		precototal = lista_produtos("preco")
		preco_total_iten = prod_descricaop * prod_preco
		codigo = lista_produtos("descricaog")
		comprador = lista_produtos("comprador")
		id = lista_produtos("id")
		total = total + preco_total_iten
		bonus = total * 0.05
		prod_estoque = lista_produtos("estoque")
		%>				  
		<tr width=100% valign=top align=center class=<%=malha1%>><td align=center><%=codigo%></td><td><%=id%></td><td><%=prod_nome%></td><td align=center><%=prod_descricaop%></td><td align=center>R$ <%=prod_preco%>,00</td><td align=center>R$ <%=preco_total_iten%>,00</td><td align=center><%=prod_estoque%></td></tr>
		
		
		
		
		<%
		lista_produtos.movenext
		If malha1 = "sim" Then malha1 = "nao" Else malha1 = "sim" End If
	wend
End If
lista_produtos.Close
set lista_produtos = Nothing
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha este exemplo,Vamos dizer que você está criando uma lista de trabalhadores e os números de telefone e deseja ter os resultados classificados em três colunas vertical. Por exemplo registros 0-10 seria na primeira coluna, 11 - 21 no segundo e 22-32 na última (terceira coluna).

 

Aqui é um processo que pode fazer isso para você e até mesmo dar-lhe a flexibilidade para alterar apenas o número de colunas e os dados que é exibida.

 

<%   
SqlStr = "SELECT Employee, PhNum " & _ 
		   "FROM Tabela " & _ 
		   "ORDER BY trabalhadores " 
 
Set objRS = Server.CreateObject ("ADODB.RecordSet") 
objrs.Open SqlStr, ConStr, adOpenStatic, adLockOptimistic,adCmdText 
	
   'Este é quantas colunas você quiser,no seu caso altera para 4 
   NumCols = 3 
 
   NumRecs = objrs.RecordCount 
   NumEachCol = NumRecs/NumCols 
	
   If (NumRecs Mod NumCols) > 0 Then 
	  TempNumRecs = NumRecs + (NumCols-(NumRecs Mod NumCols)) 
	  NumEachCol = TempNumRecs /NumCols 
   End If 
 
   Response.Write "<table>" 
 
   Response.Write "<tr>" 
   For x = 0 to NumCols - 1 
	  'Column Headings 
	  Response.Write "<td>trabalhadores </td>" 
	  Response.Write "<td>Fone Num</td>" 
   Next 
   Response.Write "</tr>" 
 
   For y = 0 to NumEachCol-1 
	  Response.Write "<tr>" 
	  For x = 0 to NumCols-1 
		 'Calcular o próximo número recorde na linha 
		 RecNum = y + (NumEachCol * x) 
	 'Certifique-se de que não esgotou os registros 
		 If RecNum < NumRecs Then 
			objrs.MoveFirst 
			objrs.Move RecNum 
			Response.Write "<td>" & objrs("trabalhadores") & "</td>" 
			Response.Write "<td>" & objrs("foneNum") & "</td>" 
		 Else 
			Response.Write "<td> </td>" 
			Response.Write "<td> </td>" 
		 End If 
	  Next 
	  Response.Write "</tr>" 
   Next 
 
   Response.Write "</table>" 
 
objrs.Close 
Set objRS = Nothing 
%>

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.