Página 1 de 2

Xharbour com SQLRDD e Firebird

Enviado: 04 Abr 2008 17:17
por clebervn
estou utilizando o SQLRDD para atualizar um banco de dados em "Firebird".... para tanto estou utilizando assim no meu programa principal :

#include "firebird.ch"
...
REQUEST SQLRDD
REQUEST SR_FIREBIRD

REQUEST DBFNTX
REQUEST DBFCDX]
REQUEST DBFFPT
REQUEST DBFDBT
...

// conexão banco de dados
ConnString := "FIREBIRD=127.0.0.1:C:\database\firebird\database.gdb;uid=SYSDBA;pwd=masterkey;charset=ISO8859_1"
nCnn := SR_AddConnection(CONNECT_FIREBIRD,ConnString)


* COMPILA PROGRAMA TUDO CERTINHO
* AO EXECUTAR, NA LINHA DO "nCnn" DA ERRO DE VARIAVEL NÃO EXISTENTE (CONNECT_FIREBIRD)

Alguém pode me dar um help ? é a primeira evz q to usando SQLRDD

Obrigado

Enviado: 04 Abr 2008 19:21
por sygecom
olá clebervn, talvez quem possa lhe ajudar nesse caso é o Luiz Culik, ele da suporte para o xharbour comercial.
Outra coisa quando baixei o Demo uma vez, e vi que tinha um peque no help que mostrava cada conexão como funcionava, talvez lhe ajude tmb. pegue no site do xharbour comercial.

Enviado: 08 Abr 2008 17:45
por clebervn
Ok

entrei em contato com o mesmo q me deu um exemplo e segui em frente
deu certinho a inclusão....

quem precisar de algo posto aqui como fiz...

estou precisando

Enviado: 15 Abr 2008 17:03
por joserubenildosilva
Olha eu ja uso o firebird com Delphi e tenho um sistema de factoring que nao vou converter para windows e gostaria de uma base mais robusta.
Se puder me mandar

joserubenildosilva@gmail.com

Re: estou precisando

Enviado: 17 Abr 2008 08:42
por sygecom
joserubenildosilva escreveu:Olha eu ja uso o firebird com Delphi e tenho um sistema de factoring que nao vou converter para windows e gostaria de uma base mais robusta.
Se puder me mandar

joserubenildosilva@gmail.com
Olá Jose,
A SQLRDD é uma LIB comercial, vc pode testar o DEMO baixando no site do xharbour comercial, temos uma outra LIB comercial e nacional que é a SQLLIB que da acesso a MYSQL, POSTGRESQL e FIREBIRD.

Enviado: 18 Abr 2008 15:29
por clebervn
Vou postar aqui como ficou minha inclusão perfeita....

No inicio do sistema pus assim :

Código: Selecionar todos

if cf_usawin = "S"  // conexao banco de dados firebird
   if file(alltrim(cf_patwin)+"database.gdb") => no meu caso esse é o nome da base, o caminho é definido pelo usuário através de configuração
      ConnString := "FIREBIRD=127.0.0.1:"+alltrim(cf_patwin)+"database.gdb;uid=SYSDBA;pwd=masterkey;charset=ISO8859_1"
       nCnn       := SR_AddConnection(CONNECT_FIREBIRD,ConnString)
       if nCnn < 0
          Mensagem( 22, 'Problemas com a Conexão ao Banco de Dados, erro : '+str(nCnn,5))        
       ELSE   
          vl_usawin := .t.
       endif   
   ELSE
       Mensagem( 22, 'Banco de Dados ou Caminho Inexistente')
   endif   
endif
Depois na inclusao :

Código: Selecionar todos

cSql1   := "INSERT INTO PRODUTO ( CODIGOPRODUTO, CODIGOBARRA, DESCRICAO, CODIGOPESAVEL,"
cSql2   := "UNIDADE, SALDOFISICO, DATACADASTRO, PRECOVENDA, ICMVENDA,"
cSql3   := "VALIDADE, CODIGOTRIBUTARIO, CODIGOEXPORTACAO, SGE, CODIGOGRUPO,"
cSql4   := "PROMOCAO, RECEITA, PESAVEL, GRADE)"
cSql5   := "VALUES ( ?, ?, ?, ?, ?, ?, ? ,?, ?, ?, ?, ?, ?, ?, ?, ?, ? ,?)"
cSql    := cSql1 + cSql2 + cSql3 + cSql4 + cSql5
oSql    := sr_getconnection()
apcode  := sr_sqlparse(cSql, @nerr, @npos)
nErr    := oSql:exec( SR_SQLCodeGen( apCode, { 0, aProd:prodCod_barra, aProd:PRODproduto, ;
                              val(aProd:PRODcodpeso), aProd:PRODunidade, aProd:prodsaldo, aProd:PRODdata_atual, ;
                              aProd:prodcusto_nota+(aProd:prodcusto_nota*(nMarg_Bruta/100)), aProd:PRODicmvenda, ;
                              aProd:PRODvalidade, aProd:PRODct,strzero(val(aProd:prodGrupo),14)+aProd:PRODcodigo, ;
                              val(aProd:prodGrupo+aProd:PRODcodigo), val(aProd:prodGrupo), " ", aProd:PRODReceitas, ;
                              aProd:PRODpesavel, aProd:PRODGrade}, oSql:nSystemID ) )
