Busca online em todo site:
NETITC

Você não está logado, deseja logar na comunidade? clique aqui.




Título do Artigo

Sistema de Login – Parte IV


Data Publicação: 24/5/2006 9:42:14
Total de visualizações: 2620

comente
 


 

Olá pessoal, estou disposto mostrar a parte do sistema de login utilizando VB 6.0, ASP 3.0, SQL Server e Stored Procedure. As partes anteriores podem ser encontradas nos sites www.aspneti.com e www.juliobattisti.com.br.

 

A parte III, criei uma function na classe global.bas com o nome AbreConexao. Antes mesmo de compilar a aplicação VB 6.0, preciso adicionar uma referência para o aplicativo, resumindo, é uma dll responsável para facilitar acesso ao banco de dados, ou seja, um drive de acesso. É chamada de Microsoft ActiveX Data Objects 2.5 Library.

 

Cliquei no menu Project e em seguida na opção References para adicionar a referência citada anteriormente. Referência (4.1 – Visual Basic 6.0)

 

Referência: 4.1 – Visual Basic 6.0

 

A tela (4.2 – Visual Basic 6.0) possui uma relação de várias dlls disponíveis para serem usadas dentro do aplicativo. Escolhi uma chamada Microsoft ActiveX Data Objects 2.5 Library. Referência (4.2 – Visual Basic 6.0)

 

Referência: 4.2 – Visual Basic 6.0

 

Marquei a dll necessária para acesso ao banco de dados utilizando o Visual Basic 6.0. Procurei digitando a letra “m” e em seguida marquei a mesma desejada. Para finalizar cliquei no botão OK.

 

 

Compilar o Aplicativo

 

Tudo que foi feito até agora, nenhuma hora foi compilado o aplicativo para verificação de erro.  Lembro que o Visual Basic 6.0 não é igual ao novo Visual Studio.NET 2003 ou 2005, isto é, o mesmo só mostra o erro se for compilado. Para compilar e gerar a dll, cliquei no menu File / Make (nome do aplicativo). Dessa forma é gerado a dll.  Referência (4.3 – Visual Basic 6.0)

 

 

 

Referência: 4.3 – Visual Basic 6.0

 

 

O interessante é que se tiver algum tipo de erro dentro do aplicativo por exemplo: sintaxe ou sem fechar algum “end if”, a dll não será gerada.

Antes de mostrar algum erro de sintaxe ou aplicação, o Visual Basic 6.0 pedirá um caminho para gerar ou gravar a dll. Referência (4.4 – Visual Basic 6.0).

 

Referência: 4.4 – Visual Basic 6.0

 

 

Sem erro, a dll será gerada e pronta para ser usada.

Uma dica é, compile sempre o aplicativo para saber se possui algum erro.

 

 

Criar mais functions

 

Bom, agora que já foi mostrado como compilar um aplicativo, irei mostrar e criar outras functions dentro do global.bas. Com apenas a function AbreConexao, não adianta em nada para ser usada em um aplicativo robusto ou simples. Mais quatro functions serão criadas dentro do global.bas e assim utilizarmos uma página ASP para logar utilizando o aplicativo feito com o Visual Basic 6.0 registrado no COM + (COM PLUS).

 

Segue uma tabela com a relação de todas as functions com explicação. (Referência 4.5 – Visual Basic 6.0).

 

 

 

 

Function

Explicação da funcionalidade

ExecutaSQLArray

Essa function serve para executar algum comando SQL que retorne um array de dados. Essa forma de array pode ser entendido como RECORDSET, ou seja, um SELECT.

 

 

ExecutaSQL

Essa function serve para apenas executar um comando SQL, não retornar valor, ou seja, é responsável para executar um: INSERT, UPDATE e DELETE.

 

 

Encryptografar

Essa function serve apenas para receber um parâmetro, criptografar e retornar o valor criptografado. Irei utilizar um componente externo para isso.

 

 

DesenCryptar

Essa function serve apenas para receber um parâmetro criptografado e retornar o valor descriptografado, ou seja, ao contrário da function anterior.

