Академический Документы
Профессиональный Документы
Культура Документы
ALGO MÁS…
Específicamente la sección de la BD que relaciona las tablas con las entidades que
intervienen en la consulta del historial de compras de los clientes para entonces aplicar
el descuento de la promoción para aquellos que más compras realicen.
Precio_venta
Descuento
El modelo E-R anterior, lo diseñé para hacer claridad en que dependiendo de la complejidad de las tareas que se quieran sistematizar, así será el
tamaño de la Base de Datos, es decir, llevará su diseño más tablas relacionadas.
DISEÑO DE LA BASE DE DATOS: FERRETERÍA TUERCAS Y
ALGO MÁS…
La primero que hay que hacer, es identificar todas las entidades posibles que vayan a
intervenir en el proceso de facturación de la ferretería. A continuación mostraré algunas
recopilaciones descriptivas para modelar la base de datos:
Registrar el Id, Nombre, Apellido, Dirección, Fecha de nacimiento, Teléfono y el Correo
electrónico de los clientes de la ferretería
Registrar para los productos la siguiente información: Código, Nombre, Precio compra,
precio venta, Número de Existencias y Categoría a la que pertenece.
Se debe especificar en la factura los Datos del cliente y una tabla que muestre
la Especificación del tipo de producto comprado, su precio, la cantidad suministrada y
el total parcial. Al final de la factura debe calcularse el valor antes de impuestos y
descuentos, y luego calcular el valor total de la compra.
Un cliente puede pagar con las siguientes formas de pago: Efectivo, Tarjeta de
crédito, Tarjeta débito, Paypal y Neteller.
Un cliente puede generar varias facturas debido a sus distintas compras, pero jamás una
misma factura podrá haber sido generada por más de un cliente.
En una factura pueden contener varios productos vinculados, al igual que todos los
productos están posibilitados a aparecer en todas las facturas.
Un cliente puede pagar el monto total de una factura con varios métodos de pago.
…
Estas condiciones pueden cambiar dependiendo de las necesidades del cliente, ya que
pueden variar sus procesos de facturación o añadir más atributos relevantes para ellos. Pero
para los objetivos de este trabajo usaré solo las características esenciales.
Porque son atributos derivados. Es decir, podemos calcularlos a través del precio del
producto y la cantidad cuando queramos. Guardarlos en nuestra base de datos sería
espacio de almacenamiento adicional.
En cambio, si realizamos los cálculos en tiempo real, a nuestra aplicación solo le tomaría un
pequeño instante de tiempo que no interferiría con la velocidad de nuestro Software
Comercial. Es un sacrificio de tiempo vs memoria muy efectivo.
Darnos cuenta que el atributo categoría de la entidad PRODUCTO es poco eficiente. Esto se
debe a que la categoría se repetirá un sinnúmero de veces por todos los registros que
tengamos (redundancia).
Veamos un ejemplo con los productos de un Supermercado:
De los 4 hay 2 que repiten la categoría CONSTRUCCIÓN. ¿Que tal si hubiesen 1000
productos?, la cantidad de espacio usado para almacenar VARCHARS repetidos sería muy
grande.
La solución es sencilla, expandiremos nuestro diagrama para quitar el atributo categoría de
la entidad PRODUCTO y agregaremos una nueva tabla llamada CATEGORIA. Esta
modificación añadirá una relación uno a muchos entre producto y categoría, por lo cual
incluiríamos la llave foránea de categoría.
¿Ventajas?
Mayor claridad e integridad en la base de datos
Economizar espacio en disco. Rinde mejor el valor de una llave foránea ‘1‘ que el nombre
de la categoría ‘CONSTRUCCION‘.
Añadir nuevos atributos como por ejemplo la descripción de la categoría.
Facilidad en la consulta de productos por categoría y elección de nuevas métricas.
Si el cliente decidiera que sus productos pueden pertenecer a más de una categoría,
entonces se debe crear una tabla intermedia por la relación muchos a muchos que se
genera.
id_categoría nombre
1 CONSTRUCCION
2 BAÑO
3 PINTURA
El modelo E-R quedaría así:
PAGOS EN LA BASE DE DATOS DEL SISTEMA DE
FACTURACIÓN
No entraré en muchos detalles sobre la tabla PAGO ya que este tema es muy
extenso. Inicialmente podemos considerar datos como Fecha del pago, el Monto pagado y
el Método de pago que se usó, ya sea efectivo, tarjeta de débito, etc.
Cuando un Sistema de facturación acepta varias formas de pago electrónico, es necesario
realizar una investigación sobre bases de datos e-Commerce. Esta característica expande
más el concepto de pagos, generado nuevas tablas y relaciones en el modelo, lo cual queda
a criterio de nosotros los aprendices si deseamos profundizar en esto.
Es importante tener en cuenta la forma en que se realizarán los pagos, ya que hay negocios
donde la factura debe pagarse en un solo pago, otros donde se debe hacer un solo pago
pero divido en porcentajes con diferentes formas de pago. También existen acuerdos donde
abonas un poco al inicio y en otra fecha pagas el valor restante.
O en el caso de las compras por Internet, se debe generar una Orden que sincronice
la Cuenta del cliente, sus Pagos y el Envío del producto.
En mi caso elegí una forma muy sencilla de pago, donde el negocio recibe un pago por los
productos de la factura y puede usar varios métodos de pago:
Podemos notar que un cliente tiene posibilitado pagar con varias formas de pago su
compra, por lo cual creamos una relación uno a muchos entre MODO_PAGO y la factura.
Webgrafía de ayuda:
http://www.hermosaprogramacion.com/2014/07/sistema-facturacion-base-datos