Está en la página 1de 15

UNIVERSIDAD NACIONAL DE

INGENIERA
FACULTAD DE INGENIERA INDUSTRIAL Y DE SISTEMAS









PROYECTO DE SISTEMA MANTENIMIENTO PC-INNOVA

CURSO : LENGUAJE DE PROGRAMACIN ESTRUCTURADO (ST-202)


SECCIN : W

ALUMNO : FLORES VALLEJOS LUIS ANGEL

CODIGO : 20101037A

PROFESOR : ING MSC HILARIO ARADIEL CASTAEDA







INTRODUCCIN

Cuando una empresa empieza su camino por la grandeza, se inicia
con la visin del empresario, que es basada en toda su experiencia y
conocimiento. En mi caso de estudio, es una microempresa que
vende productos Electrnicos (laptops, mouse, teclado, monitor,
etc.), esta tiene registro manual, se podra decir que no tiene un
sistema compacto de archivo que pueda manejar, y que este le
brinde informacin.
Pensando en ello, este programa ha sido diseado en estructuras
dentro de archivos en el lenguaje C++, con el programa
CODE:BLOCK(con libreras de BORLAND C++). Entre cada estructura
hay campos en comn con los cuales es posible relacionar archivos y
obtener lo que son facturas y dems, con la lectura del presente se
podr entender mucho mejor el funcionamiento y la estructura del
programa.













OBJETIVOS

- Crear un Sistema compacto para el manejo de registros.
- Manejar informacin de la empresa.
- Hacer mantenimiento del sistema creado para la empresa.
- Uso de subprogramas para facilitar la lectura.
- Uso de archivos para guardar, editar, eliminar informacin deseada.
- Satisfacer las necesidades del negocio con este programa.

















SITUACION ACTUAL

NOMBRE DE LA EMPRESA : INNOVA PC S.C.R.L





Caractersticas Relevantes:
*** No Almacenan datos del cliente.(En la factura solo te piden
nombre, mas no apellido, solo les interesa vender el producto y
registrarlo en su libro.)







*** Los Vendedores marcan tarjeta a la hora de ingreso. Si llegan 15
minutos tarde de la hora establecidos se le descuenta. No se tiene un
registro de ello.

*** No hay Registro virtual de cdigo de producto, ni de venta.
*** LAS ESTADISTICAS DE VENTAS SON MANUALES.
*local en Wilson.













ESTRUCTURA INTERNA

ABSTRACCIN:


Estructuras(Registros) usadas:

struct CLIENTE
{
int codigo; //cdigo nico de
cliente
char nom[40]; //nombre de cliente
int ruc; //ruc de cliente
char dir[40]; //direccin del cliente
};


struct PRODUCTOS
{
int codigo; //cdigo nico de producto
char nom[40]; //Nombre
int cant;
float preccomp; //Precio de compra
float precvent; //precio de venta
};




struct PROVEEDOR
{
int codigo; //Cdigo nico por
proveedor
char nom[40]; //Nombre del
proveedor
int ruc; //R.U.C del proveedor
};
struct PEDIDOS
{
int codprov; //Cdigo del proveedor
int codprod; //Cdigo del producto
int cant; //Cantidad pedida
float gasto; //gasto por la compra
};


struct VENDEDOR
{
int codigo; //Cdigo nico por
Vendedor
char nom[40]; //Nombre del
vendedor
float com; //Comisin acumulada
};

Struct HoraTarde
{
Int codven; // codigo del Vendedor
intr HoraIngreso;// hora de llegada

}

struct VENTAS
{
int codcli; //Cdigo del cliente
int codprod; //Cdigo del producto
int codven; //Cdigo del vendedor
int cant; // Cantidad que fue vendida
float gan; // Ganancia por la venta
};














MODELADO DE DATOS