Referência: 4.5 – Visual Basic 6.0

 

 

 

 

 

Dentro do arquivo .bas, no final do método AbreConexao, dei um ENTER e coloquei as functions relacionadas acima:  Cada referência será uma function comentada. (Referência 4.6 – Visual Basic 6.0)

 

 

 

Public Function ExecutaSQLArray(ByVal SQL As String, _

                                Optional ByVal sMetodoOrigem As String = "") As Variant

 

Static vRetorno  As Variant

Static sMetodo   As String

Static bRetorno  As Boolean

 

On Error GoTo error

   

    'Setando Objeto RecordSet

    Set RS = CreateObject("ADODB.RECORDSET")

   

    'Fazendo Open no Objeto SQL

    RS.Open SQL, CONN

      

    'Criando Array

    vRetorno = RS.GetRows

    ExecutaSQLArray = vRetorno

   

    'Fechando RS

    RS.Close

    Set RS = Nothing

  

error:

    If Err.Number <> 0 And Err.Number <> 3021 Then

        'Fechando RS

        RS.Close

        Set RS = Nothing

        'Fechando Conexao

        ExecutaSQLArray = ""

    Else

        If Not IsArray(vRetorno) Then

            ExecutaSQLArray = "0"

        End If

    End If

   

End Function

 

Referência: 4.6 – Visual Basic 6.0

Explicação:

 

Analisando a assinatura da function, recebe dois parâmetros, um opcional e outro obrigatório, que no final é retornado um valor do tipo Variant. Esse tipo significa que, será retornado um array de dados. (Referência 4.7 – Visual Basic 6.0)

 

 

 

Public Function ExecutaSQLArray(ByVal SQL As String, _

                                Optional ByVal sMetodoOrigem As String = "") As Variant

 

Referência: 4.7 – Visual Basic 6.0

 

 

Adicionei algumas variáveis no começo estáticas, cada uma com um tipo. (Referência 4.8 – Visual Basic 6.0)

 

 

 

Static vRetorno  As Variant

Static sMetodo   As String

Static bRetorno  As Boolean

 

Referência: 4.8 – Visual Basic 6.0

 

Simples variáveis que serão usadas dentro da function.

 

 

 

 

On Error GoTo error

   

    'Setando Objeto RecordSet

    Set RS = CreateObject("ADODB.RECORDSET")

   

    'Fazendo Open no Objeto SQL

    RS.Open SQL, CONN

      

    'Criando Array

    vRetorno = RS.GetRows

    ExecutaSQLArray = vRetorno

   

    'Fechando RS

    RS.Close

    Set RS = Nothing

 

Referência: 4.9 – Visual Basic 6.0

 

No próximo passo do código, usei o on error goto erro onde posso tratar o erro se acontecer algum. Criei um objeto do tipo RecordSet, abri esse objeto. Crio o array atribuindo para a variável do tipo declarada anteriormente.

 

O segredo em criar o array com o RecordSet é colocar a function GetRows. Dessa forma, é gerado um array e pode ser atribuída ao tipo variant do Visual Basic 6.0. Atribuo a variável vRetorno ao nome da function ExecutaSQLArray.

Fecho o RecordSet e seto para nothing. É muito importante colocar nothing para o objeto.

 

 

 

error:

    If Err.Number <> 0 And Err.Number <> 3021 Then

        'Fechando RS

        RS.Close

        Set RS = Nothing

        'Fechando Conexao

        ExecutaSQLArray = ""

    Else

        If Not IsArray(vRetorno) Then

            ExecutaSQLArray = "0"

        End If

    End If

Referência: 4.10 – Visual Basic 6.0

 

Explicação:

 

Para finalizar, dentro do laço error, existe uma condição para o código erro.number, se for diferente de zero ou diferente do número 3021, fecho os objetos e atribuo a function o valor vazio. Se não houver erro, criei mais uma condição perguntar se a variável não é array, se for verdadeiro, atribuo a function ao valor zero.

 

