View
21
Download
0
Category
Preview:
Citation preview
DISEÑO, DESARROLLO E IMPLEMENTACIÓN DE UN SISTEMA DE
INFORMACIÓN CONTABLE ORIENTADO A ENTORNOS WEB PARA LA GESTIÓN
DE LOS INGRESOS Y EGRESOS DE PRODUCTOS DEL NEGOCIO DE LOS
TENDEROS DE LA PLAZA DE MERCADO DEL MUNICIPIO DE GIRARDOT
ANGIE JOHANNA SICHACÁ ESPITIA
MANUAL TÉCNICO
UNIVERSIDAD PILOTO DE COLOMBIA
FACULTAD DE INGENIERÍA
PROGRAMA INGENIERÍA DE SISTEMAS
GIRARDOT
2021
2
ACERCA DE ESTE MANUAL
En el presente manual se pretende informar al usuario sobre la correcta instalación del
sistema de información web contable, informando paso a paso su funcionamiento. La
explicación que aquí se presenta se da a través de los distintos módulos que conforman el
software.
3
TABLA DE CONTENIDO
1. INSTALACIÓN ............................................................................................................. 6
1.1 Python 3.7.3 ......................................................................................................... 6
1.2 Entorno virtual ................................................................................................... 7
1.3 Django 2.2.4 ........................................................................................................ 8
1.4 Dependencias ...................................................................................................... 9
2. DIAGRAMAS DE MODELAMIENTO ................................................................... 10
2.1 Diccionario de Datos ................................................................................................. 10
2.1.1 Esquema del Diccionario ....................................................................................... 11
2.2 Modelo entidad relación ........................................................................................... 18
2.3 Diagrama casos de uso .............................................................................................. 19
2.4 Diagrama de secuencia ............................................................................................. 20
3. ESTRUCTURA DEL SISTEMA ............................................................................... 22
3.2 Archivos de Aplicación ............................................................................................. 22
3.2.1 Funciones de los Archivos.................................................................................. 23
4
TABLA DE FIGURAS
Figura 1 - Modelo entidad relación. Recuperado de Autor. ................................................. 18
Figura 2 - Diagrama de casos de uso. Recuperado de Autor. ............................................... 19
Figura 3 - Diagrama de secuencia proceso de venta. Recuperado de Autor. ....................... 20
Figura 4 - Diagrama de secuencia proceso de consulta de información. Recuperado de
autor. ..................................................................................................................................... 21
5
TABLA DE TABLAS
Tabla 1 - diccionario de datos............................................................................................... 10
Tabla 2 – Tabla usuario. ....................................................................................................... 11
Tabla 3 – Tabla de movimiento 1. ........................................................................................ 11
Tabla 4 – Tabla negocio. ...................................................................................................... 12
Tabla 5 – Tabla pabellón. ..................................................................................................... 12
Tabla 6 – Tabla de movimiento 2. ........................................................................................ 13
Tabla 7 – Tabla proveedor. ................................................................................................... 13
Tabla 8 – Tabla producto. ..................................................................................................... 14
Tabla 9 – Tabla de unidad de medida. .................................................................................. 15
Tabla 10 – Tabla de movimiento 2. ...................................................................................... 15
Tabla 11 – Tabla de compra. ................................................................................................ 16
Tabla 12 – Tabla de movimiento 3. ...................................................................................... 16
Tabla 13 – Tabla de compra. ................................................................................................ 17
Tabla 14 – Tabla de históricos. ............................................................................................. 17
Tabla 15 – Tabla de archivos de la aplicación...................................................................... 22
Tabla 16 – Tabla de las funciones de los archivos de la aplicación. .................................... 23
6
1. INSTALACIÓN
Para el desarrollo del sistema de información es necesario del lenguaje de programación
Python y el framework Django. De igual manera, es importante la creación del entorno
virtual y la correcta instalación de las dependencias necesarias para el funcionamiento del
software contable.
1.1 Python 3.7.3
Para la instalación de Python 3.7.3, se deben realizar los siguientes pasos:
En Windows:
Para la instalación de Python en Windows, es necesario descargar el instalador de la
siguiente página:
https://www.python.org/downloads/release/python-373/
Primero se debe ejecutar el archivo de instalación con la extensión “.msi”. Una vez
abierto, se debe seleccionar la opción “Add to PATH” ubicada en la parte inferior del
instalador para asegurarse que la ruta quede incluida en el directorio PATH de sistema, a
continuación, se debe instalar el lenguaje de programación siguiente los pasos que aparecen
en dicho instalador.
En Linux:
Para la instalación de Python en Linux, se debe ingresar a la consola de comandos, en la
cual se debe digitar:
$ sudo apt-get install python3.7.3
7
Para verificar si quedó instalado, en la consola de comandos se debe ingresar:
$ python --version
1.2 Entorno virtual
Es necesario instalar un entorno virtual para separar el entorno de desarrollo del
proyecto en el ordenador, de manera tal que cualquier cambio que se realice en el proyecto
no afectará a otros proyectos que estén en desarrollo.
El primer paso es abrir la consola del sistema operativo, seguidamente, se realizan los
siguientes pasos:
En Windows:
Para instalar el entorno, se debe digitar el siguiente código:
$ python -m pip install virtualenv
Para crear el entorno, se debe digitar el siguiente código:
$ python –m virtualenv entorno_virtual
Donde se creará una carpeta con todos los archivos necesarios para el entorno. Para
iniciarlo, se debe ubicar en la carpeta donde esté alojado el entorno y digitar el siguiente
comando:
$ entorno_virtual/Scripts/activate
En Linux:
8
Para instalar el entorno, se debe digitar el siguiente código:
$ pip install virtualenv
Para crear el entorno, se debe digitar el siguiente código:
$ python –m virtualenv Mi_entorno
Donde se creará una carpeta con todos los archivos necesarios para el entorno. Para
iniciarlo, se debe ubicar en la carpeta donde esté alojado el entorno y digitar el siguiente
comando:
$ entorno_virtual/bin/activate
1.3 Django 2.2.4
Para la instalación del framework Django se debe inicializar el entorno virtual en
primera instancia, seguidamente, se deben realizar los siguientes pasos:
En Windows:
Ejecutar en la consola de comandos el siguiente código:
$ python –m pip install django==2.2.4
En Linux:
Ejecutar la consola de comandos el siguiente código:
$ pip install django==2.2.4
9
1.4 Dependencias
Es necesario instalar todas las dependencias necesarias para el funcionamiento de una
acción en particular del software contable, las cuales son las siguientes:
Django==2.2.4
mysqlclient==1.4.4
Pillow==6.1.0
Para la instalación de dichas dependencias, es necesario dirigirse a la carpeta raíz donde
se encuentra alojado el archivo requirements.txt. A continuación, es necesario digitar la
siguiente línea de comando:
En Windows:
$ python –m pip install –r requirements.txt
En Linux:
$ pip install –r requirements.txt
10
2. DIAGRAMAS DE MODELAMIENTO
A continuación, se procede a mostrar sobre los procesos, actores y demás componentes
que hacen posible el funcionamiento del software de una forma detallada.
2.1 Diccionario de Datos
El diccionario de datos está definido por el nombre de la tabla y una descripción de la
funcionalidad de la misma. Los campos de cada tabla se conforman por 5 ítems, en los
cuales, las llaves primarias se describen con PK y las llaves foráneas se describen con FK.
Dichos campos se describen a continuación:
Tabla 1
Tabla 1 - diccionario de datos.
Nombre: Nombre de la Tabla
Descripción: Detalle de la funcionalidad de la tabla
Campo Tipo Dato Tamaño Descripción Llave
Nombre
del campo.
Tipo de
carácter.
Tamaño que
debe tener.
Detalle de la funcionalidad
del campo.
Se coloca si es
una llave
primaria o
foránea.
11
2.1.1 Esquema del Diccionario
Tabla 2
Tabla 2 – Tabla usuario.
Nombre: Usuario
Descripción: Tabla información de usuarios.
Campo Tipo Dato Tamaño Descripción Llave
id INT 5 Llave primaria PK
dirección VARCHAR 45 Dirección de residencia
teléfono VARCHAR 45 Teléfono de contacto
documento VARCHAR 45 Documento de identidad
foto VARCHAR 45 Foto del usuario
Tabla 3
Tabla 3 – Tabla de movimiento 1.
Nombre: detalle_usuario_negocio
Descripción: Tabla de movimiento que relaciona las tablas usuario y negocio.
Campo Tipo Dato Tamaño Descripción Llave
id INT 5 Llave primaria. PK
usuario_id INT 5 Llave foránea a Usuario FK
negocio_id INT 5 Llave foránea a Negocio FK
12
Tabla 4
Tabla 4 – Tabla negocio.
Nombre: Negocio
Descripción: Tabla información de negocios.
Campo Tipo Dato Tamaño Descripción Llave
id INT 5 Llave primaria. PK
Nombre VARCHAR 45 Nombre que identifica al
negocio.
teléfono VARCHAR 45 Teléfono del negocio.
nit VARCHAR 45 Nit del negocio.
email VARCHAR 45 Email del negocio.
pabellon_id INT 5 Llave foránea a Pabellon FK
Tabla 5
Tabla 5 – Tabla pabellón.
Nombre: Pabellon
Descripción: Tabla de información de pabellones.
Campo Tipo Dato Tamaño Descripción Llave
id INT 5 Llave primaria. PK
nombre VARCHAR 45 Nombre que identifica al
pabellón.
descripcion LONGTEXT Descripción del pabellón
13
Tabla 6
Tabla 6 – Tabla de movimiento 2.
Nombre: detalle_negocio_producto
Descripción: Tabla de movimiento que relaciona las tablas producto, proveedor y negocio.
Campo Tipo Dato Tamaño Descripción Llave
id INT 5 Llave primaria. PK
producto_id INT 5 Llave foránea a Producto FK
proveedor_id INT 5 Llave foránea a Proveedor FK
negocio_id INT 5 Llave foránea a Negocio FK
Tabla 7
Tabla 7 – Tabla proveedor.
Nombre: Proveedor
Descripción: Tabla información de proveedores.
Campo Tipo Dato Tamaño Descripción Llave
id INT 5 Llave primaria. PK
nombre VARCHAR 45 Nombre del proveedor.
telefono VARCHAR 45 Teléfono de contacto.
direccion VARCHAR 45 Dirección del negocio.
razon_social VARCHAR 45 Razón social del negocio.
email VARCHAR 45 Email del proveedor.
14
celular VARCHAR 45 Celular del contacto.
Tabla 8
Tabla 8 – Tabla producto.
Nombre: Producto
Descripción: Tabla información de productos.
Campo Tipo Dato Tamaño Descripción Llave
id INT 5 Llave primaria. PK
nombre VARCHAR 45 Nombre del prodcuto.
stock INT 5 Stock (cantidad).
valor_costo INT 5 Valor unitario.
valor_venta INT 5 Valor de venta.
imagen VARCHAR 45 Imagen del producto.
descripcion LONGTEXT Descripción del
producto.
estado CHAR 2 Estado del producto.
unidad_medida_id INT 5 Llave foránea a
unidad medida. FK
15
Tabla 9
Tabla 9 – Tabla de unidad de medida.
Nombre: unidad_medida
Descripción: Tabla de unidades de medidas.
Campo Tipo Dato Tamaño Descripción Llave
id INT 5 Llave primaria. PK
nombre_unidad VARCHAR 45 Nombre de la unidad de
medida.
abreviatura_unidad VARCHAR 45 Abreviatura de la
unidad de medida.
Tabla 10
Tabla 10 – Tabla de movimiento 2.
Nombre: detalle_compra
Descripción: Tabla de movimiento que relaciona las tablas producto, proveedor y compra.
Campo Tipo Dato Tamaño Descripción Llave
id INT 5 Llave primaria. PK
producto_id INT 5 Llave foránea a Producto FK
proveedor_id INT 5 Llave foránea a Proveedor FK
compra_id INT 5 Llave foránea a Negocio FK
cantidad INT 5 Cantidad de productos
valor_unitario INT 5 Valor unitario.
16
total_producto INT 5 Total de producto.
Tabla 11
Tabla 11 – Tabla de compra.
Nombre: Compra
Descripción: Tabla de compras.
Campo Tipo Dato Tamaño Descripción Llave
id INT 5 Llave primaria. PK
fecha DATETIME Fecha de la compra.
total INT 5 Total de la compra.
Tabla 12
Tabla 12 – Tabla de movimiento 3.
Nombre: detalle_venta
Descripción: Tabla de movimiento que relaciona las tablas producto y venta.
Campo Tipo Dato Tamaño Descripción Llave
id INT 5 Llave primaria. PK
producto_id INT 5 Llave foránea a Producto FK
venta_id INT 5 Llave foránea a Venta FK
cantidad INT 5 Cantidad de productos
total_producto INT 5 Total de producto.
17
Tabla 13
Tabla 13 – Tabla de compra.
Nombre: Venta
Descripción: Tabla de ventas.
Campo Tipo Dato Tamaño Descripción Llave
id INT 5 Llave primaria. PK
fecha DATETIME Fecha de la venta.
total INT 5 Total de la venta.
observacion VARCHAR 45 Observación de la venta.
Tabla 14
Tabla 14 – Tabla de históricos.
Nombre: Log
Descripción: Históricos de movimientos.
Campo Tipo Dato Tamaño Descripción Llave
usuario INT 5 Id del usuario. PK
negocio INT 5 Id del negocio.
tiempo DATETIME Fecha de la acción.
accion LONGTEXT Acción realizada.
18
2.2 Modelo entidad relación
Figura 1 - Modelo entidad relación. Recuperado de Autor.
El modelo entidad-relación está constituido por 13 tablas. El estándar está asignado
por el nombre completo con la primera letra en mayúscula para los nombres de las tablas si
esta contiene una única palabra, de contener un nombre compuesto, se dividen las palabras
que contenga con un guion bajo y se dejan todas en minúscula.
19
2.3 Diagrama casos de uso
Figura 2 - Diagrama de casos de uso. Recuperado de Autor.
En la figura 2 se puede evidenciar el actor implicado y sus acciones durante el uso del
software cuyas funciones se describen como: Encargado de registrar, actualizar y consultar
la información referente a productos, ventas, compras y proveedores del negocio en
cuestión.
20
2.4 Diagrama de secuencia
Figura 3 - Diagrama de secuencia proceso de venta. Recuperado de Autor.
En la figura 3 se puede apreciar la interacción que tiene el comerciante con el software
mediante un proceso como es la venta de un producto; en donde, el cliente solicita un
producto y el comerciante se encarga de consultar la disponibilidad de dicho producto en el
sistema para así realizar la venta, la cual se registra en el sistema al momento de ser
realizada.
21
Figura 4 - Diagrama de secuencia proceso de consulta de información. Recuperado de autor.
En la figura 4 se puede apreciar dos interacciones que tiene el comerciante con el
software mediante procesos como:
• Consultar las ventas: en donde, el comerciante solicita la información de las
ventas registradas en el sistema, y este procesa dicha solicitud para mostrar el total
de ventas, las ganancias o los productos más vendidos.
• Consultar las compras: en donde, el comerciante solicita la información de las
compras registradas en el sistema, y este procesa dicha solicitud para mostrar el
total de compras, el stock inicial y final de los productos comprados, y los
proveedores de dichos productos.
22
3. ESTRUCTURA DEL SISTEMA
El sistema de información es desarrollado con lenguajes de programación como: Python,
Javascript, HTML. A continuación, se procede a mostrar los archivos y procesos que
componen al aplicativo.
3.2 Archivos de Aplicación
Tabla 15
Tabla 15 – Tabla de archivos de la aplicación.
Nombre Descripción
Settings.py
En este archivo se encuentran las principales
configuraciones del aplicativo para su correcto
funcionamiento tales como: configuración de la base de
datos, aplicaciones, plantillas.
Urls.py Se definen las url necesarias para el aplicativo.
Models.py
Se representa la estructura de cada una de las tablas que
conforma la base de datos para la correcta interpretación
del framework.
Views.py
Contiene toda la lógica necesaria, la cual toma una petición
web (Web Request) y devuelve una respuesta web (Web
Response).
23
3.2.1 Funciones de los Archivos
Tabla 16
Tabla 16 – Tabla de las funciones de los archivos de la aplicación.
Nombre Función Descripción
Views.py
def login
Función que valida lo datos
ingresados del usuario y
redirecciona a la pantalla
principal según el grupo
perteneciente al usuario.
def registrar_pabellon
Función que permite registrar
un nuevo pabellón.
def registrar_comerciante
Función que permite registrar
el usuario de un comerciante
nuevo.
def registrar_negocio
Función que permite registrar
un negocio.
def editar_negocio
Función que permite
actualizar los datos de un
negocio.
24
def eliminar_negocio
Función que permite eliminar
un negocio si este no
contiene ningún registro.
def registrar_empleado
Función que permite registrar
el usuario de un empleado
perteneciente a un negocio.
def perfil_usuario
Función que permite
actualizar los datos de un
usuario.
def modificar_contra
Función que permite
actualizar la contraseña del
usuario.
def agregar_proveedor
Función que permite registrar
el proveedor de un negocio.
def editar_proveedor
Función que permite
actualizar los datos de un
proveedor.
def agregar_producto
Función que permite registrar
un producto nuevo.
25
def detalle_producto
Función que permite
visualizar el detalle de un
producto y actualizar sus
datos.
def list_compras
Función que permite
visualizar la lista de compras.
def list_compras_reportes
Función que retorna los datos
necesarios del total de
compras de un negocio para
su interpretación en reportes.
def detalle_de_compra
Función que permite
visualizar el detalle de una
compra.
def
editar_item_detalle_compra
Función que permite editar
los datos del ítem de una
compra.
def
eliminar_item_detalle_compra
Función que permite eliminar
el ítem de una compra.
def agregar_compra
Función que permite agregar
una compra nueva.
26
def eliminar_compra
Función que permite eliminar
una compra.
def list_ventas
Función que permite
visualizar la lista de ventas.
def list_ventas_reportes
Función que retorna los datos
necesarios del total de ventas
de un negocio para su
interpretación en reportes.
def detalle_de_venta
Función que permite
visualizar el detalle de una
venta.
def editar_item_detalle_venta
Función que permite editar
los datos del ítem de una
venta.
def
eliminar_item_detalle_venta
Función que permite eliminar
el ítem de una venta.
def agregar_venta
Función que permite agregar
una venta nueva.
def eliminar_venta
Función que permite eliminar
una venta.
Recommended