Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

[SOLUCIONADO] Relaciones circulares

Estas en el tema de Relaciones circulares en el foro de Bases de Datos General en Foros del Web. Hola soy nuevo en este foro, resulta que debo hacer una aplicación para una farmacia que se encuentra en una clínica. El problema es que ...
  #1 (permalink)  
Antiguo 18/02/2014, 15:06
 
Fecha de Ingreso: febrero-2014
Mensajes: 4
Antigüedad: 10 años, 2 meses
Puntos: 0
Pregunta Relaciones circulares

Hola soy nuevo en este foro, resulta que debo hacer una aplicación para una farmacia que se encuentra en una clínica. El problema es que no se como cortar una relación circular, por 2 requerimientos en especial.
-Cada tipo de cliente tiene un precio diferente al medicamento.
-Se desea conocer historial de venta por tipo de cliente.
Estoy presto a toda sugerencia o crítica.


*Esta es la BD.
--La tabla entrada salida es usada para Venta, Ingreso, Merma, etc.
  #2 (permalink)  
Antiguo 18/02/2014, 15:19
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Relaciones circulares

en la tabla de medicamento podrias eliminar la columna precioventa, y solo deja la de la tabla precioventa, agregando un id a esta misma tabla, quedando

id, id_medicamento, id_cliente, precioventa y en la de medicamentos agregarias

id_precio en lugar de precio de medicamento :P
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 18/02/2014, 16:56
 
Fecha de Ingreso: febrero-2014
Mensajes: 4
Antigüedad: 10 años, 2 meses
Puntos: 0
Respuesta: Relaciones circulares

gracias Libras, se me paso eliminar ese precioventa de la tabla medicamento.
Eliminé el id de precioventa porque solo hay un precio por tipo de cliente.
No puedo agregar idprecio a la tabla medicamento, se harían M:N junto con precioventa.
  #4 (permalink)  
Antiguo 18/02/2014, 17:26
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Relaciones circulares

pues con el id_medicamento queda la relacion entonces.....
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 19/02/2014, 12:43
 
Fecha de Ingreso: febrero-2014
Mensajes: 4
Antigüedad: 10 años, 2 meses
Puntos: 0
Respuesta: Relaciones circulares

Modifiqué la Base de datos rompiendo la unión, pero quisiera saber si es la mejor forma, sobre todo por estos dos requisitos.

-Cada tipo de cliente tiene un precio diferente al medicamento.
-Se desea conocer historial de venta por tipo de cliente.
  #6 (permalink)  
Antiguo 19/02/2014, 12:56
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Relaciones circulares

que entiendes tu como la mejor forma?? o que es lo que quieres que se te diga?? puedes obtener lo que necesitas, la respuesta es SI, tu diagrama esta normalizado, la respuesta es SI, ahora que se podria optimizar claro que SI por ejemplo la tabla
entrada-salida,movimiento y detalleentrada salida siento que sobran y podrias dejarlas todas en una sola tabla, ya que vas a tener un registro por cada entrada-salida de cada medicamento, entonces para que quieres el detalle?? si todo puede entrar sobre un mismo registro quedando

movimiento
id
usuario_id
tipo_movimiento
id_precio_venta
fecha_registro
cantidad
precio_unitario
nota


los demas campos que tienes que son calculados, no necesitas guardarlos en la base de datos, esos los puedes obtener cuando saques tus reportes.....
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #7 (permalink)  
Antiguo 19/02/2014, 15:18
 
Fecha de Ingreso: febrero-2014
Mensajes: 4
Antigüedad: 10 años, 2 meses
Puntos: 0
Respuesta: Relaciones circulares

Cita:
Iniciado por Libras Ver Mensaje
que entiendes tu como la mejor forma?? o que es lo que quieres que se te diga?? puedes obtener lo que necesitas, la respuesta es SI, tu diagrama esta normalizado, la respuesta es SI, ahora que se podria optimizar claro que SI por ejemplo la tabla
entrada-salida,movimiento y detalleentrada salida siento que sobran y podrias dejarlas todas en una sola tabla, ya que vas a tener un registro por cada entrada-salida de cada medicamento, entonces para que quieres el detalle?? si todo puede entrar sobre un mismo registro quedando

movimiento
id
usuario_id
tipo_movimiento
id_precio_venta
fecha_registro
cantidad
precio_unitario
nota


los demas campos que tienes que son calculados, no necesitas guardarlos en la base de datos, esos los puedes obtener cuando saques tus reportes.....

Gracias Libras por la ayuda, con mejor forma me refería a optimizarla .

Etiquetas: bd, relaciones, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:21.