Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Como hacer un buscador de numeros telefonicos (https://www.clubdelphi.com/foros/showthread.php?t=86427)

wile777 06-08-2014 21:49:30

Como hacer un buscador de numeros telefonicos
 
Hola amigos soy nuevo usando Delphi, mi pregunta es la siguiente.. necesito hacer una base de datos con todos los casos que registremos en nuestra división, quiero que en un TEdit escriba el numero telefónico o numero de expediente y que con un TButton haga la opción de búsqueda en la base de datos y me lo presente en un TMemo...

yo se que esto es algo muy fácil pero por ahora tengo la capacidad de manipular poco el delphi y aprender pero si pudieran ayudarme se los agradezco y si tengo que pagarle a alguien no hay problema solo quiero terminar esto que nos ayudara mucho en la oficina

wile777 06-08-2014 21:51:15

Si Quieren Una Imagen De Como Llevo Dicho Projecto Me Mandan Su Correo

Casimiro Notevi 06-08-2014 21:54:25

Bienvenido a clubdelphi, ¿ya leiste nuestra guía de estilo?, gracias por tu colaboración :)

Neftali [Germán.Estévez] 07-08-2014 10:27:06

Estaría bien además que concretaras qué necesitas.
Nos has dicho todo lo que quieres hacer, pero no concretas en qué necesitas ayuda
¿Ya tienes la Base de Datos? ¿En qué? ¿La tienes que crear? ¿Sabes hacerlo?
¿Tienes el programa?
¿La búsqueda es lo que no sabes hacer?
....

wile777 07-08-2014 17:11:54

repuesta
 
hola amigo Neftalí en realidad no se como crear la base de datos.. ya tengo el software listo con el TEdit el TButton y el TMemo pero no se como crear una base de datos ni como hacer que se fusionen el TButton el TEdit y el TMemo con la base de datos que no he creado por no saber... si puedes me mandas un correo y te mando el Codigo Fuente para que veas... y te explico mejor como trabajamos aquí y que es lo que necesito

Neftali [Germán.Estévez] 07-08-2014 17:19:04

Cita:

Empezado por wile777 (Mensaje 479848)
...en realidad no se como crear la base de datos..

OK. Ya sabemos algo.

¿En qué quieres crear la Base de Datos? ¿Alguna preferencia?
¿MDB/Access, Firebird, Interbase,...?
¿Los datos los tienes ya en algún sitio?

En el mensaje hablñas de hacer búsquedas, pero para eso ya debes tener una Base de Datos y además con datos (para poder buscar).
Tendrías que pensar primero esas 2 cuestiones.

wile777 07-08-2014 17:29:15

No amigo no se como crear una base de datos.. todo los números telefónicos y datos están en EXEL, si quieres dame tu correo y te mando el Codigo fuente para que veas y tengas una idea, lo que quiero es lo siguiente.... crear una base de datos de los números de personas... y que con colocar un numero telefónico el me busque si ya estaba registrado y no agilizamos los trámites mas rápido. no se si me entiendes o si me expreso bien porque soy nuevo en Delphi y nunca he trabajado con bases de datos

Neftali [Germán.Estévez] 07-08-2014 18:04:10

Sí, más o menos te he entendido.

La pregunta es (citándome a mi mismo):

Cita:

Empezado por Neftali (Mensaje 479849)
¿En qué quieres crear la Base de Datos? ¿Alguna preferencia?
¿MDB/Access, Firebird, Interbase,...?

Para que me entiendas las Base de Datos son como las recetas de cocina...
Hay muchas, cada una sirve para una cosa y la forma de crearlas es diferente en cada caso.

Para responder a tu pregunta de cómo crearla, necesito saber cual quieres crear de las muchas que hay.
Para saber cual quieres crear, hay que saber lo que vas a necesitar.
¿Gratuita? ¿De pago?
¿Las vas a tener en un sólo equipo (monousuario) o la vas a consultar desde otros (red)?

Si tenéis EXCEL (Office), ¿Teneís access? (creo que sería una buena opción para empezar y la creación se hace muy fácil e incluso la importación de datos)

