harbour x firebird?
Moderador: Moderadores
-
pena
- Usuário Nível 3

- Mensagens: 331
- Registrado em: 06 Jul 2004 18:08
- Localização: CACHOEIRA DO SUL-RS
harbour x firebird?
bom dia pessoal, gostaria de migrar dbf para firebird, alguem teria um exemplo de como fazer a conexão? Alem do firebird, o que mais preciso instalar para funcionar, exemplo de codigo eu baixei um no grupo, mas ele nao conecta, alguem poderia me dar uma mão?
-
DLZ
- Usuário Nível 3

- Mensagens: 184
- Registrado em: 09 Jun 2008 10:09
- Localização: Ibirubá - RS - Brasil
Re: harbour x firebird?
Ola meu amigo..
Tenho muito interesse nesse assunto tb.. testei a lib que vem junto na contrib do Harbour, mas não funciona !!
Se vc tiver algum sucesso com alguma ferramente, por favor, faça contato..
obrigado
Tenho muito interesse nesse assunto tb.. testei a lib que vem junto na contrib do Harbour, mas não funciona !!
Se vc tiver algum sucesso com alguma ferramente, por favor, faça contato..
obrigado
Re: harbour x firebird?
Tem uma lib na contrib do xHarbour que acessa o FB.
Vc pode procurar aqui no forum sobre o ADORDD para acessar.
Vc pode procurar aqui no forum sobre o ADORDD para acessar.
"TRS-80/Sincler/Apple/PC - Clipper Winter 85, tlink 1.0 [pc 10 MHz - 640K] {NEZ 8000 2Kb RAM}"
{POG - Programação Orientada a Gambiarra}
{POG - Programação Orientada a Gambiarra}
-
jamazevedo
- Usuário Nível 3

- Mensagens: 122
- Registrado em: 29 Dez 2005 16:50
- Localização: Manaus - AM
Re: harbour x firebird?
Minhas configurações:
Ubuntu 10.04
Harbour 2.1.0Beta 2 (Rev. 14955)
- Estou usando MySQL que está na pasta contrib lá também tem exemplos para Firebird mas não utilizei.
- Antes de utilizar o MySQL com harbour precisei fazer umas configurações em minha máquina como por exemplo:
- sudo install apt-get install mysql-server mysql-client libmysqlclient15-dev isso vai baixar, instalar e configurar o MySQL em minha máquina, depois montei o programa abaixo, ele é muito simples: faz a conexão com o MySQL, mostras os bancos existentes, abre o banco mysql e lista os usuários.
- Acredito que com o exemplo abaixo é possível fazer uma análogo para o Firebird.
Programa: exemplo.prg
Arquivo para compilar: exemplo.hbp
Ubuntu 10.04
Harbour 2.1.0Beta 2 (Rev. 14955)
- Estou usando MySQL que está na pasta contrib lá também tem exemplos para Firebird mas não utilizei.
- Antes de utilizar o MySQL com harbour precisei fazer umas configurações em minha máquina como por exemplo:
- sudo install apt-get install mysql-server mysql-client libmysqlclient15-dev isso vai baixar, instalar e configurar o MySQL em minha máquina, depois montei o programa abaixo, ele é muito simples: faz a conexão com o MySQL, mostras os bancos existentes, abre o banco mysql e lista os usuários.
- Acredito que com o exemplo abaixo é possível fazer uma análogo para o Firebird.
Programa: exemplo.prg
Código: Selecionar todos
#DEFINE id_SERVER "localhost"
#DEFINE id_USER "root"
#DEFINE id_PASSWORD "123"
FUNCTION Main()
LOCAL oServer := TMySQLServer():New( id_SERVER, id_USER, id_PASSWORD )
LOCAL oBancoDados , oTabela , oRow
LOCAL nConta1 , nConta2 , nConta3
LOCAL nLen1 , nLen2 , nLen3
oBancoDados := oServer:Query( "SHOW DATABASES;" )
IF oBancoDados:NetErr()
ALERT( oBancoDados:Error() )
ELSE
nLen1 := oBancoDados:LastRec()
FOR nConta1 = 1 TO nLen1
oRow := oBancoDados:GetRow( nConta1 )
? oRow:FieldGet( 1 )
NEXT
oTabela := oServer:Query( "SELECT * FROM mysql.user;" )
IF oTabela:NetErr()
ALERT( oTabela:Error() )
ELSE
nLen2 := oTabela:LastRec()
FOR nConta2 = 1 TO nLen2
oRow := oTabela:GetRow( nConta2 )
? oRow:FieldGet( 1 ) , oRow:FieldGet( 2 )
NEXT
ENDIF
ENDIF
oTabela:Destroy()
oBancoDados:Destroy()
oServer:Destroy()
RETURN NIL
Código: Selecionar todos
# compila so os alterados
-inc
-w1
-lhbmysql
-lmysqlclient
# nome do executavel
-oexemplo
# fontes que serao compilados e lincados
exemplosql.prg
______________________________________________________
Usando: Linux Ubuntu 18.04, Harbour 3.2.0dev r1811161533
______________________________________________________
José Airton de Menezes Azevedo
Manaus - AM
Usando: Linux Ubuntu 18.04, Harbour 3.2.0dev r1811161533
______________________________________________________
José Airton de Menezes Azevedo
Manaus - AM
-
DLZ
- Usuário Nível 3

