Bases de Datos - problema diseño bbdd servicio tecnico

   
Vista:

problema diseño bbdd servicio tecnico

Publicado por Oriol Sànchez Miró (1 intervención) el 18/06/2012 23:20:06
os explico el caso un poco , pero como vereis el problema esta en el diseño de las tablas de reparacion de un servicio tecnico

gracias

TABLAS

cliente: es el cliente del servicio tecnico.
equipo: es el equipo que nos han dejado.
Operación: es lo que le hacemos al pc (formatear, cambio de componente, antivirus, etc ...)
componente: es el componente que cambiaremos o venderemos (tarjeta grafica, procesador, etc)
reparacion: es el conjunto de operaciones que le haremos al pc. y componentes que debemos sustituir en caso de que sea conveniente

CAMPOS

cliente: id_client, nombre, etc ..
equipo: id_equip, marca, etc ...
operación: id_operacio, nombre, descripcion, precio, horas
componente: id_component, nom_component, precio
reparacion: id_reparacio, id_client, id_equip, dataentrada, etc ..


entonces aquí viene el problema, tengo que hacer una o unas tablas que nos permitan guardar reparaciones, cada reparacion se compone de varias operaciones y varios componentes.

1era pregunta: no se si el componente meterlo dentro de la operación según convenga es decir, si se cambia la tarjeta grafica metemos el id del nuevo componente. ->
************** ex => reparacion: id: 1, cliente: oriol, equipo: acero, operacion: cambio t.grafica, componente: nvidia | |

2 ª pregunta: una reparacion tiene diferentes componentes y diferentes operaciones ya la vez una operación puede tener diferentes componentes y un componente puede estar en diferentes reparaciones (ya que el mismo modelo de procesador, por ejemplo, lo podemos montar en diferentes equipos). es decir veo esta relación:

reparacion N <-> N operacion N <-> N componente N <-> reparacion

es decir creo que sería una ternaria

3era pregunta.

para ordenarlo un poco lo que quiero hacer es,

una reparacion requiere una operación o más
un componente requiere una operación

una reparacion no tiene pq tener un componente
una operación no tiene pq tener un componente

ej: tenemos que formatear un ordenador -> la reparacion requiere la operación de formatear, pero no ningún componente
EX2: tenemos que cambiar una tarjeta grafica -> la reparacion requiere una operación, la operación requiere un componente.

no se como solucionarlo XD jejeje
tengo que hacer la base de datos que hemos permita todo esto

GRACIAS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

problema diseño bbdd servicio tecnico

Publicado por Nicanor deneg_nhj@yahoo.com (4 intervenciones) el 19/06/2012 00:03:32
Enviame un correo para enviarte un diseño de base de datos que hice hace algunos años, tal vez te sea de utilidad.

www.sgh.com.mx

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

problema diseño bbdd servicio tecnico

Publicado por Yuriria copy_086@hotmail.com (1 intervención) el 29/05/2013 15:16:08
Hola!
Quisiera que me ayudaran a elaborar mi diseño de una base de datos muy parecida a la Oriol...
Nicanor, si pudieras enviarme tu diseño a mi tambien, se los agradeceria infinitamente!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

problema diseño bbdd servicio tecnico

Publicado por Alixandro florian_do@yahoo.com (18 intervenciones) el 03/06/2013 17:04:09
Saludos,

Oriol, para casos que explica, y para el buen funcionamiento de la BD, debes tener un buen diseño. No siempre se consigue todo el manejo con una tabla, al menos que se necesario, para tu caso debes tener tabla maestro detalle, donde la tabla maestra contendrá los datos principales del cliente y la operación (ej: Codcliente, nro_operacion, responsable, fecha, status, etc.), la tabla detalle contendrá los datos o componentes utilizados en la operacion, (Ej: codcliente, nro_operacion,Norsec, Tipo_componente, marca, modelo, valor, etc., etc.), donde ambas tablas se unirán por codcliente, nro_operacion. Recuera la creación de las llaves (PK) en ambas tablas. También te recomiendo utilizar tablas para parametrizar variables que puedan intervenir en los procesos de registros.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar