Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-06-2010
agustin173 agustin173 is offline
Miembro
 
Registrado: jun 2010
Posts: 158
Poder: 14
agustin173 Va por buen camino
registro no existe

como puedo hacer para que en una consulta con adoquery cuando no encuentre ningun registro en especifico me diga registro no existe.

tengo una tabla llamada itebis y dos edit por donde buscar que es edcodigo y editebis, que cuando le ponga valor a cualquiera de los edit me diga y no encuente nada con ese registro me diga registro no existe.

si existe que me traiga la consulta.

ya tengo el codigo de la consulta solo me falta el que me diga que registro no existe.
Responder Con Cita
  #2  
Antiguo 12-06-2010
osmuar_exp osmuar_exp is offline
Miembro
 
Registrado: ene 2008
Posts: 18
Poder: 0
osmuar_exp Va por buen camino
IsEmpty

Hola, mira yo no conozco una consulta que retorne una leyenda o algo que te indique que la consulta fue vacia,
pero puedes aplicar esto...

Código Delphi [-]
 if adoquery.IsEmpty then
   begin
       //tu codigo
   end
else
   begin
     //más codigo
  end;

Saludos vacios.
Responder Con Cita
  #3  
Antiguo 12-06-2010
Avatar de droguerman
droguerman droguerman is offline
Miembro
 
Registrado: abr 2005
Ubicación: tierra
Posts: 999
Poder: 20
droguerman Va por buen camino
Código Delphi [-]
 if  Dataset.Locate('campo_codigo', edcodigo.text, [loCaseInsensitive]) then
begin
  showMessage('No existe el registro');
end
else
begin
  showMessage('el registro existe');
end;
__________________
self.free;

Última edición por marcoszorrilla fecha: 13-06-2010 a las 21:41:47.
Responder Con Cita
  #4  
Antiguo 12-06-2010
agustin173 agustin173 is offline
Miembro
 
Registrado: jun 2010
Posts: 158
Poder: 14
agustin173 Va por buen camino
registro no existe

lo que yo quiero es que busque en la base de datos y me diga cuando no existe ese registro.

yo lo digito los valores por un edit.

es una consulta y cuando no me traiga registro que me diga registro no existe.
Responder Con Cita
  #5  
Antiguo 12-06-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Los dos codigos anteriores sirven para lo que necesitas.
Que es lo que no entiendes?
Saludos
__________________
Siempre Novato
Responder Con Cita
  #6  
Antiguo 12-06-2010
agustin173 agustin173 is offline
Miembro
 
Registrado: jun 2010
Posts: 158
Poder: 14
agustin173 Va por buen camino
registro no existe

Caral Hermano como estas me alegro mucho de verte si tu tienes razon pero cuando lo pongo no me funcionan

te voy a mandar el codigo fijate
Código Delphi [-]
 
Adoitebibuscar.close;
  Adoitebibuscar.SQL.Text := 'Select codigo, fecha, itebis From itebis ';
  if edcodbuscar.Text <> '' then
   begin
    Adoitebibuscar.SQL.Add(' where codigo = '+EdCodBuscar.Text);
    AdoitebiBuscar.Active := True;
    EdCodBuscar.text:= AdoItebiBuscar.Fields[0].AsString;
    EdFechaBuscar.text:= AdoItebiBuscar.Fields[1].AsString;
    EdItebiBuscar.Text:= AdoItebiBuscar.Fields[2].AsString;
  end
  else
   if editebibuscar.Text <> '' then
  begin
    Adoitebibuscar.SQL.Add(' where itebis = '+EditebiBuscar.Text);
    AdoitebiBuscar.Active := True;
    EdCodBuscar.text:= AdoItebiBuscar.Fields[0].AsString;
    EdFechaBuscar.text:= AdoItebiBuscar.Fields[1].AsString;
    EdItebiBuscar.Text:= AdoItebiBuscar.Fields[2].AsString;
  end;
este es el codigo, lo que deseo es que cuando no encuentre un registro me diga registro no existe, a lo mejor e puesto algo mal y por eso no me funciona cuando intento hacer otro 'else'.

como puedo arreglar ese desastre que hice.

Última edición por marcoszorrilla fecha: 13-06-2010 a las 21:41:28.
Responder Con Cita
  #7  
Antiguo 12-06-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Dame un minuto, te saco el codigo que ocupas.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #8  
Antiguo 12-06-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Lo mas sencillo para que lo entiendas:
Código Delphi [-]
Adoitebibuscar.close;
Adoitebibuscar.SQL.Text := 'Select codigo, fecha, itebis From itebis ';

if edcodbuscar.Text <> '' then
begin
     Adoitebibuscar.SQL.Add(' where codigo = '+EdCodBuscar.Text);
     AdoitebiBuscar.Active := True;
     If AdoItebiBuscar.Fields[0].AsString = edcodbuscar.Text then
     begin
     Showmessage(' El codigo ya existe, seleccione otro ');
     end
     else
     EdCodBuscar.text:= AdoItebiBuscar.Fields[0].AsString;
     EdFechaBuscar.text:= AdoItebiBuscar.Fields[1].AsString;
     EdItebiBuscar.Text:= AdoItebiBuscar.Fields[2].AsString;
end
else

if editebibuscar.Text <> '' then
begin
     Adoitebibuscar.SQL.Add(' where itebis = '+EditebiBuscar.Text);
     AdoitebiBuscar.Active := True;
     If AdoItebiBuscar.Fields[2].AsString = editebibuscar.Text then
     begin
     Showmessage(' El NO SE QUE ES ya existe, seleccione otro ');
     end
     else
     EdCodBuscar.text:= AdoItebiBuscar.Fields[0].AsString;
     EdFechaBuscar.text:= AdoItebiBuscar.Fields[1].AsString;
     EdItebiBuscar.Text:= AdoItebiBuscar.Fields[2].AsString;
end;
A ver?
Saludos
__________________
Siempre Novato
Responder Con Cita
  #9  
Antiguo 12-06-2010
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
Mucha complicación para algo tan simple, suponiendo que la consulta debe devolver únicamente un registro es obvio que si la propiedad RowCount del query es igual a cero es que no existe el registro.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #10  
Antiguo 12-06-2010
agustin173 agustin173 is offline
Miembro
 
Registrado: jun 2010
Posts: 158
Poder: 14
agustin173 Va por buen camino
registro no existe

Recuerda caral es que busque el registro y si no trae nada que me diga que 'registro no existe'

voy aprobar el codigo que pusiste luego te digo.
Responder Con Cita
  #11  
Antiguo 12-06-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Código Delphi [-]
Adoitebibuscar.close;
Adoitebibuscar.SQL.Text := 'Select codigo, fecha, itebis From itebis ';

if edcodbuscar.Text <> '' then
begin
     Adoitebibuscar.SQL.Add(' where codigo = '+EdCodBuscar.Text);
     AdoitebiBuscar.Active := True;
     If AdoItebiBuscar.Fields[0].AsString <> edcodbuscar.Text then
     begin
     Showmessage(' El codigo NO existe, seleccione otro ');
     end
     else
     EdCodBuscar.text:= AdoItebiBuscar.Fields[0].AsString;
     EdFechaBuscar.text:= AdoItebiBuscar.Fields[1].AsString;
     EdItebiBuscar.Text:= AdoItebiBuscar.Fields[2].AsString;
end
else

if editebibuscar.Text <> '' then
begin
     Adoitebibuscar.SQL.Add(' where itebis = '+EditebiBuscar.Text);
     AdoitebiBuscar.Active := True;
     If AdoItebiBuscar.Fields[2].AsString <> editebibuscar.Text then
     begin
     Showmessage(' El NO SE QUE ES NO existe, seleccione otro ');
     end
     else
     EdCodBuscar.text:= AdoItebiBuscar.Fields[0].AsString;
     EdFechaBuscar.text:= AdoItebiBuscar.Fields[1].AsString;
     EdItebiBuscar.Text:= AdoItebiBuscar.Fields[2].AsString;
