Ir para conteúdo

POWERED BY:

Arquivado

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

jrcardozo

RELATORIO-Listar dados em colunas duplas, criando cabeçalho e rodapé

Recommended Posts

Diante da minha necessidade de trabalho e de aprendizado criei uma pequena "gambiarra" para solucionar meu problema. Não encontrei nada semelhante no google e os codigos que listam em colunas encontrados não atendiam ao básico da minha necessidade. Lembrando que criri com o objetivo de IMPRIMIR os dados e não de exibir. Para ter uma ideia do resultado clique no link para visualizar

 

Link de modelo

 

Pra quem for útil basta modificar conforme a necessidade http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

Basicamente funciona assim, na primeira página ele lista X itens e nas demais Y itens, isso porque na primeira página tem o cabeçalho principal que ocupa um espaço que nas demais não tem.Quem puder melhorar o código posta ai depois...fui http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%><%option explicit%><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><%dim strSqlR_NumeroRelacaodim intNumeroRelacaodim intColunasdim intLinhasdim intLinhasPagina1dim intLinhasPorPaginadim intValorContadordim intJ,intI,intAuxdim intContadordim rsdim condim intPaginadim strDataRelacaointNumeroRelacao=199'recebe do formulário o parâmetrointColunas=4'quantidade de colunas DUPLAS por páginaintLinhas=48'linhas por página'########### não altere ###########intLinhasPagina1=intLinhasintJ=0intLinhasPagina1=intLinhasPagina1-10intLinhasPorPagina=intLinhasPorPagina*intColunasintValorContador=intLinhasPagina1*intColunas'##################################%><title>Exibindo relação de propostas n° <%=intNumeroRelacao%></title><style type="text/css"><!--body,td,th { font-family: Arial, Helvetica, sans-serif; font-size: 12px;}body { margin-left: -5px; margin-top: -5px; margin-right: -5px; margin-bottom: -5px;}.style1 { font-size: 24px; font-weight: bold;}.style2 { font-size: 14px; font-weight: bold;}.style3 {font-size: 14px}.style4 { font-size: 9px; font-weight: bold;}--></style></head><body><%Set rs= server.createobject("adodb.recordset")%>  <!--#include file="jonathan_conexao.asp"--><%rs.Open strSqlR_NumeroRelacao, con, 3if not rs.eof thenstrDataRelacao=rs("data_rel")%><table width="620" align="center">   <tr>	<td width="161" height="20"><img src="jonathan_imagens/jonathan_logo.gif" width="100" height="60" /></td>   	   <td width="353"><div align="center" class="style1">RELAÇÃO DE PROPOSTAS </div></td>	   <td width="90"> </td>   </tr>   <tr>	 <td height="20"> </td>	 <td> </td>	 <td> </td>	 </tr>   <tr>	 <td height="20" colspan="3"><span class="style2">DE: SEÇÃO DE CONTROLE - GERIMCO<br />  PARA: SEÇÃO DE MICROFILMAGEM E ARQUIVO GERAL - GERSA<br />  Relação <%=intNumeroRelacao%> de <%=strDataRelacao%> </span></td>	 </tr>   <tr>	 <td height="20" colspan="3"> </td>	 </tr>   <tr>	 <td height="20" colspan="3"><span class="style3">Encaminho as propostas		 implantadas para vossas providências.</span></td>	 </tr></table><table width="620" border="0" align="center" cellpadding="2" cellspacing="0" bordercolor="#999999"><%intContador=0do while not rs.eof if intContador=intValorContador then  intLinhasPorPagina=intLinhasPagina1 else  intLinhasPorPagina=intLinhas	   end if intLinhasPorPagina=intLinhasPorPagina*intColunas if intI<>intColunas then %>  <%  if intJ=intLinhasPorPagina or intI="" then   intPagina=intPagina+1  %>   <tr>   <%   for intAux=1 to intColunas*2+intColunas   %>	<td height="20"><%if intJ<>0 then%><br style="page-break-after:always;"><%end if%></td>      <%   next   %>   </tr>   <tr>   <%   for intAux=1 to intColunas	%>	 	<td align="center" bgcolor="#EBEBEB"><b>Matrícula</b></td>	<td  align="center" bgcolor="#EBEBEB"><b>Proposta</b></td> 	<td  align="center">  </td>			 	<%   next   %>   </tr>   <tr>    <%    intJ=0  end if    %>    <td bordercolor="#333333" height="15"><div align="center"><%=(rs("matricula"))%></div></td>  <td bordercolor="#333333"><div align="right"><%=rs("n_proposta")%>  </div></td>  <td  align="center"></td>  <%  intI=intI+1  intJ=intJ+1 end if if intI=intColunas then  intI=0  %>  </tr>  <%  if intJ=intLinhasPorPagina then  %>   <tr>	<td colspan="<%= intColunas*2+intColunas-1%>" align="right"><span class="style4">Página <%=intPagina%> da relação <%=intNumeroRelacao%> de <%=strDataRelacao%>   </span></td>   </tr>   <%  end if  %>  <% end if intContador=intContador+1 rs.movenextlooprs.closeset rs=nothing%></tr></table><table width="620" border="0" align="center" cellpadding="0" cellspacing="0">  <tr>	<td align="right"> </td>	<td align="right"> </td>  </tr>  <tr>	<td align="right">Total de propostas relacionadas:<strong> <%=intContador%></strong><span class="style4">	</span></td>	<td align="right"> </td>  </tr>  <tr>	<td align="right"> </td>	<td align="right"> </td>  </tr>  <tr>   <td width="603" align="right"><span class="style4"> Página <%=intPagina%> da relação <%=intNumeroRelacao%> de <%=strDataRelacao%>   </span></td>   <td width="17" align="right"> </td>  </tr></table><%else Response.Write("<br>nenhum registro")end ifcon.closeset con=nothing%></body></html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

bacana mesmoparabens tiozinho

Compartilhar este post


Link para o post
Compartilhar em outros sites

esqueci de mencionar....para visualizar a impressão configure as margens do browser para 5px, ai funcionará perfeito

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.