[Php-avanzado] Normalización

Leonardo Tadei - Pegasus Tech Supply leonardot en pegasusnet.com.ar
Mar Jul 10 17:31:57 ART 2012


Hola David,

	te respondo intercalado:

El dom, 08-07-2012 a las 15:19 -0300, David Barraud escribió:
> Hola Leo, te paso las correcciones hechas con los detalles que me
> pediste.
> 
> 
> Normalización
> 
> #departamentos
> 
> id_depto
> 
> depto_nombre
> 
>  
> 
> #categorias
> 
> id_categoria
> 
> nombre
> 
>  
> 
> #insumos
> 
> id_producto
> 
> id_categoria
> 
> imagen
> 
> nombre
> 
>  
> 
> #RemitosAltaStock
> 
> id_remito_alta
> 
> fecha
> 
>  
> 
> #RemitosAltaStockDetalle
> 
> id_alta_detalle
> 
> id_remito_alta
> 
> id_producto
> 
> nombre
> 
> cantidad
> 
>  
> 
> #RemitosBajaStock
> 
> id_remito_baja
> 
> fecha
> 
>  
> 
> #RemitosBajaStockDetalle
> 
> id_baja_detalle
> 
> id_remito_baja
> 
> id_producto
> 
> nombre
> 
> cantidad
> 
> motivo


	Hasta acá está bien.

> #solicitudes
> 
> id_solicitud
> 
> id_depto
> 
> depto_nombre
> 
> id_estado
> 
> id_remito_baja

	El campo id_remito_baja es incorrecto. La Solicitud de reparación no
tiene que hacer referencias al Remito de Baja.
	La propia Solicitud de Reparación _es_ la baja de los insumos usados.

> fecha_inicio
> 
> fecha_fin
> 
> problema
> 
> solucion
> 
>  
> 
> #solicitudesDetalles
> 
> Id_solicitud_detalle
> 
> Id_solicitud
> 
> Id_producto
> 
> nombre
> 
> cantidad
> 
>  
> 
> #estados
> 
> id_estado
> 
> estado

	El resto está bien.
	Te falta(n) la(s) tabla(s) para implementar los RNF

	No queda constancia de quién hace la Solicitud de Reparación? Me parece
recordar que estaba en versiones anteriores de tu SRS... pero tal vez me
esté confundiendo de trabajo final.

	Resumiendo: sin ese campo y agregando como se guardan los usuarios esto
está listo.

	Saludos!


PD: hoy recibí otro mensaje igual a este, así que también lo damos por
contestado.


> El 6 de julio de 2012 00:32, Leonardo Tadei - Pegasus Tech Supply
> <leonardot en pegasusnet.com.ar> escribió:
>         Hola David,
>         
>         
>         El jue, 05-07-2012 a las 15:44 -0300, David Barraud escribió:
>         > Bien, entonces me faltaría una tabla en #solicitudes que me
>         guarde los
>         > insumos que se usan para cada solicitud
>         
>         
>                 Me parece que decís bien, pero por las dudas lo vuelvo
>         a expresar acá:
>         las Solicitudes normalizadas quedan en dos tablas, una con la
>         "cabecera"
>         de la solicitud, y otra con el "detalle" en dónde constan los
>         insumos.
>         
>                 Si te fijás, los comprobantes de altas y de bajas son
>         casi iguales,
>         salvo que la "cabecera" es más chica (y los de baja tienen el
>         motivo
>         como parte de los detalles).
>         
>         >  y el cálculo del stock de los insumos sería la sumatoria de
>         las Alta
>         > de Stock - baja de stock - baja de stock en las solicitudes.
>         
>         
>                 Correcto!
>         
>         > Si estoy en lo correcto decime si estas tablas quedarían de
>         esta
>         > manera:
>         
>         
>                 Mmm... más o menos así. La idea está bien, pero te
>         falta pulir un par
>         de detalles:
>         
>         1) Los nombre de las tablas en plural, y lo de los campos en
>         singular.
>         Parece una pavada pero es de veras importante para no
>         confundirte.
>         2) Si tenés  id_depto, como tu RF1 dice que se gestionan,
>         tenés que
>         guardar acá el nombre del departamento, porque si después se
>         cambia o se
>         borra, no tenés que cambiar las Solicitudes ya generadas.
>         Nota: No pasa lo mismo con id_estado, porque no se gestiona.
>         3) La tabla de detalles se ve bien. A nivel de nomenclatura,
>         es un poco
>         confuso porque el "remito" es la solicitud entera, así que uno
>         esperaría
>         que la palabra "remito", si está, esté en la primer tabla. Si
>         una tabla
>         se llama "Solicitudes", la otra podría llamarse algo como
>         "SolicitudesDetalles" o "SolicitudesItems", es decir un nombre
>         que
>         denote que depende de la primera y que no tiene sentido sin
>         ella.
>         Yo empiezo todo con "Solicitudes...", pero esto es de viejo
>         mañoso,
>         porque después el ver las tablas alfabéticamente se ven juntas
>         las
>         relacionadas, y no con otras tablas en el medio, pero sería un
>         nombre
>         más correcto "ItemsSolicitud" o "DetallesSolicitud"... más
>         correcto pero
>         incómodo.
>         Mientras sea claro y explícito, llamalas como quieras. Que una
>         diga
>         "Remito" y la otra no, desentona, pero no es que en nombres de
>         tablas o
>         de campos haya cosas "mal" si son representativas.
>         
>                 Saludos!
>         


-- 
Leonardo Tadei
leonardot en pegasusnet.com.ar
Blog: http://blog.pegasusnet.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key



Más información sobre la lista de distribución Php-avanzado