- Mensagens: 184
- Registrado em: 09 Jun 2008 10:09
- Localização: Ibirubá - RS - Brasil
Re: harbour x firebird?
Já fiz testes com a lib da pasta Contrib do Xharbour, mas fui aconselhado a não usar, pois essa lib foi descontinuada !
Qtdo ao ADORDD, parece ser uma maravilha, mas não é free !
Ainda procuro uma solução para usar Firebird no Xharbour !
Qtdo ao ADORDD, parece ser uma maravilha, mas não é free !
Ainda procuro uma solução para usar Firebird no Xharbour !
Re: harbour x firebird?
Desculpe, mas o ADORDD é free. Vc deve estar confundindo com alguma lib.
O Linhares desenvolveu e liberou para a comunidade. Depois é que ele parou de desenvolver recursos, mas os fontes estão disponíveis inclusive aqui no forum.
A recomendação é vc compilar os fontes junto com a sua aplicação.
O Linhares desenvolveu e liberou para a comunidade. Depois é que ele parou de desenvolver recursos, mas os fontes estão disponíveis inclusive aqui no forum.
A recomendação é vc compilar os fontes junto com a sua aplicação.
"TRS-80/Sincler/Apple/PC - Clipper Winter 85, tlink 1.0 [pc 10 MHz - 640K] {NEZ 8000 2Kb RAM}"
{POG - Programação Orientada a Gambiarra}
{POG - Programação Orientada a Gambiarra}
Re: harbour x firebird?
Poste a solução que vc adotou e um exemplo para ajudar os colegas do forum.
Dai quem precisar, se houver dúvidas, vai pedir sua ajuda.
Ah! Parabens por conseguir fazer funcionar.
Dai quem precisar, se houver dúvidas, vai pedir sua ajuda.
Ah! Parabens por conseguir fazer funcionar.
"TRS-80/Sincler/Apple/PC - Clipper Winter 85, tlink 1.0 [pc 10 MHz - 640K] {NEZ 8000 2Kb RAM}"
{POG - Programação Orientada a Gambiarra}
{POG - Programação Orientada a Gambiarra}
-
DLZ
- Usuário Nível 3

- Mensagens: 184
- Registrado em: 09 Jun 2008 10:09
- Localização: Ibirubá - RS - Brasil
Re: harbour x firebird?
Ola..
recebi um exemplo para testes, um tal de AgendaFB
baseado nele fiz um programa para teste.
Segue abaixo:
Compilei usando Xharbour 1.0 e Hbmake e ocorre o seguinte erro:
Error: Unresolved external '_HB_FUN_HB_GT_GUI_DEFAULT' referenced from C:\XHARBOUR\FIREBIRD\AGENDAFB\TESTE.OBJ
também tive que substituir o Try Catch por Begin Sequence Recover..
e agora ? o q eu faço ?
recebi um exemplo para testes, um tal de AgendaFB
baseado nele fiz um programa para teste.
Segue abaixo:
Código: Selecionar todos
#Include "Adodb.ch"
FUNCTION MAIN()
SET DATE BRIT
SET CENTURY ON
SET EPOCH TO 1960
SET CONFIRM ON
SETMODE(25,80)
CLEAR
Public CNN
PUBLIC E
BEGIN SEQUENCE
CNN:=CreateObject("ADODB.Connection")
CNN:Open("DRIVER=Firebird/InterBase(r) driver;Password=1;Persist Security Info=True;User ID=PRATIC;Location=C:\PRATIC\PRATIC.FDB;ctype=ISO8859_1;auto_commit=True;dbclient_library=fbclient.dll")
RECOVER USING E
ALERT("Operação: "+E:operation+"-"+"Descrição: "+E:Description) // +chr(10)+vMat(e:Args))
RETURN
end
RETURNError: Unresolved external '_HB_FUN_HB_GT_GUI_DEFAULT' referenced from C:\XHARBOUR\FIREBIRD\AGENDAFB\TESTE.OBJ
também tive que substituir o Try Catch por Begin Sequence Recover..
e agora ? o q eu faço ?
-
DLZ
- Usuário Nível 3

- Mensagens: 184
- Registrado em: 09 Jun 2008 10:09
- Localização: Ibirubá - RS - Brasil
Re: harbour x firebird?
Ola..
Fiquei surpreso quando vi que passou tanto tempo e ninguém respondeu meu post, mas sou teimoso, mais eu alemão eheheh
bem, durante todo esse tempo que fiquei esperando uma ajuda, fiquei "procurando ninho de cavalo" e fiz um pequeno progresso..
Agora estou com outro erro, com o programa abaixo..
O que fez o erro anteriormente postado parar de ocorrer, foi tirar o Include ADODB.CH do início do programa.
Agora o erro que ocorre é o seguinte..
no CNN:OPEN() da o seguinte erro: S_OK
Isso signifca que a conexão com o banco deu certo ? se deu certo, pq cai no Catch ? não deveria caie no Catch só qdo da algum erro ?
Seguindo o programa , da erro no comando:
oCursor:Open("Select * from Cadmun where Munic=1",CNN,2,3)
Error ADODB.Recordset/6 DISP_E_UNKNOWNNAME
OBS: A tabela Cadmun existe no banco PRATIC.FDB e nessa tabela existe o campo Munic que é do tipo Inteiro:
O que pode estar ocorrendo agora ?
Será que é mesmo possível usar Firebird com Xharbour ?
Aguardo alguma luz !!
Obrigado
Fiquei surpreso quando vi que passou tanto tempo e ninguém respondeu meu post, mas sou teimoso, mais eu alemão eheheh
bem, durante todo esse tempo que fiquei esperando uma ajuda, fiquei "procurando ninho de cavalo" e fiz um pequeno progresso..
Agora estou com outro erro, com o programa abaixo..
Código: Selecionar todos
FUNCTION MAIN()
SET DATE BRIT
SET CENTURY ON
SET EPOCH TO 1960
SET CONFIRM ON
SETMODE(25,80)
CLEAR
Public CNN
PUBLIC E
PUBLIC oCursor
TRY
CNN:=CreateObject("ADODB.Connection")
CNN:Open("Provider=LCPI.IBProvider.3;Password=1;Persist Security Info=True;User ID=PRATIC;Location=C:\PRATIC\PRATIC.FDB;ctype=ISO8859_1;auto_commit=True;dbclient_library=fbclient.dll")
CATCH E
ALERT("Operação: "+E:operation+"-"+"Descrição: "+E:Description+chr(10) /*+vMat(e:Args)*/)
END
Try
oCursor:=CreateObject("ADODB.Recordset")
Catch e
ALERT("Operação: "+E:operation+"-"+"Descrição: "+E:Description+chr(10) /*+vMat(e:Args)*/)
end
oCursor:Open("Select * from Cadmun where Munic=1",CNN,2,3)
Do While ! oCursor:Eof()
@ 10,10 say oCursor:Fields["Munic"]:Value
@ 11,10 say oCursor:Fields["Nome"]:Value
inkey(0)
oCursor:MoveNext()
enddoAgora o erro que ocorre é o seguinte..
no CNN:OPEN() da o seguinte erro: S_OK
Isso signifca que a conexão com o banco deu certo ? se deu certo, pq cai no Catch ? não deveria caie no Catch só qdo da algum erro ?
Seguindo o programa , da erro no comando:
oCursor:Open("Select * from Cadmun where Munic=1",CNN,2,3)
Error ADODB.Recordset/6 DISP_E_UNKNOWNNAME
OBS: A tabela Cadmun existe no banco PRATIC.FDB e nessa tabela existe o campo Munic que é do tipo Inteiro:
O que pode estar ocorrendo agora ?
Será que é mesmo possível usar Firebird com Xharbour ?
Aguardo alguma luz !!
Obrigado
-
pena
- Usuário Nível 3

- Mensagens: 331
- Registrado em: 06 Jul 2004 18:08
- Localização: CACHOEIRA DO SUL-RS
Re: harbour x firebird?
tenho os fontes de um sistema simples que o pessoal usa em uma autopeças, eu utilizava dbf, e fui migrando ele para firebird, ele ja funciona td perfeitamente, apenas nao conclui todos os processos por falta de tempo, e tinha outras prioridades, no seu caso, sera que esta utilizando a versao correta? se caso quiser posso passar meus fontes, so que eu estou usando a minigui.
-
DLZ
- Usuário Nível 3

- Mensagens: 184
- Registrado em: 09 Jun 2008 10:09
- Localização: Ibirubá - RS - Brasil
Re: harbour x firebird?
ola.. obrigado por responder..
Versão correta do que ? Do Firebird ?
Estou usando a versão mais atual 2.5 final
outra coisa.. compilei o exemplo Agenda2.prg e da o mesmo erro no open do AdoDb.Connection (S_ok)
o ADO funciona somente para Firebird 1.5 ?
Pena !! qual a versão do Firebird que vc usa ?
Versão correta do que ? Do Firebird ?
Estou usando a versão mais atual 2.5 final
outra coisa.. compilei o exemplo Agenda2.prg e da o mesmo erro no open do AdoDb.Connection (S_ok)
o ADO funciona somente para Firebird 1.5 ?
Pena !! qual a versão do Firebird que vc usa ?
-
pena
- Usuário Nível 3

- Mensagens: 331
- Registrado em: 06 Jul 2004 18:08
- Localização: CACHOEIRA DO SUL-RS
Re: harbour x firebird?
sim, falei da versao do firebird, eu utilizo a 2.5 tb, e o primeiro programa que usei para testes foi o agenda2, porem hj eu faço a conexão um pouco diferente, mas em resumo é igual.
Código: Selecionar todos
Public ecfpoucopapel, sistema,mconsulta,cnn,CUSER:="SYSDBA",cpassword:="masterkey",caddress:="Localhost",cdatabase:=BASEDEDADOS()+"BANCO.FDB"
Try
CNN:=CreateObject("ADODB.Connection")
cStringConnection := "DRIVER=Firebird/InterBase(r) driver; UID="+cUser+"; PWD="+cPassword+";DBNAME="+cAddress+":"+cDataBase
CNN:Open(cStringConnection)
Catch e
MsgStop("Não foi possivel conectar com o banco")
MsgStop("Operação: "+E:operation+"-"+"Descrição: "+E:Description+chr(10)+vMat(e:Args))
ExitProcess(0)
End
-
DLZ
- Usuário Nível 3

- Mensagens: 184
- Registrado em: 09 Jun 2008 10:09
- Localização: Ibirubá - RS - Brasil
Re: harbour x firebird?
Bom dia.
Poxa vida Pena, é a mesma coisa que tenho aqui, só que da o erro S_ok !!
não entendo pq não funciona.. será que só funciona com minigui ? não funciona em modo Console ?
Poxa vida Pena, é a mesma coisa que tenho aqui, só que da o erro S_ok !!
não entendo pq não funciona.. será que só funciona com minigui ? não funciona em modo Console ?
-
DLZ
- Usuário Nível 3

- Mensagens: 184
- Registrado em: 09 Jun 2008 10:09
- Localização: Ibirubá - RS - Brasil
Re: harbour x firebird?
Complilei com Minigui tb, mas da o mesmo problema !!
o q significa o erro que retonra ? s_ok ??
Pena, vc tem msn, skype ou alguma coisa que a gente possa fazer contato..
acho impossível que pra ti funcione e pra mim não !!
o q significa o erro que retonra ? s_ok ??
Pena, vc tem msn, skype ou alguma coisa que a gente possa fazer contato..
acho impossível que pra ti funcione e pra mim não !!
