Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #18  
Antiguo 20-10-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola negrokau.

Una opción de búsqueda es mediante un while como intentaste en tu mensaje inicial:
Código Delphi [-]
var
  Found: Boolean;
begin
  query1.First;
  Found:= False;
  while not query1.Eof and not Found do
  begin
    Found:= cod_barra.Text = query1.FieldValues['cod_barra'];
    query1.Next;
  end;
  if not Found then
   guardar.Click;
  ...
Creo que el error en tu primer código, parte de la confusión que tenés con las estructuras de control.
Como yá te han dicho más arriba, una cosa es una estructura decisión (if/then/else) y otra una de iteracion (for, while, repeat) aunque las dos últimas puedan evaluar alguna condición.

La otra opción, más eficiente, es mediante una consulta SQL:
Código Delphi [-]
function ExisteCodigo(const Value: string): Boolean;
begin
  with TQuery.Create(nil) do
  try
    DatabaseName:= 'NOMBRE_DE_TU_BD';  // Alias (o Ruta a donde esta la tabla)
    SQL.Text:= 'SELECT * FROM TU_TABLA WHERE COD_BARRA = :DATO';  // Cambia 'TU_TABLA' por tu nombre de tabla
    ParamByName('DATO').AsString:= Value;
    Open;
    Result:= not IsEmpty;
    Close;
  finally
    Free;
  end;
end;
De esta manera tu código inicial queda reducido a:
Código Delphi [-]
  if not ExisteCodigo(cod_barra.Text) then
    guardar.Click;

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
 



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
TQuery (Query1->SQL->Add()) lmpadron C++ Builder 2 11-03-2009 17:59:37
¿¿Se puede Hacer?? NEG1414 C++ Builder 7 02-11-2008 22:13:10
Se puede hacer esto ??????? AMINOA2R Firebird e Interbase 2 21-10-2005 17:50:59
Se puede hacer esto en POO? adlfv OOP 8 26-09-2005 16:28:55
se puede hacer armando Conexión con bases de datos 6 20-05-2004 05:12:26


La franja horaria es GMT +2. Ahora son las 00:04:06.


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