Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-04-2005
kryna kryna is offline
Miembro
 
Registrado: mar 2005
Posts: 46
Poder: 0
kryna Va por buen camino
la base de datos es paradox y estoy usando dbedit.....
Responder Con Cita
  #2  
Antiguo 13-04-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Que ni pintado este hilo , oiga

Un saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #3  
Antiguo 13-04-2005
kryna kryna is offline
Miembro
 
Registrado: mar 2005
Posts: 46
Poder: 0
kryna Va por buen camino
Hola disculpen por no explicarme bien

Lo que sucede es que cuando trato de incluir no me genera ningun error solo me inserta el registro asi tenga yo en mi tabla un registro con los mismos parametros que ese.... y eso lo quiero evitar que en mi tabla no tenga ningun registro repetido.....

Estoy trabajando con delphi 7 y tablas paradox 7 y DBEdit..

Solo quiero que cuando trato de incluir el codigo, chequee en la tabla correspondiente y si el codigo ya existe no me permita incluirlo...

Gracias de ante mano...
Responder Con Cita
  #4  
Antiguo 13-04-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos.

Usa el Locate:

Código Delphi [-]
if tabla1.locate('campo',edit.text,[]) then
messagebox('Dato ya existente');

Hasta luego
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!

Última edición por vtdeleon fecha: 13-04-2005 a las 21:56:17. Razón: Correccion
Responder Con Cita
  #5  
Antiguo 13-04-2005
kryna kryna is offline
Miembro
 
Registrado: mar 2005
Posts: 46
Poder: 0
kryna Va por buen camino
Hola!

Probe con la instruccion y cuando trato de incluir un registro aunq no este agregado en la tabla me aparece el mensaje que le codigo ya exite

Código:
if Mitabla.locate('codigo',codigo.Text,[]) then
ShowMessage('EL CODIGO YA EXISTE!!')
else begin
mitabla.insert
mitabla.FieldByName(codigo).AsString := codigo.Text;
.
.
.
mitabla.Post;
mitabla.Next;
mitabla.FlushBuffers;
mitabla.Close;
 
mitabla2.insert
mitabla2.FieldByName(codigo_d).AsString := codigo_d.Text;
.
.
.
mitabla2.Post;
mitabla2.Next;
mitabla2.FlushBuffers;
mitabla2.Close;
end;
como puedo resolverlo?
Responder Con Cita
  #6  
Antiguo 14-04-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos.

Supongo que Codigo.text es un Dbedit.

Prueba usando un Edit.

Hasta luego
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #7  
Antiguo 14-04-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Ponle un índice único, y por tanto mantenido a ese campo en el database Desktop.

Desde el evento OnPost error, llamas a midberror y listo. Quizás necesites añadirle que ese campo es requerido y no pueda ser nulo.

Haciendo esto, te olvidas de ver si existe el código, y le dejas el proceso al BDE y a la función midberror.

El hecho que comentas es bastante extraño, revisa con el database desktop, que valores hay ya en la base de datos.

Al parecer el código está formado por letras, ¿mayúsculas/ minúsculas? para este engorro puedes cambiarle las propiedades al DBEdit, para que solo acepte mayúsculas o minúsculas.

Lo del Flushbuffers, es mejor que lo pongas en el evento AfterPost de la tabla, así cuando llames al método Post, automáticamente se vacian los buffers.

No entiendo por qué llamas a Next despues de hacer el Post, supongo que tendrás algo en los eventos AfterScroll de la tabla... pero no puedo adivinar más..., en principio, el Next sobra.

La tabla2 depende de alguna forma con la tabla 1?? igual te dice que el codigo ya existe por otra causa.

Creo que deberías decir qué estas haciendo, factura, albaran, clientes....

Un saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 11:09:49.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi