Clipper On Line • Ver Tópico - harbour x firebird?

harbour x firebird?

Discussão sobre Banco de Dados e RDDs para Clipper/[x]Harbour.

Moderador: Moderadores

 

harbour x firebird?

Mensagempor pena » 13 Out 2010 10:17

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?
Avatar de usuário

pena
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 331
Data de registro: 06 Jul 2004 18:08
Cidade/Estado: CACHOEIRA DO SUL-RS
Curtiu: 0 vez
Mens.Curtidas: 3 vezes

Re: harbour x firebird?

Mensagempor DLZ » 14 Out 2010 10:31

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
DLZ
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 184
Data de registro: 09 Jun 2008 10:09
Cidade/Estado: Ibirubá - RS - Brasil
Curtiu: 0 vez
Mens.Curtidas: 3 vezes

Re: harbour x firebird?

Mensagempor gvc » 14 Out 2010 12:29

Tem uma lib na contrib do xHarbour que acessa o FB.
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}
Avatar de usuário

gvc
Colaborador

Colaborador
 
Mensagens: 1269
Data de registro: 23 Ago 2005 10:57
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Re: harbour x firebird?

Mensagempor jamazevedo » 14 Out 2010 15:13

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
#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


Arquivo para compilar: exemplo.hbp
# 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
jamazevedo
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 122
Data de registro: 29 Dez 2005 15:50
Cidade/Estado: Manaus - AM
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Re: harbour x firebird?

Mensagempor DLZ » 15 Out 2010 08:32

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 !
DLZ
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 184
Data de registro: 09 Jun 2008 10:09
Cidade/Estado: Ibirubá - RS - Brasil
Curtiu: 0 vez
Mens.Curtidas: 3 vezes

Re: harbour x firebird?

Mensagempor gvc » 15 Out 2010 09:41

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.
"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}
Avatar de usuário

gvc
Colaborador

Colaborador
 
Mensagens: 1269
Data de registro: 23 Ago 2005 10:57
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Re: harbour x firebird?

Mensagempor pena » 15 Out 2010 19:41

pessoal ja funcionando, quem quiser uma mao, estou a disposicao
Avatar de usuário

pena
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 331
Data de registro: 06 Jul 2004 18:08
Cidade/Estado: CACHOEIRA DO SUL-RS
Curtiu: 0 vez
Mens.Curtidas: 3 vezes

Re: harbour x firebird?

Mensagempor gvc » 17 Out 2010 08:55

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.
"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}
Avatar de usuário

gvc
Colaborador

Colaborador
 
Mensagens: 1269
Data de registro: 23 Ago 2005 10:57
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Re: harbour x firebird?

Mensagempor DLZ » 19 Out 2010 14:15

Ola..
recebi um exemplo para testes, um tal de AgendaFB
baseado nele fiz um programa para teste.
Segue abaixo:
#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 
RETURN

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 ?
DLZ
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 184
Data de registro: 09 Jun 2008 10:09
Cidade/Estado: Ibirubá - RS - Brasil
Curtiu: 0 vez
Mens.Curtidas: 3 vezes

Re: harbour x firebird?

Mensagempor DLZ » 21 Dez 2010 12:10

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..
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()
    enddo


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
DLZ
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 184
Data de registro: 09 Jun 2008 10:09
Cidade/Estado: Ibirubá - RS - Brasil
Curtiu: 0 vez
Mens.Curtidas: 3 vezes

Re: harbour x firebird?

Mensagempor pena » 21 Dez 2010 12:45

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.
Avatar de usuário

pena
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 331
Data de registro: 06 Jul 2004 18:08
Cidade/Estado: CACHOEIRA DO SUL-RS
Curtiu: 0 vez
Mens.Curtidas: 3 vezes

Re: harbour x firebird?

Mensagempor DLZ » 21 Dez 2010 12:53

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 ?
DLZ
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 184
Data de registro: 09 Jun 2008 10:09
Cidade/Estado: Ibirubá - RS - Brasil
Curtiu: 0 vez
Mens.Curtidas: 3 vezes

Re: harbour x firebird?

Mensagempor pena » 22 Dez 2010 07:34

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.

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
Avatar de usuário

pena
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 331
Data de registro: 06 Jul 2004 18:08
Cidade/Estado: CACHOEIRA DO SUL-RS
Curtiu: 0 vez
Mens.Curtidas: 3 vezes

Re: harbour x firebird?

Mensagempor DLZ » 22 Dez 2010 07:57

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 ?
DLZ
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 184
Data de registro: 09 Jun 2008 10:09
Cidade/Estado: Ibirubá - RS - Brasil
Curtiu: 0 vez
Mens.Curtidas: 3 vezes

Re: harbour x firebird?

Mensagempor DLZ » 22 Dez 2010 08:11

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 !!
DLZ
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 184
Data de registro: 09 Jun 2008 10:09
Cidade/Estado: Ibirubá - RS - Brasil
Curtiu: 0 vez
Mens.Curtidas: 3 vezes

Próximo



Retornar para Banco de Dados

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 14 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro