Fórum Acesso a MSSQL e Access, como ? #337470
07/02/2007
0
Eu tenho um sistema muito grande com 8 BDs em Access 97 com acesso via ADO. Com o crescimento do número de usuários o Access come~çou a gemer. Estou iniciando a migração para SQL.
O problema é que tenho clientes pequenos que vão continuar com o Access e vou migrar somente para os grandes, mas preciso manter a compatibilidade do sistema.
Eu comecei usando {$IFDEF BD_ACCESS} nos locais de acesso ao BD, mas depois nas definições dos campos das queries os tipos de dados para Access e SQL são diferentes então precisei separar em DataModulos diferentes e agora estou tendo dificuldade em criar o projeto com dois arquivos de DataModulos diferentes com TDataModule com o mesmo nome. O que eu gostaria era manter a maior parte possível da programação já realizada, sem ter que reescrever toda a parte de acesso a dados.
Agradeço qualquer dica,
Quadrado
O problema é que tenho clientes pequenos que vão continuar com o Access e vou migrar somente para os grandes, mas preciso manter a compatibilidade do sistema.
Eu comecei usando {$IFDEF BD_ACCESS} nos locais de acesso ao BD, mas depois nas definições dos campos das queries os tipos de dados para Access e SQL são diferentes então precisei separar em DataModulos diferentes e agora estou tendo dificuldade em criar o projeto com dois arquivos de DataModulos diferentes com TDataModule com o mesmo nome. O que eu gostaria era manter a maior parte possível da programação já realizada, sem ter que reescrever toda a parte de acesso a dados.
Agradeço qualquer dica,
Quadrado
Quadrado
Curtir tópico
+ 0
Responder
Posts
08/02/2007
Quadrado
Eu consegui uma solução mas não é muito estável, eu deixei os DataModulos em diretórios diferentes ma tudo com o mesmo nome, mas só funciona se gravar antes de compilar e se for acrescentado um formulario a diretiva some (!!!). Algumas units também não ´enxergavam´ a diretiva.
Se alguem tiver alguma outra ideia, é só postar.
Quadrado[/code]
program Sistema;
uses
Forms,
Windows,
Messages,
SysUtils,
UfmPrincipal in ´UfmPrincipal.pas´ ,
{$IFDEF BD_ACCESS}
UdmADOLogEvento in ´..\DataModulos\UdmADOLogEvento.pas´ {dmADOLogEvento: TDataModule},
{$ELSE}
UdmADOLogEvento in ´..\DataModulosSQL\UdmADOLogEvento.pas´ {dmADOLogEvento: TDataModule},
{$ENDIF}
Se alguem tiver alguma outra ideia, é só postar.
Quadrado[/code]
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)