Segue a function total. (Referência 4.11 – Visual Basic 6.0)

 

 

Referência: 4.11 – Visual Basic 6.0

 

Bom, fico por aqui. Nos próximos passos, mostrarei as outras functions dando a devida explicação. Espero que tenha gostado.

 

 

Livros publicados do autor:

 

 

 

Mauricio Junior

www.aspneti.com

www.mauriciojunior.org

 



Total de visualizações: 2620
voltar   comente  subir

Autor:


Por:Mauricio Junior
Maurício Júnior
Formado pela Faculdade Anhanguera, Especialista pela FGV (Fundação Getúlio Vargas), Pós-Graduação em Docência Superior e cursando Mestrado na UNB Engenharia Elétrica; .
Tenho 27 anos e possuo sete livros publicados pela editora Ciência Moderna no ano de 2009. Sou Certificado Microsoft MCP, MCAD e MVP, faço parte da comunidade ASPNETI.COM, onde publico artigos, vídeos, ebooks e livros Publico artigos, vídeos e podcast em outras comunidades. Trabalho como Analista de Sistemas / Desenvolvedor na empresa ATP S/A. Blog:  blog.mauriciojunior.orgSite pessoal  www.mauriciojunior.org


Comentários:


Comente (dê sua opinião): VOCÊ PRECISA ESTAR LOGADO

Comentário:
Código Imagem:  (digite o código da imagem respeitando maiúsculo e minúsculo)

Favor digitar o código da imagem para cadastramento.

 

Outros Artigos do Autor

Criando Teclas de Atalho no Windows Form
Vídeo mostrando como validar vários formulários
Inserindo no Sql Server
Vídeo: Série Atlas.NET - Parte I
Nova promoção hoje e amanhã para usuários da comunidade aspneti.com
Evento Brasil DotNet - gratuíto
Visual SourceSafe - Série 5
E-mail Carta de Amor - Vírus
Linha do GridView (colorindo ao passar o mouse)
Coalescing Operador C# ?? null
Vídeo - Tecla de Atalho
Sistema em ASP 3.0 utilizando 3 camadas – Parte 3
WebService utilizando soapHeader e token
Web abrindo aplicações locais
Sistema de Controle de Gasolina Mobile - iGas
Ajax com Visual Studio.NET 2005
Litl um computador web
Vírus do Serasa por E-mail
Detectando erro a todo custo
Trabalhando bem com o “using”
Você tem boa postura no trabalho?
Sistema de Login em ASP – Parte 10
Virtual Earth - Segundo Passo
Detectando ENTER
Validator no VS 2005
Internet começa a ter ultra velocidade no Brasil
Criando, utilizando e agendando sistema de backup
Vídeo: Windows Phone com Windows Mobile 7
Teclas de atalho - Visual Studio .NET 2005
Microsoft Recite
Deixando o rodapé fixo
Torne-se Autor de Artigos
Innovation Days
Chamando Programas de Dentro do Windows Forms
Vídeo - Teste do Windows 7 RC

Publicidade:

[sumir] [aparecer]
NETITC




Informações Online:

Usuários Online: 1306
Artigos:  649
Vídeos:  47
PodCast's:  31
Fórum:  3098
Empregos:  1223
Usuários Cadastrados: 5778

Categoria de Artigos

Vídeos

Enquete - Dê sua opinião

 Os podcasts tem sido proveitoso pra você?

 

Colaboradores

Foto Autor autor: Mauricio Junior   
publicou 377 artigo(s).
Foto Autor autor: Júlio Battisti   
publicou 51 artigo(s).
Foto Autor autor: Fabio Galante Mans   
publicou 28 artigo(s).
Foto Autor autor: Kleber Becerra   
publicou 10 artigo(s).
Foto Autor autor: Ramon Durães   
publicou 6 artigo(s).
Foto Autor autor: Ebenézer de Souza   
publicou 5 artigo(s).
Foto Autor autor: Fabio Aguiar   
publicou 4 artigo(s).
NETITC