Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
DE LA REGIÓN SIERRA
PRESENTA:
YURICSA YAMILETH DE LA CRUZ MONTIEL
MATRICULA:
15E30057
ASESOR:
TEAPA, TABASCO.
1
Propuesta de Diseño de
un Control de Inventario
basado en la
metodología ABC en el
área de almacén en el
Hotel Sunset Royal
Beach Resort
2
RESUMEN
Los ingenieros industriales tienen la filosofía de buscar reducir costos, pero estos
solo se pueden reducir si se basan en la reducción de tiempos, la mayoría de las
empresas tienen demoras y atrasos por el pésimo manejo y control de inventarios
como lo comprobamos en la empresa “Hotel Sunset Royal Beach Resort”, es por
ello que en este proyecto nos centraremos en el método de inventario ABC.
Es una técnica para segmentar las referencias de productos del almacén según su
importancia en tres categorías (A, B y C), siguiendo un criterio (por ejemplo, su valor
de inventario) y basándose en el principio de Pareto o regla 80/20, según la cual un
pequeño porcentaje de las referencias serán responsables de la mayor parte de los
objetivos globales del almacén (valor de inventario, facturación, beneficios, etc.).
3
CONTENIDO
RESUMEN ............................................................................................................................................ 3
INTRODUCCIÓN ................................................................................................................................... 7
CAPITULO 1......................................................................................................................................... 8
GENERALIDADES ................................................................................................................................ 8
1.1 DESCRIPCIÓN DE LA EMPRESA ................................................................................................ 9
1.2 PROBLEMAS A RESOLVER ...................................................................................................... 10
1.3 OBJETIVO GENERAL ............................................................................................................... 11
1.4 OBJETIVO ESPECIFICO ........................................................................................................... 11
1.5 JUSTIFICACIÓN....................................................................................................................... 12
CAPITULO 2 ...................................................................................................................................... 13
MARCO TEÓRICO ............................................................................................................................ 13
2.1 La teoría de sistemas ......................................................................................................... 14
2.2 Indicadores de Control de Inventarios .............................................................................. 15
2.3 Logística Interna ................................................................................................................ 16
2.4 Logística Externa ............................................................................................................... 16
2.5 Perspectiva Financiera ...................................................................................................... 16
2.6 Rotación de inventarios .................................................................................................... 17
2.7 Plazo promedio de inventario ........................................................................................... 17
2.8 Índice de duración de Mercancías acumuladas x 100....................................................... 17
2.9 Exactitud del Inventario .................................................................................................... 18
2.10 Perspectiva interna ........................................................................................................... 18
2.11 Costos de inventarios ........................................................................................................ 19
2.12 Costos de almacenamiento ............................................................................................... 20
2.13 Costo de Almacenamiento por Unidad ............................................................................. 21
2.14 Costos directos de almacenaje.......................................................................................... 22
2.14.1 Costos fijos .................................................................................................................... 22
2.14.2 Costos indirectos de almacenaje............................................................................... 22
CAPITULO 3 ...................................................................................................................................... 23
MARCO APLICATIVO ....................................................................................................................... 23
3.1 DESARROLLO ......................................................................................................................... 24
3.1.1 Lenguaje o herramienta de programación.................................................................... 24
3.1.2 Tipos de lenguajes ......................................................................................................... 24
4
3.1.2.1 Mysql ......................................................................................................................... 24
3.1.2.2 Bootstrap ................................................................................................................... 25
3.1.2.3 Jquery ........................................................................................................................ 26
3.1.2.4 Php............................................................................................................................. 26
3.1.2.5 Java script .................................................................................................................. 29
3.1.2.6 AJAX ........................................................................................................................... 30
3.1.2.7 Html5 ......................................................................................................................... 31
3.1.3 Herramientas a utilizar .................................................................................................. 32
3.1.3.1 sublime text 3 ............................................................................................................ 32
3.2 Código de la base de datos ............................................................................................... 35
3.3 Home Page ........................................................................................................................ 41
3.4 Login de acceso ................................................................................................................. 42
3.5 Controladores de la base de datos.................................................................................... 43
3.6 Conexión del sistema a la base de datos .......................................................................... 45
CAPITULO 4 ...................................................................................................................................... 46
RESULTADO ...................................................................................................................................... 46
4.1 Base de datos. ................................................................................................................... 47
4.2 Crud (Inicio de código). ..................................................................................................... 49
4.3 Panel de control. ............................................................................................................... 50
4.4 Usuarios............................................................................................................................. 50
4.5 Categorías.......................................................................................................................... 52
4.6 Productos. ......................................................................................................................... 52
4.7 Media. ............................................................................................................................... 53
4.8 Salidas................................................................................................................................ 54
4.9 Reportes de Salidas. .......................................................................................................... 56
4.10 Login. ................................................................................................................................. 58
4.11 Perfil de usuarios. .............................................................................................................. 59
ANÁLISIS DE RESULTADOS................................................................................................................. 59
CONCLUSIÓN ..................................................................................................................................... 61
ANEXO ............................................................................................................................................... 62
FUENTES DE INFORMACIÓN.............................................................................................................. 64
LINK DEL LA APLICACIÓN FUNCIONANDO EN UN SERVIDOR EN TIEMPO REAL ............................... 64
5
ÍNDICE DE IMÁGENES
Ilustración 1: Logo de MySql. ............................................................................................................ 25
Ilustración 2: Logo de Bootstrap ....................................................................................................... 25
Ilustración 3: Logo de JQuery ............................................................................................................ 26
Ilustración 4: Logo de PHP................................................................................................................. 29
Ilustración 5: Logo de JavaScript ....................................................................................................... 30
Ilustración 6: Logo de Ajax ................................................................................................................ 31
Ilustración 7: Logo de Sublime Text .................................................................................................. 34
Ilustración 8: Panel de Control de Xampp ......................................................................................... 48
Ilustración 9: Terminal de Xampp ..................................................................................................... 48
Ilustración 10: Home Page del sistema ............................................................................................. 49
Ilustración 11: Pantalla de Inicio del sistema .................................................................................... 50
Ilustración 12: Panel de usuarios ...................................................................................................... 51
Ilustración 13: Formulario de registro de usuarios ........................................................................... 52
Ilustración 14: Panel de categorías ................................................................................................... 52
Ilustración 15: Formulario para registros de productos ................................................................... 53
Ilustración 16: Gestor de multimedia para los productos ................................................................ 53
Ilustración 17: Sistema de selección de archivos multimedia .......................................................... 54
Ilustración 18: Registro de Salidas .................................................................................................... 55
Ilustración 19: Generador de salidas frecuentes .............................................................................. 55
Ilustración 20: Botón editar salidas ................................................................................................... 56
Ilustración 21: Generador de reportes.............................................................................................. 56
Ilustración 22: Reportes por fechas .................................................................................................. 57
Ilustración 23: Formato unico de reporte generado ......................................................................... 58
Ilustración 24: Formulario de inicio de sesión .................................................................................. 58
Ilustración 25: Perfil principal del usuario......................................................................................... 59
Ilustración 26: Almacén 1 ………………….............................................................................................. 62
Ilustración 27: Almacén 2 …………………………………………………………………………………………………………….62
Ilustración 28: Almacén 3 ………………………… ..................................................................................... 63
Ilustración 29: Almacén 4 ……………… ................................................................................................ 63
6
INTRODUCCIÓN
7
CAPITULO 1
GENERALID
ADES
8
1.1 DESCRIPCIÓN DE LA EMPRESA
Organización Instalación no
de personal adecuada
10
1.3 OBJETIVO GENERAL
11
1.5 JUSTIFICACIÓN
12
CAPITULO 2
MARCO
TEÓRICO
13
2.1 La teoría de sistemas
Desde esta perspectiva holística, Johansen plantea que los fenómenos no sólo
deben ser estudiados a través de un enfoque reduccionista. También pueden ser
vistos en su totalidad. En otras palabras, existen fenómenos que sólo pueden ser
explicados tomando en cuenta el todo que los comprende y del que forman parte a
través de su interacción”. A su vez, la totalidad es una propiedad inherente de los
sistemas, “es decir, un sistema se comporta como un todo inseparable y coherente.
Sus diferentes partes están interrelacionadas de tal forma que un cambio en una de
ellas provoca un cambio en todas las demás y en el sistema total”.
Un “todo” puede ser, o una porción muy amplia del mundo, o un fenómeno muy
vago e impreciso (en alguna parte hay que poner los límites), de modo que aquí es
donde se prefiere al concepto de “sistema” –el cual es asumido como un conjunto
con partes reconocibles como interrelacionadas- como un concepto que permite el
14
análisis científico de cualquier “todo” que nos interese analizar o conocer en detalle
y con rigurosidad científica. […] Según Johansen, “ante la palabra sistema”, todos
los que la han definido están de acuerdo en que es un conjunto de partes
coordinadas y en interacción para alcanzar un conjunto de objetivos”.
15
2.3 Logística Interna
16
2.6 Rotación de inventarios
Proporción entre las ventas y las existencias promedio. Indica el número de veces
que el capital invertido se recupera a través de las ventas.
Inventario promedio
Rotación de inventarios
Proporción entre el inventario final y las ventas promedio del último período. Indica
cuantas veces dura el inventario que se tiene.
17
Gasto Promedio
Este enfoque se refiere a los procesos de negocios internos. Los objetivos y las
métricas basadas en esta perspectiva permiten a los ejecutivos saber cómo está
funcionando su negocio, y si sus productos o servicios están cumpliendo con los
requerimientos del cliente.
En los procesos internos debemos ser excelentes y cómo deben ser alineados con
la visión general de la empresa.
18
Esta perspectiva del proceso interno permite identificar los procesos críticos
internos en donde se debe ser excelente, entregando propuestas de valor que
atraerán y retendrán clientes.
Para alcanzar este objetivo se propone un análisis de los procesos internos desde
una perspectiva de negocio y una predeterminación de los procesos clave a través
de la cadena de valor.
Costos asociados a los stocks, en este ámbito deberán incluirse todos los
relacionados con Inventarios. Estos serían entre otros Costos de almacenamiento
deterioros, perdidas y degradación de mercancías almacenadas, entre ellos
también tenemos los de rupturas de Stock, en este caso cuentan con una
componente fundamental los Costos financieros de las existencias, todo esto ya
serán explicados más adelante. Cuando se quiere conocer, en su conjunto los
costos de inventarios habrá que tener en cuenta todos los conceptos indicados. Por
el contrario, cuando se precise calcular los costos, a los efectos de toma de
19
decisiones, (por ejemplo, para decidir tamaño óptimo del pedido) solamente habrá
que tener en cuenta los costos evitables (que podrán variar en cada caso
considerado), ya que los costos no evitables, por propia definición permanecerán a
fuera sea cual fuera la decisión tomada.
Por último, dentro del ámbito de los procesos existen numerosos e importantes
conceptos que deben imputarse a los Costos de las existencias ellos son: Costos
de compras, de lanzamiento de pedidos y de gestión de la actividad.
• Costos de adquisición
20
Los costos de almacenamiento, de mantenimiento o de posesión del Stock, incluyen
todos los costos directamente relacionados con la titularidad de los inventarios tales
como:
• Seguros
Sirve para comparar el costo por unidad almacenada y así decidir si es más rentable
subcontratar el servicio de almacenamiento o tenerlo propiamente.
21
2.14 Costos directos de almacenaje
Personal
Vigilancia y Seguridad
Mantenimiento del Almacén
Reparaciones del Almacén
Amortización del Almacén
Amortización de estanterías y otros equipos de almacenaje
Gastos financieros de inmovilización
Costos variables
Energía
Agua
Mantenimiento de Estanterías
Materiales de reposición
Reparaciones (relacionadas con almacenaje)
Deterioros, pérdidas y degradación de mercancías.
Gastos Financieros de Stock.
De administración y estructura
De formación y entrenamiento del personal
22
CAPITULO 3
MARCO
APLICATIVO
23
3.1 DESARROLLO
3.1.2.1 Mysql
Existen muchos tipos de bases de datos, desde un simple archivo hasta sistemas
relacionales orientados a objetos. MySQL, como base de datos relacional, utiliza
multiples tablas para almacenar y organizar la información. MySQL fue escrito en C
y C++ y destaca por su gran adaptación a diferentes entornos de desarrollo,
permitiendo su interactuación con los lenguajes de programación más utilizados
como PHP, Perl y Java y su integración en distintos sistemas operativos.
24
También es muy destacable, la condición de open source de MySQL, que hace que
su utilización sea gratuita e incluso se pueda modificar con total libertad, pudiendo
descargar su código fuente. Esto ha favorecido muy positivamente en su desarrollo
y continuas actualizaciones, para hacer de MySQL una de las herramientas más
utilizadas por los programadores orientados a Internet.
3.1.2.2 Bootstrap
25
ofrece es que permite la creación de sitios y apps 100% adaptables a cualquier tipo
de dispositivo. Una cuestión de suma importancia teniendo en cuenta que a día de
hoy son cada vez más los usuarios que acceden a Internet a través de sus teléfonos
y tabletas.
3.1.2.3 Jquery
jQuery permite manipular elementos del DOM (textos, imágenes, enlaces, etc.) ,
cambiar el diseño CSS o realizar peticiones Ajax utilizando instrucciones simples, a
través de un código muy conciso y sencillo.
3.1.2.4 Php
26
PHP es una alternativa ampliamente utilizada, gratuita y eficiente para competidores
como ASP de Microsoft.
Fue uno de los primeros lenguajes de programación del lado del servidor que se
podían incorporar directamente en un documento HTML en lugar de llamar a un
archivo externo que procese los datos. El código es interpretado por un servidor
web con un módulo de procesador de PHP que genera el texto plano en formato
UTF-8, ampliamente reconocido por el estándar HTML, dando como resultado, en
los exploradores, una salida al usuario perfectamente entendible.
PHP ha evolucionado por lo que ahora incluye también una interfaz de línea de
comandos que puede ser usada en aplicaciones gráficas independientes. Puede
ser usado en la mayoría de los servidores web al igual que en muchos sistemas
operativos y plataformas sin ningún costo.
Características
27
Es considerado un lenguaje fácil de aprender, ya que en su desarrollo se
simplificaron distintas especificaciones, como es el caso de la definición de
las variables primitivas, ejemplo que se hace evidente en el uso de php
arrays.
Es libre, por lo que se presenta como una alternativa de fácil acceso para
todos.
28
la lógica de control y la interfaz de usuario en tres componentes
independientes.
Debido a su flexibilidad ha tenido una gran acogida como lenguaje base para
las aplicaciones WEB de manejo de contenido, y es su uso principal.
1) Es Liviano.
2) Multiplataforma, ya que se puede utilizar en Windows, Linux o Mac o en el
navegador de tu preferencia.
29
3) Es Imperativo y estructurado, mediante un conjunto de instrucciones indica
al computador qué tarea debe realizar.
4) Prototipado, debido a que usa prototipos en vez de clases para el uso de
herencia.
5) Orientado a objetos y eventos.
6) Es Interpretado, no se compila para poder ejecutarse.
Estas son las características que hacen de javascript un lenguaje que te permite
desarrollar aplicaciones gigantes y potentes, como lo es: google doc, facebook,
twitter e incluso capaz de ejecutarse en el servidor como un servidor Web muy
rápido, gracias a nodejs.
3.1.2.6 AJAX
30
JavaScript es un lenguaje de programación (scripting language) en el que
normalmente se efectúan las funciones de llamada de Ajax mientras que el acceso
a los datos se realiza mediante XMLHttpRequest, objeto disponible en los
navegadores actuales. En cualquier caso, no es necesario que el contenido
asíncrono esté formateado en XML
3.1.2.7 Html5
HTML es un lenguaje que interpreta el navegador web para mostrar los sitios o
aplicaciones web tal y como estamos acostumbrados. En la Imagen 1 verás cómo
el navegador nos muestra un sitio web y en la Imagen 2 verás cómo se ve en
lenguaje HTML.
31
3.1.3 Herramientas a utilizar
Características
Edición Dividida: Puede editar los archivos uno al lado del otro o dos
ubicaciones en el mismo archivo. También tantas filas y columnas como
desee, aprovechando el máximo rendimiento de su monitor de pantalla
ancha, o empleando varios monitores con varias ventanas y utilizando
múltiples divisiones en cada ventana.
32
Multi Cursor: Crea cursores con los que podemos escribir texto de forma
arbitraria en diferentes posiciones del archivo.
33
Coloreado y envoltura de sintaxis: Si se escribe en un lenguaje de
programación o marcado, resalta las expresiones propias de la sintaxis de
ese lenguaje para facilitar su lectura.
34
3.2 Código de la base de datos
--
-- Volcado de datos para la tabla `categories`
--
-- --------------------------------------------------------
--
-- Estructura de tabla para la tabla `media`
--
--
-- Volcado de datos para la tabla `media`
--
-- --------------------------------------------------------
--
-- Estructura de tabla para la tabla `products`
--
35
`media_id` int(11) DEFAULT '0',
`date` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
--
-- Volcado de datos para la tabla `products`
--
-- --------------------------------------------------------
--
-- Estructura de tabla para la tabla `sales`
--
-- --------------------------------------------------------
--
-- Estructura de tabla para la tabla `users`
--
--
-- Volcado de datos para la tabla `users`
36
--
-- --------------------------------------------------------
--
-- Estructura de tabla para la tabla `user_groups`
--
--
-- Volcado de datos para la tabla `user_groups`
--
--
-- Índices para tablas volcadas
--
--
-- Indices de la tabla `categories`
--
ALTER TABLE `categories`
ADD PRIMARY KEY (`id`),
ADD UNIQUE KEY `name` (`name`);
37
--
-- Indices de la tabla `media`
--
ALTER TABLE `media`
ADD PRIMARY KEY (`id`),
ADD KEY `id` (`id`);
--
-- Indices de la tabla `products`
--
ALTER TABLE `products`
ADD PRIMARY KEY (`id`),
ADD UNIQUE KEY `name` (`name`),
ADD KEY `categorie_id` (`categorie_id`),
ADD KEY `media_id` (`media_id`);
--
-- Indices de la tabla `sales`
--
ALTER TABLE `sales`
ADD PRIMARY KEY (`id`),
ADD KEY `product_id` (`product_id`);
--
-- Indices de la tabla `users`
--
ALTER TABLE `users`
ADD PRIMARY KEY (`id`),
ADD UNIQUE KEY `username` (`username`),
ADD KEY `user_level` (`user_level`);
--
-- Indices de la tabla `user_groups`
--
ALTER TABLE `user_groups`
ADD PRIMARY KEY (`id`),
ADD UNIQUE KEY `group_level` (`group_level`);
--
-- AUTO_INCREMENT de las tablas volcadas
--
--
-- AUTO_INCREMENT de la tabla `categories`
--
ALTER TABLE `categories`
38
MODIFY `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;
--
-- AUTO_INCREMENT de la tabla `media`
--
ALTER TABLE `media`
MODIFY `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;
--
-- AUTO_INCREMENT de la tabla `products`
--
ALTER TABLE `products`
MODIFY `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;
--
-- AUTO_INCREMENT de la tabla `sales`
--
ALTER TABLE `sales`
MODIFY `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT de la tabla `users`
--
ALTER TABLE `users`
MODIFY `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
AUTO_INCREMENT=10;
--
-- AUTO_INCREMENT de la tabla `user_groups`
--
ALTER TABLE `user_groups`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;
--
-- Restricciones para tablas volcadas
--
--
-- Filtros para la tabla `products`
--
ALTER TABLE `products`
ADD CONSTRAINT `FK_products` FOREIGN KEY (`categorie_id`) REFERENCES
`categories` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;
--
-- Filtros para la tabla `sales`
--
ALTER TABLE `sales`
ADD CONSTRAINT `SK` FOREIGN KEY (`product_id`) REFERENCES `products`
(`id`) ON DELETE CASCADE ON UPDATE CASCADE;
--
39
-- Filtros para la tabla `users`
--
ALTER TABLE `users`
ADD CONSTRAINT `FK_user` FOREIGN KEY (`user_level`) REFERENCES
`user_groups` (`group_level`) ON DELETE CASCADE ON UPDATE CASCADE;
40
3.3 Home Page
<?php
$page_title = 'Home Page';
require_once('includes/load.php');
if (!$session->isUserLoggedIn(true)) { redirect('index.php', false);}
?>
<?php include_once('layouts/header.php'); ?>
<div class="row">
<div class="col-md-12">
<?php echo display_msg($msg); ?>
</div>
<div class="col-md-12">
<div class="panel">
<div class="jumbotron text-center"> <br><br>
<img src="img/logo-royal.jpg"><br><br>
<!-- <h1>SUNSET ROYAL BEACH RESORT</h1> -->
</div>
</div>
</div>
</div>
<?php include_once('layouts/footer.php'); ?>
41
3.4 Login de acceso
<?php
ob_start();
require_once('includes/load.php');
if($session->isUserLoggedIn(true)) { redirect('home.php', false);}
?>
<?php include_once('layouts/header.php'); ?>
<div class="login-page">
<div class="text-center">
<h1>Bienvenido</h1>
<p>Iniciar sesión </p>
</div>
<?php echo display_msg($msg); ?>
<form method="post" action="auth.php" class="clearfix">
<div class="form-group">
<label for="username" class="control-label">Usario</label>
<input type="name" class="form-control" name="username"
placeholder="Usario">
</div>
<div class="form-group">
<label for="Password" class="control-
label">Contraseña</label>
<input type="password" name= "password" class="form-control"
placeholder="Contraseña">
</div>
<div class="form-group">
<button type="submit" class="btn btn-info pull-
right">Entrar</button>
</div>
</form><br>
</div>
<?php include_once('layouts/footer.php'); ?>
42
3.5 Controladores de la base de datos
<?php
require_once(LIB_PATH_INC.DS."config.php");
class MySqli_DB {
private $con;
public $query_id;
function __construct() {
$this->db_connect();
}
/*--------------------------------------------------------------*/
/* Function for Open database connection
/*--------------------------------------------------------------*/
public function db_connect()
{
$this->con = mysqli_connect(DB_HOST,DB_USER,DB_PASS);
if(!$this->con)
{
die(" Database connection failed:". mysqli_connect_error());
} else {
$select_db = $this->con->select_db(DB_NAME);
if(!$select_db)
{
die("Failed to Select Database". mysqli_connect_error());
}
}
}
/*--------------------------------------------------------------*/
/* Function for Close database connection
/*--------------------------------------------------------------*/
43
public function query($sql)
{
if (trim($sql != "")) {
$this->query_id = $this->con->query($sql);
}
if (!$this->query_id)
// only for Develope mode
die("Error en esta consulta :<pre> " . $sql ."</pre>");
// For production mode
// die("Error on Query");
return $this->query_id;
/*--------------------------------------------------------------*/
/* Function for Query Helper
/*--------------------------------------------------------------*/
public function fetch_array($statement)
{
return mysqli_fetch_array($statement);
}
public function fetch_object($statement)
{
return mysqli_fetch_object($statement);
}
public function fetch_assoc($statement)
{
return mysqli_fetch_assoc($statement);
}
public function num_rows($statement)
{
return mysqli_num_rows($statement);
}
public function insert_id()
{
return mysqli_insert_id($this->con);
}
public function affected_rows()
{
return mysqli_affected_rows($this->con);
}
/*--------------------------------------------------------------*/
/* Function for Remove escapes special
/* characters in a string for use in an SQL statement
44
/*--------------------------------------------------------------*/
public function escape($str){
return $this->con->real_escape_string($str);
}
/*--------------------------------------------------------------*/
/* Function for while loop
/*--------------------------------------------------------------*/
public function while_loop($loop){
global $db;
$results = array();
while ($result = $this->fetch_array($loop)) {
$results[] = $result;
}
return $results;
}
?>
?>
45
CAPITULO 4
RESULTADO
46
Al dar ideas y propuestas de solución para la problemática de manejo de inventarios,
se puede realizar una base de datos que será almacenada en un servidor privado y
ensamblada a una red en el cual se podrá acceder desde las plataformas de
exploración como son Google Chrome, Mozilla Firefox, Explorer Edge y otros,
utilizando lenguaje de programación como .NET, ASP.NET, AppleScript, APL y
Python. Algo importante que debemos tener en cuenta es que todo se puede
resolver con programación, solo necesitas implementar tu imaginación para crear
un algoritmo que resuelva tu problemática.
Para almacenar información y datos de forma segura y confiable, se debe crear una
base de datos que funcione de forma local, que en un futuro puede ser en línea para
así tener acceso inmediato desde cualquier parte y en cualquier dispositivo.
4.1 Base de datos. La creación de una base de datos se debe realizar de forma
eficiente, para ello se utilizará MySql, que a través de la plataforma de xampp
puede ser manipulada desde nuestro ordenador.
47
Ilustración 8: Panel de Control de Xampp
48
Se visualizan las tablas de forma ordenada donde se clasifica nuestra
información dependiendo de cómo queramos utilizarlo, por ejemplo, una
tabla de productos, clasificados por marca o por tipo, una de sucursales (esto
puede ser muy valioso ya que se puede utilizar en todas las sucursales
existentes), una tabla más para los insumos a solicitar y los que ya estén
saliendo del almacén, otra para elaborar los reportes que cantidades y el más
importante seria de los usuarios, sobre las personas que tendrían acceso al
sistema.
4.2 Crud (Inicio de código). Una vez creada la base de datos se debe iniciar el
desarrollo visual del sistema, en la terminal de Sublime Text, para desarrollo se
crea un Crud de aplicación, la cual nos ayudara a mantener un orden de código
y la lectura correcta de cómo está funcionando la aplicación.
La vista principal de la pantalla después de haberse logueado sería la siguiente,
en esta vista se puede apreciar los diferentes apartados a los que tendrán
acceso los administradores del almacén, también tendrían acceso a un apartado
personal donde podrán cambiar su contraseña y nombre del usuario y como
imagen principal el logotipo de la empresa.
49
4.3 Panel de control. Para poder visualizar un resumen del estado actual de los
suministros, en el apartado “Panel de Control” generaremos un estado de
recuperación de datos, los cuales se harán automáticamente después de cada
operación que se realice.
Se podrá visualizar la cantidad de usuarios que están dados de alta al sistema,
todas las categorías de productos que se han registrados, cantidad de productos
que ya estén en la base de datos y el contador de salidas de productos.
Así también se mostrará el producto que más se solicita, los últimos productos
de salida y los productos recién agregados al inventario.
50
se restringirá el sistema por completo y solo podrán ingresar para registrar
nuevas salidas de productos del almacén.
51
Ilustración 13: Formulario de registro de usuarios
4.6 Productos. Después de haber registrado las categorías, podremos registrar los
productos y agregarlos a las categorías correspondientes. Los datos requeridos;
52
nombre del producto, cantidad y precio, así como seleccionar una categoría y
opcional el agregarle su respectiva imagen.
4.7 Media. El apartado de Media, permite subir imágenes al sistema, las cuales
pueden ser usados al momento de registras los productos, para así tener una
vista previa del mismo durante la navegación dentro del inventario.
53
Las imágenes serán seleccionadas desde el explorador de archivos de la
computadora donde se esté navegando.
4.8 Salidas. Las salidas, son los pedidos que se realizan internamente para solicitar
productos del almacén, estas se registran como gastos que son los productos
totales usados por la empresa a través de estas salidas se van generando
reportes diarios, por mes e intervalos de fechas que se pueden seleccionar por
el usuario.
54
Ilustración 18: Registro de Salidas
Para agregar una nueva salida, utilizamos un buscador que ayudan a filtrar
los productos, una vez seleccionado el producto deseado se podrá modificar
la cantidad deseada, el precio y otros datos que ahí aparecen.
55
Ilustración 20: Botón editar salidas
56
Para imprimir un reporte se deberá seleccionar el apartado de “Salidas por
fechas”, la cual nos permitirá seleccionar el intervalo de fechas de las cuales
se necesitan los datos.
57
Ilustración 23: Formato unico de reporte generado
4.10 Login. Teniendo en cuenta que los datos son muy valiosos siempre hay que
protegerlo cuando se trata de trabajar en un sistema virtual debido a la
delincuencia informática que hoy en día se vive, para ello se genera un login en
el cual se tendrá que ingresar las credenciales personales de cada usuario.
58
4.11 Perfil de usuarios. Una vez todos los usuarios estén registrados y asignados
a sus respectivos niveles tendrán un perfil personal donde podrán modificar sus
credenciales de acceso.
ANÁLISIS DE RESULTADOS
Durante el desarrollo del proyecto se realizó una investigación sobre los sistemas de
manejo de inventarios. Se eligió realizar el sistema en el lenguaje de programación PHP y
JavaScript utilizando MySql como principal para la base de datos.
59
La principal característica del sistema es que se diseñó para que cualquier usuario sin
ningún conocimiento de programación pueda utilizarlo.
Reducción de gastos.
Conocimiento de artículos que no deben faltar en el almacén.
Control sobre las existencias del almacén.
Conocimiento del comportamiento de los gastos por determinado periodo de
tiempo.
60
CONCLUSIÓN
Una de las partes más complejas respecto al proyecto fue, la creación de manuales
los cuales ayudarían a los usuarios a para logran que entiendan el funcionamiento
de la aplicación, además como es un programa que funciona dentro de un servidor,
se requiere mucha seguridad en el aspecto que los datos ahí almacenados deben
estar protegidos de hackers y/o crackers. Para ello se deberá crear un manual
técnico de desarrollo el cual permitirá crear actualizaciones de la aplicación y
corregir errores que se presente durante su funcionamiento.
61
ANEXO
62
Después de la residencia profesional
63
FUENTES DE INFORMACIÓN
https://www.gestiopolis.com/que-es-inventario-tipos-utilidad-contabilizacion-y-valuacion/
http://www.atoxgrupo.com/website/noticias/clasificacion-inventarios-abc
https://www.ecured.cu/Sistemas_de_control_de_inventarios
https://hipodec.up.edu.mx/blog/que-es-control-inventario
https://www.php.net/manual/es/intro-whatis.php
https://developer.mozilla.org/es/docs/Web/JavaScript
https://www.mysql.com/
https://mex.000webhost.com/
https://hotel-sunset.000webhostapp.com/index.php
64