Página 1 de 1

Salada, xHarbour x Mediator x MySql x Delphi

Enviado: 09 Out 2007 12:10
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 ?

Enviado: 09 Out 2007 14:07
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.

Enviado: 09 Out 2007 15:45
por Luciano Bonfim
Quem vai mandar no seu banco de dados é o mysql e näo o xharbour e nem o delphi!!

Enviado: 09 Out 2007 16:05
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.

Enviado: 09 Out 2007 16:17
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...

Enviado: 09 Out 2007 16:22
por alaminojunior
Belezura.
Tentemos então.
:*

Re: Salada, xHarbour x Mediator x MySql x Delphi

Enviado: 10 Out 2007 13:14
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!

Enviado: 29 Out 2007 12:14
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.

Enviado: 29 Out 2007 15:13
por sygecom
Apenas curiosidade, lhe pergunto pq usar o Delphi junto ? é alguma questão visual ?

Enviado: 29 Out 2007 16:07
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.

Enviado: 29 Out 2007 16:16
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.

Enviado: 29 Out 2007 16:26
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.

Enviado: 29 Out 2007 16:37
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