Al González 07-08-2014 18:53:35

Cita:

Empezado por wile777 (Mensaje 479850)
[...] soy nuevo en Delphi y nunca he trabajado con bases de datos

Hola wile777. Lo primero que te recomendaría es evitar que en Internet aparezca tu nombre relacionado con el crimen. Alguno de esos extorsionadores puede tomarla contra ti, sólo por el hecho de haber contribuido a entorpecer la comisión de sus delitos mediante la creación de este nuevo sistema. Ten cuidado al decir dónde y para quién trabajas, la mafia se lo puede tomar muy en serio. Si lo deseas, puedes pedir a algún moderador que edite tu primer mensaje.

A primera vista parece que tienes un enorme reto por delante. En parte porque no sé si exista una base de datos capaz de soportar la lista completa de políticos de todo el mundo y sus triquiñuelas. Pero bueno, se entiende que el programa que deseas crear es para neutralizar a otro tipo de mafiosos, más convencionales. :p

Te recomiendo que instales Firebird 2.5 y el programa IBExpert. Firebird es un motor de base de datos que se lleva estupendo con Delphi e IBExpert es un programa que puedes usar para crear y administrar esa base de datos. Una vez que hayas logrado crear la estructura básica (tablas y campos) de tu aplicación, entonces podrás conectarla a tu programa hecho en Delphi.

Para todo lo que tenga que ver con Firebird te puedes apoyar en esta sección de los foros: http://www.clubdelphi.com/foros/forumdisplay.php?f=19

Tienes mucho por delante, pero los foros están para apoyar siempre que sea posible. No dejes de plantear (con mucho detalle) todas las dudas que te surjan. Los compañeros están siempre dispuestos a ayudar, sobre todo cuando se nota el esfuerzo y dedicación por parte de quien necesita esa ayuda.

Un saludo.

wile777 08-08-2014 03:25:12

Gracias amigo Al González por tus sugerencias, se le agradecen voy a bajar esos soft a ver que tal me ayudan y agradecido con su comentario es muy valioso para mi proyecto

wile777 08-08-2014 03:27:49

Cita:

Empezado por Neftali (Mensaje 479852)
Sí, más o menos te he entendido.

La pregunta es (citándome a mi mismo):



Para que me entiendas las Base de Datos son como las recetas de cocina...
Hay muchas, cada una sirve para una cosa y la forma de crearlas es diferente en cada caso.

Para responder a tu pregunta de cómo crearla, necesito saber cual quieres crear de las muchas que hay.
Para saber cual quieres crear, hay que saber lo que vas a necesitar.
¿Gratuita? ¿De pago?
¿Las vas a tener en un sólo equipo (monousuario) o la vas a consultar desde otros (red)?

Si tenéis EXCEL (Office), ¿Teneís access? (creo que sería una buena opción para empezar y la creación se hace muy fácil e incluso la importación de datos)

Hola amigo Neftalí el soft lo quiero gratuito y mono usuario osea donde lo instale pss y si tengo acces

Neftali [Germán.Estévez] 08-08-2014 09:10:50

Cita:

Empezado por wile777 (Mensaje 479874)
Hola amigo Neftalí el soft lo quiero gratuito y mono usuario osea donde lo instale pss y si tengo acces

Perfecto.
Pues ya tienes 2 opciones.

(1) Si tienes Excel y Access, con lo que tienes ya posees todo lo necesarios para esta primera opción.
(2) La segunda es la que te ha comentado Al González; Para ello necesitas instalar el SGBD (Firebird) y un Programa para gestionar las Base de Datos (IBExpert).

(1) MDB + ACCCESS: Los MDB son ficheros de Base de Datos pensados para programas en local. Para crear una Base de Datos MDB sólo necesitas Microsoft Access, que es el programa con las que se gestionan. Digamos que es una Base de Datos "sencilla", pensada para utilidades sin muchos requerimientos. Es lo que se conoce como una Base de Datos de escritorio (en internet puedes leer sobre ellas y las diferencias con un SGBD).
No necesitas instalar un "Server" para controlar la Base de Datos ya que se hace directamente desde el programa.