oSql:commit()

Re: Xharbour com SQLRDD e Firebird

Enviado: 06 Mai 2008 09:27
por clebervn

Bom dia

Problema final....espero..hehehehe... Seguinte, se ponho o banco de dados localmente ele acessa e faz todos os processos normalmente, mas se tenho q acessá-lo de outra máquina dá problema, erro base/1604 - SWITCH. Já desativei firewall da outra máquina mas nada ainda... alguém tem alguma outra dica ??

Obrigado

Re: Xharbour com SQLRDD e Firebird

Enviado: 07 Mai 2008 09:46
por clebervn

Achei a solução e vou po-la aqui caso interesse a alguém:

Supondo q nome do banco seja DATABASE.GDB, para uma conexão onde o banco fosse local ficaria assim :

ConnString := "FIREBIRD=127.0.0.1:c:\base\database.gdb;uid=SYSDBA;pwd=masterkey;charset=ISO8859_1"
nCnn := SR_AddConnection(CONNECT_FIREBIRD,ConnString)

* Com esse IP ele conectar localmente procurando o banco em "c:\base\"


Supondo agora q o banco fique em outra máquina :

ConnString := "FIREBIRD=198.162.0.999:c:\base\database.gdb;uid=SYSDBA;pwd=masterkey;charset=ISO8859_1"
nCnn := SR_AddConnection(CONNECT_FIREBIRD,ConnString)

* Com esse IP ele conectar na máquina onde se encontra o banco mas procurando o banco em "c:\base\" na máquina deste IP e não mais localmente.

Espero que possa ter ajudado alguém.



Re: Xharbour com SQLRDD e Firebird

Enviado: 12 Mai 2008 22:56
por mmaciel11
oi amigo gostaria que vc enviasse essa dica ai pra mim


mmaciel11@hotmail.com

Re: Xharbour com SQLRDD e Firebird

Enviado: 13 Mai 2008 17:11
por sygecom
Buenas mmaciel11,
O Colega já postou acima, de uma olhada !!!

Re: Xharbour com SQLRDD e Firebird

Enviado: 14 Mai 2008 10:17
por mmaciel11
bom dia sygecom,


DESCULPA !!! expressei-me MAL,

é que nao tenho os arquivos ou lib's para fazer esse acesso, queria saber quais sao os arquivos !!!

clebervn fala de :

- SQLRDD;
- firebird.ch

agradeço desde ja.


Marcos Maciel

Re: Xharbour com SQLRDD e Firebird

Enviado: 14 Mai 2008 13:25
por clebervn
oi Maciel

Desde a semana passada não entro no forum pois mudei de cidade, agora estou em São Paulo, vou dar uma entrada hj a noite e procurar te ajudar

abc

Re: Xharbour com SQLRDD e Firebird

Enviado: 14 Mai 2008 14:04
por sygecom
mmaciel11 escreveu:bom dia sygecom,


DESCULPA !!! expressei-me MAL,

é que nao tenho os arquivos ou lib's para fazer esse acesso, queria saber quais sao os arquivos !!!

clebervn fala de :

- SQLRDD;
- firebird.ch

agradeço desde ja.


Marcos Maciel
Olá Marcos,
Essa LIB faz parte do xHarbour comercial, e você encontra em http://www.xharbour.com.br , agora não deixe de dar uma olhada tambem em Sqllib que é um produto Nacional e que dah acesso a Mysql, PostgreSql e Firebird. http://sqllib.com.br/principal.php

Se você quiser algum acesso sem usar LIB comercial, ai terá que dar uma estudada em ADO, de uma procurada aqui no forum que o Rochinha, já postou uma LIB dele que faz acesso via ADO.

Abraços
Leonardo Machado

Re: Xharbour com SQLRDD e Firebird

Enviado: 17 Mai 2008 15:49
por toya
Leonardo, desculpe, mas na questão da SqlLib, a mesma parece que ainda não foca o Firebird... ou estou enganado ?

Re: Xharbour com SQLRDD e Firebird

Enviado: 17 Mai 2008 19:08
por sygecom
Olá Toya,
Não sou usuario da Sqllib, porem no banner do site da Sqllib , tem o logotipo do Firebird, o que me fez pensar que a mesma dah acesso a Firebird. Porem o ideal, seria o caso de confirmar com o criador o Vailton. Agora se a Sqllib, não da acesso o negocio é Sqlrdd mesmo.

Abraços
Leonardo Machado