Fórum Localizar antes de dar o .post #163388

29/05/2003

0

Ola amigos , estou aprendendo ainda a programar em delphi e estou com uma dificuldade.

Estou fazendo um form para cadastro de itens na minha tab Itens , bom o meu campo primario eh do tipo alpha numerico e com 8 espacos , ja que nao tem autoincremento , gostaria de checar se ja existe o codigo na minha tabela (campo CodItem) antes de salvar , como faço pra localizar , to em apuros ajudem por favor

desde ja agradeço a atenção e o tempo dispendido com um noob :P

Brigadao


Bis

Bis

Responder

Posts

29/05/2003

Marcelo Saviski

Este campo de codigo deve estar indexado
coloque mais uma table (copie a que já tem ai)
e faca table2.findnearest([codigo]);
if table2.fieldbyname(´campo código´).asstring = editcodigo.text then já tem o código else não tem o código;


Responder

Gostei + 0

29/05/2003

Bis

Oi marcelo obrigado pela ajuda , não consegui fazer funcionar , bom vamus la :

O campo CodItem do qual falei e indexado , fiz uma copia da table e nomeei como table1 coloquei no onchange do campo apenas para teste o
seguinte codigo:
editcoditem(este e o dbedit do campo)


Table1.findnearest (editcoditem.text) ;
if TblCodItem.fieldbyname(CodItem).asstring = editcoditem.text then
editcoditem.text := NumTemEsse else editcoditem.text := Digiteoutro;

o erro que ocorreu e na primeira linha e diz:
[Error] CadastroItens.pas(122): Incompatible types: ´Array´ and ´TMaskedText´

obrigado


Responder

Gostei + 0

29/05/2003

Bis

oi amigos se alguem souber um jeito diferente ajudem ae plz , to encrencado.


:shock: :shock: :shock:


Responder

Gostei + 0

29/05/2003

Marcelo Saviski

Um detalhe:

Table1.findnearest ([color=blue:57a07e533a][b:57a07e533a][[/b:57a07e533a][/color:57a07e533a]editcoditem.text[color=blue:57a07e533a][b:57a07e533a]][/b:57a07e533a][/color:57a07e533a]) ;
if TblCodItem.fieldbyname(CodItem).asstring = editcoditem.text then
editcoditem.text := NumTemEsse else editcoditem.text := Digiteoutro;


Responder

Gostei + 0

29/05/2003

Bis

Ei marcelo coloquei o seguinte codigo e qdo executei e chamei o codigo deu o erro do .exe [b:84db4df8b9]EstackOverflow with message stack overflow[/b:84db4df8b9] o codigo que coloquei foi :

TblCodItem.Cancel;
TblCodItem.findnearest ([editcoditem.text]) ;
if TblCodItem.fieldbyname(´CodItem´).asstring = editcoditem.text then
editcoditem.text := ´NumTemEsse´ else editcoditem.text := ´Digiteoutro´;


Agradeço muito sua ajuda , me da uma mão ae plz


Responder

Gostei + 0

29/05/2003

Bis

up pra alguma alma caridosa me ajudar por favor :D


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar