HOME      QUASI-BLOG        CONTATO         
 
 
 


Meu Primeiro Site ASP parte 4  retornar

Parte 1        Parte 2         Parte  3        Parte  4    Versão Impressa

Nosso Objetivo :  Construir uma pequena aplicação ASP com acesso a uma base de dados Access

Exibindo detalhes dos registros

O nosso sistema ASP já consegue lista areas nas quais as empresas se enquadram e listar alguns dados das empresas que pertençam as áreas, o próximo passo e poder exibir em uma página de detalhe os dados em um formato de formulário e que não couberam na listagem ou que por uma questão de projeto não deveriam aparecer no meio da listagem.

A listaEmpresa2.asp produz o resultado abaixo

Sendo que o primeiro número de cada linha é o ID da Empresa, ora usando o mesmo conceito que empregamos para ir da página de areas para a de empresas podemos ir da de empresas para o detalhe de empresa.

Como já estamos mestres, basta o que ?

Basta criar um link que aponte para um nova página de detalhes da empresa que vou chamar de detalheEmpresa.asp e passar o ID da empresa.

Novamente a fim de não perder os nossos exercícios anteriores vou criar uma nova ListaEmpresa a ListaEmpresa3.asp e é lá que vou colocar esse link, basta alterar uma única linha dentro da subrotina  listaDados.

 

 

Sub listaDados()

                         'testa se foi ao final do arquivo sem encontrar nada e para

             if ( rs.eof ) then

                         %>

                         <tr>

                        <td>

                 Não existem empresas cadastradas nesse área! <p>

                         <a href="ListaAreas2.asp">retornar</a>

                        </td>

                        </tr>

                         <%

                         else  ' existem registros logo vamos listá-los

                        'enquanto houver registros

                        do while not rs.eof

%>

                        <tr>

                        <td>

                        <!-- exibindo um valor do ambiente VBScripp/Asp dentro do HTML  -->

                           <a href=’detalheEmpresa.asp?emp=<%= rs("EmpresaID") %>’> <%= rs("empresa") %> </a><%= rs("estado") %> 

                        </td>

                        </tr>

<%       

                             ' procura o próximo

                             rs.movenext 

                    loop

             end if

End Sub

Qual o detalhe a destacar ?

   <a href=’detalheEmpresa.asp?emp=<%= rs("EmpresaID") %>’> <%= rs("empresa") %> </a> <%= rs("estado") %> 

O link composto de uma referência a rotina detalheEmpresa que ainda vamos fazer, passando um valor chamdo emp que deverá conter o código da empresa exibida.

Veja o efeito na página

Melhor não ?  Até porque não tinha muito sentido para os nossos clientes ficar vendo o código da empresa, não acrescenta nada de valor nesse nível de uso ao cliente final.

Nesse listagem tem algo que está me incomodando mas que eu vinha evitando alterar, o fato de o estado da empresa aparecer colado ao lado do nome da empresa, eu preferia que estivessem numa única coluna todos alinhados.

A solução para isso é colocar o nome da empresa em uma coluna e o estado em outra, assim  :

                        <tr>

                        <td>

                        <!—primeira coluna  -->

                        <a href='detalheEmpresa.asp?emp=<%= rs("EmpresaID") %>'> <%= rs("empresa") %> </a>     

                        </td>

                          <!—segunda coluna  -->

                        <td>

                        <%= rs("estado") %> 

                        </td>

                        </tr>

Eu consigo o que eu queria, vejam :

Mas com um efeito colateral indesejado, o cabeçalho da primeira linha aonde está a figura na cobre as 2 colunas. Para contornar isso temos que usar a TAG  COLSPAN=2 na linha do cabeçalho  e do rodapé e que agora estão em um arquivo separado.

Vou aproveitar para dar um incrementada no visual, retirando a borda da tabela e especificando fontes e seus tamanhos e ainda linhas separadoras.

Nas subrotinas

<%

' Arquivo de subrotinas a ser incluído em rotinas do sistema

Sub exibeCabecalho

%>

<HTML>

<HEAD>

<TITLE>graficas</TITLE>

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">

</HEAD>

<BODY BGCOLOR=#FFFFFF>

<table border=0 align="center">

<tr><td colspan=2>

<img src="images/graficaonline_01.gif">

</td>

</tr>

<tr height=30><td></td></tr>

<%

End Sub

Sub exibeRodape

%>

<tr>

<td colspan=2 height=50>

            <font FACE="arial" SIZE="1">

            <a href='Javascript:history.go(-1)' class="style1">Retornar</a>

                </font>

                </td>

</tr>

</TABLE>

</FONT>

</BODY>

</HTML>

<%

End Sub

%>

Em ListaEmpresa3.asp a modificação foi apenas em listaDados

<%

Sub listaDados()

                         'testa se foi ao final do arquivo sem encontrar nada e para

             if ( rs.eof ) then

                         %>

                         <tr>

                        <td>

                            <font FACE="arial" SIZE="1">

                              Não existem empresas cadastradas nesse área! <p>

                         <font>

                        </td>

                        </tr>

                         <%

                         else  ' existem registros logo vamos listá-los

                        'enquanto houver registros

                        do while not rs.eof

%>

                        <tr>

                        <td>

                        <font FACE="arial" SIZE="1">

                        <!-- exibindo um valor do ambiente VBScripp/Asp dentro do HTML  -->

                        <a href='detalheEmpresa.asp?emp=<%= rs("EmpresaID") %>'> <%= rs("empresa") %> </a>     

                         </font>

                        </td>

                        <td><font FACE="arial" SIZE="1">

                        <%= rs("estado") %> 

                        </font>

                        </td>

                        </tr>

                        <tr>

                        <td bgcolor="#CCCCFF" height="1" colspan=2></td></tr>

<%       

                             ' procura o próximo

                             rs.movenext 

                    loop

             end if

End Sub

%>

O efeito é esse, letras menores, mais espaço entre o cabeçalho e a listagem e da listagem para o rodapé.

Arquivos de um exercício semelhante ja incorporando controle de acesso por conta e senha do usuário. Clique aqui para baixar.

Links úteis e interessantes

BabyASP Server http://www.pablosoftwaresolutions.com/html/baby_web_server.html

STARUML (http://staruml.sourceforge.net/en/)

ASP Wikipedia http://pt.wikipedia.org/wiki/ASP 

Linha de Código   http://www.linhadecodigo.com.br/Artigo.aspx?id=598

DevGuru VbScript   http://www.devguru.com/technologies/vbscript/index.asp

DevGuru ASP     http://www.devguru.com/technologies/asp/index.asp

Nosso Objetivo :  Construir uma pequena aplicação ASP com acesso a uma base de dados Access

Parte 1        Parte 2         Parte  3        Parte  4