Personalmente la he usado en proyectos pequeños y funciona muy bien.

Para conectar a ella desde Delphi sólo necesitas los componentes ADO. Con Delphi vienen ejemplos de conexión ADO y en el FTP del club también encontrarás muchos (pero si quieres este tema lo dejamos para más adelante cuando ya tengas la Base de Datos montada).

(2) FIREBIRD + IBEXPERT: Esta segunda opción que te propone Al González también es muy buena (más potene que la anteior -si es que lo necesitas, esa es la duda-). Me explico; A diferencia de MSAccess, FireBird en un SGBD (un Sistema Gestos de Bases de Datos), quiere decir que ya no es una Base de Datos de escritorio "sencilla" como Access, sino que ya estamos hablando de un sistema serio. Pensado para trabajar en red con múltiples conexiones y que te ofrecerá un rendimiento mucho más alto (sobre todo cuando hay muchas conexiones) frente a Bases de Datos "sencillas".
Por eso estos sistemas son algo más complejos. El programa no se conecta directamente a la Base de Datos sino que necesitas un SERVER. En estos casos el ejecutable Delphi se conecta al SERVER y este es el que gestiona realmente la Base de Datos (necesitas 3 elementos en lugar de 2).

NOTA: A la hora de programar desde Delphi es igual en ambos casos/sistemas, pero en el caso de 2, necesitas que el server esté ejecutándose siempre; Pero desde el punto de vista del programa Delphi la programación es similar.

En tu caso y según tus necesidades, deberás escoger entre las 2 opciones. La segunda te ofrece un sistema muchos más seguro, potente, robusto, estable,complejo,... y la primera algo más sencillo y amigable.
Lo que te tienes que plantear es si con lo primero ya te basta o necesitas lo segundo.
Sabes la frase aquella que dice... "...matar moscas a cañonazos...", pues esa es la duda.

Por ejemplo,
¿De cuantos registros estamos hablando que vas a tener en tus tablas de la Base de Datos?
¿10.000, 50.000, 200.000, 5.000.000,...?
¿Vas a realizar muchas consultas? ¿Cuantas al la hora? ¿Cuantas al minuto? ¿Cuantas cada segundo?

------------------------------------------------------------------

Explicado esto, si te dedices por la primera, puedes probar a crear la Base de Datos en blanco con Access e importar los datos desde tu hoja Excel. Esto se puede hacer de forma muy fácil desde Access.

Si te decides por la segunda, cuando tengas ambos programa instalados ya podrás continuar...

nlsgarcia 08-08-2014 10:49:42

wile777,

Cita:

Empezado por wile777
...necesito hacer una base de datos con todos los casos que registremos en nuestra división...quiero que...el número telefónico o número de expediente...haga la opción de búsqueda en la base de datos y me lo presente...

:rolleyes:

Por favor envíame un mensaje privado con tu email y datos de contacto para poder tener mayores detalles de la aplicación y el alcance de la misma.

Nota: Dada la naturaleza de la aplicación, te sugiero no dar detalles sensibles relacionados a esta de forma pública y solicitar a un moderador o administrador que elimine tu nombre, donde trabajas y el por que de la aplicación de los Msgs #1 y #7, solo debes solicitar información técnica de forma neutral y sin dar detalles de la naturaleza de la data o su uso dado lo especial del caso :cool:

Saludos,

Nelson.

Neftali [Germán.Estévez] 08-08-2014 11:19:15

Ya están modificados ambos mensajes para tranquilidad de todos.
Eliminados datos innecesarios para temas de programación.

Un saludo.

wile777 14-08-2014 05:55:35

Gracias
 
Amigos Club Delphi yo he estado en muchos foros pero de mi parte mis Bendiciones mis Respetos y mi reverencia para con ustedes.. De verdad son muy amables muy umildes y muy atentos, eso para mi tiene mucho valor y lo respeto, yo quiero darle las gracias enorme mente por toda su ayuda brindada a mi persona, de verdad muy agradecido con ustedes: nls Garcia, al gonzales y especialmente a Neftali por su gran ayuda Bendiciones..

