Foro de elhacker.net

Programación => Bases de Datos => Mensaje iniciado por: leliCabello en 8 Enero 2010, 19:14 pm



Título: Bases de datos para llamadas telefonicas
Publicado por: leliCabello en 8 Enero 2010, 19:14 pm
hola amigos, ps necesito de su ayuda me pidieron una base de datos para una empresa q recibe muchas llamadas y la empresa quiere guardar sus llamadas con sus datos especificos y al final ver el total de llamadas... hasta ahorita fui creando solo 2 tablas en sql 2005 que son recepcionistas y llamadas pero q mas puedo agregar???? ayudenme porfavor receien estoy comenzando en esto  :-( lo necesito urgente


Título: Re: Bases de datos para llamadas telefonicas
Publicado por: Shell Root en 8 Enero 2010, 19:19 pm
No sé... :·P
  • TblUsuario
  • TblLlamada
  • TblDetalleLlamada
  • TblEmpleados
  • TblCargoEmpleado


Título: Re: Bases de datos para llamadas telefonicas
Publicado por: ^Tifa^ en 8 Enero 2010, 19:44 pm
Quisieramos ayudarte... pero me temo que sin el analisis previo poco se puede hacer  :huh:  uno de antemano puede imaginarse y mas o menos suponer las entidades y relacion entre las llamadas y un empleado (Como el ejemplo expuesto por Shell Root) pero todo va a depender bastante de la organizacion que lleve X empresa para entonces tu hacer tu analisis y estructurar tus tablas...

Pero, basandome en el ejemplo expuesto por Shell Root en sus tablas. No te olvides de colocar un campo de TIMESTAMP en las tablas donde se guarden las llamadas entrantes, asi se colocara la fecha y hora con segundos de manera automatica de X llamada entrante. (Desconozco si el tipo de dato TIMESTAMP existe en SQL Server, espero que si, sino es el caso tendras que buscar un tipo de dato similar pero en SQL Server o controlar esta informacion a traves de la aplicacion que reciba la llamada y que esta guarde ese dato en la DB)

Sobre cuantas llamadas se han registrado diariamente cada 24 horas en la o las tablas... bueno puedes crearte un evento o tarea programada dentro del motor (No se si SQL Server soporta esta funcionalidad ojala alguien aporte esta confirmacion, en caso que no lo soporte tendras que hacer algun BATCH como tarea programada cada 24 horas y que se conecte al motor SQL Server) y especifica que dicha tarea programada se ejecute cada 24 horas diariamente, asi cada 24 horas esa tarea programada hara una especie de SELECT COUNT(llamadas) y ese total que lo guarde en algun archivo de texto dentro del PC.

Lo anterior son solo ideas que podrias realizar que conste, no se puede abundar mucho si se desconoce a ciencia cierta el tipo de requerimientos que te piden y de que dispones.


Título: Re: Bases de datos para llamadas telefonicas
Publicado por: дٳŦ٭ en 8 Enero 2010, 21:59 pm
hola amigos, ps necesito de su ayuda me pidieron una base de datos para una empresa q recibe muchas llamadas y la empresa quiere guardar sus llamadas con sus datos especificos y al final ver el total de llamadas... hasta ahorita fui creando solo 2 tablas en sql 2005 que son recepcionistas y llamadas pero q mas puedo agregar???? ayudenme porfavor receien estoy comenzando en esto  :-( lo necesito urgente

Analiza qué información y de qué tipo quieres guardar, con base a eso ya haces la pregunta.  ;)


Título: Re: Bases de datos para llamadas telefonicas
Publicado por: Shell Root en 8 Enero 2010, 22:19 pm
TIMESTAMP = DateTime en SQL.
Para registrar una fecha o una hora, use un tipo de datos datetime.


Título: Re: Bases de datos para llamadas telefonicas
Publicado por: leliCabello en 9 Enero 2010, 00:17 am
Qtal amigos aqui les dejo lo q fui avanzando ... pero como q me falta algo porfavor ayundenme en q estoy mal y en q estoy fallando...y tb como deberia enlazar mis tablas y a cuales les debo asignar primary key
(http://img7.imageshack.us/img7/9986/87030807.jpg)
http://img7.imageshack.us/img7/9986/87030807.jpg


Título: Re: Bases de datos para llamadas telefonicas
Publicado por: Shell Root en 9 Enero 2010, 01:05 am
Creo que debes de leer de Normalización de Bases de Datos, Cada Tabla de la Base de Datos, debe de tener una llave primaria vease Primary Key, la cual es el campo que se relaciona con las demas tablas.

Saludos!


Título: Re: Bases de datos para llamadas telefonicas
Publicado por: leliCabello en 9 Enero 2010, 02:02 am
ps si amigo aqui ya lo estuve poniendo los primarykey (http://img7.imageshack.us/img7/3523/19696929.jpg) pero porfavor ayudame en como relacionar mis tablas o q es lo q falta en lo q estoy haciendo hasta el momento


Título: Re: Bases de datos para llamadas telefonicas
Publicado por: Shell Root en 9 Enero 2010, 02:26 am
Que te ayudé a relacionar las Tablas?
Cuales son las Foreign_Keys?


Título: Re: Bases de datos para llamadas telefonicas
Publicado por: leliCabello en 9 Enero 2010, 17:49 pm
hm las llaves amarillas serian los forenkey ... aqui  dejo mi muestra ...ayudenme porfavor q es lo q falta o estoy haciendo mal :-(
(http://img704.imageshack.us/img704/8950/sinttulo1eg.jpg)


Título: Re: Bases de datos para llamadas telefonicas
Publicado por: ^Tifa^ en 9 Enero 2010, 18:38 pm
leliCabello, de verdad fuese agradable ayudarte, pero estas solicitando que te estructuren y armen un diseno entidad-relacion de una base de datos cuando es un tema la verdad bastante extenso de exponer en 1 o 2 lineas. Podemos darte una referencia de ayuda en preguntas claves que hagas, pero resulta un poco imposible exponerte todo lo que debes hacer y dartelo... si hacemos eso perfecto pasarias dicha materia (Si se trata de una tarea) pero estarias pasando una materia con un vacio porque no sabrias porque todo esta hecho de esa manera, y mas adelante cuando te topes con una materia futura que use de prerequisito esta que estas tomando ahora, y tu tutor vea que no manejas bien el diseno de una base de datos vas a tener problemas.

ALgunos puntos de referencia hare en cuanto a las 3 tablas expuestas por ti y los campos que elegiste como primary key y definiste una tabla padre-hijo mediante una foranea. Ok, pero explicame algo:

Primary Key de la tabla Recepcionista: (cod_recepcionista)
Primary Key de la tabla Llamadas: (cod_llamadas)

Donde segun tu afirmacion hay una foreign key aca, asumire que la foreign key es cod_llamadas hacia cod_recepcionista. Si esto es asi, ten pendiente que al ambos campos ser Primary Key no pueden repetirse jamas, por ende si cod_recepcionista = 1 (por ejemplo)
entonces cod_llamadas = 1 tambien, Por ende la recepcionista 1 solo podra recibir 1 sola llamada con codigo 1 y mas nunca podra recibir mas llamadas solo una, una sola entrante para la recepcionista con cod_recepcionista = 1..... Entonces como haras la relacion futura?? Digamos que la recepcionista del codigo 1 trabaja todos los dias recibiendo llamadas entrantes desde las 8:00 am hasta las 3:00 pm.... como llenaras este campo (la de la tabla hijo cod_llamadas) si basandote en la relacion :

cod_recepcionista --> cod_llamadas

si recepcionista es codigo 1 y codigo de llamadas debera ser 1 tambien... pero resulta que cod_llamadas es una primary key no se puede repetir valores...

En resumidas ve considerando agregar una llave secundaria a la tabla Llamadas para que hagas la relacion 1:N (Ya que una recepcionista va a recibir muchas llamadas).

Segundo punto, Llamadas y Clientes en que punto se relacionan???  Tendras que elegir 1 llave candidata que sea la que relacione las 3 tablas... podria ser por ejemplo cod_recepcionista.