En las structuras CLIENTE, PRODUCTOS, PROVEEDOR, VENDEDOR,
tenemos al campo del cdigo(T_nombre_ID), que vienen a ser las llaves
primarias. Ya que mediante este podemos identificar a cada estructura
para luego poder extraer los datos de los dems campos, ya sea para
modificarlos o simplemente mostrarlos.
Las otras estructuras no es necesario un cdigo principal ya que no
se necesita para este modelo.





PRINCIPALES FUNCIONES
void caratula();
void acceso();
void loading();
int MenuGENERAL();
int MCLIENTE();
int MPRODUCTOS();
int MVENDEDOR();
int MPROVEEDOR();
int MPEDIDOS();
int MVENTAS();
int MenuCLIENTE();
void IngresarRegCLIENTE();
void BuscarxCodCLIENTE();
void ActualizacionxCodCLIENTE();
void EliminarxcodCliente();
void MostrarRegCLIENTE();
int MenuPRODUCTOS();
void IngresarRegPRODUCTOS();
void BuscarxCodPRODUCTOS();
void ActualizacionxCodPRODUCTOS();
void EliminarxcodPRODUCTOS();
void MostrarRegPRODUCTOS();
int MenuVENDEDOR();
void IngresarRegVENDEDOR();
void BuscarxCodVENDEDOR();
void ActualizacionxCodVENDEDOR();
void EliminarxcodVENDEDOR();
void MostrarRegVENDEDOR();
int MenuPROVEEDOR();
void IngresarRegPROVEEDOR();
void BuscarxCodPROVEEDOR();
void ActualizacionxCodPROVEEDOR();
void EliminarxcodPROVEEDOR();
void MostrarRegPROVEEDOR();
int MenuPEDIDOS();
void IngresarRegPEDIDOS();
void MostrarRegPEDIDOS();
void ActDecantidadP(int Codigo,int cant);
int MenuVENTAS();
void IngresarRegVENTAS();
void MostrarRegVENTAS();
void ActDecantidadV(int Codigo,int cant);
void ActDeComision(int Codigo,float din);








PANTALLA DE ACCESO PARA EL VENDEDOR

Ingreso de Hora de empleado
Aqu el empleado ingresa su hora de ingreso, se almacena este dato.
(Es para obtener una data del trabajador, si es puntual se le premia,
sino lo es, se le descuenta )






Men general

En este men podemos acceder al llenado de todos los archivos

Estructura Archivo creado
struct CLIENTE Clientes.dat
struct PRODUCTOS Productos.dat
struct VENDEDOR Vendedores.dat
struct PROVEEDOR Proveedores.dat
struct VENTAS VENTAS.dat
struct PEDIDOS Pedidos.dat
Struct HoraTarde Hora.dat

Men cliente (Void ingreso, buscar,actualizar, eliminar , Mostrar)

MENU PRODUCTO (Void ingreso, buscar,actualizar, eliminar ,
Mostrar)

MENU VENDEDORES (Void ingreso, buscar,actualizar, eliminar ,
Mostrar REgistro,Mostrar estado de Tardanza)

MENU PROVEEDORES (Void ingreso, buscar,actualizar, eliminar ,
Mostrar REgistro,Mostrar estado de Tardanza)

MENU PROVEEDORES (Void ingreso, Mostrar REgistro)

MENU VENTA (Void ingreso, Mostrar REgistro)









POSIBLES MEJORAS

- El programa funciona correctamente, pero no tiene una interfaz agradable para
el usuario final, se puede mejorar en ese sentido utilizando programacin
orientada a objetos u otro tipo de programacin avanzada.

CONCLUSIONES

- Con el correcto uso de archivos en el lenguaje C++ se puede crear un programa
eficiente en la ayuda de una mejor administracin y control de algn negocio.
- El uso del lenguaje modular reduce considerablemente el uso de memoria en la
creacin de algn algoritmo y vuelve mucho ms fcil su entendimiento.
- Son importantes las diferentes libreras y funciones para un buen y correcto uso de
archivos del tipo secuencial, el ms usado es el de fin de archivo:
<var_arch>.eof( ).