wile777 15-08-2014 06:46:01

Amigos ya tengo todo, la base de datos el TButton el TEdit y todo..... ahora mi pregunta es la siguiente yo tengo el TButton con este codigo:
Código Delphi [-]
procedure TForm1.Button2Click(Sender: TObject);
begin
  ProgressBar1.Position := ProgressBar1.Min;
  ProgressBar1.Position := ProgressBar1.Max;
  If Edit1.Text = '' then // aqui envio un mensaje si esta vacio el Edit1
  begin
    MessageBox(Handle,
             PChar('Tiene que Indicar el numero TELEFONICO o Dato a Colsultar'),
             PChar(''),
             MB_OK + MB_ICONWARNING + MB_DEFBUTTON1 + MB_APPLMODAL);
  end
  else // de lo contrario hago lo que sigue
  begin
    // conectar y obtener datos
    ADOTable1.Open
  end;
pero en el ADOTable solo logro abrir la base de datos completa y yo lo que quiero es que me busque coincidencias con el numero que ponga en el TEdit.. como hago? porque solo logre ADOTable.Open pero no quiero abrirlo si no buscar coincidencias Gracias

ecfisa 15-08-2014 07:58:59

Hola wile777.
Cita:

Empezado por wile777 (Mensaje 480062)
...y yo lo que quiero es que me busque coincidencias con el numero que ponga en el TEdit.. como hago?

Código Delphi [-]
..
procedure TForm1.FormCreate(Sender: TObject);
begin
   ADOTable1.Open;
end;

(* Busca un dato por igualdad sobre la columna indicada por el parámetro aFieldName 
   basado en el valor indicado por el parámetro aValue *)
procedure TForm1.SearchData(const aFieldName, aValue: string);
begin
  if not ADOTable1.Locate(aFieldName , aValue,[]) then
   MessageBox(0,'El dato buscado no se encontró', 'AVISO',MB_ICONWARNING)
end;

(* Filtra la tabla por los caracteres consecutivos coincidentes de la columna aFieldName,
    basado en el valor enviado en el parámetro aValue *)
procedure TForm1.FilterData(const aFieldName, aValue: string);
begin
  with ADOTable1 do
  begin
    Filtered:= False;
    Filter  := Format('(%s LIKE ''%s*'')', [aFieldName, aValue]);
    Filtered:= True;
    if RecordCount = 0 then
    begin
      Filtered:= False;
      MessageBox(0, 'El dato ingresado no se encontró', 'AVISO', MB_ICONWARNING)
    end
  end
end;
...

Ejemplo del uso:
Código Delphi [-]
...
procedure TForm1.btnSearchOneClick(Sender: TObject);
begin
  SearchData('TELEFONO', Edit1.Text);
end;

procedure TForm1.ButtonFilterClick(Sender: TObject);
begin
   FilterData('DIRECCION', Edit1.Text)
end;

(* Elimina cualquier filtro prefijado *)
procedure TForm1.btnFilterOffClick(Sender: TObject);
begin
  ADOTable1.Filtered:= False
end;
...

Tema aparte: No olvides encerrar el código Delphi de tus mensajes entre etiquetas: [delphi] tu_codigo [/delphi], de ese modo es mucho mas fácil de leer (ya las agregué a tu mensaje).

Saludos :)

wile777 17-08-2014 04:53:36

Gracias amigo lo tendre en cuenta soy nuevo en esto y voy a probar tu codigo a ver

wile777 20-08-2014 20:15:11

Amigo ecfisa su cidigo se ve muy bien y creo que es lo que me falta... pero lo ingreso al TButton y me da error con searchdata y no me deje seguir.. que hago?

Casimiro Notevi 20-08-2014 20:56:19

Cita:

Empezado por wile777 (Mensaje 480200)
me da error con searchdata y no me deje seguir.. que hago?

Decir qué error te da.


La franja horaria es GMT +2. Ahora son las 01:07:35.

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