llf ~..;'':f'''~'''' '!ii!¡'miah...
TRANSCRIPT
~.".;'':f'''~''''_'!Ii!¡'M"IAh_l'''''~3M.~~~lIlIilwt~~WlimóI.~ral!lll--~llkl'lelllU'lUlilll1lBm_~J
llf . .; '.'1~ .
f~l
I~ UNIVERSIDAD DE CIENCIAS COMERCIALESI Can"era ; Ingeniería en Sistemasl·
fl:.
TRABAJO MONO(;RAFICO
~, PROP'JES1"A DEL SI$TEMA DE CONTRQL. DIE1~ MNVEt\BTARIO ~»ARA LA EMPRESA DIFERCAL 'SOlA."I
AUTOR:
I. I
!Ii
I'1 '
IJ,\;~l ..
BR. MAYCOLL JOSE MEDINA MORENO
TUTORIn9. FAUSTO QUIÑONEZ
ASESOR METODOLOGICOLic.•JORGE PRADO DElGADILLO
UNIVERSIDAD DE CIENCIAS COMERCIALESCarrera : logenieria en SIstemas
TRABAJO MONOGRAFICO
"PROPUESTA DEL SISTEMA DE CONTROL DEINVENTARIO PARA LA EMPRESA DIFERCAL S.A."
AUTOR:
BR. MAYCOLL JOSE MEDINA MORENO
TUTORIn9. FAUSTO QUIÑONEZ
ASESOR METODOLOGICOLic. JORGE PRADO DELGADILLO
DICIEMBRE DEL 2003
SISTEMA DE INVENTARIO "SIM"
INDICE
L INTRODUCCION.................•.......................................................................................................... 1
IL ANTECEDENTES 4
IIL JUSTIFICA CION. 5
IV. OBJETIVOS 7
OBJETIVO GENERAL: 7
OBJETIVOS ESPECíFiCOS: 7
JII. MARCO METODOLOGICO 8
1 FASES DE DEFINiCiÓN 8I 1 ANALISIS DEL SISTEMA (REQUERIMIENTOS) 8
1 1 1 PLANIFICACION ESTRATEGICA DE LA INFORMACION 111 1 2 Análisis del Area del Negocio 121 1 3 DISEJiJO DEL SISTEMA DEL NEGOCIO 24
I 2 PLANIFICACIÓN DEL PROYECTO 311 2 1 AMBITO DEL SOF1WARE. 311 2.2 CALCULO DE LA VIABILIDAD (ESTUDIO DE FACTIBILIDAD) 34
1 221 FACTIBILIDAD OPERATIVA 341 222 FACTIBILIDAD TÉCNICA 351 22 3 FACTIBILIDAD FINANCIERA 36
1 23 GESTION DEL PROYECTO 371 2 3 1 PERSONAL 371 2.32 PROBLEMA 381 2 3 3 PROCESO 421 2.3 4 PROYECTO 42
1 2 4 ESTIMACIONES 431 2 5 ANAUSIS DE RIESGOS 441 2 6 PLANIFICACION TEMPORAL 471 27 GESTION DE LA CONFIGURACION 47
2 FASES DE DESARROLLO 482 1 DISEÑO.. 48
2 1 1 DISEJiJO CONCEPTUAL .. ·,82 1 2 DI5EJiJo LOGICO 492 1 3 DI5EJiJO FíSICO (COMPONENTES) 512 1 4 CODIFICACION 52
3. CONCL USIONES 190
4. RECOMENDACIONES 191
5. B lB L I O G R A F I A 191
6. A N E X O S 194~
UNIVERSIDAD DE CIENCIAS COMERCIALES(1) .
Vedícatoria
J:A:J8SUSJ:A nuestra fe e inspírací7Ln de todos los dttasé
:A Lícé :Jorge :Jesus Prado:A nuestros padresA.. eternos compaJ'(,.erosé
Mi Familia.
.:Jtgradecímíentos
A Jorge Jesús Prado Delgadillo por su incondicionalapoyo y paciencia, mi madre, María Auxiliadora MorenoAmaya, por creer en mí, todos estos años, la pacienciaque han demostrado tener y el apoyo que me hanbrindado de manera incondicional.
A Dios, creador nuestro
SISTEMA DE INVENTARIO "SIM"
1. INTRODUCCION
Actualmente las empresas han reconocido la importancia que tiene el poseer una
organización adecuada de los recursos básicos, tales como Producción, Comercialización y
Sistemas de información que pueden llegar a ser elementos importantes que determinen en
un momento dado el éxito o fracaso de una empresa o negocio.
Con la disponibilidad actual de las computadoras se ha generado un incremento y
diversificación de la información La información que se genera por computadora difiere de
diversas formas de aquella que se obtiene manualmente; a menudo se tiene una mayor
Confiabilidad de las primeras La información que genera la computadora puede llegar a
multiplicar a grandes velocidades y con frecuencia, se trata con menos escepticismo que la
obtenida por otros medios
Con el fin de lograr la máxima utilidad de la información, está se debe administrar de manera
correcta Los directivos deben de comprender que existen costos que se asocian a la
producción, distribución, seguridad, almacenamiento y recuperación de la información
A lo largo de la historia el hombre ha necesitado manejar y transmitir información, para ello
ha estado creando máquinas y métodos
La informática surge como la ciencia encargada del estudio y desarrollo de estas máquinas y
rM¡io¡Jos que constituyen la tecnología de información
UNIVERSIDAD DE CIENCIAS COMERCIALES
•i~.¡!t~ ~ Ir
SISTEMA DE INVENTARIO "SIM"
La tecnologla de información abarca desde artefactos como papel, plumas, libros, cámaras,
videograbadoras, computadoras, etcétera, hasta herramientas simbólicas como el lenguaje
escrito, slmbolos matemáticos, modelos qurmicos, etcétera.
Sin las computadoras y sus métodos no seriamos capaces de visualizar nuestro ambiente,
entenderlo ni controlarlo en forma creativa en el nivel que lo vivimos actualmente.
Los continuos avances en tecnologias de información tienen un fuerte impacto sobre la forma
en que las personas viven, pues facilita el trabajo en equipo y la comunicación a distancia
La tecnologla de información ha hecho que las personas sean más eficientes Facilita el
trabajo en equipo y la comunicación a distancia
Es por ello que las empresas buscan como tener sus registros en forma Automatizada
El término Sistemas se aplica generalmente al grupo de acciones, personal y procedimientos
empleados para dar apoyo al proceso de datos En una organzaci6n, el conjunto de
procedimientos, formas y equipos empleados para manejar los datos de la nómina se le
denomina Sistema de Nomina. De manera similar, un Sistema de Inventario representa a
todas las personas, formas, máquinas y procedimientos utilizado para procesar los datos de
inventarios. En general, un Sistema es un conjunto de actividades relacionadas Puede no
involucrar computadoras
UNIVERSIDAD DE CIENCIAS COMERCIALES 2
SISTEMA DE INVENTARIO "SIM"
Los Sistemas de Información (SI) definen como deben manejarse los datos Los datos de
entrada, que llegan al Sistema de varias maneras, serán procesados metódicamente a través
de una secuencia de pasos organizados
Los procedimientos para el proceso de datos y la emisión de la información resultante serán
dictados por el análista, atendiendo peticiones de los directores de la organización
Los Sistemas pueden diseñarse, por ejemplo, para que automaticamente se hagan pedidos
para un inventario, se monitoreen las futuras ganancias de la corporación o se carguen las
ventas realizadas con tarjetas de crédito o archivos en línea
Al escrutinio cuidadoso de todos los aspectos de un Sistema, empleando una investigación
metódica y paso por paso se le denomina Análisis y Diseño de Sistemas El analista debe
señalar el problema y luego sugerir una solución. Como a menudo existen muchas
soluciones alternativas, el analista debe recomendar la más justificable económicamente
UNIVERSIDAD DE CIENCIAS COMERCIALES 3
SISTEMA DE INVENTARIO "SIM"
11. ANTECEDENTES
La Distribuidora Fernández Caldera S.A (DIFERCAL) creada en el año de 1999, es una
empresa que comercializa productos farmacéuticos a las farmacias, centro de salud,
hospitales, etcétera, con el propósito de obtener divisas Es una empresa que cuenta con
todos los requerimientos modernos, incluyendo equipos de computación, aparentemente un
Sistema Automatizado de Computación ayudaría a agilizar el trabajo del inventario yI
mantener organizada toda la información referente a ellos.
La Empresa ha crecido rápidamente en un plazo muy corto, lo que significa gran influencia
de público.
La Empresa viene experimentando perdidas económicas debido al descontrol del y manejo
de los productos, una mala organización y sobre todo, reportes no actualizados y de muy
poca credibilidad
Actualmente debido a la diversificación de sus productos se hace necesario un control más
eficientes sobre los mismos, aunque cuenta con tres equipos de cómputos estos no están
siendo utilizados de forma optima como herramienta que ayude en esta área
La dirección de la empresa considera necesario actualizar el control de los productos de
inventario, para lograr mejores informes y control sobre los mismos.
UNIVERSIDAD DE CIENCIAS COMERCIALES 4
SISTEMA DE INVENTARIO "SIM"
111. JUSTIFICACION
Automatizar los servicios operativos
La Empresa desea implementar un Sistema Automatizado que les permita llevar un control
correcto del inventario de sus productos con el propósito de mejorar la atención e imagen con
respecto' a su clientela, mejorando la exactitud y consistencia de la información y
aumentando la seguridad de los datos más importantes
Con el Sistema Automatizado que pretenden implementar, permitirá mejorar la organización
de sus productos y de minimizar las perdidas económicas que afecten en este rubro a la
empresa.
Además la implementación del Sistema Automatizado del inventario de productos médicos
lograra hacer más ágil la información sobre el estado actual de cada uno de los
medicamentos, liberando al personal encargado de los mismos dedicar más tiempo al
análisis y comercialización de los mismos, puesto que el control logrará diversificar nuevas
tareas en ese campo, ampliando la comunicación de cliente como empleado y facilitar la
integración de funciones individuales
Proporcionar información de apoyo al servicio de toma de decisiones
UNIVERSIDAD DE CffiNCIAS COMERCIALES 5
•
SISTEMA DE INVENTARIO "SlM"
Facilitar el logro de ventajas competitivas
La Empresa desea mejorar las capacidades, aumentando la velocidad de procesamiento, el
manejo de un volumen de transacciones cada vez mayor y recuperar con rapidez la
información
Disminuir los costos de operación por medio del control de los mismos mediante la vigilancia
de los costosI
Se pretende asegurar su clientela, formar bases para nuevos productos, dejar fuera a los
competidores y mejorar acuerdos con sus proveedores mediante el Sistema Automatizado.
UNIVERSIDAD DE CIENCIAS COMERCIALES 6
SISTEMA DE INVENTARIO "SIM"
IV. OBJETIVOS
OBJETIVO GENERAL:
Implementación de un Sistema de Inventario que ayude al control de medicamentos para la
solución de problemas
OBJETIVOS ESPECíFICOS:
Identificar los elementos de información de inventario por medio de las diferentes técnicas
de recolección de datos que permitan elaborar el conjunto de elementos del sistema
Resolver los distintos problemas que enfrenta la Empresa con el Sistema de Inventario
Diseñar formas y pantallas de datos del sistema
Presentar informes de inventario de acuerdo a las necesidades especificas
UNIVERSIDAD DE CIENCIAS COMERCIALES 7
SISTEMA DE INVENTARIO "SIM"
VI. MARCO METODOLOGICO
1. FASES DE DEFINICiÓN
1.1 aNAblSIS REL SiSTEMA (REQUERIMIENTOS!
Para realizar el Análisis del Sistema primero realizamos una investigación preliminar
Realizando una investigación preliminar a la Distribuidora "Fernández Caldera S A.
(DIFERCAL) se encontró problema con el control de inventario de medicamentos, por lo que
se procedió a realizar un análisis de requerimiento
Para realizarlo por medio de una recopilación de datos, se utilizaron las siguientes técnicas
~ Entrevista
~ Observación
~ Revisión de Documentos
Para realizar la recolección de datos nos planteamos las siguientes preguntas
¿Qué se investigo?
Se investigo la forma en que llevan los servicios de ingreso, control, verificación y manejo de
lo;; PlOductos, así como su despacho.
UNIVERSIDAD DE CIENCIAS COMERCIALES 8
•
SISTEMA DE INVENTARIO "SIM"
¿Qué procesos se analizaron?
Los servicios realizados por los usuarios responsables del inventario, que utilizan para el
control de los medicamentos
¿Qué técnicas utilizamos para estudiar estos procesos?
Para estudiar estos procesos utilizamos las entrevistas, observaciones y una serie de
revisión de documentos de la empresaI
Se realizó entrevistas a los usuarios responsables del inventario y se elaboro un cuestionario
donde se pregunto lo siguiente
Analista: ¿Cómo es la forma de ingreso y retiro del producto?
Usuario: Para la Entrada (recepción) de productos se ingresa el código del producto, la
descripción del producto, la unidad de medida, la cantidad, el tipo de Entrada
si es por bonificaciones o por devoluciones, la fecha de Entrada, el precio
unitario y el número de documento Para la salida de productos es lo mismo
Analista: ¿Cómo controlan la existencia del producto?
Usuario: Se controla manualmente, llevando un conteo diario de los productos que
Ingresan y salen de bodega.
UNIVERSIDAD DE CIENCIAS COMERCIALES 9
SISTEMA DE INVENTARIO "SIM"
Observamos que cuando el cliente llega a solicitar un determinado producto el usuario tarda
en dar una respuesta a la solicitud del cliente muchas veces por falta de tiempo y por un mal
control del producto A veces pierden tiempo en buscar un producto y muchas veces sin
éxito El usuario muchas veces introduce el mismo producto y muchas veces no manejan un
control correcto en cuanto a las existencias exactas de los productos
Cuando realizan un reporte se encuentra muchas veces que no esta correcto ya que no
presenta la información adecuada y real de la empresaI .
Realizamos una revisión de los siguientes documentos
Reportes quincenales o mensuales de Inventario
Reportes quincenales o mensuales de Inventario Físico.
Reportes de recepción de medicamentos
Reportes de salidas de medicamentos
UNIVERSIDAD DE CIENCIAS COMERCIALES 10
SISTEMA DE INVENTARIO "SIM"
i:í.i PLANIFICACION ESTRATEGICA DE LA INFORMACION
ORGANIGRAMA DE LA EMPRESA DIFERCAL S.A.
CONTABILIDAD
y' Departamento de Compras:
y' Departamento Administrativo:
y' Departamento de Ventas:
Responsable de Compra de Medicamentos,
Control de los Proveedores
Responsable del Control Contable y Financiero
Responsable de promoción, Distribución y Ventas
de los Medicamentos
UNIVERSIDAD DE CIENCIAS COMERCIALES 11
SISTEMA DE INVENTARIO "SIM"
1.1.2 Análisis del Area del Negocio.
~------- Entrada al Sistema '\
Q _------- -- ,/ de Inl.entarío " "
-~~ . "USU:riOBodega"", ~-~/~, "'''' 1)
)/ (jE. -j-
~/ 7 '~ /'"
(1 . /' . ~ Proceso de la Información / Us rioE' cut'~ "" del Sistema de Inl.entario / ua ¡e I\Q
'/\.~ ", //, ~', /
--------', ~UsuarioVentas ~O
Salida del Sistemade Inl.entaio
Nombre del Caso de Uso
Actor Participante
Condición Inicial
Flujo de Evento
Condición de Salida
Requerimiento Especial
Ingreso al Sistema
UsuarioBodega, UsuarioVentas y UsuarioEjecutivo
El usuario activa el icono del Sistema de Inventario en su
Pantalla, el Sistema responde
1- El usuario escribe la contraseña y acciona continuar
2- El programa valida la contraseña presentando dos
situaciones excluyentes
2 1- Contraseña valida y se accesa a otra interfaz,
2 2- Contraseña no valida, el Sistema no avanza y
emite mensaje de Error en Contraseña
3- Salir del Sistema
El usuario activa el control de salida.
Después de tres intentos fallidos, el Sistema se bloquea
UNIVERSIDAD DE CIENCIAS COMERCIALES 12
SISTEMA DE INVENTARIO "SIM"
~
I
Agregar Productos ala Tabla de Recepciones
, -;J ~___ ~"
,/ ~ '''~"/ / ~ /'/ Modificar Productos de "'-
,/~ la Tabla de Recepciones "'-',
9-~- ~~< >9-,/ '" ~"'~~~ ~ / ,
UsuarioVentas",'~ Eliminar Productos de ~ UsuarioBodega, '''-, ~~abladeRecep~ //
'o, ~~" /
""'''' (~"'Buscar Productos e,la Til~e Recepc' nes
C)Retornar a la
Pantalla Principal
Nombre del Caso de Uso
Actor Participante
Condición Inicial
Flujo de Evento
Condición de Salida
Recepciones
UsuarioBodega, UsuarioVentas.
El usuario activa el menú de Recepciones en su pantalla
principal, el Sistema responde y accesa a otra interfaz.
1- El usuario acciona cualquiera de las opciones
siguientes: Agregar, Eliminar, Buscar, Modificar,
Retornar
2- El usuario acciona retornar a la pantalla principal
El usuario activa el control de retornar
UNIVERSIDAD DE CIENCIAS COMERCIALES 13
"
SISTEMA DE INVENTARIO "SIM"
Agregar Productos a:1 la Tabla de Salidas ~
/ ',~
~~/ '
/ ~7Modificar Productos de~ ~/ / ~ la Tabla de Salidas ~,',
º-¿~ ,~-~, ~'~~ ~') ;>\ i-E- -
'-'~~ ------------/ ~ , // , ~ "-
UsuarioVentas',- - -'~~_ Eliminar Productos de ~ /' / UsuartoBodega, la Tabla de Sahdas~ //
'- ~/~k //',~ ,/,------ /
""Eluscar Productos en /la-~abla de sali,7~ L:-~~
(~
Nombre del Caso de Uso
Actor Participante
Condición Inicial
Flujo de Evento
Condición de Salida
Retornar a laPantalla Prtncipal
Salidas
UsuarioBodega, UsuarioVentas
El usuario activa el menú de Salidas en su pantalla
principal, el Sistema responde y accesa a la pantalla de
Salidas
1- El usuario acciona cualquiera de las opciones
siguientes: Agregar, Eliminar, Buscar, Modificar,
Retornar.
2- El usuario acciona retornar a la pantalla principal
El usuario activa el control de retornar
UNIVERSIDAD DE CIENCIAS COMERCIALES 14
SISTEMA DE INVENTARIO "SIM"
Retornar a laPantalla Plincipal
Tipo de Entradas
UsuarioVentas, UsuarioBodega y UsuarioEjecutivo
El usuario activa el menú de Tipo de Recepciones en su
pantalla, el Sistema responde y accesa a la interfaz de
Tipo de Recepciones.
1- El usuario acciona cualquiera de las opciones
siguientes Agregar, Eliminar, Buscar, Modificar,
Retornar
2- El usuario acciona retornar a la pantalla principal
El usuario activa el control de retornar
UNIVERSIDAD DE CIENCIAS COMERCIALES 15
Condición de Salida
Flujo de Evento
Nombre del Caso de Uso
Actor Participante
Condición Inicial
SISTEMA DE INVENTARIO "SIM"
___ ~"""¿:' Agregar Tipos de Salidas a__ ~~ ~ la Tabla Tipo de Salida
~ ~~ / '"~~ / ~-,
/~~ 7 .>(~..~,usuariOVentas~~ Modificar Tipos de Salidas en ~
" la Tabla lipa de Salida ~~~,,~ ." ,/ /~ -'"Y~/ ~i~'><E ~ ~/' < '" ,~/ ---" 7..// '. ",- ..
_/,o/ " Eljminar Tipos de Salid.as de ..._--- UsuarioEjecuti\lO// la~blaTiPOdeSalida~ /'9:: ~, ~-.~ //
/ ~~ ':;... ><..~. //UsuarioBodega ~ Buscar Tipos de S~'~~2lÍ
_______ la~la Tipo de7'....a~~~ /?
~Retomar a la
Pantalla Principal
Nombre del Caso de Uso
Actor Participante
Condición Inicial
Flujo de Evento
Condición de Salida
Tipo de Salidas
UsuarioVentas, UsuarioBodega y UsuarioEjecutivo.
El usuario activa el menú de Tipo de Salidas en su
pantalla, el Sistema responde y accesa a la interfaz de
Tipo de Salidas
1- El usuario acciona cualquiera de las opciones
siguientes Agregar, Eliminar, Buscar, Modificar,
Retornar
3- El usuario acciona retornar a la pantalla principal
El usuario activa el control de retornar.
UNIVERSIDAD DE CIENCIAS COMERCIALES 16
SISTEMA DE INVENTARIO "SIM"
____ -~Agregar Unidad de Medidaa la Tabla Unidad Medida
~~~ ~ ~
\} ---~- /- / ~ ....
,~ -'---- / ?>(~ "--USU~riOV~ntas~.............~/ Modificar Unidad de Medida~_ ''-...,~
, '- en la Tabla Unidad Medida ~
'-'/~ ~", -)'( / -"'"~\ ---- O
X,/X" ~< ~;A:,// /" '<" ~EliminarUnidad de Medida ~ U U 'E' ut'// ~<. ile-lzTabla UnidadM~ida -' s ano Jec ,\<)
/, _. /......... :'f~" _--- ."....... ,,/~):--" -;.(-') //
'"----- ~ .~ .// - ~~ /UsuarioBodega '___.... Bu ar Unidad de Medido/
---....__~~:Unida7k1a
------------~Retomara la
Pantalla Principal
Nombre del Caso de Uso
Actor Participante
Condición Inicial
Flujo de Evento
Condición de Salida
Unidad de Medida
UsuarioVentas, UsuarioBodega y UsuarioEjecutivo
El usuario activa el menú de Unidad de Medida en su
pantalla, el Sistema responde y accesa a la interfaz de
Unidad de Medida
1- El usuario acciona cualquiera de las opciones
siguientes. Agregar, Eliminar, Buscar, Modificar,
Retornar
4- El usuario acciona retornar a la pantalla principal
El usuario activa el control de retornar
UNIVERSIDAD DE CIENCIAS COMERCIALES 17
SISTEMA DE INVENTARIO "SIM"
Agregar Productos ala Tabla de Inl.entario Fisico
1 -;?J ~/' // --~~ "
./ ),,/' / ~ """'//7 Modificar Productos de ~ '" ,
" , la Tabla de Inl.entario Fisico '~ ~
~ / '--- /1 ~ "', ~\ ) /...---- / / ~
--'F-- ' / /' >0< --l / / .-//,,-~/ ~/~
usuariovent¡¡S'X' -~C7 Eliminar Productos de ,--- U ari E' uf, / /'~ '--"l~ITablade Inl.entario Fisico,~ ,/ su o Jec I\{)
Q~ ",,- ~~~ /), )o().//' <--------- '''-, ~ ./
UsuarioBodega ~~ ~ Buscar Productos en/--~r;;Q[~ de Inl.entarigPísico
~~ ¡¿:~,
~Retornar a la
Pantalla Principal
Nombre del Caso de Uso
Actor Participante
Condición Inicial
Flujo de Evento
Condición de Salida
Inventario Físico
UsuarioVentas, UsuarioBodega y UsuarioEjecutivo
El usuario activa el menú de Inventario Físico en su
pantalla, el Sistema responde y accesa a otra interfaz
1- El usuario acciona cualquiera de las opciones
siguientes' Agregar, Eliminar, Buscar, Modificar,
Retornar
2- El usuario acciona retornar a la pantalla principal.
El usuario activa el control de retornar
UNIVERSIDAD DE CIENCIAS COMERCIALES 18
SISTEMA DE INVENTARIO "SIM"
Agregar Productos ala Tabla de In'.entario,\",
..." "-1 _ ~
\ ) ""/ ' -------~ ......
/ /;;;,Modificar Productos de~~,e¡ ~~~/ la Tab~:tario ~ O), ~~~)~C------A
/ /
UsuarioVenlas',, ,
Eliminar Productos dela Tabla de Inventario
Retornar a laPantalla Principal
UsuarioBodega
Nombre del Caso de Uso
Actor Participante
Condición Inicial
Flujo de Evento
Contlición de Salida
Inventario
UsuarioVentas,UsuarioBodega
El usuario activa el menú de Inventario en su pantalla, el
Sistema responde y accesa a la interfaz de Maestro de
Inventario
1- El usuario acciona cualquiera de las opciones
siguientes: Agregar, Eliminar, Buscar, Modificar,
RetornaL
2- El usuario acciona retornar a la pantalla principal
El usuario activa el control de retornar
UNIVERSIDAD DE CIENCIAS COMERCIALES 19
(1)
SISTEMA DE INVENTARIO "SIM"
Retomar a laPantalla Principal
Nombre del Caso de Uso
Actor Participante
Condición Inicial
Flujo de Evento
Condición de Salida
Reportes.
UsuarioVentas,UsuarioBodega, UsuarioEjecutivo
El usuario activa el menú de Reportes en su pantalla, el
Sistema responde y accesa a otra interfaz
1- El usuario acciona cualquiera de las opciones
siguientes Inventario Físico, Maestro de Inventario,
Recepciones, Salidas, Retornar, y accesa a la interfaz
de Reportes
2- El usuario digita la fecha inicial y la fecha final y
acciona aceptar.
3- El usuario acciona retornar a la pantalla principal
El usuario activa el control de retornar
UNIVERSIDAD DE CIENCIAS COMERCIALES 20
SISTEMA DE INVENTARIO "SIM"
Agregar Usuarios a,;:jI'la Tabla de Usuario
/'/ ~,
// ~/ ' ~:::yModificar Usuarios en
//~ la Tabla de Usuario
/~C >0UsuarioEjecutil.O", ~ Eliminar Usuarios de
"'~~:("3~"'{uscar Usuarios en
"'FU;"Retornar a la
Pantalla Principal
Nombre del Caso de Uso
Actor Participante
Condición Inicial
Flujo de Evento
Condición de Salida
Usuarios
UsuarioEjecutivo
El usuario activa el menú de Usuarios en su
pantalla, el Sistema responde y accesa a la interfaz de
Usuarios
1- El usuario acciona cualquiera de las opciones
siguientes' Agregar, Eliminar, Buscar, Modificar,
Retornar
5- El usuario acciona retornar a la pantalla principal
El usuario activa el control de retornar
UNIVERSIDAD DE CIENCIAS COMERCIALES 21
81STEMADE INVENTARIO '18M'
UsuarioVentas Por Pantalla~
Retomara laPantalla Principal
Nombre del Caso de Uso
Actor Participante
Condición Inicial
Flujo de Evento
Condición de Salida
DocumentoSistema
UsuarioBodega, UsuarioVentas,UsuarioEjecutivo.
El usuario activa el menú de DocumentoSistema en su
pantalla, el Sistema responde y accesa a la interfaz de
Documento del Sistema.
1~ El usuario acciona cualquiera de las opciones
siguientes' Por Pantalla y Por Impresora.
2~ El usuario acciona retornar a la pantalla principal.
El usuario activa el control de retornar.
UNIVERSIDAD DE CIENCIAS COMERCIALES 22
SISTEMA DE INVENTARIO "SIM~~
~'----------
~Agregar Proveedores a~ _ la Tabla de Prol.eedor
X 7/ "C) ~UsuarioVentas Modificar Proveedores en ~
. la Tabla de Prol.eedor ~
usu~~a ~S2:en~~~WI "-, la la de Prol.eedor
" ~ ~
~~52oo~bla de Proveed
~
C)
Nombre del Caso de Uso
Actor Participante
Condición Inicial
Flujo de Evento
Condición de Salida
Retomara laPantalla Principal
Proveedor.
UsuarioVentas, UsuarioBodega y UsuaríoEjecutivo.
El usuario activa el menú de Usuarios en su
pantalla, el Sistema responde y accesa a la interfaz de
Proveedor
1- El usuario acciona cualquiera de las opciones
siguientes: Agregar, Eliminar, Buscar, Modificar,
Retornar
6- El usuario acciona retornar a la pantalla principal
El usuario activa el control de retornar.
UNIVERSIDAD DE CIENCIAS COMERCIALES 23
SISTEMA DE INVENTARIO "SIM"
1.1.3 DISEÑQ D!;L SISTSMA DEL NEGOCIO
MODELO DEL SISTEMA DE INVENTARIODE LA DISTRIBUIDORA FERNADEZ
CALDERA S.A.
PANTALlA PRINCIPAL
MAESTRO DEINVENTARIO
INVENTARIOFISICO
PROVEEDOR
TIPOS DESALIDAS
TIPOS DERECEPCIOtES
UNIDAD DEMEDIDA
USUARIOS
SALIR
RECEPCIONES
SALIDAS
CIERRE
MAESTRO DEINVENTARIOINVENTARIO
FISICO
RECEPCIONES
SALIDAS
PROVEEDOR
DOCUMENTODEL SISTEMA
ACERCA DE••
UNIVERSIDAD DE CIENCIAS COMERCIALES 24
SISTEMA DE INVENTARIO "SIM"
MODELO DEL DOMINIO DE APLICACION
AGREGAR 1
I SALIR I""'""'--
I I MODIFICAR I
MODELO DEL DOMINIO DE APLICACION
INVENTARIO FISICO
AGREGAR 1
I SALIR .r
I MODIFICAR I
ELIMINAR
BUSCAR
ELIMINAR'
I BUSCAR
UNIVERSIDAD DE CIENCIAS COMERCIALES 2S
SISTEMA DE INVENTARIO "SIM"
MODELO DEL DOMINIO DE APLICACION
RECEPCIONES
I AGREGAR 1
SALIR
I MODIFICAR I
MODELO DEL DOMINIO DE APLICACION
ELIMINAR
I BUSCAR f
SALIDAS
I AGREGAR ELIMINAR ISALIR
I MODIFICAR r I BUSCAR J
UNIVERSIDAD DE CmNCIAS COMERCIALES 26
SISTEMA DE INVENTARIO "SIM"
MODELO DEL DOMINIO DE APLlCACION
CIERRE
I APLICAR
MODELO DEL DOMINIO DE APLICACION
I RETORNAR.
REPORTES
MAESTRO DEINVENTARIO
I RECEPCIONES I
1 SALIDAS I
INVENTARIOFISICO
I PROVEEDOR 1
UNIVERSIDAD DE CIENCIAS COMERCIALES 27
•
SISTEMA DE INVENTARIO "SIM"
MODELO DEL DOMINIO DE APLICACION
PROVEEDOR
I AGREGAR I
SALIR
MODIFICAR
MODELO DEL DOMINIO DE APLICACION
r ELIMINAR I
BUSCAR
TIPOS DE SALIDAS
, AGREGAR'
SALIR
J MODIFICAR
1 ELIMINAR 1
J BUSCAR
UNIVERSIDAD DE CIENCIAS COMERCIALES 28
SISTEMA DE INVENTARIO "SIM"
MODELO DEL DOMINIO DE APLICACION
TIPO DE RECEPCIONES
I AGREGAR
SALIR
( MODIFICAR 1
MODELO DEL DOMINIO DE APLICACION
ELIMINAR
BUSCAR I
UNIDAD DE MEDIDA
( AGREGAR ELIMINAR
J_SA_U_R----IJ
I MODIFICAR BUSCAR
UNIVERSIDAD DE CIENCIAS COMERCIALES 29
SISTEMA DE INVENTARIO "SIM"
MODELO DEL DOMINIO DE APLICACION
USUARIOS
SALIR
MODIFICAR
MODELO DEL DOMINIO DE APLICACION
, fI"'MR ,
BUSCAR
AYUDA
DOCUMENTO DELSISTEMA IACERCA DE... I
UNIVERSIDAD DE CIENCIAS COMERCIALES 30
SISTEMA DE INVENTARIO "SIM"
1.2 PLANIFICACiÓN PEL PROYECTO.
1.2.1 AMBITO DEL SOFTWARE:
Los clientes se presentan personalmente en las instalaciones o solicitan ios productos
telefónicamente. En aquellos casos en que el producto solicitado esta agotado, el Sistema
indicara que la existencia esta en cero, es decir, rechaza la venta de ese producto y los
empleados interactuan con el cliente para buscar algún producto sustituto Con este fin, se
consulta la tabla de productos
Las consultas típicas son
¿Qué tipo de medicamento tiene?
¿Qué tipo de presentación?
¿A que precio?
La tabla de productos tiene el detalle del inventario de medicamentos existentes en bodega y
su descripción.
Cuando el producto esta en nivel critico se realiza una orden de compra Con este fin, se
consulta la tabla de proveedores.
Las dos tablas (Productos y Proveedores) se actualizan en línea, conforme ocurren las
tmn~ncG;ones. A medida que se reciben las solicitudes de pedido, se verifican las
existencias, si hay disponible se procede al despacho del producto y se actualiza la tabla de
UNIVERSIDAD DE CIENCIAS COMERCIALES 31
SISTEMA DE INVENTARIO "SIM"
producto Si la existencia no es suficiente, el cliente puede seleccionar otro producto o
simplemente omitir el producto agotado. La tabla de proveedores se actualiza con nuevos
proveedores
La tabla de productos es modificada con entradas a la bodega proveniente de mercancías
recibida, ya sea por compra, por devoluciones o bien por bonificaciones. Las salidas por
pedidos, cambia en ciertas características de los productos
Las prinyipales salidas del Sistema serán.
• Reportes de Recepción de Productos
• Reportes de Inventario Físico
• Reporte de Inventario
• Reportes de Salidas de Productos
• Reportes de Proveedores
El Sistema controlara aquellos productos agotados o en el limite de seguridad, para las
cuales generara ordenes de compra que se enviaran al proveedor
Cada vez que se recibe un despacho de mercadería de algún proveedor, se realiza el
ingreso a bodega y se actualiza el inventario, verificando previamente contra la orden de
compra Si todo esta correcto, se genera una notificación de recibo de mercadería que se
envía al proveedor.UNIVERSIDAD DE CIENCIAS COMERCIALES 32
SISTEMA DE INVENTARIO "SIM"
Se extraen todas las funciones importantes del software:
.:. Solicitud del pedido por parte del cliente
.:. Consultar pedido en la Base de Datos Distribuida.
•:. Responder a las consultas
.:. Seleccionar los productos
.:~ Aplicar las salidas de los productos
.:. Realizar orden de compra cuando el producto esta agotado
.:. Consultar el archivo proveedores en la Base de Datos Distribuida.I
.:. Recepción de pedidos de compra en la bodega
.:. Actualizar la tabla de productos de la Base de Datos
.:. Reportes de control de ubicaciones del producto
.:. Reportes de recepción de mercadería.
•:. Reportes de Inventario.
•:. Reportes de Inventario Físico
El rendimiento del Software estará determinado por la velocidad de acceso a la Base de
Datos y por el Hardware donde se va ha implementar
El Software delISIM" estará limitado por el hardware al que tiene que acceder
Una misma función puede producir una diferencia de un orden de magnitud en el esfuerzo de
desarrollo cuando se considera en un contexto con diferentes limites de rendimiento. El
esfuerzo y los costos requeridos para desarrollar el Software SIM serian drásticamente
diferentes si la función fuera la misma (por ejemplo. el usuario del software del área de
bodega y el usuario del área de ventas quieren al mismo tiempo acceder a un mismo campo)
UNIVERSIDAD DE CIENCIAS COMERCIALES 33
SISTEMA DE INVENTARIO "SIM"
el software podría ser considerablemente mas complejo requiriendo, por tanto, un mayor
esfuerzo de desarrollo
La función, el rendimiento y las restricciones están íntimamente relacionadas
El software que se va a desarrollar será una aplicación distribuida (cliente/servidor)
1.2.2. CALCULO DE LA VIABILIDAD (ESTUDIO DE FACTIBILIDAD).
1.2.2.1. I FACTIBILIDAD OPERATIVA.
De acuerdo a las entrevistas y platicas con los empleados a utilizar el Sistema, consideran
necesario una efectividad del control de Inventario de medicamentos para la Empresa.
El 90% de los empleados consideran trabajar con el Sistema una vez implementado en la
empresa. Para el desarrollo del Sistema se tomÓ en consideración las opiniones y
recomendaciones de los trabajadores, sobre todo en los que los usaran a menudo
El Sistema permitirá un ahorro de compra y mantenimiento de Productos hasta un 30 % del
gasto actual, lo que justifica en un gran volumen la implementación del mismo
El Sistema coadyudara a trabajar mas eficientemente a los usuarios pues contaran con el
Inventario actualizado para su distribución.
El Sistema estará trabajando en un 90% a los 45 días de empezar su implementación y se
¡1Gtablt'~cerá totalmente en un lapso de 90 días a partir de su instalación
UNIVERSIDAD DE CIENCIAS COMERCIALES 34
1.2.2.2.
SISTEMA DE JNVENTARIO "SIM"
FACTIBILIDAD TÉCNICA
La empresa ya cuenta con el Equipo necesario para la implementación del Software que se
describe a continuación
Dos computadora Pentium mde 800 MHz de velocidad, 256Mb de RAM, disco duro de 40
Gigabyte con Sistema Operativo Windows 98 para el área de Ventas y Bodega
Una computadora Pentium IV de 2 4 GHz de velocidad ,500Mb de RAM, disco duro de 80
Gigabyte con Sistema Operativo Windows 2000 (esta computadora será el servidor). Ubicada
en el área de Administración
Tres Impresoras HP DeskJet 850c para las áreas de Venta, Bodega y Administración.
La Empresa cuenta con una Red, conectadas con todas las áreas del negocio
La Empresa incurrirá en el gasto del Software de SOL SERVER y Microsoft Visual Estudio'¡
Este Equipo permitirá el crecimiento y desarrollo de! Sistema a la par del crecimiento y
desarrollo de la Empresa DIFERCAL SAo
El Equipo permite el soporte técnico y de capacitación de procesos estándares Es confiable,
de fácil acceso, manejo y seguridad de los datos
UNIVERSIDAD DE CIENCIAS COMERCIALES 35
SISTEMA DE INVENTARIO "SIM"
Se realizarán soportes técnicos y de capacitación antes y durante el desarrollo, después del
desarrollo una vez instalado el Software se realizaran soportes técnicos y de capacitación
durante el periodo de 3 meses
'1l,,2.~.3. fACTIBILIDAD FINANCIERA
Comp Pentium IJI U$750 00 U$1,500 00 U$1,500 00 0002
Comp. Pentium IV U$1,200.00 U$1,200 00 U$1,200 00 0001
Impresoras Hp850c U$120 00 U$360 00 U$360 00 0003
Licencias Microsoft3 U$13575 U$40725 000 U$40725
Visual Studio
Licencia de SQL1 U$14950 U$149.50 000 U$14950
SERVER
Analista de Sistema U$400 00 U$400 00 000 U$400 001
SUB TOTAL DEL PROYECTO 95675
)\10TA: Los U$400 00 que recibirá el Analista de Sistema es por la realización del Análisis
del Software
UNIVERSIDAD DE CIENCIAS COMERCIALES 36
SISTEMA DE INVENTARIO "SIM"
1.2.3. GESTION DEL PROYECTO
1.2.3.1. PERSONAL
En este caso la empresa donde vamos a desarrollar el Software es una organizaclon
pequeña, lo cual no hay necesidad de contratar a diseñadores y programadores de sistemas
ya que el analista será. Diseñador y Programador del Sistema.
El analista cuenta con la cualidad de ser hábil, automotivado, cordial, sabe transmitir ideas y
sobre todo autodisciplinado
En La gestión del proyecto se tiene que ver además del analista, también los usuarios. Los
gerentes y empleados tienen buenas ideas con respecto a qué es lo que sí funciona y qué es
lo que no, qué causa problemas y qué no, donde son necesarios los cambios y dónde no, y
especialmente en qué partes será aceptado el cambio y en cuáles partes no.
Aun con toda la tecnología, las personas son las piezas más importantes para que la
empresa trabaje en forma mas eficiente
Comunicarse y tratar con las personas es uno de los aspectos más importantes del trabajo
que se consideró como analista de sistemas.
Actualmente los usuarios participan más en el desarrollo del Sistema.
(¡) Los usuarios de la Distribuidora DIFERCAL tienen una mejor idea de lo que significa la
ayuda que puedan brindarles el Sistema de inventario y la forma de cómo obtenerla
UNIVERSIDAD DE CIENCIAS COMERCIALES 37
SISTEMA DE INVENTARIO "SIM"
@ Saben cuáles son las fallas de los sistemas actuales y como evitarlos
'" Muchos de los usuarios ya han recibido capacitación en el uso de las computadoras y
algún tipo de Software ofimatico.
e Para desarrollar la aplicación, se necesito la participación continua de los usuarios para
comprender las funciones de la empresa que se encuentra bajo estudio
1.2.3.2 I PROBLEMA
El problema es una actividad que se asienta en el núcleo del Análisis d requisitos del
software. Durante la exposición que se realizo del ámbito no se intenta descomponer el
problema totalmente. Mas bien, la descomposición se aplica en dos áreas principales'
(1) la funcionalidad que debe entregarse y (2) el Proceso que se empleará para entregarlo.
> Descomponiendo la funcionalidad:
.:. Solicitud del pedido por parte del cliente
.:. Recepción de pedidos.
•:. Consultar pedido en la Base de Datos Distribuida
.:. Responder a las consultas
.,~., Seleccionar los productos
UNIVERSIDAD DE CIENCIAS COMERCIALES 38
.8ISTEMADEINVENTARIO "8IM"
.:. Aplicar las salidas de los productos.
•:. Realizar orden de compra cuando el producto esta agotado
.:. Consultar el archivo proveedores en la Base de Datos Distribuida
.¡. Recepción de pedidos de compra en la bodega
.:. Actw'Ilizar la tabla de productos de la Base de Datos
.:. Reportes de Inventario.
•:. Reportes de Inventario Físico.
•:. Reportes de recepción de mercadería
.:. Reportes de salida de mercadería.
Una vez hecha la descomposición de la funcionalidad se debe indicar el Proceso que se
empleará
El Proceso a utilizar es el Proceso del ciclo de vida para el Desarrollo de Sistemas
Una vez indicado el Proceso a utilizar pasamos a la descomposición del mismo.
UNIVERSIDAD DE CIENCIAS COMERCIALES 39
•
SISTEMA DE INVENTARIO "SIM"
);> Descomponiendo el Proceso:
• Investigación preliminar.
.¡" Entrevistas.
.¡" Observación
.¡" Revisión de Documentos.
• , Determinación de requerimientos:
.¡" Planificación Estratégica de la Información.
.¡" Análisis del Area del Negocio
.¡" Diseño del Sistema del Negocio.
.¡" Ambito del software
.¡" Calculo de la viabilidad.
.¡" Gestión del proyecto.
a Personal
Selección del grupo de trabajo
{] Problema.
Descomposición de Problema
a Proceso.
Selección del Modelo de Proceso
Maduración del Problema y del Proceso.
UNIVERSIDAD DE CIENCIAS COMERCIALES 40
SISTEMA DE INVENTARIO "SIM"
(J Proyecto
./ Estimaciones
./ Análisis de Riesgos
./ Planificación Temporal
./ Gestión de la Configuración (Seguimiento).
• Diseño del Sistema:
./ Diseño Conceptual
./ Diseño Lógico
./ Diseño Físico y Despliegue
• Desarrollo del Sistema
./ Codificación.
• Prueba del Sistema.
./ Pruebas
• implementación v Evaluación.
-/ Entrenamiento a los Usuarios
./ Instalación de la Aplicación.
UNIVERSIDAD DE CIENCIAS COMERCIALES 41
SISTEMA DE INVENTARIO "8IM"
t PROCESO
A como indicamos anteriormente el Proceso a utilizar es el Proceso del ciclo de vida para el
Desarrollo de Sistemas como se muestra en la siguiente figura.
~ Maduración del problema y del Proceso:
Ver anexo: Figura de Maduración del problema y del Proceso
1.2.3.4 PROYECTO
Para realizar este proyecto se utilizan diez señales que indicaran que el Sistema podría
estar en peligro descrito en el marco conceptual del inciso 1.2.3.4 de la pagina #16.
Durante el desarrollo del proyecto y por medio de la comunicación que se ha mantenido con
los clientes se ha logrado comprender las necesidades de los clientes.
·S(;Gonsj(~era que se ha definido el ámbito del software completamente tratando de abarcar
tO(i}IO 10s procesos que va ha realizar el software.
SISTEMA DE INVENTARIO "SIM"
Se ha venido evitando que las necesidades del negocio cambien realizando un buen Análisis
del área del negocio.
Como gestor de proyecto se realizaran incentivos para conseguir una rotación del personal
mínima para evitar atrasos.
'Ü "~",4}. ESTIMACIONES
(;0l!10 se rnira el costo del proyecto es de U$956.75, a esto se le suma el costo de U$717.56
dBl Software que se realizó lo que hace un total neto del proyecto de U$1,674.31. El costo
UNIVERSIDAD DE CIENCIAS COMERCIALES 43
SISTEMA DE INVENTARIO "SIM"
del Software se realizo haciendo una estimación con el COCOMOn como se muestra en la
Figura
La estimaciones se realizaron por el número total de pantallas, el número de tablas en el
Servidor, el Número de Reportes y por la Capacidad del Desarrollador
1.2.5. ANALlSIS DE RIESGOS
Para realizar el Análisis de riesgos se plantearon las siguientes preguntas que provienen de
los datos del riesgo obtenidos mediante las encuestas realizadas a gestores de proyectos de
software expertos de diferentes partes del mundo Las preguntas están ordenadas por su
importancia relativa para el éxito de nuestro proyecto
1. ¿Se han entregado los gestores del software y clientes formalmente para dar soporte al
proyecto?
2. ¿Están completamente entusiasmados los usuarios finales con el proyecto y con el
Sistema/producto a construir
3. ¿Han comprendido el Equipo de ingenieros de software y los clientes todos 105
requisitos?
4. Han estado los clientes involucrados por completo en la definición de los requisitos?
5 ¿Tienen los usuarios finales expectativas realistas?
6 ¿Es estable el ámbito del proyecto?
7 ¿Tiene el ingeniero del software el conjunto adecuado de habilidades?
8 ¿Son estables los requisitos del proyecto?
9. ¿Tiene experiencia el Equipo del proyecto con la tecnología a implementar?
I¡). ¿[s adecuado el número de personas del Equipo del proyecto para realizar el trabajo?
UNIVERSIDAD DE CIENCIAS COMERCIALES 44
•
SISTEMA DE INVENTARIO "SIM"
11 ¿Están de acuerdo todos los clientes/usuarios en la importancia del proyecto y en los
requisitos del Sistema/producto a construir?
De acuerdo a estas 11 preguntas se realiza una evaluación del impacto del riesgo como se
muestra en el siguiente cuadro
UNIVERSIDAD DE CIENCIAS COMERCIALES 45
•
.sISTEMADE lNVENT.ARID ".sIM"
Dejar de cumplir las requisitas prDVocaría el retrasas de la planificación temporal con
tallo de la misión gastos
Dejar de cumplír los requisitos degradaría el Malos resultados en retrasos operativos y/o
rendimiento del Sistema hasta donde el éxito de aumento de coste con un valor esperado
la misión es cuestionable
No hay reducción en el Software fácil de Posible superávit de Fecha de entrega
rendimiento técnico dar soporte presupuesto fácilmente
alcanzable
no Recortes financieros Fecha de entrega
no significativos, inalcanzable
presupuestos
excedidos
El software
responde o
admite soporte
Algunos recortes de
Alguna reducción en el Pequeños retrasos los recursos financiero Posibles retrasos en
rendimiento técnico en modificaciones posibles excesos del la fecha de entrega
de software presupuesto
De mínima a pequeña El soporte del Recursos financieros Planificación
reducción en el software responde suficientes temporal realista,
rendimiento técnico alcanzable
Los costes, impactos y/o retrasos
Dejar de ClDllplir los requisitos provocaría la recuperables de la planificación temporal
degradación de la misión secundaria con un valor estimado
Degradación significativa
para no alcanzar el
rendimiento técnico
Los errores provocan impactos mínimos en
Dejar de cumplir los requisitos provocaría el coste y/o planificación temporal con valor
inconvenientes o impactos no operativos esperado menos
(1) Posibles consecuencias de errores o defectos del software no detectados.
(2) Posibles consecuencias si el resultado deseado no se consigueUNIVERSIDAD DE CIENCIAS COMERCIALES 46
SISTEMA DE INVENTARIO "SIM"
1.2.6. PLANIFICACION TEMPORAL
Al realizar nuestra planificación temporal utilizamos el gráfico de Gantt el cual nos va a
permitir listar todas nuestras tareas y hitos El gráfico de Gantt se observa en 105 anexos de
este proyecto
1.2.7. GESTION DE LA CONFIGURACION
Se realizara la Gestión de la Configuración (seguimiento de la planificación temporal) con el
objetivo de ver si se ha desarrollado apropiadamente, define las tareas e hitos que deben
seguirse y controlarse a medida que progresa el proyecto.
Este seguimiento se realizara efectuando reuniones periódicas del estado del proyecto donde
se informara del progreso y de los problemas, evaluando los resultados de todas las
revisiones realizadas a lo largo del Proceso de ingeniería del software, determinando si se
han conseguido los hitos formales del proyecto
Se realizara una tabla de proyecto para ver sus fechas previstas y reales de inicio y
finalización, así como, las personas asignada el esfuerzo asignado Esta tabla se encuentra
en los anexos
Empleando las tablas junto con los gráficos de tiempo, permitirá hacer un seguimiento del
progreso.
UNIVERSIDAD DE CIENCIAS COMERCIALES 47
SISTEMA DE INVENTARIO "SIM"
2. FASES DE DESARROLLO
2 1. DISEÑO
2.1.1 DISEÑO CONCEPTUAL
El Diseño Conceptual es una estrategia para desarrollar aplicaciones distribuidas debe
comenzar por la comprensión de las necesidades de los usuarios y el negocio, es decir,
identifica'ndo los requisitos de la aplicación, como se realizo anteriormente. El Diseño
Conceptual consiste en las clases a como se observa a continuación
«Form»frmmaest(oinvenia
«(10M U:ier SEorvlces)
«Class Module>::>'GII'lVENTARIO
«Form»frn'llnicio
(110m Ueer SeN5oes)
«Form»frmAcceso
(#rul'11 User S6rvfoes)
«Cless Module»GII'lVENTAFISICO
«Form» «Class Module;'>trmRecepciones __ CRECEPCIONES
{f
romu==3 ti=====j
«Form»fimUnidad_Medida
('mm Ul;ler 5ervl ce",)
\«Form»
frmProveedor(from Use,. Sen,i<:es)
«fo{m>~
IrmUsuario(fro~Servlces)
<.c::Form~>
fimGierre(from User SeJVI Des)
/------///~I l--«Form»
«Clasa Module»CllPO EN1RADAS IrmTIpo_Enlradas
- (rmm User Servl ces)
!<<CA1ass 6iD>IlIIa1e»',\ ,1 «Form;» 1 ,1:!~~••~~ " " Il!mT'PlLsar_ ;1 ,
t"-''''~~E--I'
//
«Glass Module;>;>CPROVEEDOR
UNIVERSIDAD DE CIENCIAS COMERCIALES 48
SISTEMA DE INVENTARIO "SIM"
2.1.2 DISEÑO LOGICO
En el diseño lógico es muy importante ya que descompone el modelo de servicios en tres
partes principales como son' los Servicios de Usuarios, Los Servicios del Negocio y los
Servicios de los Datos
En la capa de Servicios del Usuario suele utilizarse para introducir, editar y presentar
información y también puede pensarse en ellos como en servicios de interfaz. Estas
actividades suponen una gran parte del desarrollo tradicional del Software en las
implementaciones Cliente/Servidor
En la capa de Servicios del Negocio suelen ser objetos que realizan una cierta accion, como
agregar un producto o procesar el pedido de un cliente Estos servicios se llaman desde el
nivel de servicios de interfaz (Servicios del Usuario)
En la capa de Servicios de Datos se encarga de la interfaz con la Base de Datos en un S
Servidor(SQL SERVER).
UNIVERSIDAD DE CIENCIAS COMERCIALES 49
SISTEMA DE INVENTARIO "SIlW'
«Form»frmmae!llojnven~a
«Class Module»CINVENTARlO «ClassModule»
CINVENTAFISICO
«ClassModule»CSAlIOAS
/
«CI.SOMOdUfe>( /
CPROVEEOORV /
«C)S&IMOdu\e»CUSUARIOS
«Craso Modula»~CRECEPCIONES "'"
"-
, """"
«fQm\»
!,,"Tipo_Salida.
«Form»1nn\menta_Fi3Cl>
«Farm»frrnRecepciones
«Form»¡,,"Salidas
\\
«·FOlm»!,,"Unidad_Madida
«Form»I""Ac,,,.,
«Folm»frmlnicio
«Form»ftmeierce
1 <.c:Form». f,,"Acercade
«Class Module»CCIERRE
UNIVERSIDAD DE CIENCIAS COMERCIALES so
SISTEMA DE INVENTARIO "SIM"
2.1.3 DISEÑO FíSICO (COMPONENTES)
INVENTARIO
OataSaseRecoldset
o
Connecüons
'""',""-,~"O
O Men"
O O "'0'T1mer
lobo\Fl'ame Form Tutao> Commanda"tloo ComboSox
UNIVERSIDAD DE CIENCIAS COMERCIALES 51
SISTElVIA DE INVENTARIO "SIM"
2.1.4 CODIFICACJON
CÓDIGO DEL FORMULARIO DE INICIO:
'##Modelld==3FD6A7D80032
Private Sub Timer1_TimerO
If Timer1.lnterval =2000 Then
frmAcceso Show
Unload Me
End If
End Subl
UNIVERSIDAD DE CIENCIAS COMERCIALES 52
SISTEMA DE INVENTARIO "SIM"
CÓDIGO DEL FORMULARIO DE ACCESO:
'##Modelld=3FD6A7DD017C
Private Sub cmdAceptar_ClickO
If Adodc1 Recordset.RecordCount >= 1 Then
Adodc1 Recordset MoveFirst
E,nd If
Rem BUSQUEDA DE LA CLAVE EN LA TABLA USUARIO
Do While Not Adodc1 Recordset EOF
If Adodc1 Recordset EOF Then
Exit Do
End If
If Trim(Adodc1 Recordset Fields("CONTRASEÑA")) = Trim(txtclave Text) Then
txtUsuario Text = Adodc1 Recordset.Fields("NOMBRE_USUA")
MsgBox ("CLAVE AUTORIZADA")
frmprincipal Show
Exit Sub
End If
Adodc1.Recordset MoveNext
Loop
MsgBox ("CLAVE NO AUTORIZADA, INVESTIGUE lO)
txtUsuario.Text = ""
txtclave Text =""txtclave.SetFocus
Ene! Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 53
SISTEMA DE INVENTARIO "SIM"
'1I#Modelld=3FD6A7DD01 B8
Private Sub cmdCancelar_Click()
MsgBox ("HASTA LUEGO")
Unload Me
End Sub
Private Sub txtclave_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then,cmdAceptar.SetFocus
End If
Do While Not Adodc1 Recordset EOF
If Adodc1 Recordset EOF Then
Exit Do
End If
If Trim(Adodc1 Recordset.Fields("CONTRASEÑA"» = Trim(txtclave Text) Then
txtUsuario Text = Adodc1.Recordset.Fields("NOMBRE_USUA")
Exit Sub
End If
Adodc1 Recordset MoveNext
Loop
End Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 54
SISTEMA DE INVENTARIO "SIM"
CÓDIGO DEL FORMULARIO PRINCIPAL:
'##Modelld=3FD6A7DF02B2
Private Sub mnuAcerca_ClickO
frmprincipal Enabled = False
frmAcercade Show
Ena Sub
'##Modelld=3FD6A7DF02E4I
Private Sub mnuCierre_Click()
frmCierre Show
Unload Me
End Sub
'##Modelld=3FD6A7DF0352
Private Sub mnulnventario_ClickO
frmmaestroinventa Show
Unload Me
End Sub
'##Modelld=3FD6A7DF038E
Prívate Sub mnulnventFisico_ClickO
frmlnventa_Fisico.Show
Unload Me
UNIVERSIDAD DE CIENCIAS COMERCIALES 55
SISTEMA DE INVENTARIO "SlM"
'##Modelld=3FD6A7E00014
Prívate Sub mnuProveedor_ClickO
frmProveedor Show
Unload Me
End Sub
'##Modelld=3FD6A7E00082
Private ~ub mnuRecepciones_ClickO
frmRecepciones Show
Unload Me
End Sub
'##Modelld=3FD6A7EOOOB4
Prívate Sub mnuSalidas_ClickO
frmSalidas Show
Unload Me
End Sub
'##Modelld=3FD6A7E00122
Prívate Sub mnusalir_Click()
End
End Sub
'##Modelld=3FD6A7E00190
Private Sub mnuTipoRecep_ClickO
frmTipo_Entradas.Show
Unload Me
cnd Sub
SISTEMA DE INVENTARIO "SIM"
'##Modelld=3FD6A7E001 FE
Private Sub mnuTipoSalLClickO
frmTipo_Salidas Show
Unload Me
End Sub
'##Modelld=3FD6A7E0026C
Private 9ub mnuUnidadMedida_CljckO
frmUnidad_Medida Show
Unload Me
End Sub
'##Modelld=3FD6A7E002DA
Prívate Sub mnuUsuario_ClickO
frmUsuario Show
Unload Me
End Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 57
SISTEMA DE INVENTARIO "SIM"
CÓDIGO DEL FORMULARIO MAESTRO DE INVENTARIO:
Oplion Explicil
'##Modelld=3FD6A7E403C2
Privale CN As Conneclion
'##Modelld=3FD6A7E50014
Privale RS As Recordsel
,:'fflModelld=3FD6A7E50015
Prívate X As Integer
UNIVERSIDAD DE CIENCIAS COMERCIALES 58
(1)
.sISTEMA DE INVENTARIO "SIM"
'##Modelld=3FD6A7E500B4
Private Sub cmdActualizar_Click()
Dim PRODUCT02 As CINVENTARIO
Set PRODUCT02 = New CINVENTARIO
Rem TRASLADAR LOS CAMBIOS A LOS DATOS DE LA CLASE
PRODUCT02 COD_PROD = RTrim(txtCodigo Text)
PRODUCT02 DESCRIPCION = txtDescripcion Text
PRODUCT02.UM = lxtUm.Text
PRODUCT02 PRECIO = Val(lxtPrecio Text)I
PRODUCT02.COD_PROV = txtCod_Prov Text
PRODUCT02 EXISTENCIA = txtExistencia Text
PRODUCT02 NIVEL_MINIMO = txtNivelMinimo Text
PRODUCT02.MODIFICAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible = False
lxtCodigo Visible = False
lxtDescripcion Visible = False
txtUm Visible = False
txtPrecio Visible = False
lxtCod_Prov Visible = False
lxtExistencia.Yisible = False
lxtNivelMinímo Visible = False
IblCodigo.Yisible = False
IblDescripcion Visible = False
IblUm.Visible = False
IblPrecio.Yisible = False
IblProveedor.Yisible = False
UNIVERSIDAD DE CIENCIAS COMERCIALES 59
SISTEMA DE INVENTARIO "SIM"
IblExistencia Visible = False
IblNivelMini Visible = False
IblModificar Visible = False
cmdGuardar Visible = False
cmdCancelar Visible =False
cmdActualizar Visible::: False
RS.MoveLast
DataGrid1 Refresh
Ms~Box ("REGISTRO ACTUALIZADO EN MAESTRO DE INVENTARIO")
End Sub
'##Modelld=3FD6A7E50122
Private Sub cmdAgregar_Click()
Rem BOTaN AGREGAR
txtCodigo.Visible = True
txtCodigo Enabled ::: True
txtDescripcion Visible = True
txtUm.Visible = True
txtPrecio Visible::: True
txtCod_ProvVisible ::: True
txtNivelMinimo Visible::: True
IblCodigo Visible = True
IblDescripcionVisible = True
IblUm Visible = True
IblPrecio.Visible ::: True
IblProveedoT Visible::: True
IblNivelMinLVisible ::: True
UNIVERSIDAD DE CIENCIAS COMERCIALES 60
SISTEMA DE INVENTARIO "SIM"
Ibletiqueta Visible =True
IblEncontrado Visible = False
cmdGuardar Visible = True
cmdCancelar Visible = True
cmdModifícar Enabled = False
cmdEliminar Enabled = False
Frame1 Visible = True
txtCodigo S~tFocus
Rem INICIALIZAR TEXTOSI
txtCodigo Text = " "txtDescripcion Text = .. "
txtUm Text = " "
txtPrecio Text = " "
txtCod_Prov.Text = ""
txtNivelMinimo Text =""
End Sub
'##Modelld=3FD6A7E50190
Prívate Sub cmdAnteríor_ClickO
Rem ESTA EN EL INICIO
Adodc1.Recordset MovePrevious
DataGrid1 Reflesh
cmdSiguiente Enabled = True
cmdFinal.Enabled = True
lf Adodc1 Recordset BOF Then
Adodc1 Recordset MoveFirst
cmdAnterior Enabled :: False
UNIVERSIDAD DE CIENCIAS COMERCIALES 61
SISTEMA DE INVENTARIO "SIM"
cmdlnicio Enabled :: False
End If
End Sub
'##Modelld=3FD6A7E502DA
Private Sub cmdBuscar_ClickO
Rem BUSCAR UN PRODUCTO POR MEDIO DEL CODIGO
Text1 Visible::: True
cmdEjecutar Visible::: TrueI
Text1 SetFocus
End Sub
'##Modelld=3FD6A7E50384
Prívate Sub cmdCancelar_Click()
Rem BOTaN CANCELAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1Visible::: False
txtCodigo Visible = False
txtDescripcionVisible = False
txtUm Visible = False
txtPrecio Visible::: False
txtCod_Prov Visible = False
txtNivelMinimo Visible = False
IblCodigo Visible = False
IblDescripcion Visible:: False
IblUm Visible:: False
IblPrecio Visible:: False
UNIVERSIDAD DE CIENCIAS COMERCIALES 62
SISTEMA DE INVENTARIO "SIM"
IblProveedor Visible = False
IblNivelMini Visible =False
Ibletiqueta Visible = False
IblModificar Visible = False
IblEncontrado Visible =False
cmdGuardarVisible = False
cmdCancelar Visible = False
cmdActualizarVisible =False
End Sub
'##Modelld=3FD6A7E6003C
Private Sub cmdEliminar_ClickO
Dim PRODUCT03 As CINVENTARIO
Set PRODUCT03 = New CINVENTARIO
Rem TRASLADAR LOS CAMBIOS A LOS DATOS DE LA CLASE
PRODUCT03 COD_PROD = RTrim(txtCodigo Text)
PRODUCT03 DESCRIPCION =txtDescripcion Text
PRODUCT03 UM =txtUm Text
PRODUCT03.PRECIO = Val(txtPrecio Text)
PRODUCT03 COD_PROV = txtCod_Prov.Text
PRODUCT03 NIVEL_MINIMO = txtNivelMinimo Text
PRODUCT03.ElIMINAR
IblEliminar Visible = True
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1Visible = False
bdCodigo.Visible = False
UNIVERSIDAD DE CIENCIAS COMERCIALES 63
SISTEMA DE INVENTARIO "SIM"
txtDescripcion Visible = False
txtUm Visible = False
txtPrecio Visible = False
txtCod_ProvVisible = False
txtNivelMinimoVisible = False
IblCodigoVisible =False
IblDescripcion Visible = False
IblUm Visible = False
Ibll~recio.Visible = False
IblProveedor Visible = False
IblNivelMini Visible = False
IblEliminar Visible = False
IblEncontrado.Visible =False
cmdGuardarVisible = False
cmdCancelar Visible = False
cmdActualizarVisible =False
If Adodc1 Recordset RecordCount = -1 Then
Else
Rem Adodc1 Recordset Update
Rem RS MoveLast
DataGrid1.Refresh
End If
MsgBox ("REGISTRO ELIMINADO EN MAESTRO DE INVENTARIO")
End Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 64
SISTEMA DE INVENTARIO "SIM"
'##Modelld=3F06A7E600AA
¡"'¡-ivate Sub cmdFinaLClickO
Rem ESTA EN ElINIC/O
Adodc1 Recordset Movelast
DataGrid1.Refresh
cmdSiguiente Enabled '= False
cmrlFinal Enabled = False
cmdAnterior Enabled = True
cmdlnicio Enabled = TrueI
End Sub
'##Modelld=3FD6A7E60118
Prívate Sub cmdGuardar_ClickO
Oim PRODUCTO As CINVENTARIO
Set PRODUCTO = New CINVENTARIO
PRODUCTO COD_PROO =LTrim(txtCodigo.Text)
PRODUCTO DESCRIPCION = txtDescripcion Text
PRODUCTO UM = txtUm Text
PRODUCTO.PRECIO = Val(txtPrecio Text)
PRODUCTO COO_PROV = txtCod_Prov Text
PRODUCTO NIVEL_MINIMO = Val(txtNivelMinimo Text)
PRODUCTO GUARDAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible = False
txtCodigo.visible = False
txtDescripcion Visible =False
txtUm Visible = False
UNIVERSIDAD DE CIENCIAS COMERCIALES 65
SISTEMADE INVENTARIO "SIM"
txtPrecio Visible = False
txtCod_Prov Visible = False
txtNivelMinimo Visible =False
Ibletiqueta Visible = False
IblCodigo Visible = False
IblDescripcion.Visible == False
IblUm Visible = False
IblPrecio Visible = False
IblProveedor Visible = FalseI
IblNivelMini Visible = False
Ibletiqueta Visible = False
cmdGuardar Visible = False
If Adodc1.Recordset.RecordCount = -1 Then
Else
Rem Adodc1 Recordset Update
DataGrid1.Refresh
End If
Msg80x ("REGISTRO ALMACENADO EN MAESTRO DE INVENTARIO")
End Sub
'##Modelld=3FD6A7E60188
Prívate Sub cmdlnicio_ClickO
Rem ESTA EN EL INICIO
Adodc1.Recordset MoveFirst
DataGrid1 Refresh
cmdAnterior.Enabled = False
cmdlnicio.Enabled =False
UNIVEJ1SIDAD DE CIENCIAS COMERCIALES 66
SISTEMA DE lNVENTARIO "SIM"
cmdSiguiente Enabled == True
End Sub
'##Modelld=3FD6A7E60262
Private Sub cmdModificar_ClickO
Rem MODIFICAR UN REGISTRO
cmdActualizar Visible::: True
IblModificar Visible = True
IblEncontrado.Visible = Fa\seI
Ibletiqueta Visible:: False
txlDescripcion SetFocus
End Sub
'##Modelld=3FD6A7E602DO
Private Sub cmdRetornar_ClickO
frmprincipal.Show
Unload Me
End Sub
'##Modelld=3FD6A7E60370
Prívate Sub cmdEjecutar_ClickO
Dim PRODUCT01 As CINVENTARIO
Set PRODUCT01 = New CINVENTARIO
Dim MBUS As String
MBUS :: RTrim(Text1 Text)
PRODUCT01.BUSCAR (MBUS)
Rem IfTrim(PROOUCT01 COO_PROO) :: Trim(Text1 Text) Then
UNIVERSIDAD DE ClENCIA8 COMERCIALES 67
SISTEMA DE INVENTARIO "SIM"
MsgBox ("COOIGO NO EXISTE")
txtCodigo Visible = True
txtCodigo Text:: PRODUCT01 COO_PROD
txtDescrípcion Text =PRODUCT01 DESCRIPCION
txtUm Text:: PROOUCT01 UM
txtPrecio Text = PRODUCT01 PRECIO
bctCod_Prov Text:: PRODUCT01 COO_PROV
txtNivelMinimo Text = PRODUCT01 NIVEL_MINIMO
Rem HACER VISIBLE LOS CAMPOSI
IblEncontrado Visible:: True
txtCodigo Visible = True
txtDescripcion Visible =True
txtUm Visible = True
txtPrecio Visible = True
txtCod_Prov Visible = True
Rem txtExistencia Visible = True
txtNivelMinimo Visible = True
IblCodigo Visible = True
IblDescripcion Visible:: True
IblUm Visible = True
IblPrecio Visible = True
IblProveedor Visible = True
IblNivelMini Visible:: True
cmdCancelarVisible = True
Frame1 Visible:: True
cmdModificar.Enabled :: True
cmdEliminar Enabled = True
UNIVERSIDAD DE CIENCIAS COMERCIALES 68
SISTEMA DE INVENTARIO "SIM"
Text1 Visible = False
cmdEjecutarVisible = False
Text1 Text = " "
Frame1 Visible = True
Rem End If
t.lld Sub
'##Modelld=3FD6A7E603DE
Prívate Sub cmdSíguiente ClickO, -Rem SE CORRE AL SIGUIENTE REGISTRO
Adodc1 Recordset MoveNext
DataGríd1 Refresh
cmdAnterior Enabled = True
cmdlnicio Enabled = True
If Adodc1 Recordset EOF Then
Adodc1 Recordset.MoveLast
cmdFinal Enabled = False
cmdSiguiente.Enabled = False
End If
End Sub
'##Modelld=3FD6A7E700AO
Private Sub Form_LoadO
Set CN = New Connection
Set RS = New Recordset
CN CursorLocation =adUseClient
UNIVERSIDAD DE CIENCIAS COMERCIALES 69
.,~~~
SISTEMA DE INVENTARIO "SIM"
CN.ConnectionString = "Provider=MSDASQL 1,Persist Security Info= a
Source=BD_INVENTARIO"
CN Open
Set RS ActiveConnection = CN
RS CursorType =adOpenForwardOnly
RS Open "select * from inventario"
End Sub
'##Modelld=3FD6A7E70140
Prívate ~ub Text1_KeyPress(KeyAscii As Integer)
If (KeyAscii =vbKeyReturn) Then
cmdEjecutar SetFocus
End If
End Sub
'##Modelld=3FD6A7E70258
Private Sub lxtCod_Prov_KeyPress(KeyAscii As Integer)
!f (KeyAscii = vbKeyReturn) Then
lxtNivelMinimo SetFocus
End If
End Sub
'##Modelld=3FD6A7E703A2
Prívate Sub lxtCodigo_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
If Adodc1 Recordset RecordCount >= 1 Then
Adodc1 Recordset MoveFirst
End If
UNIVERSIDAD DE CmNCIAS COMERCIALES 70
SISTEMA DE INVENTARIO "SIM"
Do While Not Adodc1.Recordset EOF
If Adodc1 Recordset EOF Then
Exit Do 'si no lo encuentra continua
End If
If Trim(Adodc1.Recordset Fields("COD_PROD")) = Trim(txtCodigo Text) Then
MsgBox ("Registro existe ")
txtCodigo = uu
txtCodigo.SetFocus
Exit Sub
End If
Adodc1 Recordset MoveNext
Loop
txtDescripcion SetFocus
End If
End Sub
'##Modelld=3FD6A7E80104
Prívate Sub txtDescripcion_KeyPress(KeyAscíi As Integer)
If (KeyAscíi = vbKeyReturn) Then
txtUm.SetFocus
End If
End Sub
'##Modelld=3FD6A7E80212
Plivate Sub txtPrecio_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
txtCod_Prov.SetFocus
UNIVERSIDAD DE CIENCIAS COMERCIALES 71
.sISTEMA DE INVENTARIO "8IM"
End If
End Sub
'##Modelld=3F06A7E90208
Private Sub txtUm_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
txtPrecio.SetFocus
End If
End Sub,
Este formulario manda a llamar a una clase llamada CINVENTARIO y su código es el
siguiente
'variables locales para almacenar los valores de las propiedades
'##Modelld=3F06A7EC02F8
Prívate mvarCOO_PROO As String 'copia local
'##Modelld=3F06A7EC0366
Private mvarOESCRIPCION As String 'copia local
'##Modelld=3FD6A7ED0028
Private mvarUM As String 'copia local
'##Modelld=3F06A7EOOOC8
Private mvarCOO_PROV As String 'copia local
'##Modelld=3F06A7E001A4
Private mvarENTRAOAS As Double 'copia local
'##Modelld=3FD6A7E00244
Private mvarSAUDAS As Double 'copia local
'##Modelld=3FD6A7ED02EE
UNIVERSIDAD DE CIENCIAS COMERCIALES 72
SISTEMA DE INVENTARIO "SIM"
Private mvarEXISTENCIA As Double 'copia local
'#I:~Modelld=3FD6A7ED03CA
Private mvarNIVEL_MINIMO As Double 'copia local
'##Modelld=3FD6A7EE0082
Private mvarlNVENJISICO As Double 'copia local
'##Modelld=3FD6A7EE015E
P¡ivate mvarPREC10 As Double 'copia local
'##Modelld=3FD6A7EE023C
Private CN As ConnectionI
'##Modelld=3FD6A7EE0276
Private RS As Recordset
'variables locales para almacenar los valores de las propiedades
'##Modelld=3FD6A7EE0277
Private mvarINVEN-'NI As Double 'copia local
'##Modelld=3FD6A7EE0352
Private mvarFECHAJISI As Date 'copia local
'##Modelld=3FD6A7EF0046
Private mvarMES As String 'copia local
'##Modelld=3FD6A7EF0154
Public Property Let MES(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax. X MES = 5
mvarMES = vData
Enrl PrC\¡:Ierty
',I,t},IModelld=3FD6A7EF02DA
UNIVERSIDAD DE CIENCIAS COMERCIALES 73
~~~~
SISTEMA DE INVENTARIO "SIM"
Public Property Get MESO As String
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax Debug Print X MES
MES = mvarMES
End Property
'!F#Modelld=3FD6A7FOOOOO
Puhlic Property Let FECHAJISI(ByVal vData As Date)
'se lisa al asignar un valor a la propiedad, en la parte izquierda de una asignación,'Syntax X.FECHAJISI = 5
mvarFECHA_FISI = vData
End Property
'##Modelld=3FD6A7F001 B8
Public Property Get FECHAJISIO As Date
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax Debug Print X FECHAJISI
FECHAJISI = mvarFECHAJISI
End Property
'##Modelld=3FD6A7F00294
Pllblic Property Let INVENJNI(ByVal vData As Double)
'se llsa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax' X.INVENJNI = 5
nworlNVENJNI = vData
r:nrl Property
UNIVERSIDAD DE CIENCIAS COMERCIALES 74
SISTEMA DE INVENTARIO "SIM"
'fR'íModelld=3FD6A7F101 EO
Public Property Get INVEN_INIO As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax. Debug Print X INVEN-'NI
INVEN_INI = mvarINVEN-'NI
End Property
'##Modelld=3FD6A7F1032A
Public Sflb MODIFICAR()
Set RS.ActiveConnection = CN
RS LockType = adLockOptimistic ' NECESARIO PARA LEER Y ESCRIBIR
RS CursorType = adOpenKeyset 'ACTIVA EL CURSOR
RS.Open "SELECT * FROM INVENTARIO"
RS MoveFirst
Do While Not RS EOF
If RS EOF Then
Exit Sub
Else
If RTrim(RS.Fields("COD_PROD")) = COD_PROD Then
Rem MsgBox ("LO ENCONTRE")
RS.Fields(UCOD_PRODU) = COD_PROD
RS.Fields("DESCRIPCION") = DESCRIPCION
RS.Fields("UM") = UM
RS Fields("PRECIO") = PRECIO
RS Fields("COD_PROV") = COD_PROV
RS Fields("NIVEL_MINIMOU) = NIVEL_MINIMO
HfWpdate
UNIVERSIDAD DE CIENCIAS COMERCIALES 75
SISTEMA DE INVENTARIO "SIM"
Exit Sub
Rem Else
Rem MsgBox ("CODIGO = ") &RS Fields("COD_PROD")
End If
RS MoveNext
End If
Loop
End Sub
'##Modelld=3FD6A7F103D4
Public Sub GUARDARO
Set RS AetiveConnection = CN
RS.LockType = adLockOptimistic' NECESARIO PARA LEER Y ESCRIBIR
RS CursorType = adOpenKeyset 'ACTIVA EL CURSOR
RS.Open "SELECT· FROM INVENTARIO"
RS.AddNew
RS.Fields("COD_PROD") = COD_PROD
RS Fields("DESCRIPCION") = DESCRIPCION
RS.Fields("UM") = UM
RS Fields("PRECIO") = PRECIO
RS.Fields("COD_PROV") = COD_PROV
RS.Fields("EXISTENCIA") = O
RS Fields("NIVEL_MINIMO") =NIVEL_MINIMO
RS Fields("ENTRADAS") =O
RS Fields("SALlDAS") = O
RS Fields("INVE_INI") =O
R8.Fields("INVEN_FI8ICO") = O
UNIVERSIDAD DE CIENCIAS COMERCIALES 76.,
SISTEMA DE INVENTARIO "SIM"
RS Fields("FECHAJISI") = #1/1/2001#
RS Fields("MES") = " "
RS Update
End Sub
'##Modelld=3F06A7F2008C
flllblic Sub CLASS_INITIALlZEO
Set CN = New Connection
Set RS '7 New Recordset
CN.ConnectionString = "Provider=MSOASQL 1,Persist Security Info=False;Oata
Source=BO_INVENTARIO"
CN.Open
End Sub
'##Modelld=3F06A7F20168
Public Sub ELlMINARO
Sel RS ActíveConnection = CN
RS LockType = adLockOptimistic • NECESARIO PARA LEER Y ESCRIBIR
RS CursorType = adOpenKeyset •ACTIVA EL CURSOR
RS Open "SELECT • FROM INVENTARIO"
RS MoveFirst
Do While Not RS EOF
lf RS.EOF Then
Exit Sub
Flse
11 RTrim(RS Fields("COO_PROO"» = COO_PROO Then
Rem MsgBox ("LO ENCONTRE")
UNIVERSIDAD DE CIENCIAS COMERCIALES 77
~~~~
SISTEMA DE INVENTARIO "SIM"
RS Delete
Exit Sub
Rem Else
Rem MsgBox ("CODIGO = ") &RS Fields("COD_PROD")
End If
RS MoveNext
End 1'1
Loop
End Sub,
'##Modelld=3FD6A7F20212
Publíc Sub BUSCAR(MBUSCA As String)
Dim MBUSCAR As String
MBUSCAR = MBUSCA
Set RS ActiveConnection = CN
RS LockType = adLockOptimistic ' NECESARIO PARA LEER Y ESCRIBIR
RS CursorType = adOpenKeyset 'ACTIVA EL CURSOR
RS Open "SELECT' FROM INVENTARIO order by cod_prod "
Rem MsgBox (" 1 MBUSCAR = ") &MBUSCAR
RS.MoveFirst
Do While Not RS.EOF
If RS EOF Then
MsgBox ("REGISTRO NO EXISTE")
Exit Sub
Else
1'1 RTrim(RS.Fields("COD_PROD") =MBUSCAR Then
Rem MsgBox ("LO ENCONTRE")
UNIVERSIDAD DE CIENCIAS COMERCIALES 78
•
SISTEMA DE INVENTARIO "SIM"
COD_PROD = RS Fields(UCOD_PRODU)
DESCRIPCION = RS Fields(UDESCRIPCIONU)
UM = RS Fields(UUMU)
PRECIO = RS Fields(UPRECIOU)
Rem EXISTENCIA = RS Fields(UEXISTENCIAU)
COD_PROV = RS.Fields(UCOD_PROVU)
NIVEL_MINIMO = RS Fields(UNIVEL_MINIMOU)
Exit Sub
Else
Rem MsgBox (UCODIGO = U) & RS.Fields(UCOD_PRODU)
End If
RS.MoveNext
End If
Loop
End Sub
''##Modelld=3FD6A7F2038E
Public Property Let PRECIO(ByVal vData As Double)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax. X PRECIO = 5
mvarPRECIO = vData
End Property
'##Modelld=3FD6A7F30208
Pllblic Property Get PRECIOO As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'SynlclX. Debug.Print X PRECIO
UNIVERSIDAD DE CIENCIAS COMERCIALES 79.,
SISTEMA DE INVENTARIO "SIM"
PRECIO = mvarPRECIO
End Properly
'##Modelld=3FD6A7F30352
Publíc Property Lel INVENJISICO(ByVal vDala As Double)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'8yntax X INVENJISICO = 5
mvarlNVENJISICO = vDala
End Property,
'##Modelld=3FD6A7F40190
Publíc Property Gel INVENJISICOO As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Synlax: Debug Prinl X INVENJISICO
INVENJISICO = mvarlNVENJISICO
End Property
'##Modelld=3FD6A7F402DA
Publíc Property Lel NIVEL_MINIMO(ByVal vDala As Double)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax X NIVEL_MINIMO = 5
mvarNIVEL_MINIMO = vDala
End Property
UNIVERSIDAD DE CIENCIAS COMERCIALES 80
SISTEMA DE INVENTARIO "SIM"
'##Modelld=3FD6A7F5014A
Public Property Gel NIVEL_MINIMOO As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Synlax Debug.Prinl X NIVEL_MINIMO
NIVEL_MINIMO = mvarNIVEL_MINIMO
End Property
'##Modelld=3FD6A7F50294
Public Property Lel EXISTENCIA(ByVal vDala As Double),'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax. X EXISTENCIA = 5
mvarEXISTENCIA = vDala
End Property
'##Modelld=3FD6A7F60366
Publíc Property Get EXISTENCIAO As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Synlax Debug.Prinl X.EXISTENCIA
EXISTENCIA = mvarEXISTENCIA
End Property
'##Modelld=3FD6A7F700C8
Public Property Let SALlDAS(ByVal vData As Double)
'se usa al asignar un valor a la propiedad, en la parle izquierda de una asignación
'Syntax' X SALIDAS = 5
mvarSALlDAS = vData
lind Property
UNIVERSIDAD DE CIENCIAS COMERCIALES 81
SISTEMA DE INVENTARIO "SIM"
'##Modelld=3FD6A7F7035C
Public Property Get SALlDASO As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax Debug Print X.SALlDAS
SALIDAS = mvarSALlDAS
End Property
'##Modelld=3FD6A7F800BE
Public Property Let ENTRADAS(ByVal vData As Double),'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax. X ENTRADAS = 5
mvarENTRADAS = vData
End Property
'##Modelld=3FD6A7F80348
Public Property Get ENTRADASO As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación.
'Syntax Debug Print X ENTRADAS
ENTRADAS = mvarENTRADAS
End Property
'##Modelld=3FD6A7F900E6
Public Property Let COD_PROV(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación.
'Syntax: X.COD_PROV = 5
mvarCOD_PROV = vData
End Ploperty
UNIVERSIDAD DE CIENCIAS COMERCIALES 82
SISTEMA DE INVENTARIO "SIM"
'##Modelld::::3FD6A7F9D37A
Public Property Get COD_PROVO As String
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax Debug Print X COD_PROV
COD_PROV:::: mvarCOD_PROV
End Property
'##Mcdelld::::3FD6A7FAD1 DE
Public Property Let UM(ByVal vData As String)I
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación.
'Syntax X UM :::: 5
mvarUM :::: vData
End Property
'##Modelld::::3FD6A7FAD3DE
Public Property Get UM() As String
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax Debug Print X UM
UM:::: mvarUM
End Property
'##Modelld::::3FD6A7FBD172
Public Property Let DESCRIPCION(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'~ynta)( X DESCRIPCION :::: 5
mvarDESCRIPCION :::: vData
lml Pmperty
UNIVERSIDAD DE CIENCIAS COMERCIALES 83
SISTEMA DE INVENTARIO "SIM"
':.Wi·Modelld=3FD6A7FC005A
Public Property Get DESCRIPCIONO As String
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación.
'Syntax. Debug Print X DESCRIPCION
DESCRIPCION = mvarDESCRIPCION
End Property
'##Modelld=3FD6A7FC020a
Public Property Let COO PROD(ByVal vOata As String), -'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax X COD_PROO = 5
mvarCOD_PROO = vData
End Property
'##Modelld=3FD6A7F00122
Public Property Get COD]RODO As String
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax Debug Prínt X COO_PROO
COO_PROO = mvarCOO_PROO
End Property
UNIVERSIDAD DE CffiNCIAS COMERCIALES 84•.:.";~. '''''i ;,~.
SISTEMA DE INVENTARIO "SIM"
UNIVERSIDAD DE CIENCIAS COMERCIALES 85
SISTEMA DE INVENTARIO "8IM"
CÓDIGO DEL FORMULARIO INVENTARIO FIS/CO:
Option Explicit
'##Modelld=3FD6A82A014C
Private CN As Connection
'#'#Modelld=3FD6A82A014F
PI ivate RS As Recordset
'##Modelld=3FD6A82A0186
Private X As Integer\
'##Modelld=3FD6A82A01 F4
Private Sub cmdActualizar_Click{)
Dim PRODUCT02 As CINVENTAFISICO
Set PRODUCT02 = New CINVENTAFISICO
PRODUCT02 COD_PROD = RTrim(txtCodigo Text)
PRODUCT02 INVEN_FISICO = txtlnven_Fisico Text
PRODUCT02.FECHA_FISI = txtFecha_Fisica.Text
PRODUCT02 MES := txtMes.Text
PRODUCT02 MODIFICAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible = False
txtCodigo Visible = False
txtDescripcion Visible = False
txtUm Visible = False
txt/nven_Fisico Visible = False
txtFecha_Fisica Visible := False
IblCodigo Visible = False
UNIVERSIDAD DE CIENCIAS COMERCIALES 86
SISTEMA DE INVENTARIO "SIM"
IblDescripcion Visible = False
IblUm Visible = False
Ibllnven_FisicoVisible = False
IbIFecha_Fisica.Visible = False
IblModificarVisíble =False
cmdGuardar Visible = False
c:mclCancelar Visible = False
cmdActualizar Visible = False
RS MoveLast1
DataGrid1 Refresh
MsgBox ("REGISTRO ACTUALIZADO EN MAESTRO DE INVENTARIO")
End Sub
'##Modelld=3FD6A82A0262
Private Sub cmdAgregar_ClickO
Rem BOTaN AGREGAR
txtCodigo Visible = True
txtCodigo Enabled = True
txtDescripcion Visible = True
txtUm Visible = True
txtlnven_FisicoVisible = True
txtFecha_Fisica Visible = True
txtMes Visible = True
IblCodigo Visible = True
IblDescripcion Visible = True
IblUmVisible = Trua
Ibllnven_FisicoVisible = True
UNIVERSIDAD DE CIENCIAS COMERCIALES 87
SISTEMA DE INVENTARIO "SIM"
IblFecha_Fisica Visible::: True
IblMes Visible = True
Ibletiqueta.Visible = True
IblEncontrado Visible = False
cmdGuardar Visible = True
cmdCancelar Visible::: True
Giy¡dModificar Enabled = False
cmdEliminar.Enabled = Fa!se
Frame1 Visible = TrueI
txtCodigo SetFocus
Rem INICIALIZAR TEXTOS
txtCodigo Text = 11 11
txtDescripcion Text = 11 11
txtUm Text = ""
txtlnven_Fisico Text::: 11 11
txtFecha_Fisica.Text ::: 11 11
txtMes Text = " 11
End Sub
'##Modelld=3FD6A82A02DO
Private Sub cmdAnterior_ClickO
Rem ESTA EN EL INICIO
Adodc1 Recordset MovePrevious
DataGrid1.Refresh
cmd8iguiente Enabled = True
cmdFinal.Enabled =True
UNIVERSIDAD DE CIENCIAS COMERCIALES 88
SISTEMA DE INVENTARIO "SIM"leDre>.!.. ' .. l.~~,
Ir I\rlodc1 Recordset BOF Then
Adodc1 Reeordset MoveFirst
cmdAnterior Enabled = False
cmdlnicio.F.nabled = False
End If
End Sub
'##Modelld=3FD6A82A033E
Private Sub cmdBuscar_ClickOI
Rem BUSCAR UN PRODUCTO POR MEDIO DEL CODIGO
Text1 Visible =True
cmdEjecutar Visible::: True
Text1 SetFocus
End Sub
'##Modelld:::3FD6A82A03AC
Private Sub cmdCancelar_Click()
Rem BOTON CANCELAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible = False
txtCodigo Visible::: False
txtDescripcion Visible = False
bctUm Visible:: False
txtlnven_Fisico Visible::: False
tx'(Fecha_Fisica Visible::: False
bdMes.Visible::: False
IblCodigo.Visible ::: False
UNIVERSIDAD DE CIENCIAS COMERCIALES 89
SISTEMA DE INVENTARIO "SIM"
IblDescripcionVisible = False
IblUm Visible = False
Ibllnven_Fisico Visible = False
IblFecha_Fisica Visible = False
IblMes Visible = False
Ibletiqueta Visible = False
IblModificar Visible = False
IblEncontrado Visible = False
cmdGuardar Visible = FalseI
cmdCancelar Visible = False
cmdActualizar Visible = False
cmdAgregar Enabled = True
cmdlnicio Enabled = True
cmdSiguiente Enabled = True
cmdAnterior Enabled = True
cmdFínal Enabled = True
cmdBuscar Enabled =True
cmdModificar Enabled = False
End Sub
'##Modelld=3FD6A82B0064
Prívate Sub cmdEjecutar_ClickO
Dim PRODUCT01 As CINVENTAFISICO
Set PRODUCT01 = New CINVENTAFISICO
Dim MBUS As String
MBUS = RTrim(Text1 Text)
PRODUCT01.BUSCAR (MBUS)
UNIVERSIDAD DE CIENCIAS COMERCIALES 90
SISTEMA DE INVENTARIO "SIM"
t><1CodigoVisible =True
txtCodigo Text =PRODUCT01.COD_PROD
txtDescripcion Text = PRODUCT01 DESCRIPCION
txtUm Text = PRODUCT01 UM
txtlnven_Fisico.Text = PRODUCT01 INVEN_FISICO
txtFecha_Fisica.Text = PRODUCT01 FECHA_FISI
ildMs5.Text ~ PRODUCT01 MES
Rem HACER VISIBLE LOS CAMPOS
IblEncontrado Visible =TrueI
txtDescripcion Visible = True
txtUm Visible = True
txtlnven_Fisico.Visible = True
txtFecha_Fisica Visible = True
txtMesVísible = True
IblCodigo Visible = True
IblDescripcion.Visible = True
IblUm Visible = True
Ibllnven_Fisico Visible = True
IblFecha_Fisica Visible = True
IblMesVisible = True
cmdCancelar Visible = True
Rem cmdActualizar Visible = True
Frame1 Visible = True
cmdModificar Enabled = True
Text1Visible = False
cmdEjecutarVisible = False
crnd/\gregar.Enabled = False
UNIVERSIDAD DE CIENCIAS COMERCIALES 91
SISTEMA DE INVENTARIO "SIM"
cmdlnicío Enabled = False
cmdSiguiente Enabled = False
cmdAnterior Enabled = False
cmdFinal Enabled = False
cmdBuscar.Enabled :;: False
Text1.Text =11 11
Heril txtDescripcion SetFocus
Frame1 Visible = True
End SubI
'##Modelld=3FD6A82BOOD2
Private Sub cmdElimínar_ClickO
Dim PRODUCT03 As CINVENTAFISICO
Set PRODUCT03 =New CINVENTAFISICO
Rem TRASLADAR LOS CAMBIOS A LOS DATOS DE LA CLASE
PRODUCT03 COD_PROD = RTrim(txtCodigo Text)
PRODUCT03 DESCRIPCION = txtDescripcíon Text
PRODUCT03 UM = txtUm.Text
PRODUCT03 INVEN_FISICO = Val(bctlnven_Físico Text)
PRODUCT03 FECHA_FISI = txtFecha_Fisica.Text
PRODUCT03.MES = txtMes Text
PRODUCT03 ELIMINAR
IblEliminar Visible =True
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible = False
bctCodigo Visible = False
t)<iDescripcionVisible :;: False
UNIVERSIDAD DE CIENCIAS COMERCIALES 92
SISTEMA DE JNVENTARIO "SIM"
)xtUm Visible = False
txtlnven FisicoVisible = False
txtFecha_Fisica Visible = False
!blCodigo Visible = False
IblDescripcion Visible =False
IblUm Visible = False
lbllnven_Fisico Visible = False
IblFecha_Fisica Visible = False
IblEliminar Visible:: FalseI
IblEncontradoVisible:: False
cmdGuardar Visible = False
cmdCancelar Visible = False
cmdActualizar.Visible =False
If Adodc1.Recordset RecordCount =-1 Then
Else
DataGrid1 Refresh
End If
MsgBox ("REGISTRO ELIMINADO EN MAESTRO DE INVENTARIO")
End Sub
'##Modelld=3FD6A82BO140
Private Sub cmdFinal_ClickO
Rem ESTA EN EL INICIO
Adodc1 Recordset MoveLast
DataGrid1 Refresh
cmdSlglliente Enabled = False
cmdFina1.Enabled = False
cmdf\nterior.Enabled = True
UNIVERSIDAD DE CIENCIAS COMERCIALES 93
SISTEMA DE INVENTARIO "SIM"
cmdlnicio Enabled :::: True
End Sub
'##Modelld::::3FD6A82B01AE
Private Sub cmdGuardar ClickO
Dim PRODUCTO As CINVENTAFISICO
Set PRODUCTO:::: New CINVENTAFISICO
PRODUCTO COD_PROD:: RTrim(txtCodjgo Text)
PRODUCTO lNVEN_FISICO :::: Val(txtlnven_Fisico.Text)I
PRODUCTO FECHA_FISI :::: txtFecha_Fisica Text
PRODUCTO MES:::: txtMes Text
PRODUCTO GUARDAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible:::: False
txtCodigo Visible:::: False
txtDescrípcion Visible:::: False
txtUm'visible :::: False
txtlnven_Fisico Visible:::: False
txtFecha_Fisica Visible:::: False
txtMes Visible:::: False
lbletiqueta Visible:::: False
IblCodigo Visible:::: False
IblDescripcion Visible:::: False
IblUm Visible:::: False
Ibllnven_Fisico.Visible:::: False
IbIFecha_Fisica'visible:::: False
IblMes Visible:::: False
UNIVERSIDAD DE CIENCIAS COMERCIALES 94
SISTEMA DE INVENTARIO "SIM"
lbletiqueta,Visible ::: False
cmdGuardar Visible::: False
If Adodc1.Recordset.RecordCount::: -1 Then
Else
DataGrid1 Refresh
End If
MsgBox ("CANTIDAD GRABADO EN INVENTARIO FISICO")
End Sub
I
'##Modelld=3FD6A82B0258
Prívate Sub cmdlnicio_ClickO
Rem ESTA EN EL INICIO
Adodc1 Recordset MoveFirst
DataGrid1.Refresh
cmdAnterior Enabled = False
cmdlnício.Enabled = False
cmdSiguiente Enabled = True
End Sub
'##Modelld=3FD6A82B02C6
Prívate Sub cmdModificar_ClickO
Rem MODIFICAR UN REGISTRO
cmdActualizar Visible::: True
IblModificar Visible::: True
IblEncontrado Visible::: False
Ibk~tiqueta.Visible::: False
txtD~scripcion SetFocus
UNIVERSIDAD DE CIENCIAS COMERCIALES 95
SISTEMA DE INVENTARIO "SIM"
End Sub
'##Modelld=3FD6A8260334
Private Sub cmdRetornar_ClickO
frmprincipal Show
Unload Me
Fnd Sub
t##Modelld=3FD6A82B03D4I
Private Sub cmdSiguiente_ClickO
Rem SE CORRE AL SIGUIENTE REGISTRO
Adodc1.Recordset MoveNext
DataGrid1.Refresh
cmdAnterior Enabled = True
cmdJnicio.Enabled :: True
If Adodc1.Recordset.EOF Then
Adodc1 Recordset MoveLast
cmdFinal Enabled = False
cmdSiguiente.Enabled :: False
End Jf
End Sub
'##Modelld=3FD6A82C008C
Private Sub Form_LoadO
Set eN = New Connection
Set RS = New Recordset
CJ\l.CursorLocation :: adUseClient
UNIVERSIDAD DE CmNCIAS COMERCIALES 96
SISTEMA DE INVENTARIO ".8JM"
CN ConnectionString :: "Provider=MSDASQL 1,Persist Security Info=False,Data
Source=BDJNVENTARIO"
CN Open
Set RS ActiveConnection = CN
RS.CursorType = adOpenForwardOnly
RS.Open "seleet * from INVENTARIO"
Fnd Sub
'##Modelld=3FD6A82C0136I
Private Sub txtCantidad_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
If txtCantidad.Text == "" Then
MsgBox "CANTIDAD DE PRODUCTO EN BLANCO FAVOR REVISE", vbCritical,
"CAMPO EN BLANCO"
Exit Sub
Else
txtFecha SetFoeus
End If
End If
End Sub
'##Modelld=3FD6A82C0244
Private Sub Text1_KeyPress(KeyAscii As Integer)
If (KeyAscji = vbKeyReturn) Then
cmdEjecutar.SetFocus
End If
E.nd Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 97
SISTEMA DE INVENTARIO "SIM"
'##Modelld=3F06A82C035C
Private Sllh txtCodigo_KeyPress(KeyAscii As Integer)
If (f<eyAscii :::: vbKeyReturn) Then
lf Adodc1.Recordset RecordCount >= 1 Then
Adodc1 Recordset MoveFirst
End If
II nim(AdtJdc1.Recordset Fields(ICOO_PROD"» = Trim(bctCódigo Text) Then
txtCodigo Enabled = False
txtDescripcion Enabled = FalseI
txtUm.Enabled = False
txtDescripcion.Text =Adodc1 Recordset Fields(IDESCRIPCION")
txtUm Text = Adodc1.Recordset Fields(IUM")
Else
Adodc1 Recordset MoveNext
If Adodc1 Recordset EOF Then
MsgBox ("REGISTRO NO EXISTE, INVESTIGUE POR FAVOR")
Exit Sub
End If
End If
txtlnven_Fisico SetFocus
End If
End Sub
'##Modelld=3FD6A82DOOBE
Privé\te Sub txtFecha_FISIC~KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
txtMes.SetFocus
UNIVERSIDAD DE CIENCIAS COMERCIALES 98
SISTEMA DE INVENTARIO "SIM"
End If
End Sub
'##Modelld:::3FD6A82D0208
Prívate Sub txtlnven_Fisico_KeyPress(KeyAscii As lnteger)
If (KeyAscií = vbKeyReturn) Then
txtFecha_Fisica.SetFocus
End If
End Sub
Este formulario manda a llamar a una clase llamada CINVENTAFISICO y su código es el
siguiente
'variables locales para almacenar los valores de las propiedades
'##Modelld=3FD6A830024E
Prívate mvarCOD_PROD As String 'copia local
'##Modelld:::3FD6A83002F8
Prívate mvarDESCRIPCION As String 'copia local
'##Modelld=3FD6A8300398
Private mvarUM As String 'copia local
'##Modelld=3FD6A831 001 E
Private mvarCANTlDAD As Double 'copia local
'##Modelld=3FD6A831 aOC8
Private mvarFECHA_FISI As Date 'copia local
'##Modelld=3FD6A831 0168
Pr¡vate rnvarMES As String 'copia local
IHJ:~Morlelld=3FD6A831 0244
UNIVERSIDAD DE CmNCIAS COMERCIALES 99
SISTEMA DE INVENTARIO "SIM"
Private mvarINVEN_FISICO As Double 'copia local
'##Modelld=3FD6A83102FO
Prívate CN As Connection
'##Modelld=3FD6A831 0320
Private RS As Recordset
'##Modelld=3FD6A831 0321
Public Property Let INVEN_FISICO(ByVal vData As Double)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación1
'Syntax X INVEN_FISICO = 5
mvarINVEN_FIS\CO = vData
End Property
'##Modelld=3FD6A8320082
Public Property Get INVEN_FISICOO As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax. Debug Print X.INVEN_FISICO
INVEN_FISICO = mvarINVEN_FISICO
End Property
'##Modelld=3FD6A832015E
Public Property Let MES(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax. X MES = 5
mvmMES = vData
Em:1 Property
UNIVERSIDAD DE CIENCIAS COMERCIALES 100
SISTEMA DE INVENTARIO "SIM"
'##Modelld=3F06A8320316
Public Prnrerty Get MESO As String
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax Debug Print X MES
MES = mvarMES
End Property
'##Modelld=3FD6A83203CO
Public Sub MODIFICAROI
Set RS ActiveConnection = CN
RS LockType = adLockOptimistic I NECESARIO PARA LEER Y ESCRIBIR
RS CursorType = adOpenKeyset 'ACTIVA EL CURSOR
RS Open "SELECT * FROM INVENTARIO"
RS.MoveFirst
Do While Not RS EOF
If RS EOF Then
Exit Sub
Else
If RTrim(RS.Fields("COO_PROD"»::: COO_PROD Then
Rem MsgBox ("LO ENCONTRE")
RS Fields(IINVEN_FISICO") = INVEN_FISICO
RS Fields(IFECHA_FISI") =FECHA_FISI
RS Fields("MES") =MES
RS Update
Exit Sub
Rem Else
Rem MsgBox ("CODIGO =") & RS Fields("COO_PROO")
UNIVERSIDAD DE CmNCIAS COMERCIALES 101
SISTEMA DE INVENTARIO "S1M"
End If
RS MoveNext
End If
Loop
End Sub
'##Modelld:;;;3FD6A8330046
Public Sub GUARDARO
Set RS ActiveConnection ::: CNI
RS LockType = adLockOptimistic ' NECESARIO PARA LEER Y ESCRIBIR
RS.CursorType = adOpenKeyset 'ACTIVA EL CURSOR
RS.Open "SELECT * FROM INVENTARIO ORDER BY COD_PROO"
RS.MoveFirst
Do While Not RS EOF
If RS EOF Then
Exit Sub
Else
If RTrim(RS Fields("COD_PROO"» = COD_PROD Then
Rem MsgBox ("LO ENCONTRE")
RS Fields("INVEN_FISICO") = INVEN_FISICO
RS.Fields("FECHA_FISI") = FECHA_FISI
RS Fields("MES") :: MES
RS Update
Exit Sub
Rem Else
Rem MsgBox ("CODIGO = ") & RS.Fields{"COO_PROD")
End If
UNIVERSIDAD DE CffiNCIAS COMERCIALES 102
SISTEMA DE INVENTARIO "SIM"
RS MoveNext
End If
Loop
End Sub
'##Modelld=3FD6A83300B4
Public Sub CLASS_INITIALlZEO
Sel eN ;:: New Connection
Set RS == New RecordsetI
CN.ConnectionString == "Provider==MSDASQL 1,Persist Security Info==False,Data
Source==BD_INVENTARIO"
CN Open
End Sub
'##Modelld==3FD6A8330122
Public Sub ELlMINARO
Set RS ActiveConnection ;:: CN
RS LockType == adLockOptimistic I NECESARIO PARA LEER Y ESCRIBIR
RS.CursorType == adOpenKeyset 1 ACTIVA EL CURSOR
RS Open "SELECT "* FROM INVENTARIO"
RS MoveFirst
Do While Not RS EOf
If RS EOF Then
Exit Sub
Flse
If RTrim(RS.Fields("COD_PROD"));:: COD_PROO Then
Rem MsgBox ("LO ENCONTRE")
UNIVERSIDAD DE CIENCIAS COMERCIALES 103
SISTEMA DE INVENTARIO "SIM"
RS Fields(IINVEN_FISICO") = 0#
RS.Update
Exit Sub
End If
RS MoveNext
End If
Loop
End Sub
'##Modelld=3FD6A8330190
Public Sub BUSCAR(MBUSCA As String)
Dim MBUSCAR As String
MBUSCAR = MBUSCA
Set RS ActíveConnection = CN
RS.LockType =adLockOptimistic I NECESARIO PARA LEER Y ESCRIBIR
RS CursorType = adOpenKeyset 'ACTIVA EL CURSOR
RS.Open "SELECT * FROM INVENTARIO order by cod_prod 11
Rem MsgBox (" 1 MBUSCAR = ") & MBUSCAR
RS MoveFirst
Do While Not RS EOF
If RS EOF Then
Exít Sub
EIsa
lf RTrim(RS Fíelds("COD_PROD")) = MBUSCAR Then
RetTI MsgBox (liLa ENCONTRE")
COO_PROD = RS Fíelds("COO_PROD")
DESCRIPCION = RS Fields("DESCRIPCION")
UNIVERSIDAD DE CIENCIAS COMERCIALES 104
SISTEMA DE INVENTARIO "SIM"
UM = RS Fields("UM")
If RS.Fields("inven_fisico") = 1111 Then
RS Fields("inven_fisico") = 0#
End If
INVEN_FISICO = RS.Fields(IINVEN_FISICO")
FECHA_FISI = RS Fields(IFECHA_FISI")
MES = RS Fields("MES")
Exit Sub
ElseI
Rem MsgBox ("CODIGO:: ") & RS Fields("COD_PROD")
End If
RS MoveNext
End If
Loop
End Sub
'##Modelld=3FD6A833D29E
Public Property Let FECHA_FISI(ByVal vData As Date)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax X FECHA =5
mvarFECHA_FISI = vData
End Property
'##Modelld=3FD6A834006E
Public Property Get FECHA_FISIO As Date
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax: Debug.Print X FECHA
UNIVERSIDAD DE CIENCIAS COMERCIALES 105
SISTEMA DE INVENTARIO "SIM"
FECHA~FISI == mvarFECHA_FISI
End Property
'##Model Id==3FD6A834014A
Public Property Let CANTIDAD(ByVal vData As Double)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Byntax X CANTIDAD == 5
mvarCANTIOAD == vData
End PropertyI
'##Modelld==3FD6A83402C6
Public Property Get CANTIDADO As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax. Debug Print X CANTIDAD
CANTIDAD = mvarCANTIDAD
End Property
'##Modelld==3FD6A83403DE
Public Property Let UM(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax. X.UM == 5
mvarUM = vData
End Property
'##Modelld=3FD6A8350172
Public Property Get UMO As String
'se LI§@ al recuperar un valor de una propiedad, en la parte derecha de una asignación
UNIVERSIDAD DE CIENCIAS COMERCIALES 106
SISTEMA DE INVENTARIO "SIM"
'8yntax. Debug Print X.UM
UM = mvarUM
End Property
'##Modelld=3FD6A835028A
Public Property Let DESCRIPC\ON(ByVal vData As String}
'se usa al <~8¡gnar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax X DESCRIPCION = 5
mvarDESCRIPCION = vData
End Property
'##Modelld=3FD6A836008C
Public Property Get DESCRIPCIONO As String
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax: Debug Print X.DESCRIPCION
DESCRIPCION = mvarDESCRIPCION
End Property
'##Modelld=3FD6A8360168
Public Property Let CaD_PROD(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax X COO_PROD = 5
mvarCOD_PROD = vData
End Property
UNIVERSIDAD DE CIENCIAS COMERCIALES 107
SISTEMA DE INVENTARIO "SIM"
'##Modelld=3FD6A836035C
Public Property Get COD_PRODO As String
'se usa al recuperar un valor de una propiedad 1 en la parte derecha de una asignación.
'Syntax: Oebug.Print X.COO_PROO
COO_PROD =mvarCOD_PROO
End Property
CÓDIGO DEL FORMULARIO DE PROVEEDORES:
Option Explicit
'##~nodelld=3FD6A84D021E
Private CN As Connection
';l#~~Hodelld=3FD6A84D0250
Prjv~te RS As Recordset
'JlN~NJodelld=3FD6A84D0251
UNIVERSIDAD DE CIENCIAS COMERCIALES 108
•;~... -.~:¡. ~~.~
SISTEMA DE INVENTARIO "SIM"
Prívate X As Integer
'##Modelld=Jr:D6A84D02BC
Private Sub cmdActualizar_ClickO
Dim PRODUr,T02 As CPROVEEDOR
Set PRODUCT02 =New CPROVEEDOR
Rem TRAS! ADAR LOS CAMBIOS A LOS DATOS DE LA CLASE
PRODUCT02 COD_PROV = RTrim(txtCod_Prov Text)
PRODUCT02 NOMBRE_PROVE = txtNombre_Prove TextI
PRODUCT02 D1RECCION = txtDireccion Text
PRODUCT02 TELEFONO = Val(txtTelefono.Text)
PRODUCT02 CELULAR = txtCelular.Text
PRODUCT02 EMA/L = txtEmaíl Text
PRODUCT02.MODIF/CAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible = False
txtCod_Prov.Visible = False
txtNombre_Prove Visible = False
txtDireccion Visible = False
txtTelefono Visible = False
txtCelular Visible = False
txtEmail Visible = False
IblCod_ProvVisible = False
IblNombre_Prove Visible = False
IblDireccion.Visible = False
Ibl relefono Visible = False
IblCelular.Visible =False
UNIVERSIDAD DE CIENCIAS COMERCIALES 109
SISTEMA DE INVENTARIO "SIM"
IblEmail Visible = False
IblModificar Visible = False
cmdGuardar Visible:: False
cmdCancelar Visible:: False
cmdActualizarVisible = False
If Adodc1 Recordset RecordCount:: -1 Then
Else
Rem Adodc1 Recordset.Update
Rem RS MoveLast1
Rem Adodc1.Recordset.MoveLast
DataGrid1 Refresh
End If
MsgBox ("REGISTRO ACTUALIZADO EN PROVEEDORES")
End Sub
'##Modelld=3FD6A84D032A
Private Sub cmdAgregar_ClickO
Rem BOTON AGREGAR
txtCod_Prov Visible = True
txtCod_Prov Enabled :: True
txtNombre_ProveVisible = True
txtDireccion Visible:: True
txtTelefonoVisible :: True
txtCeJular Visible:: True
txtEmail Visible = True
IbICod_Prov.Visible = True
IblNombre_Prove Visible:: True
UNIVERSIDAD DE CIENCIAS COMERCIALES 110
SISTEMA DE INVENTARIO "SIM"
IblDireccion Visible = True
IblTelefono Visible = True
IblCelular Visible = True
IblEmaíl.Visible =True
Ibletiqueta Visible = True
IblEncontrado Visible = False
cmdGuarclarVisible = Trué
cmdCancelar Visible = True
cmdModificar Enabled =FalseI
cmdEliminar Enabled = False
Frame1 Visible = True
txtCod_Prov.SetFocus
Rem INICIALIZAR TEXTOS
txtCod_Prov.Text = " "
txtNombre_Prove.Text =""txtDireccion Text = JI "
txtTelefono.Text ::: " "
txtCelular Text = 1I 1I
txtEmail Text;: 1I "
End Sub
'##Modelld=3FD6A84D0398
Private Sub cmdAnterior_Click()
Rem ESTA EN EL INICIO
Adodc1 Recordset.MovePrevious
OataGrid1 Refresh
cmclSiguiente Enabled = True
UNIVERSIDAD DE CIENCIAS COMERCIALES 111
SISTEMA DE INVENTARIO "SIM"
cmdFinal Enabled = True
If Adodc1 Recordset BOF Then
Adodc1 Recordset MoveFirst
cmdAnterior Enabled = False
cmdlnicio Enabled = False
End If
End Sub
'##Modelld=3FD6A84E001 EI
Private Sub cmdBuscar_Click()
Rem BUSCAR UN PRODUCTO POR MEDIO DEL CODIGO
Text1 Visible = True
crndEjecutar Visible = True
Text1 SetFocus
End Sub
'##Modelld=3FD6A84EOOBC
Private Sub crndCancelar_ClickO
Rem BOTON CANCELAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frarne1 Visible:: False
txtCod_Prov Visible:: False
txtNombre_Prove Visible:: False
txtDireccion.Visible =False
txtTelefono Visible:: False
txtCelular.visible :: False
bctEmail Visible:: False
UNIVERSIDAD DE CIENCIAS COMERCIALES 112
SISTEMA DE INVENTARIO "SIM"
IblCod_Prov Visible::: False
IblNombre_Prove Visible =False
IblDireccion Visible = False
IblTelefonoVisible = False
IblCelularVisible::: False
IblEmail Visible::: False
lbletiqueta Visible::: False
IblModificar Visible::: False
IblEncontrado'visíble ::: FalseI
cmdGuardar Visible::: False
cmdCancelar Visible =False
cmdActualizar Visible::: False
End Sub
'##Modelld=3FD6A84EO136
Private Sub cmdEjecutar_ClickO
Dím PRODUCT01 As CPROVEEDOR
Set PRODUCT01 =New CPROVEEDOR
Dim MBUS As String
MBUS ::: RTrim(Text1 Text)
PRODUCT01.BUSCAR (MBUS)
txtCod_Prov Visible = True
txtCod_Prov Text::: PRODUCT01 COO_PROV
txtNombre_Prove Text ::: PRODUCT01.NOMBRE_PROVE
txtDireccion.Text::: PRODUCT01 DIRECCION
txtTelefono Text ::: PRODUCT01 TELEFONO
üctCeJuJar Text ::: PRODUCT01 CELULAR
UNIVERSIDAD DE CIENCIAS COMERCIALES 113
SISTEMA DE INVENTARIO "SIM"
txtEmail Text = PRODUCT01 EMAIL
Rem HACER VISIBLE LOS CAMPOS
IblEneontrado Visible = True
txtCod_Prov Visible = True
txtNombre_Prove Visible = True
txtDireccion Visible = True
tidTelefono Visible = True
txtCelular Visible:: True
txtEmail Visible = True\
IblCod_Prov Visible = True
IblNombre_Prove Visible = True
IblDireceion Visible = True
IblTelefono.visible =True
IblCelular Visible = True
IblEmail Visible = True
cmdCaneelar Visible = True
Rem emdActualizar Visible = True
Frame1 Visible == True
cmdModificar Enabled = True
emdEliminar Enabled = True
Text1.visible =False
cmdEjecutar.visible == False
Text1 Text ==" II
Rem txtDescripcion SetFocus
Frame1 Visible = True
~nd Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 114
SISTEMA DE INVENTARIO "SIM"
'##Modelld=3FD6A84E01A4
Private Sub cmdEliminar_Click()
Dim PRODUCT03 As CPROVEEDOR
Set PRODUCT03 = New CPROVEEDOR
Rem TRASLADAR LOS CAMBIOS A LOS DATOS DE LA CLASE
PRODUCT03 COD_PROV = RTrim(txtCod_Prov.Text)
PRODUCT03.NOMBRE_PROVE = txtNombre_Prove.Text
PRODUCT03 DIRECCION = txtDireccion.Text
PRODUCT03 TELEFONO:: Val(txtTelefono Text),PRODUCT03 CELULAR = txtCelular Text
PRODUCT03 EMAIL = txtEmail Text
PRODUCT03.ELlMINAR
IblEliminarVisible = True
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible = False
txtCod_ProvVisible = False
txtNombre_Prove Visible = False
txtDireccion Visible = False
txtTelefono Visible = False
txtCelular Visible = False
txtEmail Visible = False
IblCod_Prov Visible = False
IblNombre_Prove Visible:: False
IblDireccion Visible:: False
IblTelefonoVisible:: False
IblCelular.Visible = False
IblEmail.Visible :: False
UNIVERSIDAD DE CJENCIAS COMERCIALES 115
•
SISTEMA DE INVENTARIO "SIM"
IblEliminar Visible:: False
IblEncontrado Visible:: False
cmdGuardarVisible = False
cmdCancelar Visible = False
cmdActualizar Visible = False
If Adodc1.Recordset RecordCount = -1 Then
Else
Rem Adodc1 Recordset.Update
Rem RS.MoveLastI
Rem Adodc1.Recordset MoveLast
DataGrid1 Refresh
End If
MsgBox ("REGISTRO ELIMINADO EN PROVEEDOR")
End Sub
'##Modelld=3FD6A84E0212
Private Sub cmdFinal_ClickO
Rem ESTA EN EL INICIO
Adodc1.Recordset MoveLast
DataGrid 1.Refresh
cmdSiguiente.Enabled = False
cmdFinal Enabled:: False
cmdAnterior Enabled =True
cmdlnicio Enabled = True
Fnrl Suh
UNIVERSIDAD DE CIENCIAS COMERCIALES 116
SISTEMA DE INVENTARIO "SIM"
'#:ff.Modelld==3FD6A84E0280
Prívate Sub crndGuardar_ClickO
Dim PRODUCTO As CPROVEEDOR
Set PRODUCTO == New CPROVEEDOR
PRODUCTO COO_PROV =: LTrim(txtCod_Prov.Text)
PRODUC10 NOMBRE_PROVE =: txtNombre_Prove Text
PRODUé~¡ , . DIRECCION =: txtOireccion Text
PRODUCTO.TELEFONO =: Val(txtTelefono Text)
PRODUCTO CELULAR == txtCelular TextI
PRODUCTO EMAIL =: txtEmail.Text
PRODUCTO GUARDAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1.Visible =: False
txtCod_Prov.Visible =: False
txtNombre_Prove Visible == False
txtDireccion Visible =: False
txtTelefono Visible =: False
txtCelular Visible =: False
txtEmail Visible =: False
Ibletiqueta Visible =: False
IblCod_Prov Visible =: False
IbINombre_Prove.visible =: False
IblDireccion Visible =: False
IblTeJefono.visible =: Fa/se
IblCellllar.Visible =: False
IblEmail.Visible =: False
Ible¡jqueta Visible =: False
UNIVERSIDAD DE CIENCIAS COMERCIALES 117
SISTEMA DE INVENTARIO "SIM"
cmdGuardar Visible = False
If Adodc1 Recordset RecordCount = -1 Then
Else
Rem Adodc1.Recordset Update
Rem RS.MoveLast
Rem Adodc1.Recordset.MoveLast
DataGrid1 Refresh
End If
MsgBox ("REGISTRO ALMACENADO EN PROVEEDOR")\
End Sub
'##Modelld=3FD6A84E02EE
Prívate Sub cmdlnicio_ClickO
Rem ESTA EN EL INICIO
Adodc1 Recordset MoveFirst
DataGrid1 Refresh
cmdAnterior Enabled = False
cmdlnicio Enabled =False
cmdSiguiente.Enabled = True
End Sub
'##Modelld=3FD6A84E035C
Private Sub cmdModificar_ClickO
Rem MODIFICAR UN REGISTRO
cmdActualizarVisible = True
IblModificar Visible:: True
IblEncontradoVisible = False
UNIVERSIDAD DE CIENCIAS COMERCIALES IIR
SISTEMA DE lNVENTARIO "SIM"
Ibletiqueta Visible = False
txtNombre_Prove SetFocus
End Sub
'##Modelld=3FD6A84F0014
Private Sub cmdRetornar_ClickO
frmpríncipaJ Show
Unload Me
End Sub
'##Modelld=3FD6A84F0082
Prívate Sub cmdSíguiente_ClickO
Rem SE CORRE AL SIGUIENTE REGISTRO
Adodc1.Recordset MoveNext
DataGrid1.Refresh
cmdAnterior Enabled ::: True
cmdlnicio.Enabled = True
If Adodc1.Recordset EOF Then
Adodc1 Recordset MoveLast
cmdFinal Enabled = False
cmdSiguiente.Enabled = False
End If
End Sub
'##Modelld=3FD6A84FOOFO
Prívate Sub Form_LoadO
Set eN = New Connection
UNIVERSIDAD DE CIENCIAS COMERCIALES 119
SISTEMA DE INVENTARIO ".sIM"
Set RS ::: New Recordset
CN.CursorLocation = adUseClient
CN ConnectionString = "Provider=MSDASQL.1,Persist Security Info::::False,Data
Source=BO_1 NVENTARIO"
CN Open
Set RS ActiveConnection ::: eN
flS CursorType = adOpenForwardOnly
RS Open "select * from PROVEEDOR"
End Sub
'##Modelld=3F06A84F015E
Prívate Sub txtCod_Prov_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
If Adodc1.Recordset.RecordCount >= 1 Then
Adodc1 Recordset MoveFirst
End If
Do While Not Adodc1.Recordset EOF
If Adodc1.Recordset.EOF Then
Exit Do I si no lo encuentra continua
End If
If Trim(Adodc1 Recordset Fields("COD_PROV")) = Trim(txtCod_Prov.Text) Then
MsgBox ("Registro existe ")
txtCod_Prov Text ::: 1111
txtCod_Prov SetFocus
Exit Sub
End If
Adodc1 Recordset MoveNext
UNIVERSIDAD DE CIENCIAS COMERCIALES 120
SISTEMA DE INVENTARIO "SIM"
Loop
bctNombre_Prove SetFocus
End If
End Sub
Este formulario manda a llamar a una clase llamada CPROVEEDOR y su código es el
siguiente
'variables locales para almacenar los valores de las propiedades
'##Modelld=3FD6A8520028
Private mvarCOD_PROD As String 'copia local
'##Modelld=3FD6A8520096
Private mvarNOMBRE_PROVE As String 'copia local
'##Modelld=3FD6A8520140
Private mvarDIRECCION As String 'copia local
'##Modelld=3FD6A85201 EO
Private mvarTELEFONO As String 'copia local
'##Modelld=3FD6A852028A
Private mvarCELULAR As String 'copia local
'##Modelld=3FD6A852032A
Private mvarEMAIL As String 'copia local
'##Modelld=3FD6A85203D6
Prívate CN As Connection
'##Modelld=3FD6A85203D9
\ )'1 i\/~üe RS As Recordset
I !!ff.Modelld=3FD6A853001 E
UNIVERSIDAD DE CIENCIAS COMERCIALES 121
SISTEMA DE INVENTARIO "SIM"
Public Property Let EMAIL(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax X EMAIL = 5
mvarEMAIL ::: vData
End Property
##Modelld==3FD6A8530168
Public Property Get EMAILO As String
'se usa :al recuperar un valor de una propiedad, en la parte derecha de una asignación.
'Syntax' Debug Prínt X EMAIL
EMAIL = mvarEMAIL
End Property
'##Modelld=3FD6A8530212
Public Sub MODIFICARO
Set RS ActiveConnection = CN
RS LockType = adLockOptimistic' NECESARIO PARA LEER Y ESCRIBIR
RS CursorType::: adOpenKeyset I ACTIVA EL CURSOR
RS.Open "SELECT * FROM PROVEEDOR"
RS MoveFirst
Do While Not RS EOf
If RS EOF Then
Exit Sub
Else
If RTrim(RS.Fields("COO_PROV")} = COD_PROV Then
Rem MsgBox ("LO ENCONTRE")
RS Fields("COD_PROV") ::: COD_PROV
UNIVERSIDAD DE CIENCIAS COMERCIALES 122
SISTEMA DE INVENTARIO "SIM"
RS Fields("NOMBRE_PROVE") = NOMBRE_PROVE
RS Fields("DIRECCION") = DIRECCION
RS Fields("TELEFONO") =TELEFONO
RS Fields{"CELULAR") = CELULAR
RS Fields("EMAIL") = EMAIL
RS Update
E}{it Sub
Rem Else
Rem I MsgBox ("CODIGO = ") & RS.Fields("COD_PROD")
End If
RS MoveNext
End If
Loop
End Sub
'##Modelld=3FD6A8530280
Public Sub GUARDARO
Set RS.ActiveConnection = CN
RS.LockType = adLockOptimistic I NECESARIO PARA LEER Y ESCRIBIR
RS CursorType = adOpenKeyset I ACTIVA EL CURSOR
RS Open "SELECT * FROM PROVEEDOR"
RS.AddNew
RS Fields("COD_PROV"} =COD_PROV
RS Fields("NOMBRE_PROVE") =NOMBRE_PROVE
RS Fields("DIRECCION") = DIRECCION
RS Fields(''TELEFONO'') = TELEFONO
RS Fields("CELULAR") = CELULAR
UNIVERSIDAD DE CIENCIAS COMERCIALES 123
SISTEMADE INVENTARlO "SIM"
RS Fields("EMAIL") = EMAIL
RS.Update
End Sub
'##Modelld=3FD6A85302EE
Public Sub CLASS_INITIAlIZEO
Set eN ::: New Connection
Set RS = New Recordset
CN.ConnectionString ::: "Provider=MSDASQL 1,Persist Security Info=False;DataI
Source=BD_INVENTARIO"
CN Open
End Sub
'##Modelld=3FD6A8530320
Public Sub ELlMINARO
Set RS ActiveConnection ::: CN
RS.LockType = adLockOptimístic ' NECESARIO PARA LEER Y ESCRIBIR
RS CursorType ::: adOpenKeyset 'ACTIVA EL CURSOR
RS Open "SELECT * FROM PROVEEDOR"
RS MoveFirst
Do While Not RS EOF
If RS.EOF Then
Exit Sub
Else
H RTrim(RS.Fields("COO_PROV"» = COO_PROV Then
Rem MsgBox ("LO ENCONTRE")
RS.Delete
UNIVERSIDAD DE CIENCIAS COMERCIALES 124
SISTEMA DE INVENTARIO "SIM"
Exit Sub
Rem Else
Rem MsgBox ("COOIGO = ") & RS Fields(ICOO_PROO")
End If
RS MoveNext
End If
Loop
End Sub
'##Modelld=3FD6A853038E
Public Sub BUSCAR(MBUSCA As String)
Dim MBUSCAR As String
MBUSCAR = MBUSCA
Set RS ActiveConnection = CN
RS.LockType = adLockOptimistic ' NECESARIO PARA LEER Y ESCRIBIR
RS.CursorType = adOpenKeyset I ACTIVA EL CURSOR
RS.Open "SELECT * FROM PROVEEDOR order by cod_prov "
Rem MsgBox (" 1 MBUSCAR = ") & MBUSCAR
RS MoveFirst
Do While Not RS EOF
If RS EOF Then
Exit Sub
Else
If RTrim(RS Fields("COD_PROV"» =MBUSCAR Then
Rem MsgBox ("LO ENCONTRE")
COD_PROV =RS Fields("COD_PRüV")
NOMBRE_PROVE = RS Fields("NOMBRE_PROVE")
125
SISTEMA DE INVENTARIO "SIM"
OIRECCION = RS Fields("DIRECCION")
TELEFONO = RS.Fields("TELEFONO")
CELULAR = RS Fields(ICELULAR")
EMAIL = RS Fields(IEMAIL")
Exit Sub
Else
Rem MsgBox ("CODIGO = ") & RS Fields("COD_PROD")
End If
RS MoveNextI
End If
Loop
End Sub
'##Modelld=3FD6A85400BE
Public Property Let CELULAR(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax X TELEFON02 = 5
mvarCELULAR = vData
End Property
'##ModeJId=3FD6A854D23A
Public Property Get CELULARO As String
'se lisa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax. Oebug Print X TELEFON02
CEL ULAR = mvarCELULAR
End Property
UNIVERSIDAD DE CIENCIAS COMERCIALES 126
SISTEMA DE INVENTARIO "SIM"
'#ttModelld=3FD6A85402DA
Publlc Property Let TELEFONO(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax X TELEFON01 =5
mvarTEl EFONO = vData
End Property
'##Modelld=3FD6A8550078
Public Property Get TELEFONOO As StringI
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax Debug.Print X.TELEFON01
TELEFONO = mvarTELEFONO
End Properel
'##Modelld=3FD6A8550154
Public Property Let DIRECCION(ByVal vData As String)
'se usa al asignar un valor a la propiedad I en la parte izquierda de una asignación
'Syntax X DIRECCION = 5
mvarDIRECCION = vData
End Property
'##Modelld=3FD6A855030C
Public Property Get DIRECCIONO As String
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación.
'Synta)(' Debug Print X DIRECCION
DIRECCION == mvarDIRECCION
EmJ Property
UNIVERSIDAD DE CIENCIAS COMERCIALES 127
SISTEMA DE INVENTARIO "SIM"
'##Modelld=3FD6A8560000
Public Property Let NOMBRE_PROVE(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax X.NOMBRE_PROVE = 5
mvarNOMBRE_PROVE = vData
End Property
'##Modelld=3FD6A85601 B8
Public Property Get NOMBRE_PROVEO As String
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación.
'Syntax: Debug.Print X.NOMBRE_PROVE
NOMBRE_PROVE = mvarNOMBRE_PROVE
End Property
'##Modelld=3FD6A8560294
Public Property Let COD_PROV(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax X.COD_PROD = 5
mvarCOD_PROD = vData
End Property
'##Modelld=3FD6A8570064
Public Property Get COD_PROVO As String
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'8yntme Debug.Print X.COO_PROD
COO_PROV =mvarCOD_PROD
EmJ Property
UNIVERSIDAD DE CIENCIAS COMERCIALES 128
SISTEMA DE INVENTARIO "SIM"
UNIVERSIDAD DE CIENCIAS COl\1ERCIALES 129
SISTEMA DE INVENTARIO "SlM"
CÓDIGO DEL FORMULARIO DE RECEPCIONES:
Option Explicit
'##Modelld=3FD6A800002A
Private CN As Connection
'##Modelld=3FD6A800002D
Private RS As Recordset
'##Modelld=3FD6A800005A
Private X As Integer
'##Modelld=3FD6A8000104
Prívate Sub cmdActualizar_ClickO
Dim PRODUCT02 As CRECEPCIONES
Set PRODUCT02 = New CRECEPCIONES
Rem TRASLADAR LOS CAMBIOS A LOS DATOS DE LA CLASE
PRODUCT02.COD_PROD = RTrjm(txtCodigo.Text)
PRODUCT02 COD_RECEP = RTrim(txtCod_Recep Text)
PRODUCT02.DESCRIPCION::; txtDescripcion Text
PRODUCT02 UM = txtUm Text
PRODUCT02 ENTRADAS = txtEntradas.Text
PRODUCT02.FECHA_ENTRADA = txtFecha_Entrada.Text
PRODUCT02 PRECIO_UNIT = Val(txtPrecio_Unit.Text)
PRODUCT02 PRECIO_TOTAL =Val(txtPrecio_TotaI.Text}
PRODUCT02 COO_PROV = txtCod_Prov Text
PRODUCT02.NUM_DOC = txtNum_Doc.Text
PRODUCT02 WEN1 = Val(Text2.Text)
UNIVERSIDAD DE CIENCIAS COMERCIALES 130
SISTEMA DE INVENTARIO "SIM"
PRODUCT02 MODIFICAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible:: False
txtCodigo Visible = False
txtCod_Recep Visible = False
txtDescripcionVisible:: False
txtUm Visible:: False
txtEntradas Visible = False
txtFecha Entrada Visible:: FalseI -
txtPrecío_Unit.Visible = False
txtPrecio_Total Visible = False
txtCod_Prov Visible = False
txtNum_Doc.Visible = False
IblCodigo Visible = False
IbiCod_Recep Visible =False
IblDescripcionVisible = False
IblUm Visible = False
IblEntradas Visible = False
IblFecha_Entrada Visible = False
IbIPrecio_Unit.Visible:: False
IblPrecio_Total Visible = False
IbICod_Prov.Visible = False
IbINum_Doc.Vísible = False
IblModificarVisible =False
cmdGuardarVisible = False
cmdCancelarVisible = False
cmdActualizarVisible:: False
UNIVERSIDAD DE CIENCIAS COMERCIALES 131
SISTEMA DE INVENTARIO "SIM"
If Adodc1 Recordset.RecordCount = -1 Then
Else
Rem Adodc1 Recordset.Update
Rem RS MoveLast
Rem Adodc1.Recordset MoveLast
OataGrid1 Refresh
End If
MsgBox ("REGISTRO ACTUALIZADO EN RECEPCIONES")I
End Sub
'##Modelld=3FD6A8000136
Private Sub cmdAgregar_ClickO
Rem BOTaN AGREGAR
txtCodigo.Visible =True
txtCodigo Enabled = True
txtCod_Recep Enabled = True
txtCod_Recep Visible = True
txtDescripcion Visible = True
txtUm Visible::: True
txtEntradas Visible = True
txtFecha_Entrada.Visible = True
txtPrecio_UnitVisible = True
txtPrecio_Total.Visible = True
txtCod_Prov Visible =True
txtNum_Doc.Visible =True
IblCodigoVisible :::: True
UNIVERSIDAD DE CIENCIAS COMERCIALES 132
SISTEMA DE INVENTARIO "SIM"
IblDescripcion Visible =True
IblUm Visible = True
IblEntradasVisible =True
IblFecha_Entrada Visible =True
IblPrecio_Unit Visible = True
IblPrecío_Total Visible = True
lblCod_ProvVisible =True
IblNum_Doc Visible =True
Ibletíqu~ta Visible =True
Adodc3 Visible = True
IblEncontrado Visible = False
cmdGuardar.Visible = True
cmdCancelar Visible =True
cmdModificar.Enabled = False
cmdEliminar Enabled = False
Frame1 Visible =True
txtCodigo SetFocus
Rem INICIALIZAR TEXTOS
txtCodígo.Text =""txtDescripcion.Text =""txtUm.Text = " "
txtEntradas Text =""txtFecha_Entrada.Text = " "
txtPrecio_UnitText = " "
tKtPr0cio_Total Text=""
tKtCod_Prov.Text =""txtNum_Doc.Text =""
UNIVERSIDAD DE CIENCIAS COMERCIALES 133
•.~.-\t~.r
SISTEMA DE INVENTARIO "SIM"
DataGrid2 Refresh
End Sub
'##Modelld=3FD6A80001A4
Private Sub cmdAnterior_ClickO
Ram REGRESA Al REGISTRO ANTERIOR
/\dodr1 Recordset MovePrevious
cmdSiguiente.Enabled =True
cmdFinal.Enabled = TrueI
If Adodc1.Recordset.BOF Then
Adodc1.Recordset MoveFirst
cmdAnterior Enabled = False
cmdlnicio.Enabled = False
End If
DataGrid2 Refresh
End Sub
'##Modelld=3FD6A8000212
Private Sub cmdBuscar_ClickO
Rem BUSCAR UN PRODUCTO POR MEDIO DEL CODIGO
Text1 Visible = True
txtDocumento Visible = True
cmdCancelaVisible :::: True
cmdEjecutarVisible = True
Tkixt'l 0etFocus
Enc\ Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 134
SISTEMA DE INVENTARIO "SIM"
'##Modelld=3FD6A80002BC
Prívate Sub cmdCancela_ClickO
Text1 Visible = False
txtDocumento Visible = False
cmdCancela.visible = False
cmdEjecutarVisible =False
End Gub
'##ModeJld=3FD6A800032A
Private Sub cmdCancelar_ClickO
Rem BOTaN CANCELAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible = False
txtCodigo Visible = False
txtCod_Recep.visible = False
txtDescripcion Visible = False
txtUm.Visible = False
txtEntradas.visible = False
txtFecha_Entrada Visible := False
txtPreCio_Unit.visible:: False
txtPrecjo_Total Visible = False
txtCod_Prov Visible = False
txtNlIm_Doc Visible:= False
IblCodigo Visible = False
IbIG[)zLRecep.visible:: False
IblDescripcion.Visible = False
UNIVERSIDAD DE CIENCIAS COMERCIALES 135
SISTEMA DE INVENTARIO "SIM"
IblUm Visible = False
IblEntradas Visible = False
IblFecha_Entrada Visible = False
IbIPrecio_Unit.Visible = False
IblPrecio_Total Visible = False
IblCod_Prov Visible = False
IblNum_Doc.Visible = False
Ibletiqueta Visible = False
IblModificar.Visible = FalseI
IblEncontradoVisible = False
cmdGuardar.Visible = False
cmdCancelar Visible = False
cmdActualizar Visible = False
cmdModificar Enabled = False
cmdElíminar.Enabled = False
Adodc3 Visible = False
End Sub
'##Modelld=3FD6A8000398
Private Sub cmdEjecutar_ClíckO
Dim PRODUCT01 As CRECEPCIONES
Sat PRODUCT01 = New CRECEPCIONES
Dim MBUS As String
Dim mdocu As String
PROlJUCT01 NUM_DOC = RTrim(txtDocumento Text)
MBUS = RTrim(Text1.Text)
UNIVERSIDAD DE CIENCIAS COMERCIALES 136
SISTEMA DE INVENTARIO "SIM"
PRODUCT01BUSCAR(MBUS)
txtCodigo Text = PRODUCT01.COD_PROD
txtCod_Recep Text =PRODUCT01 COD_RECEP
lxtDescripcion Text =PRODUCT01 DESCRIPCION
lxtUm.Text =PRODUCT01.UM
lxtEntradas.Text = PRODUCT01 ENTRADAS
Text2 Text =PRODUCT01.ENTRADAS
lxtFecha_Entrada.Text =PRODUCT01 FECHA_ENTRADA
lxtPrecio Unit Text = PRODUCT01 PRECIO UNIT,- -lxtPrecio_Total Text = PRODUCT01 PRECIO_TOTAL
lxtCod_Prov.Text = PRODUCT01 COD_PROV
txtNum_Doc.Text =PRODUCT01.NUM_DOC
Rem HACER VISIBLE LOS CAMPOS
lxtCodigo Visible =True
lxtCod_Recep Visible = True
lxtDescripcion Visible =True
txtUm Visible = True
lxtEntradas Visible =True
lxtFecha_Entrada'visible =True
lxtPrecio_Unit Visible = True
lxtPrecio_Total Visible = True
lxtCod_Prov.Visible =True
lxtNum Doc Visible = True
IblEncontrado Visible =True
IblCodigo Visible =True
IblCod_Recep Visible =True
UNIVERSIDAD DE CIENCIAS COMERCIALES 137
SISTEMA DE INVENTARlO "SIM"
IblDescripcion Visible;:: True
IblUm Visible;:: True
IblEntradas.Visible = True
IblFecha_Entrada Visible;:: True
IblPrecio_Unit Visible = True
IblPrecio_Total Visible = True
IblCod Prov.Visible;:: True
IblNum_Doc Visible;:: True
cmdCancelar Visible;:: TrueI
cmdActualizarVisible;:: False
Frame1.visible ;:: True
cmdModificar Enabled ;:: True
cmdEliminar.Enabled ;:: True
Text1.visible = False
txtDocumento Visible;:: False
cmdCancela Visible = False
cmdEjecutar Visible;:: False
Text1 Text = " "
txtDocumento Text = " "
Rem txtDescripcion SetFocus
Frame1.visible = True
End Sub
'##Modelld=3FD6A801 001 E
Private Sub cmdEliminar_Click()
Dim PRODUCT03 As CRECEPCIONES
Set PRODUCT03 = New CRECEPCIONES
UNIVERSIDAD DE CIENCIAS COMERCIALES 138
SISTEMA DE INVENTARIO "SIM"
Rem TRASLADAR LOS CAMBIOS A LOS DATOS DE LA CLASE
PRODUCT03 COD_PROO = RTrim(txtCodigo Texl)
PRODUCT03 COD_RECEP = RTrim(txtCod_Recep Text)
PRODUCT03.0ESCRIPCION = IxtDescripcion.Text
PRODUCT03.UM =txtUm Text
PRODUCT03 ENTRADAS = Val(txtEnlradas Text)
PRonUCT03.FECHA_ENTRADA = IxtFecha_Entrada Text
PRODUCT03 PRECIO_UNIT = Val(txtPrecio_Unil.Text)
PRODUCT03 PRECIO_TOTAL =Val(txtPrecio_Tolal Text)I
PRODUCT03 COD_PROV =txtCod_Prov Text
PRODUCT03.NUM_DOC =txtNum_Doc Text
PROOUCT03.ELlMINAR
IblEliminar Visible =True
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible = False
txtCodigo Visible = False
txtCod Recep Visible = False
txtDescripcion Visible = False
txtUm Visible =False
txtEnlradas Visible = False
txtFecha_Entrada Visible =False
txtPrecio_Unit Visible = False
txtPrecio_Tolal Visible = False
txtCod_Prov.visible =False
o<lNom_Doc Visible =False
lblCodigo.Visible =False
IllICod_Recep.Visible =False
UNIVERSIDAD DE CIENCIAS COMERCIALES 139
SISTEMA DE INVENTARIO "SIM"
IblDescripcion.Visible = False
IbllJm Vi~;iblp. = False
IblEntradas Visible = False
IblFecha_ Entrada Visible = False
IbIPrecio_Unit.Visible = False
IblPrecio_Total.Visible = False
iblCod_PruvVisíble = False
IblNum_DocVisible = False
IblElíminarVisible = False,IblEncontrado Visible = False
cmdGuardar.Visible = False
cmdCancelar Visible = False
cmdActualizar.Visible = False
If Adodc1.Recordset.RecordCount = -1 Then
Else
Rem Adodc1.Recordset Update
Rem RS.MoveLast
Rem Adodc1.Recordset.MoveLast
DataGrid1 Refresh
End If
MsgBox ("REGISTRO ELIMINADO EN RECEPCIONES")
End Sub
'##Modelld=3FD6AS0100SC
Prívate Sub cmdFinal_ClíckO
Rem ESTA EN EL INICIO
,L\doclc'l Recordset MoveLast
UNIVERSIDAD DE CIENCIAS COMERCIALES 140
.~'.'.";'l'~i .,.~: J!"~_ "1 'IíI
SISTEMA DE INVENTARIO "SIM"
cmdSiguiente Enabled = False
cmdFínal Enabled :: False
cmdAnterior Enabled = True
cmdlnicio Enabled = True
DataGrid2 .Refresh
End Sub
'##Modelld=3FD6A80100FA
Prívate Sub cmdGuardar ClickOI -
Dim PRODUCTO As CRECEPCIONES
Set PRODUCTO = New CRECEPCIONES
PRODUCTO.COD_PROD = LTrím(txtCodigo Text)
PRODUCTO COD_RECEP:: txtCod_Recep Text
PRODUCTO.DESCRIPCION = txtDescripcion Text
PRODUCTO UM = txtUm.Text
PRODUCTO ENTRADAS:: Val(txtEntradas Text}
PRODUCTO FECHA_ENTRADA:: txtFecha_Entrada Text
PRODUCTO PRECIO_UNIT = Val(txtPrecio_Unit Text}
PRODUCTO PRECIO_TOTAL =Val(txtPrecio_TotaI.Text}
PRODUCTO COD_PROV =Val(txtCod_Prov Text)
PRODUCTO NUM_DOC :: Val(txtNum_Doc Text)
PRODUCTO GUARDAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible:: False
txtGodigo.Visible = False
txtCodigo Enabled = False
txtDescripcion Visible = False
UNIVERSIDAD DE CIENCIAS COMERCIALES 141
SISTEMA DE INVENTARIO "SIM"
txtCod_Recep Visible = False
txtUm Visible = False
txtEntradas Visible = False
txtFecha_Entrada Visible = False
txtPrecio_Unit Visible = False
txtPrecio_Total Visible = False
txtCod_Prov Visible =False
txtNum_Doc.Visible = False
IblCodigo Visible = FalseI
IblDescripcion Visible = False
IblUm Visible = False
IblEntradas Visible = False
IblFecha_Entrada Visible = False
IblPrecio_Unit Visible = False
IblPrecio_Total Visible = False
IblCod_Prov Visible = False
IblNum_Doc Visible = False
Ibletiqueta Visible = False
IblEncontrado Visible = False
cmdGuardar Visible = False
cmdCancelarVisible = False
cmdModificar.Enabled = False
cmdEliminar Enabled = False
Adodc3.Visible = False
If Adodc1 Recordset.RecordCount = -1 Then
Else
Rem Adodc1 Recordset Update
UNIVERSIDAD DE CIENCIAS COMERCIALES 142
SISTEMA DE INVENTARIO "SIM"
Rem RS MoveLast
Rem Adodc1 Recordset MoveLast
DataGrid2 Refresh
End If
MsgBox ("REGISTRO ALMACENADO EN RECEPCIONES")
End Sub
'##Modelld=3FD6A801019A
Private Sub cmdlnicio_ClickO,
Rem ESTA EN EL INICIO
Adodc1.Recordset MoveFirst
cmdAnterior.Enabled = False
cmdlnicio Enabled = False
cmdSiguiente Enabled = True
DataGrid2 Refresh
End Sub
'##Modelld=3FD6A8010208
Private Sub cmdModificar_ClickO
Rem MODIFICAR UN REGISTRO
cmdActualizar Visible = True
IblModificar Visible = True
IblEncontrado Visible = False
Ibletiqueta Visible = False
txtDescripcion SetFocus
End Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 143
~~.. ·~t.l~
SISTEMA DE INVENTARIO "SIM"
'##ModeJld=3FD6A8010282
Private Sub cmdRetornar_ClickO
frmprincipal Show
Unload Me
End Sub
'##Modelld=3FD6A8010320
Private Sub cmdSiguiente_ClickO
Rem SE CORRE AL SIGUIENTE REGISTROI
Adodc1 Recordset MoveNext
cmdAnterior Enabled = True
cmdlnicio Enabled = True
If Adodc1.Recordset EOF Then
Adodc1 Recordset.MoveLast
cmdFinal Enabled = False
cmdSiguiente Enabled =False
End If
DataGrid2 Refresh
End Sub
'##Modelld=3FD6A80103CO
Private Sub Form_LoadO
Set CN = New Connection
Set RS = New Recordset
eN CursorLocation = adUseClient
CN.ConnectionString = "Provider=MSDASQL.1,Persist Security Info=False;Data
Source=8D_INVENTARIO"
UNIVERSIDAD DE CIENCIAS COMERCIALES 144
SISTEMA DE INVENTARIO "SIM"
CN Open
Set RS ActiveConnection = CN
RS CursorType = adOpenForwardOnly
RS.Open "select * from RECEPCIONES"
End Sub
'1#fModelld=3FD6A8020046
Private Sub Text1_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then,txtDocumento SetFocus
End If
End Sub
'##Modelld=3FD6A8020190
Private Sub txtCod_Recep_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
txtCod_Recep Text =Adodc3.Recordset Fields("COD_RECEP")
txtEntradas.SetFocus
End If
End Sub
'##Modelld==3FD6A80202A8
Private Sub txtCodigo_KeyPress(KeyAscii As Integer)
If (KeyAscii == vbKeyReturn) Then
Adodc2.Recordset.MoveFirst
00 While Not Adodc2 Recordset EOF
11 f\t!odc2 Recordset EOF Then
UNIVERSIDAD DE CIENCIAS COMERCIALES 145
•;~."~.~~
SISTEMA DE INVENTARlO "SIM"
E)(it Do
End ¡f
If Trim(Adodc2 Recordset Fields("COD_PROD")) = Trim(txtCodigo.Text) Then
Rem MsgBox ("pase")
txtCodigo Enabled = False
MDescrípcíon.Enabled = False
txtUm Enabled =False
txtCod_Prov.Enabled = False
txtDescripcion Text = Adodc2 Recoidset Fields("DESCRIPCION")I
txtUm Text = Adodc2.Recordset Fields("UM")
txtCod_Prov.Text = Adodc2.Recordset Fields(ICOD_PROV")
txtNum_Doc.SetFocus
Exit Do
Else
Adodc2 Recordset MoveNext
If Adodc2.Recordset EOF Then
MsgBox ("REGISTRO NO EXISTE, INVESTIGUE POR FAVOR")
txtCodigo = ""
Exit Sub
End If
End If
Loop
txtNum_Doc.SetFocus
End If
End Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 146
SISTEMA DE INVENTARIO "SIM"
'##Modelld=3FD6A803000A
Prívate Sub txtDocumento_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
cmdEjecutar SetFocus
End If
cmdEjecutar Enabled = True
End Sub
'##Modelld=3FD6A8030118I
Prívate Sub txtEntradas_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
txtCod_Recep.Text =Adodc3.Recordset Fields("COD_RECEP")
txtFecha_Entrada SetFocus
End If
End Sub
'##Modelld=3FD6A8030262
Private Sub txtFecha_Entrada_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
txtPrecio_Unít SetFocus
End If
End Sub
'##Modelld=3FD6A80303AC
Private Sub txtNum_Doc_KeyPress(KeyAscii As Integer)
If (KeyAscii == vbKeyReturn) Then
bctCod_Recep SetFocus
UNIVERSIDAD DE CIENCIAS COMERCIALES 147
SISTEMA DE INVENTARIO "SIM"
End If
End Sub
'##Modelld=3FD6A804010E
Private Sub txtPrecio_Total_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
txtNum_Doc. SetFocus
End If
End SubI
'##Modelld=3FD6A8040258
Private Sub txtPrecio_Unit_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
txtPrecio_Total.Text = txtEntradas * txtPrecio_Unit
txtNum_Doc.SetFocus
End If
End Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 148
SISTEMA DE INVENTARIO "SIM"
CÓDIGO DEL FORMULARIO DE SALIDAS:
Option Explicít
'##Modelld=3FD6A822002A
Private eN As Connection
I##Modelld=3FD6A822002D
Private RS As Recordset
It~Mode'ld::3FD6A822005A
PTlvate XAs Integer
UNIVERSIDAD DE CIENCIAS COMERCIALES 149
SISTEMA DE INVENTARIO "SlM"
'##Madelld:::3FD6A82200C8
Prívate Sub cmdActualizar_Click()
Dim PRODUCT02 As CSAUDAS
Set PRODUCT02 ::: New CSALlDAS
Rem TRASLADAR LOS CAMBIOS A LOS DATOS DE LA CLASE
PRODUCT02.COO_PROO::: RTrim(txtCadigo Text)
rRobuCT02.COD_SALlDAS = RTrím(txtCod_Sali Text)
PRODUCT02 DESCRIPC!ON::: txtOescripcian Text
PRODUCT02 UM ::: txtUm Textr
PRODUCT02 SALIDAS::: txtSalidas Text
PRODUCT02 FECHA_SALIDAS = txtFecha_Salidas.Text
PRODUCT02 PRECIO_UNIT =Val(txtPrecio_Unit Text)
PRODUCT02.PRECIO_TOTAL = Val(txtPrecio_Total Text)
PRODUCT02 NUM_OOC =txtNum_Dac.Text
PRODUCT02 WSA1 ::: Val(Text2 Text)
PRODUCT02.MODIFICAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Vísible::: False
txtCadigo Visible = False
txtCad_Salí Visible::: False
txtDescripcion Visible::: False
txtUm Visible::: False
bctSalidasVisible ::: False
txtFecha_Salidas.Visible = False
!J<tPrecio_Unit Visible = False
b<tPrecio_Total.Visible ::: False
t<lNum_Doc.Visible =: False
UNIVERSIDAD DE CIENCIAS COMERCIALES 150
SISTEMA DE INVENTARIO "SIM"
IblCodigo Visible = False
IbICod_Sali.visible = False
IblDescripcion Visible = False
IblUm Visible = False
IblSalidas.visible =False
IblFecha_Salidas Visible = False
IblPrecio_Unit Visible =False
IblPrecio_Total Visible = False
IblNum Doc.visible = False-,IblModificar Visible =False
cmdGuardar Visible = False
cmdCancelar Visible = False
cmdActualizar Visible = False
If Adodc1 Recordset.RecordCount = ~1 Then
Else
Rem Adodc1 Recordset Update
Rem RS MoveLast
Rem Adodc1 Recordset MoveLast
DataGrid1 Refresh
End If
MsgBox ("REGISTRO ACTUALIZADO EN SALIDAS")
End Sub
'##Modelld=3FD6A8220136
P¡i'IJ~te Sub cmdAgregar_ClickO
Hern BOTaN AGREGAR
bdCodigo Visible = True
UNIVERSIDAD DE CIENCIAS COMERCIALES 151
SISTEMA DE lNVENTARIO '~SIM"
txtCodigo Enabled = True
bctCod_Sali Enabled = True
txtCod_Sali.Visible::: True
txtDescripcion Visible::: True
txtUm.visible =True
txtSalidas Visible::: True
b<tFecha_Salidas Visible:: True
txtPrecio_Unit Visible:: True
txtPrecio_Total Visible:: TrueI
txtNum_Doc'visible :: True
IblCodigo Visible:: True
IblDescrípcion'visible :: True
IblUm.Visible :: True
IblSalidas Visible:: True
lb/Fecha_Salidas Visible::: True
IblPrecio_Unit Visible:: True
IblPrecio_Total Visible:: True
IblCod_Salí Visible:: True
IblNum_Doc Visible::: True
Ibletiqueta.Visible:: True
lblEncontrado'visible = False
cmdGuardar Visible = True
cmdCancelar Visible:: True
cmdModificar Enabled = False
cmdEliminar.Enabled = False
fi ame1.Visible = True
tdCodigo SetFocus
UNIVERSIDAD DE CIENCIAS COMERCIALES 152
SISTEMA DE INVENTARIO "SIM')
Rem INICIALIZAR TEXTOS
txí:Godigo Text = .. "
txtDescripcion Text = .. "
txtUm Text =""txtSalidas.Text = " "
txtFecha_Salidas Text = 11 11
brtPrec:io_Unit Text = " "
txtPrecio_Total.Text = .. "
txtNum_Doc Text = ""I
DataGrid1.Refresh
End Sub
'##Modelld=3FD6A8220172
Prívate Sub cmdAnterior_Click()
Rem REGRESA AL REGISTRO ANTERIOR
Adodc1 Recordset.MovePrevious
cmdSíguiente.Enabled =True
cmdFínal Enabled =True
If Adodc1.Recordset BOF Then
Adodc1.Recordset MoveFirst
cmdAnterior Enabled = False
cmdlnicio.Enabled = False
End If
DataGrid1.Refresh
Ene! Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 153
.8lST.EMA.DElNVENT.ARIO ".sIM"
'##Modelld=3FD6A82201 EO
Prívate Sub cmdBuscar_ClickO
Rem BUSCAR UN PRODUCTO POR MEDIO DEL CODIGO
Text1 Visible = True
cmdEjecutar Visible = True
cmdCancela Visible = True
txtDocumento Visible := True
Text1.SetFocus
End Sub
'##Modelld=3FD6A822024E
Private Sub cmdCanceJa_ClickO
Text1Visible = False
txtDocumentoVisibJe = False
cmdCancela Visible = False
cmdEjecutarVisible = False
End Sub
'##Modelld=3FD6A82202BC
Private Sub cmdCancelar_ClickO
Rem BOTON CANCELAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible =False
txtCodigo Visible = False
txteod_Sali Visible = False
txtDescripcion .Visible = False
txtUm.Visible = False
UNIVERSIDAD DE CIENCIAS COMERCIALES 154
SISTEMA DE INVENTARIO '~SIM"
bdSalidas.Visible::: False
txtFecha_Salidas Visible::: False
txtPrecio_Unit Visible::: False
txtPrecio_Total Visible::: False
txtNum_Doc.visible::: False
IblCodigo,Visible::: False
/bICod_SaILVisible::: False
IblDescripcion Visible = False
IblUm Visible == FalseI
IblSalidas Visible =False
IbIFecha_Salidas.Visible = False
IbIPrecio_Unit.Visible::: False
IblPrecio_Total.Visible ::: False
IblNum_Doc Visible = False
Ibletiqueta Visible = False
IblModificarVisible::: False
IblEncontrado Visible::: False
cmdGuardar Visible::: False
cmdCancelar Visible = Fa/se
cmdActualizar Visible = False
cmdModificar Enabled = False
cmdEliminar Enabled = False
End Sub
'##Modelld=3FD6A822032A
Private Sub cmdEjecutar_ClickO
Dim PRODUCTO1 As CSAlIDAS
UNIVERSIDAD DE CIENCIAS COMERCIALES 155
.8lSTEMADE..INVENTARIO "8IM"
Set PRODUCT01 = New CSALlDAS
Dim MBUS As String
Dim mdocu As String
PRODUCT01 NUM_DOC = RTrirn(txtDocumento.Text)
MBUS = RTrim(Text1 Text)
PRODUCT01BUSCAR(MBUS)
txtCodigo Text = PRODUCT01.COD_PROD
txtCod_Sali Text = PRODUCT01 COO_SALlDAS
txtDescripcion Text = PRODUCT01 DESCRIPCIONI
txtUm Text = PRODUCT01.UM
txtSalidas.Text = PRODUCT01.SALlDAS
txtFecha_Salidas Text = PRODUCT01.FECH~SALlDAS
txtPrecio_Unit Text =PRODUCT01 PRECIO_UNIT
txtPrecio_Total Text = PRODUCT01.PRECIO_TOTAL
txtNum_Doc Text =PROOUCT01 NUM_OOC
Text2.Text = PRODUCT01.SALlDAS
Rem HACER VISIBLE LOS CAMPOS
~Codigo Visible = True
b,ctCod_Sali Visible = True
txtDescripcion Visible = True
txtUm.Visible = True
txtSalidas Visible = True
txtFecha_Salidas Visible = True
txtPrecio_Unit.Visible =True
txtPrecio_Total Visible = True
txtNum_Doc.Visible = True
IblEncontradoVisible =True
UNIVERSIDAD DE CIENCIAS COMERCIALES 156
SISTEMA DE INVENTARIO "SIM~~
IblCodigo Visible:: True
HJICod_SaliVisibJe :: True
IblDescripcion Visible:: True
IblUmVisible :: True
IblSalidas Visible:: True
IblFecha_Salidas Visible:: True
IblPrecío_Unit Visible:: True
IblPrecio_Total Visible = True
IblNum DocVisible = True.,.cmdCancelarVisible = True
cmdActualizar Visible:: False
Frame1 Visible == True
cmdModificar.Enabled = True
cmdEliminar Enabled == True
Text1.Visible = False
cmdEjecutar Visible = False
txtDocumentoVisible == False
Text1.Text :: 11 "
Rem txtDescripcion.SetFocus
Frame1 Visible =True
End Sub
'##Modelld==3FD6A8220398
Private Sub cmdEliminar_ClickO
Dim FlRODUCT03 As CSAlIDAS
S~t PRODUCT03 = New CSAlIDAS
Rom TRASLADAR LOS CAMBIOS A LOS DATOS DE LA CLASE
UNIVERSIDAD DE CIENCIAS COMERCIALES 157
SISTEMA DE INVENTARIO "SIM"
PRODUCT03 COD_PROD = RTrim(txtCodigo Text)
PRODUCT03 COD_SAlIDAS = RTrim(txtCod_Sali Text)
PRODUCT03 DESCRIPcrON = txtDescripcion Text
PRODUCT03 UM = txtUm.Text
PRODUCT03 SALIDAS = Val(txtSalidas Text)
PRODUCT03.FECHA_SALlDAS = txtFecha_Salidas Text
PRODUCT03 PRECIO_UNIT = Val(txtPrecio_Unit Text)
PRODUCT03.PRECIO_TOTAL = Val(txtPrecio_Total Text)
PRODUCT03 NUM DOC =txtNum Doc TextI - -
PRODUCT03 ELIMINAR
IblEliminar.Visible = True
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible = False
txtCodigo Visible =False
txtCod_Sali Visible = False
txtDescripcion Visible = False
txtUm Visible = False
txtSalidas.visible = False
txtFecha_Salidas Visible = False
txtPrecio_Unit Visible = False
txtPrecio_Total Visible = False
txtNum_Doc.Visible = False
IblCodigo Visible =False
IblCod_SalLVisible = False
IblDescripcion Visible = False
IblUm.Visible = False
JblSalidas.Visible = False
UNIVERSIDAD DE CIENCIAS COMERCIALES ]58
SISTEMA DE INVENTARIO "SIM"
IblFecha_Salidas Visible::: False
IbIPrecio_Unit,Visible::: False
IblPrecio_Total Visible::: False
IblNum_Doc Visible::: False
IbIEliminar'visible::: False
IbIEncontrado.Visible::: False
cmdGuardar Visible::: Fa/se
cmdCancelar Visible::: False
cmdActualizar.Visible::: FalseI
If Adodc1 Recordset RecordCount::: -1 Then
Else
Rem Adodc1 Recordset Update
Rem RS.MoveLast
Rem Adodc1 Recordset.MoveLast
DataGrid1 Refresh
End If
MsgBox ("REGISTRO ELIMINADO EN SALIDAS")
End Sub
'##Modelld:::3FD6A823001 E
Prívate Sub cmdFinal_ClickO
Rem ESTA EN EL INICIO
Adodc1 Recordset.MoveLast
crndSiguiente Enabled::: False
cmdFinal Enabled ::: False
cmdAnterior Enabled ::: True
cmdlnicio.Enabled::: True
UNIVERSIDAD DE CIENCIAS COMERCIALES 159
SISTEMA DE INVENTARIO "SIM"
DataGrid1 Refresh
End Sub
'##Modelld=3FD6AB2300BC
Private Sub cmdGuardar_Click{)
Dim PRODUCTO As CSALlDAS
Set PRODUCTO = New CSALlDAS
PRODUCTO COD_PROD = LTrim(txtCodigo Text)
PRODUCTO.COD SALIDAS = txtCod Sali TextI - -
PRODUCTO.DESCRIPCION = txtDescripcion Text
PRODUCTO UM = txtUm Text
PRODUCTO SALIDAS =Val(txtSalidas Text)
PRODUCTO FECHA_SALIDAS = txtFecha_Salidas.Text
PRODUCTO PRECIO_UNIT = Val(txtPrecio_Unit.Text)
PRODUCTO.PRECIO_TOTAL = Val(txtPrecio_TotaI.Text)
PRODUCTO NUM_DOC =Val(txtNum_Doc Text)
PRODUCTO GUARDAR
Rem ESCONDEMOS LOS CAMPOS UTILIZADOS
Frame1 Visible = False
txtCodigo Visible = False
txtCodigo Enabled = False
txtDescripcion Visible = False
t'áCod_SaliVisible =False
txtUm Visible =False
txtSalídas Visible = False
txtFecha_Salidas Visible = False
txtPrecio_Unit.Visible = False
UNIVERSIDAD DE CIENCIAS COMERCIALES 160
SISTEMA DE INVENTARIO "SIM"
txtPrecio_Total Visible = False
txtNum_Doc Visible = False
IblCodigo Visible:: False
IblCod_Sali Visible = False
IblDescripcionVisible = False
IblUm Visible = False
IblSalidas.Visíble = False
IblFecha_Salidas Visible:: False
IblPrecio Unit Visible = False1-
IblPrecio_Total.Visible = False
IblNum_Doc Visible =False
Ibletiqueta.Visible = False
IbIEncontrado.Visible:: False
cmdGuardar.Visible = False
cmdCancelar.Visible = False
cmdModíficar Enabled = False
cmdElíminar Enabled = False
If Adodc1 Recordset RecordCount :: -1 Then
Else
DataGrid1 Refresh
End If
Rem RS.MoveLast
Rem Adodc1 Recordset Update
Rem DataGrid1 Refresh
Msg8o){ ("REGISTRO ALMACENADO EN SALIDAS")
End Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 161
SISTEMA DE INVENTARIO "SIM"
##Modelld=3FD6A82300FA
Private Sub cmdlnicio_ClickO
Rem ESTA EN EL INICIO
Adodc1.Recordset MoveFirst
cmdAnterior.Enabled :: False
cmdlnício Enabled = False
cmdSiguiente Enabled = True
DataGrid1.Refresh
End Sub1
'##Modelld=3FD6A8230168
Private Sub cmdModificar_ClickO
Rem MODIFICAR UN REGISTRO
cmdActualizar Visible = True
IblModificar Visible = True
IblEncontrado.Visible = False
Ibletiqueta Visible:::: False
txtDescripcion.SetFocus
End Sub
'##Modelld=3FD6A82301D6
Private Sub cmdRetornar_ClickO
frmprincipaJ Show
Unload Me
End Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 162
\:;~';~
~~ '. c\;;::~i;: ~:;
SISTEMA DE INVENTARIO "SIM")
\i:~.::,
!'l
'##Modelld=3FD6A8230244
Prívate Sub cmdSiguiente_Click()
Rem SE CORRE AL SIGUIENTE REGISTRO
Adodc1 Recordset MoveNext
cmdAnterior.Enabled = True
cmdlnicio Enabled = True
If Adodc1.Recordset EOF Then
Adodc1.Recordset.MoveLast
cmdFinal Enabled = FalseI
cmdSiguiente Enabled:= False
End If
DataGrid1 Refresh
End Sub
'##Modelld=3FD6A82302E4
Private Sub Form_LoadO
Set eN = New Connection
Set RS = New Recordset
CN CursorLocation =adUseClient
CN.ConnectionString = "Provider=MSDASQL 1,Persist Security Info=False;Data
Source=BD_INVENTARIO"
CN.Open
Set RS.ActiveConnection = eN
RS.CursorType = adOpenForwardOnly
RS.Open "select * from SALIDAS"
End Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 163
~,-
SISTEMA DE INVENTARIO"smP'
'##ModelId:;:3FD6A8230352
Private Sub Text1_KeyPress(KeyAscii As Integer)
If (KeyAscii ::; vbKeyReturn) Then
txtDocumento SetFocus
End If
End Sub
'##Modelld=3FD6A8240082
Private ~ub txtCod_Recep_ChangeO
End Sub
'##Modelld=3FD6A82400FO
Prívate Sub txtCod_Sali_KeyPress(KeyAscii As Integer)
If (KeyAscii::; vbKeyReturn) Then
txtCod_Sali Text = Adodc3.Recordset Fields(ICOD_SALI"}
txtSalidas.SetFocus
End If
End Sub
'##Modelld=3FD6A82401 FE
Private Sub txtCodigo_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
Adodc2 Recordset.MoveFirst
Do While Not Adodc2.Recordset EOF
If Adodc2.Recordset EOF Then
Exit Do
End If
UNIVERSIDAD DE CIENCIAS COMERCIALES 164
\.
.~7' ,/;
SISTEMA DE INVENTARIO "SlM"
If Trim(Adodc2 Recordset Fields("COD_PROD"» = Trim(txtCodigo Text) Then
Rem Msg Box ("pase")
txtCodigo.Enabled = False
txtDescripcion Enabled = False
txtUm Enabled = False
txtDescripcion.Text = Adodc2.Recordset Fields("DESCRIPCION")
txtUm Text =Adodc2 Recordset Fields("UM")
txtNum~Doc.SetFocus
Exit Dp
Else
Adodc2.Recordset MoveNext
If Adodc2.Recordset EOF Then
MsgBox ("REGISTRO NO EXISTE, INVESTIGUE POR FAVOR")
txtCodigo = ""
Exit Sub
End If
End If
Loop
txtNum_Doc SetFocus
End If
End Sub
'##Modelld=3FD6A824030C
Private Sub txtDocumento_KeyPress(KeyAscii As Integer)
If U<eyAscii = vbKeyReturn) Then
cmdEjecutar.SetFocus
End If
UNIVERSIDAD DE CIENCIAS COMERCIALES 165
•
,;1
\;,
'~~_/P
SISTEMA DE INVENTARIO "SIM"
cmdEjecutar Enabled =True
End Sub
'##Modelld=3FD6A825003C
Prívate Sub txtFecha_Salidas_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
txtPrecio_LJnit SetFocus
End If
End Sub
'##Modelld=3FD6A825014A
Prívate Sub txtNum_Doc_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
txtCod_Sali SetFocus
If (KeyAscii ::: vbKeyReturn) Then
End If
End Sub
'##Modelld=3FD6A8250294
Prívate Sub txtPrecio_Unit_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
txtPrecio_Total Text = txtSalidas * txtPrecio_Unit
txtNum_Doc SetFocus
End If
End Sub
UNIVERSIDAD DE CIENCIAS COMERCIALES 166
y\;, .
. ~i.i'~:;" Ii' .. ;
SISl".EMA DE INVENTARIO"SIM"
'"~;;'''i:: rj,;: ~ ..,;
'##Modelld=3FD6A82503AC
Private Sub txtSalidas_KeyPress(KeyAscii As Integer)
If (KeyAscii = vbKeyReturn) Then
txtCod_SalLText =Adodc3 Recordset.Fields("COD_SALI")
txtFecha_Salidas.SetFocus
End If
End Sub
Este formulario manda a llamar a una clase llamada CSALlDAS y su código es el siguienteI
'variables locales para almacenar los valores de las propiedades
'##Modelld=3FD6A8160154
Private mvarCOD_PROD As String 'copia local
'##Modelld=3FD6A81601 C2
Private mvarCOD_SALlDAS As String 'copia local
'##Modelld=3FD6A8160230
Private mvarDESCRIPCION As Stríng 'copia local
'##Modelld=3FD6A81602DO
Private mvarUM As String 'copia local
'##Modelld=3FD6A816033E
Prívate mvarSALlDAS As Double 'copia local
'##Modelld=3FD6A8170000
Private mvarFECHA_SALlDAS As Date 'copia local
'##Modelld=3FD6A81700AO
Private mvarPRECIO_UNIT As Double 'copia local
'##Modelld=3FD6A817010E
Prívate mvarPRECIO_TOTAL As Double 'copia local
UNIVERSIDAD DE ClENCIAS COMERCIALES 167
SISTEMADE INVENTAltIO"SIM"
'##Modelld=3FD6A81701 B8
Private mvarNUM_DOC As Double 'copia local
'##Modelld=3FD6A8170258
Prívate mvarWEN1 As Double 'copia local
'##Modelld=3FD6A8170302
Private mvarWSA1 As Double 'copia local
'##Modelld=3FD6A81703EO
Private CN As Connection1
'##Modelld=3FD6A81703E3
Private RS As Recordset
'##Modelld=3FD6A8180028
Public Property LetWSA1(ByVal vData As Double)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax' X WSA1 = 5
mvarWSA1 = vData
End Property
..._,.........~"',"
'v~ ,: ~ :-;~~
'##Modelld=3FD6A8180172
Public Property Get WSA10 As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación.
'Syntax. Debug Prjnt X.WSA1
WSA1 = mvarWSA1
End Property
'##Modelld=3FD6A818021 C
UNIVERSIDAD DE CIENCIAS COMERCIALES 168
i._~~~~~~J1"""'>.-0' .._~
SISTEMA DE INVENTARIO "SIM"J
'"~~ :~f~:; , .:
" n -¡
Public Property Let WEN1(ByVal vData As Double)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax X WEN1 == 5
rnvarWEN1 == vData
End Property
'##Modelld=3FD6A819001E
Public Property Get WEN10 As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación1
'Syntax. Debug Print X.WEN1
WEN1 = mvarWEN1
End Property
'##Modelld=3FD6A81900C8
Public Property Let UM(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax KUM = 5
mvarUM = vData
End Property
'##Modelld=3FD6A8190244
Public Property Get UMO As String
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación.
'Syntax· Debug Print X UM
UM = mvarUM
End Property
UNIVERSIDAD DE CIENCIAS COMERCIALES 169
SISTEMA DE INVENTARIO "SIM"
'##Modelld=3FD6A81902E4
Public Sub MODIFICARO
Set RS ActiveConnection = CN
Dim WSA2 As Double
Dim WSAlIDA As Double
Dim WCODIGO As String
Dim WIl As Double
RS.LockType::: adLockOptimistic I NECESARIO PARA LEER Y ESCRIBIR
RS.CursorType = adOpenKeyset I ACTIVA EL CURSORI
RS.Open "SELECT * FROM SALIDAS"
RS.MoveFirst
Do While Not RS EOF
If RS.EOF Then
Exit Sub
Else
If RTrim(RS.Fields(ICOD_PROD"» = COD_PROD Then
Rem MsgBox (liLa ENCONTRE")
RS Fields("COD_PROD")::: COD_PROO
RS Fields(ICOO_SALI")::: COD_SALlDAS
RS Fields("DESCRIPCION") ::: DESCRIPCION
RS.Fields("UM"} = UM
RS Fields(ISAlIDAS") ::: SALIDAS
WSA2::: RS.Fields(ISALlDAS"}
RS Fields("FECHA_SALlDA")::: FECHA_SALIDAS
RS Fields("PRECIO_UNIT")::: PRECIO_UNIT
RS.Fields("PRECIO_TOTAL"} ::: PRECIO_TOTAL
RS.Fields("NUM_DOC"} ::: NUM_DOC
UNIVERSIDAD DE CIENCIAS COMERCIALES 170
......... ~....,..,)
\< ,'l;W> ...~~
::; ; n· :"';:l~f,
RS Updélte
Exit Do
Rem Else
Rem MsgBox ("COOIGO = ") & RS Fields("COO_PROD")
End If
RS.MoveNext
End If
Loop
Rem If (KeyAscii ::: vbKeyReturn) ThenMsgBox ('VALOR WSA1 ") & Str(WSA1}I
RS C/ose
Rem ACTUALIZAR ENTRADAS EN LA TABLA INVENTARIO
Oim WEXISTE As Double
RS Open "SELECT * FROM INVENTARIO ORDER BY COD_PROO"
RS MoveFirst
Rem MsgBox ("A BUSCAR ") & COD_PROO
Do While Not RS EOF
If RS EOF Then
ExitSub
Else
If RTrim(RS Fields("COD_PROO"»::: RTrim(COD_PROO) Then
Rem MsgBox ("LO ENCONTRE")
Rem RS.Fields("COD_PROD") = COO_PROD
WIl ::: RS.Fields("INVE_INI")
WSALlDA::: RS.Fields("SALlDAS")
WENTRADA ::: RS Fields("ENTRADAS")
WSALlDA ::: WSAUDA - WSA1 + WSA2
HS Fields{"SAUDAS") = WSALlDA
UNIVERSIDAD DE CIENCIAS COMERCIALES 171
~-
\',:á;.~!':'
~F ' " ,
SISTEMA DE INVENTARIO "SIM"
RS Fields("EXISTENCIA") =WENTRADA - WSALlDA
If RS.Fields("NIVEL_MINIMO") >= RS.Fields("EXISTENCIA") Then
MsgBox ("EXISTENCIAS EN NIVEL CRITICO ")
End If
RS Update
Exit Sub
End If
RS MoveNext
End If
Loop
End Sub
'##Modelld=3FD6A8190352
Public Sub GUARDARO
Set RS.ActiveConnection = CN
RS LockType = adLockOptimistic I NECESARIO PARA LEER Y ESCRIBIR
RS CursorType = adOpenKeyset I ACTIVA EL CURSOR
RS Open "SELECT * FROM SAlIDAS"
RS.AddNew
RS.Fields("COD_PROO") = COO_PROO
RS.Fields("COD_SAlI") = COD_SAlIDAS
RS.Fields("DESCRIPCION") = DESCRIPCION
RS Fields("UM") = UM
RS Fields("SAlIDAS") = SALIDAS
RS Fields("FECHA_SALlDA") = FECHA_SALIDAS
RS.Fields("PRECIO_UNIT") = PRECIO_UNIT
HS fields("PRECIO_TOTAL") = PRECIO_TOTAL
UNIVERSIDAD DE CIENCIAS COMERCIALES 172
j
\,~.
" ;;
SISTEMA DE INVENTARIO "SIMn
RS Fi0Ids("NUM_DOC") ;: NUM_DOC
RS Update
RSClose
Rem ACTUALIZAR SALIDAS EN LA TABLA INVENTARIO
Dim WENTRADA As Double
Dim WSALlDA As Double
Dim WI! As Double
RS.Open "SELECT * FROM INVENTARIO ORDER BY COD_PROD"
RS MoveFirst1
Rem MsgBox ("A BUSCAR ") & COD_PROD
Do While Not RS.EOF
If RS.EOF Then
Exit Sub
Else
If RTrim(RS Fields("COO_PROO"» = RTrim(COD_PROO) Then
Ram MsgBox ("LO ENCONTRE")
Ram RS Fields("COD_PROO") = COO_PROO
WII ;: RS.Fields("INVE_INI")
WSALlDA;: RS.Fields("SALlDAS")
WENTRADA =RS.Fields(IENTRADAS")
WSALlDA =WSALlDA + SALIDAS
RS Fields("SALlDAS") =WSALlDA
RS Fields("EXISTENCIAtI) =WII + WENTRADA - WSALlDA
If RS Fields(INIVEL_MINIMO") >= RS.Fields("EXISTENCIA") Then
MsgBox ("EXISTENCIAS EN NIVEL CRITICO ")
End If
RS Update
UNIVERSIDAD DE CIENCIAS COMERCIALES 173
ló<.I"-J",........
j
\.i:.'~
11
SISTEMA DE INVENTARIO "SJW
Exit Sub
End If
RS MoveNext
End If
Loop
End Sub
'##Modelld=3FD6A81903CO
Public Sub ~LASS_INITIALJZEO
Set CN = New Connection
Set RS = New Recordset
CN ConnectionString = "Provider=MSDASQL.1,Persíst Security Info=False;Data
Source=BD_'NVENTAR'O"
CN.Open
End Sub
'##Modelld=3FD6A81A0046
Public Sub ELlMINARO
Set RS ActiveConnection = CN
Dim WENTRADA As Double
Dim WSAlIDA As Double
Dim WII As Double
Dim WSALJ2 As Double
Dim WCODIGO As String
RS.LockType = adLockOptimistic • NECESARIO PARA LEER Y ESCRIBIR
RS CursorType = adOpenKeyset 'ACTIVA EL CURSOR
RS Open "SELECT * FROM SALIDAS"
UNIVERSIDAD DE CIENCIAS COMERCIALES 174
SISTEMA DE INVENTARIO "SIM'
RS MoveFirst
Do While Not RS EOF
If RS EOF Then
Exit Sub
Else
If RTrim(RS Fields("COD_PROD"» = COD_PROD Then
Rem MsgBox ("LO ENCONTREU)
WCODIGO = RS Fields(ICOD_PROO")
WSALl2 =RS Fields(ISALlDAS")I
RS.DeJete
Exit Do
Rem Else
Rem MsgBox ("CODIGO = ") & RS Fields(ICOO_PROD")
End If
RS MoveNext
End If
Loop
RS Close
Rem ACTUALIZAR SALIDAS EN LA TABLA INVENTARIO
RS Open "SELECT * FROM INVENTARIO ORDER BY COD_PROD"
RS.MoveFirst
Rem MsgBox ("A BUSCAR ") & WCODIGO
Do While Not RS EOF
Jf RS EOF Then
Exit Sub
Else
lf RTrim(RS.Fields(ICOO_PROD")}:: RTrim(WCODIGO} Then
UNIVERSIDAD DE CIENCIAS COMERCIALES 175
\,c~;;u
, !:J ..;
SISTEMA DE INVENTARIO "SIM"
Rem MsgBox (liLa ENCONTREn)
Rem RS Fields("COO_PROO") = COO_PROD
WII = RS Fields{nINVE_INI")
WSAUDA = RS Fields{"SALlDAS")
WENTRADA = RS Fields{"ENTRADASn)
WSALlDA = WSALlDA - WSALl2
I1S Fields{"SALlDAS") =WSALlDA
RS Fields("EXISTENCIA") = WII + WENTRADA - WSALlDA
RS Update1
Exit Sub
End If
RS.MoveNext
End If
Loop
End Sub
'##Modelld=3FD6A81AOOB4
Public Sub BUSCAR(MBUSCA As String)
Dim MBUSCAR As String
MBUSCAR = MBUSCA
Set RS ActiveConnection =CN
RS LockType = adLockOptimistic ' NECESARIO PARA LEER Y ESCRIBIR
RS.CursorType =adOpenKeyset 'ACTIVA EL CURSOR
RS.Open "SELECT * FROM SALIDAS order by COD_PROD n
Rern MsgBox (" 1 MBUSCAR = ") & MBUSCAR
RS.MoveFirst
00 \J\]hile Not RS.EOF
UNIVERSIDAD DE CIENCIAS COMERCIALES 176
SISTEMA DE INVENTARIO "SfM'fJ
'j.-o~..~,\
. ;;. ""':' :;;. n'l ,:'1.: ":~:;.
If RS EOF Then
Exit Sub
EIse
If RTrim(RS Fields("COD_PROD"» = MBUSCAR And RTrim(RS Fields("num_doc"» =
RTrim(NUM_DOC) Then
Rem MsgBox ("tO ENCONTRE")
COO_PROD = RS.Fields("COO_PROD")
COO_SALlDAS = RS Fields("COO_SALl")
DESCRIPCION = RS Fields("DESCRIPCION"}I
UM = RS.Fields("UM")
SALIDAS =RS Fields("SAlIDAS")
WSA1 = RS.Fields("SALlDAS"}· ESTO ES PARA ACTUALIZAR INVENTARIO
FECHA_SALIDAS::: RS Fields("FECHA_SALlDA"}
PRECIO_UNIT = RS Fields("PRECIO_UNIT"}
PRECIO_TOTAL = RS.Fields("PRECIO_TOTAL")
NUM_DOC = RS.Fields("NUM_DOC")
Exit Sub
Else
Rem MsgBox ("CODIGO ::: ") & RS Fields("COD_PROD")
End If
RS MoveNext
End If
Loop
End Sub
'##l\Jlodelld=3FD6A81A01 FE
Public Property Let NUM_DOC(ByVal vData As Double}
UNIVERSIDAD DE CIENCIAS COMERCIALES 177
SIS':fEMAD.E JNVENTARlO~:J
...~.;:0(;;!ji ."':;nv, ,'"
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'8yntax X NUM_OOC =5
mvarNUM_OOC = vData
End Property
'##Modelld=3FD6A81A0384
Public Property Get NUM_OOCO As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'8yntax Oebug Print X NUM_OOC
NUM OOC = mvarNUM DOC- I -
End Property
'##Modelld=3F06A8180078
Public Property Let PRECIO_TOTAL(ByVal vData As Double)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación.
'Syntax: X.PRECIO_TOTAL = 5
mvarPRECIO_TOTAL = vData
End Property
'##Modelld=3FD6A81 B0230
Public Property Get PRECIO_TOTALO As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación.
'8yntax. Debug.Print X.PRECIO_TOTAL
PRECIO_TOTAL = mvarPRECIO_TOTAL
End Property
'#:'f.Modelld=3FD6A81 B030C
Pllblic Property Let PRECIO_UNIT(ByVal vData As Double)
UNIVERSIDAD DE CIENCIAS COMERCIALES 178
SISTEMA DE INVENTARIO "SIM")
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax X PRECIO_UNIT = 5
rnvarPRECIO_UNIT = vData
End Property
'##Modelld=3FD6A81 COODC
Public Property Get PRECIO_UNITO As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación.
'Syntax qebug Print X PRECIO_UNIT
PRECIO_UNIT = mvarPRECIO_UNIT
End Property
'##Modelld=3FD6A81 C01 88
Public Property Let FECH~SALlDAS(ByVal vData As Date)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax' X FECHA_SALIDAS =5
mvarFECHA_SALlDAS = vData
End Property
'##Mode/ld=3FD6A81 C0370
Public Property Get FECHA_SALlDASO As Date
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax: Debug Print X.FECHA_SALlDAS
FECHA_SALIDAS = rnvarFECHA_SALlDAS
End Property
UNIVERSIDAD DE CIENCIAS COMERCIALES 179
;~~,~:'i~r
SISTEMA DE INVENTARIO "SIM"
'##Modelld=3FD6A81 D0096
Public Property Let SALlDAS(ByVal vData As Double)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax X.SALlDAS = 5
mvarSALlDAS = vData
End Property
'##Modelld=3FD6A81 D0280
Public Property Get SALlDASO As DoubleI
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación.
'Syntax. Debug.Print X SALIDAS
SALIDAS = mvarSALlDAS
End Property
'##Modelld=3F06A81 00398
Public Property Let DESCRIPCION(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax X DESCRIPCION = 5
mvarDESCRIPCION = vData
End Property
'##Modelld=3FD6A81 E019A
Public Property Get OESCRIPCIONO As String
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax Oebug Print X,DESCRIPCION
OESCRIPCION = mvarDESCRIPCION
End Property
UNIVERSIDAD DE CIENCIAS COMERCIALES 180
SlS'f'KMADE INVENTARlO"SlM"-/P
,~~;~~
'##Modelld=3FD6A81 D0096
Public Property Let SALlDAS(ByVal vData As Double)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax. X.SAlIDAS = 5
mvarSAlIDAS = vData
End Property
'##Modelld=3FD6A81 00280
Public Property Get SALlDAS() As Double
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación.
'Syntax: Debug Print X.SALlDAS
SALIDAS = mvarSALlDAS
End Property
'##Modelld=3FD6A81 00398
Public Property Let DESCRIPCION(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación
'Syntax. X DESCRIPCION = 5
mvarDESCRIPCJON = vData
End Property
'##Modelld=3FD6A81 E019A
Public Property Get DESCRIPCIONO As String
'St"') 11!:3F\ al recuperar un valor de una propiedad, en la parte derecha de una asignación
'SYi'ÜilJe. Debug Print X DESCRIPCrONUNIVERSIDAD DE CIENCIAS COMERCIALES 181
SISTEMA DE INVENTARIO "SIM"
DESCRIPCION :: mvarOESCRIPCION
End Property
'##Modelld=3FD6A81 EQ2B2
Public Property Let COD_SALlDAS(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación.
'Syntax X.COD_SALlDAS:: 5
mvarCOD_SALlDAS = vData
End Property
'##Modelld=3FD6A81 FOOB4
Public Property Get COO_SALlDASO As String
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación
'Syntax Debug Print X.CCD_SALlDAS
COD_SALIDAS = mvarCOD_SALIDAS
End Property
'##Modelld=3FD6A81 F01 CC
Public Property Let COD_PROD(ByVal vData As String)
'se usa al asignar un valor a la propiedad, en la parte izquierda de una asignación.
'Syntax: X COD_PROD = 5
mvarCOO_PROD = vData
End Property
'##Modelld=3FD6A820000A
Public Property Get COD_PRODO As String
'se usa al recuperar un valor de una propiedad, en la parte derecha de una asignación.
'8ynta}( Debug.Print X.COD_PROD
UNIVERSIDAD DE CIENCIAS COMERCIALES 182
SISTEMA DE INVENTARIO "SIM"
COD_PH¡JD = mvarCOO_PROD
End Property'
.;;».i~,.::-.-Í:: ~~~{h-::.t
~JJ}'..-:....;.:~...)
~<.; ~: ::. -ri~.~.:: :.:
Quiero aclarar que en esta parte de la codificacion solamente tome los formularios qué
considere más importante con sus respectivas clases y código.
UNIVERSIDAD DE CIENCIAS CO:MERCIALES 183\.}
SISTEMA DE INVENTARIO "SIM"...,...:-r....·-'"
..~.:
""-'",,~
.: l'L
La caracteristicas utilies de este Sistema Cliente/Servidor es que las bases de datos suelen
proporcionar potentes funciones que no se encuentran en las bases de escritorio como
Acces, FoxPro, etc. Estas funciones no sólo automatizan la administración de la base de
datos, sino que también proporcionan potentes posibilidades de desarrollo de aplicaciones a
como fue mi caso donde utilize un proyecto DLL para incluir todas las clases.
Para realizar la conexión de la base de datos del Servidor con el cliente utilizamos los
componentes OOBe, ACOCe
El componente oose ofrece mediante la definición de una API en el lado del cliente que es
independiente de la base de datos que haya en el otro extremo. Gracias a su controlador
oose es posible acceder a la base de datos de forma transparente.
Otro estándar es SQL Server 6.0, aunque lleva utilizándose algo más de tiempo, es de vital
importancia en el desarrollo de aplicaciones cliente/servidor.
La conexión OOBe se hace entrando al panel de control entrando en:
UNIVERSIDAD DE CIENCIAS COMERCIALES 184
:~.
SISTEMA DE INVENTARIO "SIM"
\;,;':> .;,~.)':1~;:
':,,; ~,<.·t!;\:,'i:;~1
Para comprender un poco mejor la forma en que se conecta la base de datos del servidor
con la aplicación del cliente observe la siguiente figura:
Se le da Agregar:
SISTEMA DE INVENTARIO "SIM".Vt"-... ¡,·~
:;)
.~):i~ff.:pi:>, :~
Se le da Finalizar para luego crear un nuevo origen de datos para SQl Server, hay que
introducir un nombre para referirse al origne de datos y luegos el servidor donde se
encuentra [a base de datos.
Se le da siguiente y escoge la base de datos como se muestra en la siguiente figura:
SISTEMA DE INVENTARIO "SIM" .""'l.. ~.:,,~. )lj
~Ú~;t~ -Yo
,~~::t,:L;:~,/;' /:i
Una vez que se ha realizado la conexión OOBe entramos a nuestro proyecto en Visual Basic
y conectamos la conexión con el componente ADOOC dando con el boton derecho del
mouse sobre el componente:
Tenemos que activar: "Usar cadena de conexión" y generar.
UNIVERSIDAD DE CIENCIAS COMERCIALES 187
~.J
SISTEMA DE INVENTARIO "SIM"I,j~.~~:~~~l~
~ms"",.;}.~
\.~
rtn~·A·
lj
188
SISTEMA DE INVENTARIO "srM"....~:¡.....--
;)
~ ..~
¡JJ~ ...:~,:} ',',",:, ".. :.'; ,,:~
~~ 1 COD)I¡,QYIJl)"7!~ DEl. pp'oVfff(im~rranij
TELEfCJ5CllTELEmtm.
OJD_~D
D&ll\tl)'ttDrlTD\1Jij)'P.ADArR:~EijfIlAOA
'~ECIQJj~
'~fOOJOTAL
CDIlPIIDVIbJItOOC
'r..~, ~, mO-".DDD&:e.naQ~
lJJII
TIJO.S6,Ua\I FR:~LIn6.
I·Tll~ ]:I P~RJO_TQTAL ¡. ijLl"LOOC !
&~,,~~~~~q...~,.~~~=-!
, "
.~ ... , .. ,
; , CDD)'Il.QD
n&um'tlMPR.QVffOOJlEijfRADASS6.L1D.6S
E>:lSTEICAlIVfI..."1I)DI}
lINfIlFlSIll~
UNIVERSIDAD DE CIENCIAS COMERCIALES 189
\,.•~&t~ 11'i - ~l
~0~;.;,¡,: __ ..,:.":.:,,.;¡~!"
SISTEMA DE INVENTARIO"SlM"
3. e o N e L u S ION E S
.... fi ... .,.'-'-"o
)
La elaboración de este proyecto para la Empresa DIFERCAL S.A. permitira una mejor
ayuda al control de Inventario, asi como un medio para la solución de problemas de la
Empresa.
Se identificaron gran parte de los elementos de información del Inventario por medio de las
diferentes técnicas de recolección de datos que permitieron elaborar el conjunto de
elementos del Sistema.
La implementación de este proyecto ayudara a la Empresa a disminuir sus perdidas
monetarias y de factor tiempo, ya que es Sistema de Inventario permitira un control exacto de
sus productos, lo que permitira ser una herramienta muy útil en la toma de decisiones.
UNIVERSIDAD DE CIENCIAS COMERCIALES 190
SIST.EMA DE INVENTARIO "SIM";1
l.",,~,
.. ~:j.::::,,\;~~'.\,' ~L:',/i,:',~
4. R E e o M E N o A e ION E S
Se rocomiE~nda a la Empresa DIFERCAL S.A. aplicar la automatización del Sistema de
inventario rh:;~ Productos Farmaceuticos par un mejor control de los mismos.
Realizar controles de Inventario Físico en períodos regulares que la empresa considere
conveniente para su analisis contra los resultados obtenidos por el Sistema Automatizdo de
Inventario.
Preparar al personal que manejara el Sistema Automatizado de Inventario para un uso
optimo del mismo.
Utilizar el Sistema Automatizado de Inventario par la elaboración de otros tipos de reportes e
informes que ayuden para la buena toma de decisiones en la politica de inventario de la
empresa.
UNIVERSIDAD DE CIENCIAS COMERCIALES 191
SISTEMA DE INVENTARIO"SlM"
5. B I B L I O G R A F I A
~( Aprenda Programación en Microsoft SQL Server 2000 Ya.
Rebecca M. Riordan.
Me Graw Hill.
Edición 2001.
~ El Lenguaje Unificado de Modelado. Manual de Referencia.
James Rumbaugh.
Ivar Jacobson.
Grady Boech.
Addison Wesley.
Edición 2002.
~ Ingenieria de Software Orientado a Objetos.
Bernd Bruegge.
Allen H. Dutoit.
Prentiee Hall.
Edición 2002.
~ Ingenieria del Software un enfoque práctico
Roger S. Pressman.
5ta Edición.
iVlc Graw HiII.
';~:--~'~':~:f~W':-
:t~~
;J
\:, ;
~<!'l- 0-";
../ Análisis y Diseño de Sistemas.
Me Graw Hil.
../ Aprendiendo Visual Basic 6 en 21 días.
Pearson.
Prentice Hall.
~ PrQgramación Cliente/Servidor con Microsoft Visual Basic.
Kenneth L. Spencer
Ken Miller.
Mc Graw Hm.
~ Programación de bases de datos con Microsoft Visual Basic.
Alfons González.
Computec.
~ Bases de Datos con Visual Basic.
Jeffrey P. McManus.
Sams.
\" ,
i:~.;;;~~~; ~ !j'
SISTEMA DE INVENfARIO "SIM"
A N E X O s.
)
.~;~i;;~~
UNIVERSIDAD DE CIENCIAS COMERCIALES
GRAFICA DE TIEMPO (GANTT)
•¡4f1YF
UNIVERSIDAD DE CIENCIAS COMERCIALES
UNIVERSIDAD DE CIENCIAS COMERCIALES
TABLA OE PROYECTO
....... , Hid4 ;"i,::;:t· ,.• Se~~.,"l6 .....S~ri:í2
"';'.' ~MJj\1rv[-.
MJMM
"MJM:M
iE~~~I(!¡~0!~t~;t'~'J!~,i~,F,i;, ...
UNIVERSIDAD DE CIENCIAS COMERCIALES
Es previsible que. requiera de más.'. 'es~etzo / tiempo