[Php-avanzado] Tablas tesis Leandro Schereik

Leandro Schereik lschereik en hotmail.com
Vie Mar 19 21:00:52 ARST 2010


Hola Leo: perfectas tus explicaciones buenisimo lo de tirar la moneda jajajaj
Aca van las tablas con las modificaciones. 


tbltipuser
----------

 
id   auto_increment    // Key
 
tipo varchar(50)
 
 
Nota: esta tabla contendrá inicialmente los siguientes registros fijos:
 
id: 1 tipo: Administrador
 
id: 2 tipo: Usuario Normal



tblcompradores
--------------


 id            auto_increment    // Key
 nombre        varchar(100)
 ape             varchar(100)
 tel              varchar(50)
 email           varchar(255)
 id_tip_user      int(11)
 usuario        varchar(20)
 pass            varchar(20)


tblcategorias
 ------------
 
 id           auto_increment    // Key
 nombre    varchar(30)


 tblarticulos
 ----------
 
 id                     auto_increment    // Key
 id_categoria        int(11)
 id_estado           varchar(1)
 nombre              varchar(100)
 precio                float
 stock                 int(11)
 imagen1             varchar(255)
 imagen2             varchar(255)
 imagen3             varchar(255)


 tblestart
 ---------

 id                   auto_increment    // Key
 estado            varchar(15)


Nota: esta tabla contendrá inicialmente los siguientes registros fijos:
 
id: 1 estado: activo
id: 2 descri: inactivo



 tbl_cabec_ventas
 ---------
 
 id                auto_increment            // Key 
 id_comprador      int(11)                  // id comprador al momento de la venta
 nom_comprador     varchar(100)       // nombre del comprador al momento de la venta
 ape_compr         varchar(100)         // apellido del comprador al momento de la venta
 tel_compr         varchar(100)          // telefono del comprador al momento de la venta
 fecha             timestamp               // fecha y hora al momento de la venta
 
    
 tbl_det_ventas
 --------------
 
 id                 int(11)                   // el ID de la Factura
 id_articulo      int(11)                   // id del articulo al momento de la venta
 nombre_art     varchar(100)          // nombre del articulo al momento de la venta
 precio_art       float                     // precio del articulo al momento de la venta
 cantidad         float                     // cantidad del articulo
 imagen1          varchar(255)         // imagen 1 del articulo al momento de la venta
 imagen2          varchar(255)         // imagen 2 del articulo al momento de la venta
 imagen3          varchar(255)         // imagen 3 del articulo al momento de la venta


Muchas gracias 

Leandro Schereik





