Salada, xHarbour x Mediator x MySql x Delphi

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
alaminojunior
Colaborador
Colaborador
Mensagens: 1717
Registrado em: 16 Dez 2005 21:26
Localização: Ubatuba - SP

Salada, xHarbour x Mediator x MySql x Delphi

Mensagem por alaminojunior »

Meus caros, será que dá certo esta salada ?
Montei um sistema de balcao em xharbour, usando mediator com mysql. Ficou muito bom mesmo, porém, o sistema de retaguarda e caixa gostaríamos de fazer em Delphi. Motivo:
No balcao de atendimento queremos agilidade;
No caixa e principalmente na retaguarda gostaríamos de usar o delphi, pela facilidade de criar relatorios e tudo mais.

O problema é que o mediator usa uma chave primaria pelo campo "recno" criado por ele mesmo.
Já o delphi usa a chave primaria ID (se não me falha a memoria)
Isto causaria problemas no caso de se usar algumas potencialidades do mysql, como incrementos, etc...

Alguem já viveu este contexto, ou teria alguma idéia do que fazer para que os dois sistemas possam interagir, o xharbour com seus tbrowse´s e o delphi ?
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
edmarfrazao
Usuário Nível 3
Usuário Nível 3
Mensagens: 185
Registrado em: 06 Dez 2005 11:16

Mensagem por edmarfrazao »

Não conheço o mediador.

Mas como no delphi você vai acessar o B.D. Slq, tudo devera funciona, pois onde esta os dados e no banco de dados (mysql).

basta fazer alguns macetes para usar as duas linguagens.



eu uso delphi+xharbour so que com dbf.

no delphi uso ads+apollo vcl com indices cdx
e no xharbour cdx.

funciona sem problema.
Avatar do usuário
Luciano Bonfim
Usuário Nível 3
Usuário Nível 3
Mensagens: 414
Registrado em: 23 Ago 2007 09:34
Localização: Rio de Janeiro / São Paulo
Contato:

Mensagem por Luciano Bonfim »

Quem vai mandar no seu banco de dados é o mysql e näo o xharbour e nem o delphi!!
Muito Obrigado,

Luciano Bonfim de Azevedo
www.bonfim.com.br
luciano@bonfim.com.br
www.linkedin.com/in/lucianobonfim
Skype : lucianobonfim
Avatar do usuário
alaminojunior
Colaborador
Colaborador
Mensagens: 1717
Registrado em: 16 Dez 2005 21:26
Localização: Ubatuba - SP

Mensagem por alaminojunior »

Mas e como o Delphi irá tratar os campos que o Mediator cria na importação dos dados, como por exemplo: Recno e outros, pois é o que acontece. Na importação das tabelas DBF p/ MySQL o mediator impõe estes campos. Vamos supor que o sistema em Delphi altere alguns registros, daí para frente pode ser que o Mediator não interprete a tabela, por faltar o bendito campo "RECNO"
O pepino maior é que não programo em Delphi, esta parte do projeto esta por conta de outro programador. Agradeço a ajuda e continuo aguardando novas sugestões.
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
Stanis Luksys
Colaborador
Colaborador
Mensagens: 1329
Registrado em: 18 Jun 2005 03:04
Localização: São Paulo
Contato:

Mensagem por Stanis Luksys »

alaminojunior escreveu:Mas e como o Delphi irá tratar os campos que o Mediator cria na importação dos dados, como por exemplo: Recno e outros...
Olá,

Você precisa conhecer um pouco mais a fundo como o Mediator trata o banco de dados. Eu já enfrentei este problema ao fazer uma aplicação Clipper se integrar com uma PHP num site, usando o banco criado pelo Mediator.

Em suma, os campos que você deve prestar atenção é o recno, que nada mais é do que o número da linha na tabela como no dbf, e os campos de ínidice que são facilmente identificados geralmente como os útimos da tabela, algo do tipo $IE1. Estes de índice basta inserir a chave do índice pelo delphi, quando este for fazer uma inclusão ou alteração, por exemplo:

Você sabe que existe um índice composto de código+nome. Quando for alterar pelo delphi use:

Código: Selecionar todos

UPDATE tabela SET $ie1=campo_codigo+campo_nome WHERE campo_codigo="00001"
Neste contexto, acho de extrema importância documentar o nome de cada campo de índice, e suas respectivas chaves.

É por aí o caminho...
Stanis Luksys
sites.google.com/hblibs

Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
Avatar do usuário
alaminojunior
Colaborador
Colaborador
Mensagens: 1717
Registrado em: 16 Dez 2005 21:26
Localização: Ubatuba - SP

Mensagem por alaminojunior »

Belezura.
Tentemos então.
:*
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
Stanis Luksys
Colaborador
Colaborador
Mensagens: 1329
Registrado em: 18 Jun 2005 03:04
Localização: São Paulo
Contato:

Re: Salada, xHarbour x Mediator x MySql x Delphi

Mensagem por Stanis Luksys »

ericmagaldi escreveu:se você faz Update via RDD, não poderá fazer Update por outro aplicativo sem usar o mecanismo do Mediator, pois isso não atualizará o índice interno do mesmo.
Eu já usei e da pra fazer isso sim, é só atentar ao que postei na minha mensagem que tudo corre bem. Não vai atualizar o índice, mas o índice nada mais é do que um campo com o conteúdo de uma chave. Então basta atualizar o índice "manualmente" a cada insert ou update.

Falou!
Stanis Luksys
sites.google.com/hblibs

Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
Avatar do usuário
alaminojunior
Colaborador
Colaborador
Mensagens: 1717
Registrado em: 16 Dez 2005 21:26
Localização: Ubatuba - SP

Mensagem por alaminojunior »

Meu colega que está desenvolvendo a aplicação em Delphi, diz que está solucionando esta etapa, com o uso de Triggers, onde a cada alteração na tabela, é disparada as demais alterações necessarias.
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Apenas curiosidade, lhe pergunto pq usar o Delphi junto ? é alguma questão visual ?
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
alaminojunior
Colaborador
Colaborador
Mensagens: 1717
Registrado em: 16 Dez 2005 21:26
Localização: Ubatuba - SP

Mensagem por alaminojunior »

É uma pergunta que também fiz no inicio.
Estamos desenvolvendo o sistema de retaguarda em Delphi pelo seguinte:
1º O acesso nativo a MySql, a facilidade de gerar relatorios e tantas outras coisas que não saberia responder, por não entender nada de Delphi.
Você poderá perguntar: Por que não fazer tudo em Delphi ?
O sistema de Balcão e o sistema de PDV, precisam da agilidade do xBase.
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Entendi, vou fazer apenas um comentario, se me permite é claro.Não sei quanto custa o Delphi, mas a SQLLIB,Mediator e a SQLRDD fazem acesso nativo ao Mysql...são Comerciais.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
alaminojunior
Colaborador
Colaborador
Mensagens: 1717
Registrado em: 16 Dez 2005 21:26
Localização: Ubatuba - SP

Mensagem por alaminojunior »

Esqueci de mencionar o seguinte, sei que existem as versões comerciais, porém, me identifiquei com o Mediator, pois ele não me obriga a mudar meu estilo de programar. Fiz um teste com a SQLRDD que vem com a contrib, e achei um tanto obscura as coisas. Parece que muda a "dinamica da coisa". Mas para um futuro não tão distante, pode ser.
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

sygecom escreveu:Entendi, vou fazer apenas um comentario, se me permite é claro.Não sei quanto custa o Delphi, mas a SQLLIB,Mediator e a SQLRDD fazem acesso nativo ao Mysql...são Comerciais.
Acho que vc esta fazendo coonfusão a SQLRDD é do xharbour comercial, que vc apenas muda alguns pequenos detalhes no incio do sistema e usa todos os comandos xBase, USE, DBSKIP,INDEX ON e etc..a mesma coisa se aplica para SQLLIB , agora se falando da MYSQL da contrib ai sim a coisa muda, ai tem que usar expressões SQL via QUERY() ai tem que aprender um pouco sobre SQL e etc...

Abraços
Leonardo Machado
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Responder