Olá leitor, meu nome é Mauricio Junior e estou disposto a mostrar o realmente funcionamento de um componente registrado dentro do COM + (COM PLUS) usando páginas ASP. Forma de conectar ao banco de dados, criar functions, módulos globais e classes separadamente.

 

Antes de começar definitivamente, gostaria de falar que as partes I e II são indispensáveis para você que não possui o convívio real com essas tecnologias, ou seja, ASP 3.0 e VB 6.0 registrado no COM+. Os mesmos podem ser encontrados no site www.aspneti.com, www.juliobattisti.com.br.

 

Segue três livros que publiquei no mercado pela editora Ciência Moderna.

 

 

 

- Integrando e conhecendo Visual Basic 6.0

 

O primeiro passo é como criar um projeto utilizando a ferramenta criada pela Microsoft. Acessei o menu iniciar / todos os programas / microsoft visual studio 6.0 / microsoft visual basic 6.0. (1.1 – Visual Basic 6.0)

 

Referência: 1.1 – Visual Basic 6.0

 

 

O próximo passo, criei projeto do tipo ActiveX DLL. Escolhi o tipo e cliquei no botão abrir. (1.2 – Visual Basic 6.0)

 

Referência: 1.2 – Visual Basic 6.0

 

Ao lado direito, existe a tela acima do properties onde é criado automaticamente uma pasta Class Modules com a classe dentro chamada Class1. (1.3 – Visual Basic 6.0).

 

Referência: 1.3 – Visual Basic 6.0

 

 

Preciso criar um módulo para o projeto. Seria usado em todas as classes e projetos que irei criar futuramente. Cliquei com o botão direito do mouse em cima de project1, depois fui a opção add e por final em module. (1.4 – Visual Basic 6.0)

 

 

 

Referência: 1.4 – Visual Basic 6.0

 

 

Foi criado uma outra pasta para o módulo. Colocarei todas as funções que poderão ser usadas por toda classe. Outras classes de outros projetos podem usá-lo, basta apenas importar o módulo para o projeto. (1.5 – Visual Basic)

 

Referência: 1.5 – Visual Basic 6.0

 

 

- Renomear Projeto, Módulo e Classe.

 

Até o momento, não coloquei nome na classe, nem módulo e nem mesmo no projeto. O próximo passo é renomear as classes e o projeto. Cliquei no botão properties window na barra de tarefas onde aparecem automaticamente as propriedades, cliquei em cima da classe em seguida na propriedade (Name). (1.6 – Visual Basic 6.0)

 

Referência: 1.6 – Visual Basic 6.0

 

Para ficar melhor, segue os nomes alterados na tabela 1.7 – Visual Basic 6.0.

 

Classe

clsSeguranca

Modulo

Global

Projeto

CPESeguranca

Referência: 1.7 – Visual Basic 6.0

 

 

Depois que renomeei todo o projeto, irei criar uma função dentro do arquivo Global.bas. Essa função será para conectar ao banco de dados fazendo autenticação com usuário e senha, lembrando que deverá ser pública. (1.8 – Visual Basic 6.0)

 

 

Public Function AbreConexao(ByVal Metodo As String, _

                           Optional ByVal sMetodoOrigem As String = "") As Boolean

  

    On Error GoTo error

   

    'Usando o metod para abrir "OPEN"

    If UCase(Metodo) = "OPEN" Then

  

      Set CONN = CreateObject("ADODB.CONNECTION")

      CONN.Open "provider=sqloledb;user id=usuario; password=senha ;initial catalog=banco de dados;Data Source=servidor"

   

    'Usando o metodo para fechar "CLOSE"

    ElseIf UCase(Metodo) = "CLOSE" Then

     

      CONN.Close

      Set CONN = Nothing

  

    End If

  

error:

 

    If Err.Number <> 0 Then

          AbreConexao = False

    Else

        AbreConexao = True

    End If

   

End Function

 

Referência: 1.8 – Visual Basic 6.0

 

Explicação:

 

Analisando a assinatura da função, é pública, recebe dois parâmetros do tipo string, o segundo parâmetro é opcional e retorna um valor Boolean, ou seja, true ou false. Nesse primeiro momento, usarei a função apenas mandando o primeiro parâmetro. Seguindo, uso o On Error GoTo error para pegar algum tipo de erro se por um a caso acontecer que o banco de dados tiver fora do ar, ou usuário e senha são inválidos. (1.9 – Visual Basic 6.0)

 

 

Public Function AbreConexao(ByVal Metodo As String, _

                           Optional ByVal sMetodoOrigem As String = "") As Boolean

 

Referência: 1.9 – Visual Basic 6.0

 

Continuando dentro da função, existe uma condição para abrir ou fechar o banco de dados. Para abrir o banco, basta passar “OPEN” e para fechar o banco “CLOSE”. Isso tudo porque dentro, pergunto se foi enviado o valor para abrir ou fechar o banco de dados. (2.0 – Visual Basic 6.0)

 

 

 

'Usando o metod para abrir "OPEN"

    If UCase(Metodo) = "OPEN" Then

 

Referência: 2.0 – Visual Basic 6.0

 

 

Se o valor do parâmetro for OPEN, atribuo o meu objeto CONN criando o objeto de conexão. Abro o banco de dados passando a string de conexão. (2.1 – Visual Basic 6.0)

 

 

 

      Set CONN = CreateObject("ADODB.CONNECTION")

      CONN.Open "provider=sqloledb;user id=usuario; password=senha ;initial catalog=banco de dados;Data Source=servidor"

 

Referência: 2.1 – Visual Basic 6.0

 

 

Troque o valor do user id, password, initial catalog e data source. Os valores que estão na referência 2.1 são valores ilustrativos.

 

 

User id

Usuário do banco de dados

Password

Senha do usuário do banco de dados

Initial Catalog

Banco de dados do servidor

Data Source

Nome do servidor do banco de dados ou endereço da internet para acesso.

Referência: 2.2 – Visual Basic 6.0

 

 

Se o valor do parâmetro não for OPEN, não entrará na primeira condição, será verificado em outra condição novamente. (2.3 – Visual Basic 6.0)

 

 

    'Usando o metodo para fechar "CLOSE"

    ElseIf UCase(Metodo) = "CLOSE" Then

 

Referência: 2.3 – Visual Basic 6.0

 

 

 

Sendo CLOSE, a função entende que a conexão com o banco de dados deve ser fechada. (2.4 – Visual Basic 6.0)

 

 

 

      CONN.Close

      Set CONN = Nothing

 

Referência: 2.4 – Visual Basic 6.0

 

 

Para finalizar a função sempre verifico se ocorreu algum erro. Lembre-se que estou utilizando o On Error GoTo error. (2.5 – Visual Basic 6.0)

 

 

 

error:

    If Err.Number <> 0 Then

          AbreConexao = False

    Else

        AbreConexao = True

    End If

 

Referência: 2.5 – Visual Basic 6.0

 

 

Explicação:

 

Faço uma verificação perguntando se o Err.Number for diferente de 0, atribuo a função o valor false, se não atribuo o valor true. Essa atribuição de valores é a função retornar o valor ao método que o chamou.

 

Até o momento, mostrei como criar uma função para conexão com o banco de dados.

Fique de olho nos próximos artigos.

 

 

 

Espero ter ajudado.

 

 

 

Mauricio Junior

MPC Microsoft WebApplication

www.mauriciojunior.org

www.aspneti.com