> From: leonardot en pegasusnet.com.ar
> To: php-avanzado en pato2.fi.mdp.edu.ar
> Date: Fri, 19 Mar 2010 01:42:39 -0300
> Subject: Re: [Php-avanzado] Tablas tesis Leandro Schereik
> 
> Hola Leandro,
> 
> El vie, 19-03-2010 a las 02:12 +0000, Leandro Schereik escribió:
> > Hola Leo vi tus comentarios aca van las tablas con algunas
> > correcciones.
> > 
> > Para los usuarios tengo dos alternativas no se cual es la correcta:
> > 1: Seria una tabla para compradores y otra para administradores: 
> > 
> >  tblcompradores
> >  --------------
> > 
> > 
> >  id               int(11)
> >  nombre        varchar(100)
> >  ape             varchar(100)
> >  tel              varchar(50)
> >  email           varchar(255)
> >  usuario        varchar(20)
> >  pass            varchar(20)
> >  
> >  tbladministradores
> > 
> >  id               int(11) 
> >  usuario        varchar(20)
> >  pass            varchar(20)
> >  
> > 
> > 2: La otra solucion seria una tabla para compradores y otra para
> > tipos de usuarios:
> > 
> > 
> > tbltipuser
> > ----------
> > 
> >  
> > id integer
> >  
> > tipo varchar(50)
> >  
> >  
> > Nota: esta tabla contendrá inicialmente los siguientes registros
> > fijos:
> >  
> > id: 1 tipo: Administrador
> >  
> > id: 2 tipo: Usuario Normal
> > 
> > 
> > 
> > 
> >  tblcompradores
> >  --------------
> > 
> > 
> >  id               int(11)
> >  nombre        varchar(100)
> >  ape             varchar(100)
> >  tel              varchar(50)
> >  email           varchar(255)
> >  id_tip_user      int(11)
> >  usuario        varchar(20)
> >  pass            varchar(20)
> > 
> > 
> > Vos me diras cual es la mejor solucion? 
> 
> 
> 	Ambas son correctas desde la normalización, así que te garantizan que
> todo funcione bien. Incluso hay otras opciones más complejas que no
> valen la pena discutir.
> 	
> 	Ambas opciones también tienen pros y cons: la 1ra ofrece mayor
> versatilidad porque si te cambia la definición del Comprador, no hay
> impacto en el funcionamiento de los Administradores; también es más
> reusable porque podrás usar estos administradores en cualquier sistema
> futuro. La contra es que tenés que vértelas con 2 tablas en vez de solo
> con una.
> 	La 2da tiene como ventaja que tendrás un sistema más homogéneo y podrás
> copiar y pegar más código para este proyecto. La contra es que toda
> query para login tendrá un WHERE múltiple, y si te equivocás en la query
> podés tener compromisos altos de seguridad.
> 
> 	Como ambas soluciones son correctas, usá la que te haga sentir más
> cómodo... o tirá una moneda!
> 
> > Esta tabla queda igual.
> > 
> > tblcategorias
> >  ------------
> >  
> >  id           int(11)
> >  nombre    varchar(30)
> > 
> > 
> > 
> > 
> >  Con respecto a los articulos agrego una tabla para los estados de los
> > articulos.
> > 
> >  tblarticulos
> >  ----------
> >  
> >  id                      int(11)
> >  id_categoria        int(11)
> >  id_estado           varchar(1)
> >  nombre              varchar(100 )
> >  precio                float
> >  stock                 int(11)
> >  imagen1             varchar(255)
> >  imagen2             varchar(255)
> >  imagen3             varchar(255)
> > 
> > 
> >  tblestart
> >  ---------
> > 
> >  id                  varchar(15)
> >  estado            varchar(15)
> > 
> > 
> > Nota: esta tabla contendrá inicialmente los siguientes registros
> > fijos:
> >  
> > id: 1 estado: activo
> > id: 2 descri: inactivo
> 
> 	Ok. Esto además te permite agregar nuevos estados en el futuro, sin
> tener que preocuparte por manejar la visualización de los datos.
> 
> > Con respecto a la ventas entiendo lo que me decis me acuerdo de esa
> > clase con una tabla de
> > "cabecera" y otra de "detalles" de la factura pero no tengo el ejemplo
> > como para mirarlo. 
> > ¿Me podras mandar ese ejemplo o alguno similar para agarrar la idea? 
> 
> 	Las tablas varían según los datos del comprobante que estés guardando,
> pero la estructura es una relación 1-a-muchos entre la cabecera y los
> detalles:
> 
> Facturas:
> ---------
> id	int(16)		auto_increment	// Key
> id_cli	int(16)		// El cliente
> nom_cli	varchar(100)	// El nombre del cliente al momento de la venta
> tipo	int(4)		// tipo fisca: A, B, C, etc, relacionadas a otra tabla.
> num1	int(4)		// nro fiscal de la sucursal
> num2	int(8)		// nro fiscal de la factura
> fec	timestamp	// fecha y hora de emisión
> estado	char(1)		// puede cambiar de vacío a anulada.
> 
> Detalles de la factura:
> -----------------------
> id	int(16)		// el ID de la Factura. Relación 1-a-N
> id_art	int(16)		// id artículo al momento de la venta
> cod	varchar(20)	// cod artículo al momento de la venta
> des	varchar(60)	// des artículo al momento de la venta
> can	float(10,3)	// cantidad del artículo (según el sistema puede ser
> entero o decimal)
> pre	float(8,2)	// precio unitario al momento de la venta
> tiva	float(6,2)	// valor del IVA al momento de la venta
> 
> 
> 	Dependiendo de las necesidades del sistema pueden ser con más o menos
> campos. Un sistema informal no necesita datos fiscales; un sistema que
> venda en cta cte necesitará "Forma de Pago" en la cabecera, etc.
> 
> > Muchas Gracias
> 
> 	Por nada!
> -- 
> 
> Leonardo Tadei
> leonardot en pegasusnet.com.ar
> http://blog.pegasusnet.com.ar
> Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
> 
> _______________________________________________
> Php-avanzado mailing list
> Php-avanzado en pato2.fi.mdp.edu.ar
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
 		 	   		  
_________________________________________________________________
Hotmail tiene actualización automática de la bandeja de entrada, para que ningún email se escape de tu vista. Ver más
http://www.descubrewindowslive.com/hotmail/actualizacion-guardado.asp
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://www3.fi.mdp.edu.ar/cgi-bin/mailman/private/php-avanzado/attachments/20100319/dab83261/attachment-0001.htm 


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