PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV 25 → [Tutorial] Conexão ao Banco Firebird
[Tutorial] Conexão ao Banco Firebird
Started by ANGELOREIS, Sep., 26 2016 8:30 PM - 5 replies
Registered member
44 messages
Popularité : +7 (7 votes)
Posted on September, 26 2016 - 8:30 PM
Olá amigos! Como estão vocês!?

Quero deixar aqui uma pequena contribuição no fórum!

Estou usando um componente para gerar o SPED e este mesmo usa Firebird para gerar os arquivos.

Pensei com meus botões: "Seria bom que a WX acessa-se este banco que a solução me oferece! Já tenho os comandos que preciso, basta apenas conectar e seguir a documentação!"

Pesquisei muito sobre o firebird e vi que ele é um banco muito utilizado pelo Banco do Brasil e CEF, muitos reclamam que ele não aguenta muito o tranco (acima de 4GB) e que o FbGuardian atrapalha alguns momentos no ciclo de desenvolvimento... Até então o que me falotou foi literatura sobre erros comuns e e configurações!

Seu instalador é bem simples "NEXT, NEXT, NEXT e FINISH".

O que vamos precisa nesse caso:

Se seu ambiente é 32bits use as ferramentas de 32bits, não faça mix, pois, uma hora você não vai conseguir ter um resultado expressivo!

Segundo Driver ODBC para 32bits ou 64bits, lembrando que vc só deve usar uma única plataforma!

--
Analista de Sistemas Jr
www.arsistemas.com.br
Pai da Alícia e Marido da Andréa <3
Registered member
44 messages
Popularité : +7 (7 votes)
Posted on September, 26 2016 - 8:31 PM
[...Continuando]

Feito isso crie uma conexão ODBC com o nome familiar, exemplo: "FbCnn", guarde este nome pois vamos precisar dele mais tarde!

Agora vamos no windev, crie um projeto de teste e crie a analise com OLE DB do tipo MSDASQL e selecione a nossa conexão "FbCnn" e Então faça o teste de conexão, depois de ter feito com sucesso a conexão e só salvar!

Como estou em uma máquina 64bits, meu caminho para dll do client é C:\Program Files\Firebird\Firebird_2_5\bin\fbclient.dll

O Caminho do arquivo fdb tem que ser padrão da sua aplicação, você vai entender logo abaixo.

Agora ao código WX

FBConnection is Connection

bResultado is boolean
_nomeDSN is string = "FbCnn"
_caminhofdb is string = fCurrentDir()+[fSep()]+"data"+[fSep()]+"arquivo.fdb"
_IpServidor is string = "localhost"
_usuarioBd is string = "SYSDBA"
_senhaBd is string = "masterkey"

HDescribeConnection(FBConnection,_usuarioBD,_senhaBD,_nomeDSN,_caminhofdb,hODBC,hOReadWrite)

bResultado = HOpenConnection(FBConnection)

IF bResultado <> 1 THEN
Error(HErrorInfo())
EndProgram()
END

//Com SQLConnect()

SQLConnect(_DSN,_usuariodb,_senhadb,_pathfdb,"",hODBC)


--
Analista de Sistemas Jr
www.arsistemas.com.br
Pai da Alícia e Marido da Andréa <3
Message modified, September, 26 2016 - 8:32 PM
Registered member
44 messages
Popularité : +7 (7 votes)
Posted on September, 26 2016 - 8:31 PM
o código acima você pode colocar na inicialização do seu projeto e então fazer toda a operação de Incluir, Alterar, Excluir e Ler!

Tdos os comando H (hread,filter,execute etc) para usar no banco, funcionam perfeitamente, até mesmo aqui não houve nenhuma lentidão!

É só seguir estes passos que dará tudo certinho!

Agradecimento ao Jc.B, que me passou muitas informações do funcionamento do Firebird!

Ideal para quem quer fazer um acesso a uma base de outra aplicação que o "Pássaro de Fogo" e deseja fazer uma migração de dados!!

Um abraço a todos e bons estudos!

--
Analista de Sistemas Jr
www.arsistemas.com.br
Pai da Alícia e Marido da Andréa <3
Message modified, September, 26 2016 - 8:34 PM
Registered member
3,654 messages
Popularité : +175 (223 votes)
Posted on September, 26 2016 - 10:07 PM
:merci:

--
Adriano José Boller
______________________________________________
Consultor e Representante Oficial da
PcSoft no Brasil
+55 (41) 9949 1800
adrianoboller@gmail.com
skype: adrianoboller
http://wxinformatica.com.br/
Posted on September, 28 2017 - 4:17 PM
Bom dia ANGELO REIS,

Eu não sou especialista em servidor de dados.

Tentei de usar seu exemplo de uma conexão de DB de FIREBIRD e não consegui....

Tenho que lhe informar que estou usando o aplicativo do Banco do Brasil, o qual uso FIREBIRD 1.5 (!!) e o Banco de dados tem o nome seguinte : BBCBR.BBD .

Meu PC é um 64 bits, mas tó programando com Windev 22 (WINDEV 22 - Update 5 (01F220073f) em 32 bits.

Vc poderia me orientar por favor ?
Agradeço já.
Abraços.
Patrick
Posted on September, 29 2017 - 5:49 PM
Resolvi o meu problema usando SQLManagerX !!

SQLManagerX é um acesso nativo gratuito Windev para os BD seguintes:

ORACLE - MYSQL - SQLITE - SQLSERVER - POSTGRE - FIREBIRD - DB2 - ADO - CACHE

Link : http://www.sqlmanagerx.com/websqlx/html/modules/mydownloads/

Com as classes fornecidas é possível estabelecer uma conexão com FIREBIRD 1.5 e importar as tabelas do aplicativo de BBcobrança do Banco do Brasil no Windev22 !!

Estou desenvolvindo agora um componente (composant en français) e em breve vou disponibilizar-lo

//----------------------------------------------------------------

Problème resolu grâce au module SQLManagerX!!

SQLManagerX est un accès natif Windev gratuit pour les BD suivantes:

ORACLE - MYSQL - SQLITE - SQLSERVER - POSTGRE - FIREBIRD - DB2 - ADO - CACHE

Link : http://www.sqlmanagerx.com/websqlx/html/modules/mydownloads/

Avec les classes fournies il est possible d'établir une connection avec FIREBIRD 1.5 et importer les tables-fichiers de l'applicatif BBcobrança de Banco do Brasil dans Windev22 !!

Je prépare un composant externe qui sera bientôt disponible.

Abraços.Salut.
Patrick Philippe
stylus@hotmail.com.br