Fórum Tipos de Campo e Base de Dados Diferentes - LOCATE - #270459
28/02/2005
0
Tenho um sistema que trabalha com 3 base de dados, sendo uma delas, a principal, firebird, e as outras duas sendo ACCESS.
tenho neste mesmo sistema, um form onde tenho os seguintes campos:
firebird:
codservico integer
codcliente integer
etc...
até aqui tudo bem, mas nessa janela, tem um Rxdblookup que me exibe o nome dos clientes, de uma das minhas tabelas Access, como já devem ter presumido, uso o valor do meu IB_editcodcliente como parametro pra um LOCATE na tabela Access, pra que o usuário se sinta acomodado em ter as opções de escolher o Nome do cliente ou o código do mesmo.
Sacaram a questão ? Mas a bronca ainda nao é essa, vo mostrar agora
:shock:
O pepino é o seguinte:
O campo Codcliente, da minha tabela firebird, é to tipo integer, e o campo Codigo da minha tabela Cliente (Base Access) é do tipo Texto de 14 dígitos (Já vi a tabela e os campos não passam de 8, mas nao importa por que isso é variável)
Como resolver isso ?
Tenho uma rotina que preenche com zeros um edit por exemplo, que está funcionando, mas, se por ventura no outro sistema que tenho, o usuário cadastrar um cliente com o código 99, o Locate nao pega.
Sacaram a questão ?
:roll:
Não gostaria de ter que converter o meu campo pra varchar(14), pois o sistema tá 99¬ funcional, se eu fizesse isso iria detonar uma porrada de rotina especificas pra inteiros que uso no meu sistema.
Se alguem puder....
HELP MEEEEE....
:shock:
Technos
Curtir tópico
+ 0Posts
28/02/2005
Koplin
cria um campo na sua tabela acces do tipo integer e poe nela o valor convertido de string para integer. Faz o locate por este campo.
Tipo:
campo original campo gambiarra
00000000000099 <--> 99
00000000000547 <--> 547
se o campo texto so recebe caracteres numericos resolve sem mexer em nada no sistema a exceção do locate que vai buscar por este campo novo.
Gostei + 0
01/03/2005
Aroldo Zanela
Creio não ter entendido, pois com simples CAST poderia resolver o problema.
Gostei + 0
01/03/2005
Technos
A segunda respota do nosso amigo Aroldo, nao entendi esse CAST que vc falou, poderia me dar um exemplo ?
Technos
Gostei + 0
01/03/2005
Technos
Converti meu minha base de dados pra o mesmo tipo do campo da base de dados access, ou seja, pra varchar(14), o sistema tá funfando numa boa.
Só que tive que alterar um bocado de rotina pra o novo tipo, mas o resultado valeu a pena...
Mais um sistema rodando nas ruas...
Valeus
Technos
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)