Club Delphi  
    Paypal   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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-06-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Siempre que hables de Bases de datos, dinos qué base de datos usas, porque suele haber una solución distinta para cada una de ellas.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #2  
Antiguo 25-06-2006
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Quizás, generar en una matriz de dos dimensiones, las distintas combinaciones posibles del número dado y luego ir buscando las distintas combinaciones y guardar en la segunda posición, por ejemplo S, cuando se encuentre, la otra posición se habría inicializado a N.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 26-06-2006
CoCaInE CoCaInE is offline
Miembro
 
Registrado: nov 2005
Posts: 66
Poder: 21
CoCaInE Va por buen camino
la base de datos es en paradox. pero mejor seria que me den un ejemplo por codigo.....

o existe alguna funcion , perdone son novato
Responder Con Cita
  #4  
Antiguo 26-06-2006
nemesio nemesio is offline
Miembro
 
Registrado: nov 2005
Ubicación: Isla de Margarita, Venezuela
Posts: 377
Poder: 21
nemesio Va por buen camino
Realiza las combinaciones posibles que en tu caso serían seis. Supongamos que cada combinación la guardas en un arreglo de longitud 6, luego harías una consulta que se me ocurre puede ser así aunque no la he probado:
Query1.close;
Query1.ParamByname('Var1').Value:=Comb1;
Query1.ParamByname('Var2').Value:=Comb2;
.........
Query1.SQL.add('select campo1,campo2,.... from tabla where campo1=:Var1 or campo1=:Var2 or campo1=:var3 or campo1=:var4........')
Query1.execSQL;
Query1.Open;

Puedes validar que los numeros que generaste no se repitan para que optimices el código. Pero así como está debería funcionarte.
Responder Con Cita
  #5  
Antiguo 26-06-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Otra forma es guardarlo en un string y usar algo así:

Código Delphi [-]
query1.sql.text := 'select * from tabla where campo in ('321', '123', '213')'

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #6  
Antiguo 28-06-2006
CoCaInE CoCaInE is offline
Miembro
 
Registrado: nov 2005
Posts: 66
Poder: 21
CoCaInE Va por buen camino
Bueno ya un amigo me ha dado la solucion pero el caso esta en que este me repite los numeros ejemplo yo le entro el 553 y me genera las posibles combinaciones pero me repite los numeros varias veces.

553
535
553
535
355
355

El codigo es este

Código Delphi [-]
 
cadena:=Edit1.Text;
  Memo1.Lines.Add(cadena[1]+cadena[2]+cadena[3]);
  Memo1.Lines.Add(cadena[1]+cadena[3]+cadena[2]);
  Memo1.Lines.Add(cadena[2]+cadena[1]+cadena[3]);
  Memo1.Lines.Add(cadena[2]+cadena[3]+cadena[1]);
  Memo1.Lines.Add(cadena[3]+cadena[1]+cadena[2]);
  Memo1.Lines.Add(cadena[3]+cadena[2]+cadena[1]);

Alguna sugerencia

Última edición por dec fecha: 29-06-2006 a las 00:45:53.
Responder Con Cita
  #7  
Antiguo 29-06-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
La propiedad Lines del Memo es un TStrings, compatible con un TStringList, este último tiene la propiedad Duplicates que se puede establecer en dupIgnore, de esta forma al repetir una cadena... obviamente la ignora y no la añade.

Código Delphi [-]
var X :TStringList;
begin
X := Tstringlist.create;
x.sorted := true; // debe estar ordenado para ignorar duplicados
x.Duplilcates := dupIgnore;
X.Add('uno');
X.Add('uno'); // este no se añade por estar duplicado
Memo1.Lines.Assign(X); // sustituimos lo que hay en el memo por X (sin duplicados)
Memo1.Lines.Add(X); // tambien podemos añadir los textos al memo, sin borrar lo que haya
X.Free;// destruimos la lista.

Saludos
__________________
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
busqueda sql Dark Aeris Firebird e Interbase 10 06-06-2006 23:05:20
búsqueda en BD edusus Conexión con bases de datos 12 19-05-2006 00:08:19
Busqueda Con Una Sql salvanano SQL 5 05-05-2005 20:59:11
busqueda alachaise Internet 1 31-03-2005 16:57:34
Búsqueda !!! vpepen Conexión con bases de datos 4 26-11-2003 12:48:58


La franja horaria es GMT +2. Ahora son las 22:21:34.


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