[Php-avanzado] Tesis

Leonardo Tadei - Pegasus Tech Supply leonardot en pegasusnet.com.ar
Vie Mar 6 18:11:32 ARST 2009


Hola Carlos!

El jue, 05-03-2009 a las 05:35 -0300, Carlos Ariel Gomez escribió:
> Hola Leo te mando de nuevo el planteo de la tesis con las tablas ya
> que con el trabajo de verano no pude hacer nada.
> Ya modifique unas cosas pero no recuerdo si faltaba algo mas.

	Esto es suponer que yo me acuerdo de tu trabajo mejor que vos ;-) 

 
> SISTEMA PARA MANEJO DE INSTALACIONES Y CONTROL DE STOCK
> -------------------------------------------------------
>  
> En el sistema existen usuarios(instaladores) a quienes reciben ordenes
> de instalacion.
> Los instaladores disponen de un stock de materiales a usar para dichas
> instalaciones.
>  
> La idea es que cada instalador lleve un control detallado de ordenes
> de instalacion y materiales
> disponibles en su stock.
> Que puedan consultar en todo momento el estado del mismo, y que
> puedan 
> imprimir un reporte con la cantidad de materiales a la fecha.
>  
>  
>  
> 1) Manejo de usuarios
>  
> ADMINISTRADOR : que pueda agregar, modificar y quitar usuarios al
> sistema. ABM usuarios
>  
> INSTALADORES : son los que pueden manejar cada uno su inventario,
> instalaciones, 
> informes. 
>  
> Que cada usuario vea su menu correspondiente.
>  
> 
> 2) Ingresar abonados (id, Apellido, nombre, telefono, direccion)
>  
> 
> 3) ingresar ordenes de instalacion y relacionar la misma con un
> abonado, puede haber varias 
> ordenes para un mismo abonado.(id, num actuacion, fecha de asigancion,
> fecha de finalizacion)
>  
> 4) poder asignar estados a las ordenes de instalacion :
>  
>    estados:
>    -------- 
>  
>  a) cumplida (En este caso caragar materiales que se utilizaron)
>  b) informada (Motivo)
>  c) por cita (fecha proxima de instalacion)
>  
>  
>  
> 5) Ingresar materiales al inventario que lleva cada instalador en base
> al remito que se entrega 
> al momento de retirar los mismos del pañol.
>  
> 
> 6) Descargar materiales al momento de cumplir una orden descontando
> los mismos del stock.
>  
> Indicar si la misma tiene boca adicional, cableado estructurado,
> programacion de pc adicionales al servicio.
>  
> 7) Poder emitir mensualmente un estado de materiales el mismo debe
> poder ser 
> impreso para presentar.
>  
> 7) Listado maestro-detalle de cada una de las instalaciones.
>  
> Poder consultar cada instalacion, con los materiales utilizados y
> detalles de la misma.
>  
> 8) Listado maestro-detalle de ingreso de materiales al stock.
>  
> 9) Consulta de instalaciones por num de telefono, por num de actuacion
>  
> 10) Consultas de ordenes que se informan por Cita, para saber dia y
> hora de instalacion.
>  
> 11) Listado de instalaciones realizadas en el mes, dividida por
> centrales segun la caracteristica del numero telefonico 
> de cada abonado.

	Se ve bien...

 
> tablas.
> -------
>  
> 
> usuarios
> --------
>  
> id int(11)
> apellido varchar(40)
> nombre varchar(40)
> direccion varchar(60)
> telefono varchar(40) 
> localidad varchar(40)
> email varchar(80)
> usuario char(20)
> pass char(32)
> permisos tinyint (si es admin o usuario)
>  
>  
>  
> abonados
> --------
>  
> id int(11) AUTOINCREMENT
> apellido varchar(40)
> nombre varchar(40)
>  
> telefono (tengo que tener localidad, caracteristica y numero)
>  
> 0223-480-5555
>  
> mi pregunta es manejo todo en un campo y parseo los datos separado por
> -

	Parsear una DB nunca! Si no rompés el principio de unicidad de la
información y no estás ni en 1FN. Si te hace falta tenerlo separado,
entonces te hace falta 3 campos...


> direccion varchar(60)
>  
> 
> instalaciones
> -------------
>  
> id int(11) AUTOINCREMENT
> num_orden char(8)
> fecha date
> observaciones varchar(80)
> id_estado tinyint
> id_abonado int(11)
>  
> 
> estados (informada, cumplida, cita)
> -------
>  
> id tinyint
> estado char(10)
>  
> 
> detalle_inst
> ------------
>  
> id int(11) AUTOINCREMENT
> id_inst int(11)
> codigo varchar(10)
> material varchar(60)
> cantidad int(4)
>  
> 
> invetario
> -----
>  
> id int(11) AUTOINCREMENT
> codigo varchar(10)
> material varchar(60)
> cantidad int(4)
>  
> ingreso_inventario
> -------------
>  
> id int(11) AUTOINCREMENT 
> fecha date
> remito varchar(20)
>  
> 
> detalle_ingreso
> ---------------
>  
> id int(11) AUTOINCREMENT
> id_ing int(11)
> codigo varcha(10)
> cantidad int(4)


	Hay una cosa que no me cierra: si, como me contaste, ves de nuevo a la
misma persona que se mudó y que por ende tiene un nuevo nros de
teléfono, con tus tablas cambiás la historia pasada y las viejas órdenes
quederán de otra línea. A su vez, si alguien deja el teléfono y le dan
el número a otro, al editar al cliente perdés los datos del anterior.

	No suena nada bien...

-- 
Leonardo Tadei
leonardot en pegasusnet.com.ar
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