end;
Es lo mismo, solo que en vez de igual, diferente.
Tambien se puede hacer cun un record count, como dice Azid, es casi lo mismo, una comparacion.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #12  
Antiguo 12-06-2010
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
Creo que es el resultado puede ser el mismo Caral pero es más optimizado hacer esto:
Código Delphi [-]
With AdoIteBuscar Do
Begin
  If Active Then Close;
  SQL.Clear;
  SQL.Add('Select codigo, fecha, itebis From itebis where   codigo=:codigo_buscar');
  ParamByName('codigo_buscar').AsString := editIteBuscar.Text;
  Open;
  If RecordCount= 0 Then ShowMessage('El código no existe');
End;

Es mucho más compacto y sencillo de entender
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #13  
Antiguo 13-06-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Es lo bueno de delphi, para gustos los colores :
Código Delphi [-]
  AdoIteBuscar.Close;
  AdoIteBuscar.SQL.Text: 'Select codigo, fecha, itebis From itebis where codigo = :cod');
  AdoIteBuscar.Parameters[0].Value := editIteBuscar.Text;
  AdoIteBuscar.Open;
  If AdoIteBuscar.RecordCount = 0 Then ShowMessage('El código no existe');
Hay muchas maneras de cazar a ese raton.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #14  
Antiguo 13-06-2010
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
La forma de acceder a los parámetros que pusiste es otra variante pero para mi gusto no es tan cómoda como hacerlo por su nombre ya que cuando tienes varios parámetros el código resultante puede no ser tan legible. Bueno y Agustin? Ya no nos comentó si le funcionó...
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #15  
Antiguo 13-06-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Cuando no regresan a por mas es: funciono o no les agrado la respuesta.
Se hizo lo que se pudo.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #16  
Antiguo 13-06-2010
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
JAjaja, tienes razón, mi estimado Caral...jajaja, creo que nomás nos "utilizó" para sacar su chamba, que estarás de acuerdo, no erá taaan difícil y con los nortes que le ibamos dando bien pudo haberlo deducido por sí mismo...pero de cualquier forma estuvo bueno el intercambio para conocer diversos estilos.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #17  
Antiguo 15-06-2010
agustin173 agustin173 is offline
Miembro
 
Registrado: jun 2010
Posts: 158
Poder: 14
agustin173 Va por buen camino
registro no existe

Caral espero que estes bien

no te habia podido responder porque estaba en el interior del pais haciendo unos trabajos y lo que estoy haciendo no es una chamba como dice Azirain

es un trabajo de la universidad que estoy haciendo, les pido disculpa por no contestar a tiempo.

voy a probarlo, en el trascurso del dia le dire si me funciono

disculpen la tardanza.
Responder Con Cita
  #18  
Antiguo 15-06-2010
agustin173 agustin173 is offline
Miembro
 
Registrado: jun 2010
Posts: 158
Poder: 14
agustin173 Va por buen camino
registro no existe

Caral Azirain

muchas gracias me funciono.

y vuelvo a pedir disculpas a ustedes y a todos los del foro pero fue por asunto de trabajo.

y gracias tambien a los que ayudaron dando sus aportes tambien muchas gracias.
Responder Con Cita
  #19  
Antiguo 15-06-2010
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
No te preocupes agustin, se entiende y no tienes nada de que preocuparte, solo nos pareció raro que no regresaras. Ojalá y continúes por aquí, aprenderás mucho, te lo aseguro.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #20  
Antiguo 15-06-2010
agustin173 agustin173 is offline
Miembro
 
Registrado: jun 2010
Posts: 158
Poder: 14
agustin173 Va por buen camino
registro no existe

Gracias por entender Azidrain

Espero que caral haya recibido mis disculpas tambien.
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
saber que no existe registro de ese campo Petolansa SQL 4 31-07-2008 01:42:10
Como decirle a Delphi que existe un registro gasparsi MySQL 5 30-05-2008 11:56:47
Verificando si un registro existe Angel Fernández Firebird e Interbase 9 26-03-2008 18:45:21
No me encuentra un registro que existe, puse mal el where? Eden SQL 2 13-02-2006 07:30:49
Registro Vacio en un DBGrid si existe GENERATOR gluglu Conexión con bases de datos 1 08-02-2005 12:01:59


La franja horaria es GMT +2. Ahora son las 21:30:18.


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