INTRODUCCIÓN
Los constantes descubrimientos de nuevas tecnologías y la gran evolución de los
sistemas de información obliga a las empresas a migrar hacia las mismas y mantener
una ventaja competitiva hacia los demás, como muestra de ello tenemos la tecnología, el
cual pretende demostrar la optimización de los procesos de control, y la mejora en la
exactitud de los datos.
El presente proyecto, es de carácter exploratorio. Su aplicación está generalizada en el
control de ventas de productos farmacéuticos donde se aplica las técnicas de
verificación permanente.
Actualmente en la Botica se viene registrando las ventas a través de un documento
denominado “Cuaderno de apuntes de ventas de medicamentos” que consiste en anotar
todas las ventas que se realiza diario y saber cuánto de productos se vendió diario y el
precio total de los productos, y después se almacena en una hoja de Excel para tener
guardada la información. Por otro lado para saber todo la cantidad obtenida anual de la
ganancia se encarga de hacer este trabajo el Administrador.
El presente proyecto tiene como finalidad el Desarrollo de un sistema de Compra y
Ventas De Productos Farmacéuticas para la Botica “SAN CAMILO”, lo que permitirá
registrar los procesos de las ventas de los Productos.
1
I. MARCO TEORICO (Revisión de literatura)
SISTEMA DE INFORMACIÓN
Un sistema de información (SI) es un conjunto de elementos orientados al tratamiento y
administración de datos e información, organizados y listos para su posterior uso,
generados para cubrir una necesidad (objetivo).
Elementos
Entrada de Información: Es el proceso mediante el cual el Sistema de Información toma
los datos que requiere para procesar la información. Las entradas pueden ser manuales o
automáticas.
Almacenamiento de información: a través de esta propiedad el sistema puede recordar la
información guardada en la sección o proceso anterior. Esta información suele ser
almacenada en estructuras de información denominadas archivos.
Procesamiento de Información: Es la capacidad del Sistema de Información para
efectuar cálculos de acuerdo con una secuencia de operaciones prestablecida. Esta
característica de los sistemas permite la transformación de datos fuente en información
que puede ser utilizada para la toma de decisiones, lo que hace posible, entre otras
cosas, que un tomador de decisiones genere una proyección financiera a partir de los
datos que contiene un estado de resultados o un balance general de un año base.
Salida de Información: La salida es la capacidad de un Sistema de Información para
sacar la información procesada o bien datos de entrada al exterior. Las unidades típicas
de salida son las impresoras, terminales, diskettes, cintas magnéticas, la voz, los grafica
dores y los plotters, entre otros. Es importante aclarar que la salida de un Sistema de
Información puede constituir la entrada a otro Sistema de Información o módulo
Objetivos del Sistema de Información.
Este trata fundamentalmente de:
Suministrar a la dirección de la empresa y a todos los niveles, el conocimiento de los
resultados de la actividad, así como el estado de los factores internos o externos que
afectan el curso de la misma.
Proveer los canales a través de los cuales las decisiones de la dirección, expresadas en
órdenes e información de diversas clases y contenidos, se incorporen a las operaciones
de la empresa.
2
Coordinar entre todas las personas de la empresa, a fin de lograr el grado de relación
precisa para conseguir los objetivos de aquella.
De acuerdo a lo señalado anteriormente, el objetivo del sistema queda expresado a
través de los siguientes puntos:
Elaborar los métodos y desarrollar las técnicas necesarias para adquirir y transmitir la
información, así como desarrollar los procedimientos para su almacenamiento y
utilización posterior.
Servir de soporte al sistema de planificación, recogiendo su contenido en documentos
adecuados para hacerla efectiva y trascendente.
Establecer causes para recoger la información interna y externa, lo cual es relevante
para la vida de la empresa, transmitiéndola a aquellos que deben incorporarla a las
operaciones a través de sus decisiones.
Proveer los medios para que la información procedente de los resultados de la
actividad, sea elaborada de acuerdo con las reglas determinadas al efecto.
Dar a conocer en forma sistemática y organizada la información, a los ejecutivos y
directores de la empresa, a través de los sistemas de información, control y gestión.
En conclusión, podemos decir, que los “Sistemas de Información de la Empresa” son
conjuntos organizados de elementos dirigidos a recoger, procesar, almacenar y distribuir
información de manera que pueda ser utilizada por las personas adecuadas en la
empresa de modo que desempeñen sus actividades de modo eficaz y eficiente. La
información puede verse sobre personas, lugares, cosas o eventos internos a la empresa,
o sobre el entorno que los rodea. Las personas utilizan la información para tomar
decisiones, mantenerse informado sobre los recursos empleados y para planificar el
futuro. La información tiene atributos de exactitud, fiabilidad y oportunidad.
Los elementos que conforman un sistema de información son cuatro:
INFORMACIÓN. Todo aquello (número, texto, imagen, voz) que el sistema captura,
procesa, almacena y distribuye.
PERSONAS. Gente que introduce, procesa y/o utiliza la información del sistema.
TECNOLOGÍA DE LA INFORMACIÓN Y LA COMUNICACIÓN. Hardware y
software empleado en las tareas del sistema.
3
TÉCNICAS DE TRABAJO. Métodos utilizados por las personas y las tecnologías
para desempeñar su trabajo.
Estos elementos constituyen un Sistema de Información cuando se juntan y operan
coordinadamente para alcanzar un objetivo determinado en la empresa, ya sea gestionar
las transacciones corrientes, facilitar la toma de decisiones estratégicas, mantener un
canal comercial o cualquier otro propósito útil para el éxito de la empresa.
En este sentido, un sistema informático, un conjunto de hardware o software, no es un
Sistema de Información. Sólo cuando este sistema informático actúa en coordinación
con el resto de elementos para un propósito empresarial definido hablamos de “Sistemas
de Información de la Empresa”.
VENTAS.
El término ventas tiene múltiples definiciones, dependiendo del contexto en el que se
maneje. Una definición general es cambio de productos y servicios por dinero. Desde el
punto de vista legal, se trata de la transferencia del derecho de posesión de un bien, a
cambio de dinero. Desde el punto de vista contable y financiero, la venta es el monto
total cobrado por productos o servicios prestados.
COMPRAS:
Compras es un proceso en el que participan el solicitante que formula el requerimiento
de un bien tanto de patrimonio, como un bien para el consumo en el proceso de su
actividad dentro de la institución.
Además del servicio que solicita la compra, participa la oficina de Compras
propiamente dicha, esta oficina de compras recibe el requerimiento, selecciona el
proveedor y registra las ofertas, luego selecciona el proveedor y emite la orden de
compra.
Con la orden de compra el servicio que realizó el requerimiento podrá recibir el material
solicitado y tener control sobre requerimientos no satisfechos, requerimientos con
órdenes de compra emitidas y saldos que debe entregar el proveedor.
La Orden de Compra y el alta del material en el servicio habilitan luego el pago de los
bienes que será realizado por la oficina de PAGOS.
El circuito de PAGOS no es parte de este tutorial
4
NEGOCIOS
Un negocio consiste en una actividad, sistema, método o forma de obtener dinero, a
cambio de ofrecer bienes o servicios a otras personas.
Un ejemplo sería la creación de una página web en donde brindemos asesoría gratis
sobre negocios, y ganemos dinero por la publicidad que coloquemos en ella. Otro
ejemplo podría ser el solicitar un financiamiento, viajar a un país extranjero.
MEDICAMENTO
Un medicamento: es una sustancia con propiedades para el tratamiento o la prevención
de enfermedades en los seres humanos. También se consideran medicamentos aquellas
substancias que se utilizan o se administran con el objetivo de restaurar, corregir o
modificar funciones fisiológicas del organismo o aquellas para establecer un diagnóstico
médico. Los medicamentos se emplean a dosis tan pequeñas, que para poder administrar
la dosis exacta, se deben preparar de forma que sean manejables. Las diferentes maneras
en qué se preparan (pastillas, jarabes, supositorios, inyectables, pomadas, etc.) se
denominan formas farmacéuticas.
Analgésico
Pues es una sustancia o un medicamento que al ingerirse o aplicarlo en el cuerpo
humano esta surge un efecto de "dormir" el cuerpo y que no sientas molestias o dolores
en ti mismo y este hace q no los sientas.
Medicamento genérico: es fabricado con los mismos ingredientes activos, y está
disponible con la misma potencia y dosificación que su equivalente de marca. Los
medicamentos genéricos producen los mismos efectos en el cuerpo que medicamentos
de marca, ya que ambos contienen el mismo principio activo.
Proceso:
Conjunto de recursos y actividades interrelacionadas que transforman elementos de
entrada en elementos de salida. Los recursos `pueden incluir personal, finanzas,
instalaciones, equipos, técnicas y métodos.
Procedimiento:
Forma específica de llevar a cabo una actividad. En muchos casos los procedimientos
se expresan en documentos que contienen el objeto y el campo de aplicaciones de una
actividad. Que debe acerca y quien debe hacerlo; cuando, donde y como se debe llevar a
cabo; que materiales, equipos y documentos deben utilizase, y como debe controlarse y
registrarse.
5
Actividad:
Es una suma de tareas, normalmente se agrupan en un procedimiento para facilitar su
gestión la secuencia ordenada de actividades da como resultados de un proceso.
Proyecto:
Suele ser un conjunto de actividades encaminadas a la consecuencia de un objetivo, con
un principio y final claramente definidos.
Gestión de procesos:
Es la forma de gestionar toda la organización basándose, en los procesos. Entendiendo
estos como una secuencia de actividades orientadas a generar un valor añadido sobre
una ENTRADA para conseguir un resultado, y una SALIDA que a su vez satisfaga a
los requerimientos del cliente.
GESTIÓN DE VENTAS: es un proceso de negociación cuya meta es el cierre de la
venta, por lo que un vendedor “profesional” debe dominar los siguientes aspectos: usos
del producto desempeño del producto manipulación del producto conformación y
estructura del producto cuidados del producto antecedentes del producto aspectos
estéticos servicios que acompañan el producto
Motivaciones principales de los compradores: Satisfacer necesidades básicas Obtener
una mejor salud La belleza Ahorro de dinero Obtención del reconocimiento social
Amistad Comodidad Conseguir un romance.
Satisfacer curiosidades Protección a los seres queridos Placeres, diversión y
esparcimiento Disposición de tiempo libre Ser como los demás Ser diferente de los
demás Obtener seguridad Satisfacción del deseo de crear Miedo a perder
Técnicas de cierre de ventas Cierre directo Cierre indirecto Cierre alternativo Cierre
previsible Alusión a pérdidas Cierre referido Cierre tipo resumen Cierre con estímulo
¿Qué es lo que más les molesta a los clientes? La utilización de argumentos falsos o
incoherentes Exageraciones y mentiras No ser escuchadas El uso de emociones que
pueden traer recuerdos desagradables al cliente La presentación de beneficios del
producto sin convicción, sin impacto.
Gestión compra
Toda empresa necesita adquirir recursos para la realización de sus operaciones. La
gestión de compras es el conjunto de actividades a realizar en la empresa para satisfacer
6
esa necesidad del mejor modo. Este conjunto de actividades se pueden enumerar según
las siguientes funciones:
Detección de la necesidad
Solicitud y análisis de alternativas de compra
Negociación con los proveedores
Colocación de órdenes de compra (doc. que inicia el procedimiento de compras)
Seguimiento y activación de órdenes de compra
Recepción de efectos comprados
Almacenaje y registro
Entrega de los insumos al sector que los requirió.
Estudio permanente del mercado de oferta
Mantenimiento de registros de stock
Control de calidad.
Importancia de la función de compras
Medir la competitividad de una empresa es medir su participación en el mercado. Uno
de los medios para mejorar la competitividad es producir a bajos costos y con alta
calidad. Esta afirmación implica que el sistema de producción debe ser abastecido de
insumos que cumplan con las condiciones más ventajosas posibles, las cuales son:
El precio de compra
El plazo de pago
El plazo de entrega el servicio de posventa
La calidad
La estabilidad del proveedor
Una de las responsabilidades de los que conducen empresas es dirigir y coordinar el
proceso de compras para cumplir con la producción y las ventas. La planificación de
7
este proceso se relaciona directamente con las funciones de stock. La gestión exitosa en
las compras y en el manejo de inventarios permite: asegurar el normal flujo de
materiales para las áreas que los transforman en los productos que la empresa
comercializa; y la distribución y entrega del producto terminado a los clientes.
La eficacia en la gestión de compras se medirá en función de:
El control de gastos y costos que permita ahorrar recursos financieros
El manejo de stocks mínimos que aseguren el cumplimiento de las ventas esperadas
La habilidad para encontrar fuentes de abastecimiento
La posibilidad de investigar y conocer nuevos materiales disponibles en el mercado.
Relaciones con otras áreas de la empresa
Compras se relaciona intensamente con numerosos sectores importantes para el
negocio, entre ellos con:
Dirección General: fijación de políticas generales, procedimientos y análisis de los
cambios del entorno.
Producción: información sobre plazos de entrega, costo de los insumos, calidad
disponible.
Finanzas: fijación de las políticas financieras, requerimientos de fondo y presupuestos.
Recepción y almacenes: administración en la logística de movimientos y coordinación
de necesidades de espacio.
Contabilidad: control de inventarios, costeo de materiales, y valorizaciones y
provisiones de las compras.
El área de Compras
Compras tiene una importancia sustantiva en las empresas, porque es el área que
articula las necesidades de producción de la empresa al proveerla de los materiales que
necesita para cumplir su tarea y porque es el área en la que se genera el proceso de
pagos, por lo tanto tiene gran incidencia en la operatoria de la empresa. Es el área desde
donde sale el dinero de la empresa, para lo cual se debe garantizar comprar la mejor
calidad al menor costo posible.
8
Existen 2 factores que hacen que el departamento de compras se sitúe en un
determinado nivel jerárquico en la estructura de la empresa: la naturaleza o el tipo del
negocio al que se dedica la empresa y la especialización.
Capacidad para negociar
Capacidad de liderar
Mantenerse actualizado sobre el mercado
Seleccionar adecuadamente a los proveedores
Reducir la gestión administrativa de compras
Contar con conocimiento técnico.
El planeamiento de compras es el conjunto de planes sistematizados y encaminados a
dirigir las compras dentro de la empresa, el cual responde a las siguientes preguntas:
¿qué comprar?, ¿cuánto?, ¿cómo?, ¿cuándo?, ¿a quién?
Del análisis del presupuesto de producción surgen las necesidades de materiales a
comprar, por lo que debe efectuarse el presupuesto de compras. Al comienzo de cada
período se calculan los requerimientos que serán indispensables, a fin de cubrir las
necesidades de fabricación y mantener las existencias en los niveles de stock de
seguridad.
Gestión Cobros
Nuestra amplia experiencia en gestión de cobro, tanto con consumidores como con
empresa, por lo general obtiene resultados positivos en cuestión de semanas. Olvídese
del justificado temor a gestionar las facturas vencidas de sus clientes sin dañar la
relación comercial.
Gestión Almacén
La gestión de almacén para empresas que se dedican a producir alimentos, insumos y
productos de higiene de consumo masivo, es importante por ser el lugar donde se
manipula, guarda y conserva antes que llegue al cliente.
El movimiento de productos terminados destinados para la alimentación y el consumo
cobra mayor importancia en un almacén. Ya que cualquier defecto en
su presentación inmediatamente es rechazado.
9
Así mismo, en el almacén se detiene a realizar un control de las existencias como
tenemos: cantidad, vencimiento, adecuada rotación, clasificación, etc.
Y por último, el almacenamiento propiamente dicho debe ser el as adecuado para
realizar una rápida identificación y colocación del producto. Contando para ello con
los medios de almacenamiento más modernos.
Por esta razón resulta importante que el almacenamiento, el control y el manejo de tan
importantes elementos vayan al nivel de la tecnología.
La botica: es el lugar o establecimiento donde un farmacéutico ejerce la farmacia
comunitaria o proporciona servicio sanitario a un paciente ofreciéndole consejo,
dispensándole medicamentos fruto de este consejo o por receta del médico y otros
productos de parafarmacia como productos de cosmética, alimentos especiales,
productos de higiene personal, ortopedia, etc. Popularmente a la oficina de farmacia se
le suele llamar simplemente farmacia y tradicionalmente se le llama botica. Una oficina
de farmacia puede albergar un laboratorio de análisis clínicos o uno de elaboración de
productos medicinales mediante las fórmulas magistrales o preparados.
Personal de oficina de Botica
La oficina de farmacia es el lugar donde el farmacéutico comunitario desenvuelve su
labor profesional. Las oficinas de farmacia pueden ser propiedad de un farmacéutico, o
en algunos países propiedad de una cadena de farmacias o empresarios. En cualquier
caso, en una oficina de farmacia siempre ha de haber un farmacéutico titulado en todo
momento, bien titular o empleado, pero también se encuentra personal auxiliar, que
ayudan al farmacéutico en la dispensación y recepción de pedidos. Poco a poco se van
introduciendo los técnicos en farmacia.
El personal cumple las siguientes funciones:
Diligenciar y controlar los productos.
Facturación e información en establecimientos de Botica.
Dispensar medicamentos y productos de parafarmacia.
Informar a los clientes sobre su utilización.
Determinar parámetros anatómico-fisiológicos sencillos y fomentar hábitos
saludables en los clientes.
10
Elaborar preparados medicamentosos, dietéticos y cosméticos, bajo protocolos
establecidos y supervisión del facultativo.
Realizar análisis clínicos elementales y normalizados, bajo la supervisión del
facultativo.
La química farmacéutica,
La química farmacéutica, si bien camina cerca de la farmacología, tiene su propio
andarivel que en las últimas instancias se ha involucrado en la física cuántica y desde
luego en la termodinámica y la informática, toda vez que trata de dilucidar todos los
mecanismos y factores que se involucran en la unión ligando-receptor.
La química farmacéutica se centra en los aspectos cualitativos de las mediciones.
Especialización
La especialización suele proceder de estudios de doctorado en Facultades de Farmacia
(química farmacéutica) y Facultades de Ciencias Químicas (química orgánica).
Generalmente se dice que un buen químico farmacéutico no es sólo un buen químico
orgánico, sino que debe conocer temas de farmacología, biofarmacia y bioquímica, por
lo que los estudios de farmacia son muy adecuados para servir de base para estos
estudios de postgrado.
Química medicinal
La química medicinal es una ciencia altamente interdisciplinaria que combina
la química orgánica con la bioquímica, la química computacional, la farmacología,
lafarmacognosia, la biología molecular, la estadística y la química física.
Se encarga de estudiar y aplicar todos aquellos conceptos de la química orgánica
tradicional al desarrollo de sustancias que pudiesen contribuir de una u otra manera a
las ciencias farmacéuticas con respecto a los efectos biológicos que las diversas
sustancias químicas, generalmente heterocíclicas, pudiesen tener sobre el organismo
humano.
Métodos de Análisis de Inversiones - TIR VAN
En un proyecto empresarial es muy importante analizar la posible rentabilidad del
proyecto y sobre todo si es viable o no. Cuando se forma una empresa hay que invertir
un capital y se espera obtener una rentabilidad a lo largo de los años. Esta rentabilidad
debe ser mayor al menos que una inversión con poco riesgo (letras del Estado, o
11
depósitos en entidades financieras solventes). De lo contrario es más sencillo invertir el
dinero en dichos productos con bajo riesgo en lugar de dedicar tiempo y esfuerzo a la
creación empresarial.
Dos parámetros muy usados a la hora de calcular la viabilidad de un proyecto son:
VAN: (Valor Actual Neto)
TIR (Tasa Interna de Retorno). Ambos conceptos se basan en lo mismo, y es la
estimación de los flujos de caja que tenga la empresa (simplificando, ingresos menos
gastos netos).
Si tenemos un proyecto que requiere una inversión X y nos generará flujos de caja
positivos Y a lo largo de Z años, habrá un punto en el que recuperemos la inversión X.
Pero claro, si en lugar de invertir el dinero X en un proyecto empresarial lo hubiéramos
invertido en un producto financiero, también tendríamos un retorno de dicha inversión.
Por lo tanto a los flujos de caja hay que recortarles una tasa de interés que podríamos
haber obtenido, es decir, actualizar los ingresos futuros a la fecha actual. Si a este valor
le descontamos la inversión inicial, tenemos el Valor Actual Neto del proyecto.
La programación orientada a objetos o (OOP)
La programación orientada a objetos es una forma de programar que trata de encontrar
una solución a estos problemas. Introduce nuevos conceptos, que superan y amplían
conceptos antiguos ya conocidos. Entre ellos destacan los siguientes:
Clase: definiciones de las propiedades y comportamiento de un tipo de objeto concreto
y la creación de un objeto a partir de ellas.
Herencia: (por ejemplo, herencia de la clase C a la clase D) Es la facilidad mediante
la cual la clase D hereda en ella cada uno de los atributos y operaciones de C, como si
esos atributos y operaciones hubiesen sido definidos por la misma D. Por lo tanto,
puede usar los mismos métodos y variables públicas declaradas en C. Se mantienen
escondidos al programador y sólo pueden ser accedidos a través de otros métodos
públicos.
Objeto: Se corresponde con los objetos reales del mundo que nos rodea, o a objetos
internos del sistema (del programa). Es una instancia a una clase.
Método: Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecución se
desencadena tras la recepción de un "mensaje". Desde el punto de vista del
comportamiento, es lo que el objeto puede hacer.
12
Evento: Es un suceso en el sistema (tal como una interacción del usuario con la
máquina, o un mensaje enviado por un objeto). El sistema maneja el evento enviando
el mensaje adecuado al objeto pertinente. También se puede definir como evento, a la
reacción que puede desencadenar un objeto, es decir la acción que genera.
Mensaje: una comunicación dirigida a un objeto, que le ordena que ejecute uno de sus
métodos con ciertos parámetros asociados al evento que lo generó.
Propiedad o atributo: contenedor de un tipo de datos asociados a un objeto (o a una
clase de objetos), que hace los datos visibles desde fuera del objeto y esto se define
como sus características predeterminadas, y cuyo valor puede ser alterado por la
ejecución de algún método.
Estado interno: es una variable que se declara privada, que puede ser únicamente
accedida y alterada por un método del objeto, y que se utiliza para indicar distintas
situaciones posibles para el objeto (o clase de objetos). No es visible al programador
que maneja una instancia de la clase.
Componentes de un objeto: atributos, identidad, relaciones y métodos.
Identificación de un objeto: un objeto se representa por medio de una tabla o entidad
que esté compuesta por sus atributos y funciones correspondientes.
En comparación con un lenguaje imperativo, una "variable", no es más que un
contenedor interno del atributo del objeto o de un estado interno, así como la "función"
es un procedimiento interno del método del objeto.
Características de la POO
Existe un acuerdo acerca de qué características contempla la "orientación a objetos", las
características siguientes son las más importantes:
Abstracción: El proceso de abstracción permite seleccionar las características
relevantes dentro de un conjunto e identificar comportamientos comunes para definir
nuevos tipos de entidades en el mundo real. La abstracción es clave en el proceso de
análisis y diseño orientado a objetos, ya que mediante ella podemos llegar a armar un
conjunto de clases que permitan modelar la realidad o el problema que se quiere
atacar.
Encapsulamiento: Significa reunir a todos los elementos que pueden considerarse
pertenecientes a una misma entidad, al mismo nivel de abstracción. Esto permite
13
aumentar la cohesión de los componentes del sistema. Algunos autores confunden
este concepto con el principio de ocultación, principalmente porque se suelen
emplear conjuntamente.
Modularidad: Se denomina Modularidad a la propiedad que permite subdividir una
aplicación en partes más pequeñas (llamadas módulos), cada una de las cuales debe
ser tan independiente como sea posible de la aplicación en sí y de las restantes
partes. Estos módulos se pueden compilar por separado, pero tienen conexiones con
otros módulos. Al igual que la encapsulación, los lenguajes soportan la Modularidad
de diversas formas.
Polimorfismo: comportamientos diferentes, asociados a objetos distintos, pueden
compartir el mismo nombre, al llamarlos por ese nombre se utilizará el
comportamiento correspondiente al objeto que se esté usando. O dicho de otro
modo, las referencias y las colecciones de objetos pueden contener objetos de
diferentes tipos, y la invocación de un comportamiento en una referencia producirá
el comportamiento correcto para el tipo real del objeto referenciado.
Herencia: las clases no están aisladas, sino que se relacionan entre sí, formando una
jerarquía de clasificación. Los objetos heredan las propiedades y el comportamiento
de todas las clases a las que pertenecen. La herencia organiza y facilita el
polimorfismo y el encapsulamiento permitiendo a los objetos ser definidos y
creados como tipos especializados de objetos pre existentes.
¿Cuáles son las ventajas de un lenguaje orientado a objetos?
Fomenta la reutilización y extensión del código.
Permite crear sistemas más complejos.
Relacionar el sistema al mundo real.
Facilita la creación de programas visuales.
Construcción de prototipos
Agiliza el desarrollo de software
Facilita el trabajo en equipo
Facilita el mantenimiento del software
¿QUÉ ES RATIONAL ROSE?
14
Es una herramienta software para el Modelado Visual mediante UML de sistemas
software, también es un despliegue, diseño, construcción, pruebas y administración de
proyectos en el proceso desarrollo de software.
Permite Especificar, Analizar, Diseñar el sistema antes de Codificarlo, mantiene la
consistencia de los modelos del sistema software, Genera Códigos a partir de los
Modelos.
¿QUÉ ES UML?
El lenguaje unificado de diagrama o notación (UML) sirve para especificar, visualizar y
documentar esquemas de sistemas de software orientado a objetos. UML no es un
método de desarrollo, lo que significa que no sirve para determinar qué hacer en
primer lugar o cómo diseñar el sistema, sino que simplemente le ayuda a visualizar el
diseño y a hacerlo más accesible para otros.
UML se compone de muchos elementos de esquematización que representan las
diferentes
Partes de un sistema de software.
Diagrama de casos de uso : muestra a los actores y sus relaciones.
clases: muestra las clases y la relaciones entre ellas.
secuencia: muestra los objetos y sus múltiples relaciones entre ellos.
Diagrama de colaboración : muestra sus relaciones, destacando los objetos que
participan en el intercambio de mensajes.
Diagrama de estado : muestra cambios de estado y eventos en un objeto o en
parte del sistema.
actividad: muestra los cambios de una a otra actividad junto con los eventos que
ocurren en ciertas partes del sistema.
Diagrama de componentes: muestra los componentes de mayor nivel de la
programación
Diagrama de implementación: muestra las instancias de los componentes y sus
relaciones.
Diagrama de relaciones de entidad: muestra los datos y las relaciones y
restricciones entre ellos.
15
Software de Sistemas
El software es el conjunto de instrucciones que las computadoras emplean para
manipular datos. Sin el software, la sería un conjunto de medios sin utilizar.
También son todos aquellos programas que tienen como objetivo gestionar los recursos
del ordenador y facilitar el funcionamiento de otras aplicaciones y que no son
específicos para la ejecución de ninguna aplicación en particular.
Software de gestión de bases de datos: Conjunto de programas que permiten el
almacenamiento, la modificación y la extracción de información desde una base de
datos. Hay muchos tipos de DBMS (Data Base Management Software) que van desde
pequeños sistemas que corren en ordenadores hasta grandes sistemas que corren en
mainframes.
Herramientas de desarrollo y lenguajes de programación; Software utilizado para el
desarrollo o la creación de programas informáticas. Son productos que ayudan al
desarrollador profesional en el diseño, desarrollo e implementación de un rango de
sistemas de software o soluciones. Entre ellas están las herramientas de diagnóstico,
herramientas de desarrollo y lenguajes de programación.
Software y herramientas de diagnóstico
Herramientas para el desarrollo de programas
Software de lenguajes de programación
¿QUÉ ES VISUAL ESTUDIO 2005?
Microsoft Visual Basic 2005 es una evolución del lenguaje Visual Basic que está
diseñado para generar de manera productiva aplicaciones con seguridad de tipos y
orientadas a objetos. Visual Basic permite a los desarrolladores centrar el diseño en
Windows, el Web y dispositivos móviles. Como con todos los lenguajes que tienen por
objetivo Microsoft .NET Framework, los programas escritos en Visual Basic se
benefician de la seguridad y la interoperabilidad de lenguajes.
Esta generación de Visual Basic continúa la tradición de ofrecer una manera rápida y
fácil de crear aplicaciones basadas en .NET Framework.
16
Esta versión de Visual Basic vuelve a incluir la compatibilidad para Editar y continuar e
incluye nuevas características para el desarrollo rápido de aplicaciones. Una de estas
características, proporciona acceso rápido a las tareas frecuentes de .NET Framework,
así como información e instancias de objeto predeterminadas que estén relacionadas con
la aplicación y su entorno en tiempo de ejecución. Las nuevas características de idioma
incluyen la continuación de bucle, la eliminación garantizada de recursos, la sobrecarga
de operadores, los tipos genéricos y los eventos personalizados. Visual Basic también
integra completamente .NET Framework y Como Lenguaje Runtime (CLR), que
proporcionan interoperabilidad de lenguajes, recolección de elementos no utilizados,
seguridad mejorada y control de versiones.
Aplicaciones para dispositivos inteligentes
El entorno de desarrollo integrado de Visual Studio .NET incluye ahora herramientas
para desarrollar aplicaciones para dispositivos inteligentes, como Pocket PC. Mediante
las herramientas y .NET Compact Framework, un subconjunto de .NET Framework,
puede crear, generar, depurar e implementar aplicaciones que utilizan .NET Compact
Framework para ejecutarse en asistentes digitales personales (PDA), teléfonos móviles
y otros dispositivos de recursos restringidos. Para obtener más información, vea
Diseñador de ASP.NET Mobile
El Diseñador de ASP.NET Mobile complementa a ASP.NET y a .NET Framework,
permitiendo generar aplicaciones Web para teléfonos móviles, PDA y localizadores.
Este diseñador está integrado en el IDE de Visual Studio. Puede crear aplicaciones Web
móviles, utilizar el diseñador móvil para modificar un formulario Web móvil y, a
continuación, generar y ejecutar la aplicación, todo desde Visual Studio. Para obtener
más información
Formularios Web Formas
Los formularios Web Formas son una tecnología ASP.NET que se utiliza para crear
páginas Web programables. Los formularios Web Formas se representan como código
HTML y secuencias de comandos compatibles con exploradores, lo que permite ver las
páginas en cualquier explorador y plataforma. Mediante el uso de formularios Web
Formas se pueden crear páginas Web arrastrando y colocando controles en el diseñador
17
y agregando código posteriormente, de forma parecida a la creación de formularios en
Visual Basic. Para obtener más información.
Formularios Windows Formas.
Los formularios Windows Formas son la nueva plataforma de desarrollo de aplicaciones
para Microsoft Windows, basados en .NET Framework. Este marco de trabajo
proporciona un conjunto de clases claro, orientado a objetos y ampliable, que permite
desarrollar complejas aplicaciones para Windows. Además, los formularios Windows
Formas pueden actuar como interfaz de usuario local en una solución distribuida de
varios niveles. Para obtener más información.
Servicios Web XML
Los servicios Web XML son aplicaciones que pueden recibir solicitudes y datos
mediante el uso de XML sobre HTTP. Los servicios Web XML no están asociados a
una tecnología de componentes específica o a una convención de llamada a objetos
concreta, por lo que cualquier lenguaje, modelo de componente o sistema operativo
puede tener acceso a ellos. En Visual Studio .NET se pueden crear e incluir con rapidez
servicios Web XML mediante Visual Basic, Visual C#, Script, Extensiones
administradas para C++ o servidor ATL. Para más información.
Compatibilidad con XML
El Lenguaje de marcado extensible (XML) proporciona un método para describir datos
estructurados. XML es un subconjunto de SGML optimizado para la entrega a través de
Web. El Consorcio Word Wide Web (W3C) define los estándares de XML para que los
datos estructurados sean uniformes e independientes de las aplicaciones. Visual
Studio .NET admite totalmente XML e incluye el Diseñador XML para facilitar la
edición de XML y la creación de esquemas XML. Para más información.
El entorno .NET Framework
.NET Framework es un entorno multilenguaje que permite generar, implantar y ejecutar
Servicios Web y aplicaciones XML. Consta de tres partes principales:
18
Common LenguajeRuntime A pesar de su nombre, el motor de tiempo de ejecución
desempeña una función tanto durante la ejecución como durante el desarrollo de los
componentes. Cuando el componente se está ejecutando, el motor de tiempo de
ejecución es responsable de administrar la asignación de memoria, iniciar y detener
subprocesos y procesos, y hacer cumplir la directiva de seguridad, así como satisfacer
las posibles dependencias del componente sobre otros componentes. Durante el
desarrollo, el papel del motor de tiempo de ejecución cambia ligeramente; a causa de la
gran automatización que permite (por ejemplo, en la administración de memoria), el
motor simplifica el trabajo del programador, especialmente al compararlo con la
situación actual de la tecnología COM. En concreto, funciones tales como la reflexión
reducen de forma espectacular la cantidad de código que debe escribir el programador
para convertir la lógica de empresa en componentes reutilizables.
Clases de programación unificadas El entorno de trabajo ofrece a los
programadores un conjunto unificado, orientado a objetos, jerárquico y extensible de
bibliotecas de clases (API) El entorno de trabajo unifica estos modelos dispares,
ofreciendo a los programadores de Visual Basic la posibilidad de tener también acceso a
las bibliotecas. Con la creación de un conjunto de API comunes para todos los lenguajes
de programación, permite la herencia, el control de errores y la depuración entre
lenguajes. Todos los lenguajes de programación, pueden tener acceso al entorno de
trabajo de forma parecida y los programadores pueden elegir libremente el lenguaje que
desean utilizar.
ASP.NET ASP.NET está construida sobre las clases de programación del
entorno .NET Framework, y proporciona un modelo para aplicaciones Web con un
conjunto de controles y una infraestructura que simplifican la creación de aplicaciones
Web ASP. ASP.NET incluye un conjunto de controles que encapsulan los elementos
comunes de la interfaz de usuario de HTML, como cuadros de texto y menús
desplegables. Sin embargo, dichos controles se ejecutan en el servidor Web, y envían al
explorador Web su interfaz de usuario en forma de HTML. En el servidor, los controles
exponen un modelo de programación orientado a objetos que ofrece al programador de
Web la riqueza de la programación orientada a objetos.
19
Características
El compilador de Visual Basic x.0 genera código que requiere librerías de enlace
dinámico DLL para que funcione. Estas DLL proveen las funciones implementadas en
el lenguaje, conteniendo rutinas en código ejecutable que son cargadas bajo demanda.
Además existe un gran número de bibliotecas DLL, que facilitan el acceso a la mayoría
de las funciones del sistema operativo y también la integración con otras aplicaciones.
En el IDE de Visual Basic se puede ejecutar el programa en desarrollo, "al vuelo" o en
el modo intérprete (en realidad pesado-compila el programa muy rápidamente y luego lo
ejecuta), y también se permite la generación del programa en código ejecutable (ese).
Tal programa generado en disco puede luego ser ejecutado fuera del ambiente de
programación (incluso en modo stand alome, dependiendo de los requisitos de DLL),
aunque será necesario que las librerías DLL requeridas se encuentren instaladas en el
sistema para su apropiada ejecución.
Visual Basic provee soporte para empaquetado y distribución, es decir, permite generar
un módulo instalador que contiene el programa ejecutable y las bibliotecas DLL
necesarias para él. Con ese módulo la aplicación generada se distribuye y puede ser
instalada en cualquier equipo (con sistema compatible).
Así como bibliotecas DLL, hay numerosas aplicaciones de terceros que disponen de
variadas funciones y mejoras para Visual Basic, incluyendo también para empaquetado
y distribución.
Entorno de desarrollo
Se compone principalmente de una barra de herramientas y menús, que se pueden
personalizar con prácticamente la totalidad de los comandos del IDE, a necesidad.
El espacio de trabajo incluye y muestra todas las ventanas del proyecto, las vistas del
código de los módulos y objetos, y los controles con los que se compondrán las
ventanas de la aplicación. Por defecto se dispone los siguientes controles:
o(PictureBox) Caja de Imágenes
o(Label) Etiqueta
o(TextBox) Caja de texto
20
o(Frame) Marco
o(CommandButton) Botón de comando
o(CheckBox) Casilla de verificación
o(OptionButton) Botón de opción
o(ComboBox) Lista desplegable
o(ListBox) Lista
o(HScrollBar) Barra de desplazamiento horizontal
o(VScrollBar) Barra de desplazamiento vertical
o(Timer) Temporizador
o(DriveListBox) Lista de unidades de disco
o(DirListBox) Lista de directorios
o(FileListBox) Lista de archivos
o(Shape) Figura
o(Line) Línea
o(Image) Imagen
o(Data) Conexión a origen de datos
o(OLE) Contenedor de documentos embebidos compatibles con
Ventajas
Posee una curva de aprendizaje muy rápida.
Integra el diseño e implementación de formularios de Windows.
Permite usar con facilidad la plataforma de los sistemas Windows, dado que tiene
acceso prácticamente total a la API de Windows, incluidas librerías actuales.
Es uno de los lenguajes de uso más extendido, por lo que resulta fácil encontrar
información, documentación y fuentes para los proyectos.
Fácilmente extensible mediante librerías DLL y componentes ActiveX de otros
lenguajes.
Existe una versión, VBA, integrada en las aplicaciones de Microsoft Office, tanto
Windows como Mac, que permite programar macros para extender y automatizar
funcionalidades en documentos, hojas de cálculo, bases de datos (Access).
Si bien permite desarrollar grandes y complejas aplicaciones, también provee un
entorno adecuado para realizar pequeños prototipos rápidos.
21
Inconvenientes
Las críticas hechas en las ediciones de Visual Basic anteriores a VB.NET son variadas []se citan entre ellas:
Problema de versionado asociado con varias librerías runtime DLL, conocido como
DLL Hell
Pobre soporte para programación orientada a objetos[
Incapacidad para crear aplicaciones multadillo, sin tener que recurrir a llamadas de la
API de Windows.
Dependencia de complejas y frágiles entradas de registro COM[
La capacidad de utilizar controles en un solo formulario es muy limitada en
comparación a otras herramientas.
¿QUÉ ES SQL?
SQL Server un gestor de base de datos, y conjunto de objetos eficientemente
almacenados. Los objetos donde se Almacena la información se denominan tablas, y
éstas a su vez están compuestas de filas y columnas. En el centro de SQL Server está el
motor de SQL Server, el cual procesa los comandos de la base de datos.
Los procesos se ejecutan dentro del sistema operativo y entienden únicamente de
conexiones y de sentencias SQL.
También es un lenguaje de base de datos normalizado, utilizado por el motor de base de
datos de Microsoft Jet. SQL se utiliza para crear objetos, como el argumento de origen
del método y como la propiedad del control de datos. También se puede utilizar con el
método Ejecuté para crear y manipular directamente las bases de datos Jet y crear
consultas SQL de paso a través para manipular bases de datos remotas cliente - servidor.
Existen dos tipos de comandos SQL:
Los DDL: Lenguaje de Definición de Datos.
Créate :( crear una nueva tabla)
Alter (modificar los datos de una tabla)
Drop ()
Truncante:(eliminar los datos de una tabla)
22
Los DML:( Lenguaje de Manipulación de Datos)
Que permiten generar consultas para ordenar, filtrar y extraer datos de la base de datos.
Inserta
Update
Delete
BASE DE DATOS:
Un conjunto de información almacenada en memoria auxiliar que permite acceso
directo y un conjunto de programas que manipulan esos datos
DBMS: Es un conjunto de programas que se encargan de manejar la creación y todos
los accesos a las bases de datos, esta compuesto por:
LENGUAJE SQL:
Es un lenguaje de Programación Universal para su uso y Gestión de Base de Datos. A
través de este Lenguaje de Programación se puede acceder desde cualquier entorno a
continuación detallamos dos (2) importantes sentencias:
SELECT:
Es una sentencia de SQL que pertenece al conjunto de lenguaje de manipulación de
datos y que sirve para recuperar registros de una varias tablas de una o varias bases
de datos.
Su sintaxis: SELECT <Atributos > FROM <TABLA> [WHERE <condición>GROUP
By< atributos>]
Where<condición >permite establecer una condición de recuperación de filas de las
tablas sólo se obtendrán aquellas duplas que verifiquen dicha condición que será
opcional.
II. JUSTIFICACION DEL PROYECTO
El siguiente se justifica mediante la creación y desarrollo de un sistema de Información
que permitirá mejorar y modificar las limitaciones de la Botica “San Camilo” y que a
su vez el sistema pueda integrar parte de los Objetivos futuros de la Empresa
Mencionada.
Este sistema de Información se desarrolla para automatizar de una forma práctica todo
los procesos y actividades que realiza la Botica, como por ejemplo: Llevar el control de
Venta de medicamentos Generar Boletas o facturas. Y nos permite familiarizarnos
mucho con el sistema que se esta trabajando.
23
III. OBJETIVOS
3.1. Generales
Analizar, Diseñar e Implementar un Sistema Informático para la Automatización de
los procesos de gestión de Compra, Venta de Medicamentos Farmacéuticos de la
Botica “San Camilo”, de la Ciudad de Jaén.
3.2 Específicos
Elaborar los Requerimientos Funcionales de la Organización.
Diseñar la Base de datos a través del gestor BD SQLSERVER.
Elaborar los Diagramas mediante el Lenguaje de Modelamiento Unificado
(UML), Utilizando como Herramienta Principal el Rational Rose.
Minimizar los tiempos promedios de atención a los clientes.
Facilitar el acceso al sistema de una manera rápida y sencilla.
Administrar los reportes de Medicamentos Farmacéuticos y las consultas
necesarias para el administrado.
Diseñar las Interfaces a través del programa Visual studio 2005.
Desarrollar el Software utilizando un lenguaje de visual studio 2005.
Realizar pruebas al Programa.
Elaborar Manual de Usuario.
Elaborar Manual de Instalación.
Viabilizar y Automatizar los procesos de ventas de Medicamentos
Farmacéuticos.
Objetivos específicos:
Estrategias y Alcance
Elaborar Documentos de la Botica “San Camilo”
Formación de Equipo de Trabajo.
Seleccionar el sistema a elaborar.
Presentar y Aprobar el Alcance.
Análisis del Sistema de Información
Estudio Preliminar de la Botica “San camilo”
Levantar información.
24
Definir el problema.
Elaborar los requerimientos funcionales de la Botica.
Elaborar los requerimientos no funcionales.
Diseño del Sistema Informático
Elaborar el modelo funcional del sistema mediante los diagramas de
Objetos UML para facilitar como es el funcionamiento del sistema en
línea.
Diseñar la base de datos para el buen manejo y funcionamiento del
sistema de la empresa “”
Diseñar Formularios del Sistema en Línea para área de ventas de
Medicamentos.
Aprobar el sistema propuesto.
Implementación del Sistema Informático
Desarrollar el sistema basado en Web.
Realizar la prueba del sistema.
Elaborar el Manual de Usuario del Sistema en Línea para el buen
funcionamiento del mismo.
Poner en marcha el sistema.
3.3. Importancia del proyecto
Es importante porque el Sistema Antes Mencionado contribuiría enormemente al
manejo adecuado del gran parte de las transacciones y anotaciones respectivas de la
empresa, evitando con ello registrar perdidas económicas en la empresa, sustentando
con ello sus beneficios, siendo así una pieza clave para sustentar las transacciones
realizadas por los administrativos de dicha empresa y así mejorar el ambiente de trabajo
tanto para los que laboran en dicha empresa agilizando su trabajo como para los clientes
quienes pasan menos tiempo registrándose.
También por su simplicidad es decir permite su utilización no solo por personas que ya
han utilizado este tipo de sistemas si también por personas que por primera vez trabajan
con un sistema.
IV. LEVANTAMIENTO DE CAMPO DE LAS ÁREAS DEFINIDAS
25
4.1 CONOCIMIENTO OPERATIVO Y FUNCIONAL
Datos Generales
Nombre de la institución
BOTICA “SAN CAMILO”
Localización
Se encuentra ubicada en la Avenida Villanueva Pinillos Nº N° 1398
Jaén departamento de Cajamarca Perú.
Tipo de Negocio
Compra y Venta de productos farmacéuticos.
Base Legal
Nº de Licencia 000884
N° de Expediente LF-4481
Persona natural: Canario Francisco Aldrin.García
Nombre Comercial: Botica “San Camilo”
Ubicación de y establecimiento: Botica
Actividad específica: Venta de medicamentos farmacéuticos
R.U.C: 10418014356
Representante Legal: Canario García Francisco Aldrin.
Giro autorizado: 11:00pm
Ubicación Geográfica
Se encuentra ubicada en la ciudad de Jaén departamento de
Cajamarca Perú.
4.2. Organigrama Estructural
PERSONAL.
26
La empresa cuenta con un personal de la siguiente madera:
REPRESENTANTE LEGAL
REGENTE DE FARMACÉUTICO QUIRÚRGICO
CAJA
PERSONAL TÉCNICO
REPRESENTANTELEGAL: Es el encargado de controlar de manera general todas
las operaciones realizadas por la empresa, desde una simple recepción hasta la toma de
decisiones para posteriores cambios estratégicos de la empresa.
REGENTE DE FARMACÉUTICO QUIRÚRGICO: Se encarga de revisar el
producto para saber si esta en un buen estado, se revisa la fecha de vencimiento, lote,
Registro Sanitario.
CAJA: Se encarga de todo lo que es pagos y cobros a los clientes y anotar todas las
ventas que hayan vendido.
Vendedor: se encarga de la venta de los productos y anotar todas las ventas en un
cuaderno para entregar la lista de productos vendido al Administrador.
PERSONAL TÉCNICO: Se dedica a la inyección de Ampollas y Sueros.
4.3. CONOCIMIENTO DE LA EMPRESA
Estudios anteriores:
En la Botica “San Camilo” se ha realizado un estudio sobre los procesos que dicha
empresa maneja, concluyendo con la construcción de un sistema informático que
engloba dichos procesos.
Todo control de ventas lo apuntan en un cuaderno.
Dicho sistema se encarga de controlar todas las ventas, compras, de los productos en la
ciudad de Jaén.
Personal a Entrevistar (Personas a dar una visión general de los diferentes
movimientos de la empresa).
Nombre y Apellidos: Francisco A. Canario García
Función: Encargado del área de Administración (Dueño).
4.4. Recopilación de la Información.
27
Métodos de recopilación de la Información:
Para la recopilación de información dentro de la empresa, se utilizó el método de la
entrevista por ser trato más directo.
Documentos existentes
Los documentos que existen en la Botica “San Camilo” son los cuadernos de apuntes
como también las Boletas y Facturas, guía de remisión que han sido dado por parte de
sus proveedores.
Boleta de Venta
Figura N° 01: Boleta de Venta
Factura de Venta
28
Figura N° 02: Factura de Compra.
Otros Documentos: Recibos, etc.
4.5. Análisis de Entrevistas y Cuestionarios.
Para elaborar el informe se realizó las siguientes preguntas con la finalidad de obtener
información correspondiente a la empresa en estudio.
Para elaborara la entrevista está dirigido al Administrador (dueño)
Administrador:Canario Francisco Aldrin García
Objetivos:
Conocer, Recolectardatos para el desarrollo de nuestro proyecto.
Medios:
Papel y lapicero
Desarrollo:
Cuál es el tipo de negocio que maneja dentro de su empresa?
El tipo de negocio que se maneja dentro de la empresa es la Compra y venta de
productos farmacéuticos.
Existe algún sistema de información que maneje su negocio?
29
Por el momento no se ha realizado ningún estudio.
Cuáles las actividades que se realizan en su negocio?
En la Botica “San Camilo” realizamos las siguientes actividades como son:
Compra
Venta
Almacén
Cobros
como realiza las compras de sus productos?
El Administrador de la farmacia realiza la compra de medicamento de la
siguiente manera:
Al finalizar de cada mes de año se realiza un inventario de medicamento
existente, que consiste en la verificación de las cantidades de medicina que
existen, permitiéndonos saber que medicina nos falta dentro de la farmacia y
los que están por debajo del stock mínimo o en stock mínimo, apuntando en un
cuaderno los medicamentos bajo este criterio.
Como realiza las ventas de sus productos?
Un cliente llega a la farmacia y solicita medicamentos, ya sea con una receta
médica o declarando sus síntomas.
Si el cliente llega con receta médica el vendedor busca los medicamentos de la
receta médica indicándole la existencia o no de dichos medicamentos, si existen
los medicamentos solicitados se realiza una cotización de la receta médica,
Como realiza el guardado de sus productos que ha comprado?
El administrador y el vendedor ordenan los medicamentos decepcionados de un
determinado proveedor, de acuerdo al nombre de laboratorio en orden
alfabético, fecha vencimiento y número de lote, de manera que las primeras
entradas sean las primeras en Salir.
Considerado que un cliente desea que le de crédito por la compra, cual seria los
requisitos para darle ese beneficio?
Los requisitos son tres:
Que el cliente sea conocido.
Que no tenga deuda (ó) que tenga poca deuda.
Documento de identidad (DNI).
30
Cuanto es el máximo de crédito que le daría al cliente?
A una Cantidad Mínimo
Como realizaría el cobro de sus productos a un cliente con crédito?
Eso se realizaría en base a un acuerdo con el cliente
Por ejemplo:
Pago diario.
Quincenal y
Mensual.
Con cuantos proveedores cuenta para la compra de sus producto?
La empresa cuenta con dos Proveedores.
PHARMAVIT S.A.C de la Ciudad de Chiclayo
DISTRIBUIDORA “MI JESUS” E.I.R.L de la Ciudad de Lima
Con cuantos trabajadores cuenta en su empresa?
Contamos con unos cinco personales de trabajo laborando en la Botica “San
Camilo” realizando las siguientes labores:
Administrador
Ventas
Caja
Personal técnico
Representante legal
4.6. Necesidad de la Información.
Las necesidades de la Información son los resultados de los procesos que se
realizan en área de administración, las cuales son los procesos de Venta de
Medicamentos, este proceso se utiliza para obtener los requerimientos necesarios
y alcanzar los objetivos durante la ejecución del proyecto.
Datos que se obtienen y resultados del procesamiento de los datos.
Los datos que se obtuvo dentro de la Botica y que permitió a entender un poco
más a las actividades que se desarrolla fueron las que se detallar a continuación:
31
Tipos de Documentos Obtenidos
Documentos de Compras Características
Factura El Proveedor entrega para indica la medicina que
esta enviado como también las cajas de medicinas,
es ahí donde se realiza la comprobación de los
medicamentos que consiste en saber si concuerda
lo que esta en el documento con lo de las cajas.
Guía de Remisión El proveedor hace entre de este documento
para verificar si todo la lista de
Medicamentos Pedidos se encuentra o que
medicamento no existe de la lista de Pedidos.
Hojas de apuntes de lista de
Medicamentos.
Se Hace una lista de Medicamentos Faltantes
para entregar al proveedor y así el proveedor
pueda saber que medicamentos falta
Para entregar.
Documentos de Ventas Características
Boleta de Venta Se entrega a los cliente cuando hayan
comprado una cantidad de 3.00S/ Donde se va
32
la cantidad del Medicamento y el precio, la
Descripción, también el N° de R.U.C.
Cuaderno de apuntes de sus
ventas de Medicamentos.
Ssirve para apuntar las ventas diarias como
también los créditos que se realizan a partir de
una venta a un cliente. Todas las ventas
diarias sereportan al Administradorciertos
requisitos o formato y que permite entender la
información que manejan para dicho proceso
o actividad.
Tabla N°01: Datos que se obtienen y resultados del procesamiento de los datos.
Algoritmos para el tratamiento de la información
Proceso de venta de Medicamentos Farmacéuticos
33
Figura N°03: Algoritmo para el tratamiento de la Información Gestión Compra
Proceso de Compra de Medicamentos Farmacéuticos
34
35
Figura N° 04: Algoritmo para el tratamiento de la Información Gestión Venta
Frecuencia de generación y recepción de los dato
o La elaboración de los diferentes tipos de documentos de cada área se genera de la
siguiente manera:
o Las venta se registran diariamente
o Las compras se realizan, mensualmente de acuerdo a la cantidad que tengan en su
stock.
o Se emiten reportes de ventas diarias, semanal, mensual
o Se emiten reportes de compras semanal y mensual.
Cuantificar el volumen de los datos que se genera y recibe.
A continuación se muestra una tabla que indica la cantidad de Ventas diarias,
semanales, de la botica San Camilo.
Doc. Ventas Compras Reportes
Diarios 100 0 1
Semanal 700 0 7
Mensual 2800 1 28
TablaN°02: Volumen de los datos que se genera y recibe.
4.7. Niveles de los usuarios y el tipo de Información que deben manejar.
Los niveles de usuarios se hacen para saber que tipo de información debe llegar a cada
usuario y la información que debe conocer, asignándole así ismo prioridad a cada
trabajador para el manejo de información.
Área de Administración:
36
Es la persona encargada de realizar los reportes de las ventas, y genera las compras,
como el manejo del sistema y controlar todas las áreas de la empresa.
Área de Ventas:
Es la persona encargada de realizar las ventas de Medicamento y encargado también de
dar una buena atención al cliente en momento de realice la compra que adquiera.
Consultar Medicamentos por las distinguidos Laboratorios.
Emitir reportes de los Medicamentos.
Consultas de Medicamentos vendidos.
Área de Almacén:
Es cuya persona encargada de decepcionar los Medicamentos, al momento de realizar
una compra.
4.8. Interacción del sistema con otros sistemas en uso o por desarrollar.
El sistema informático que se está desarrollando es para automatizar el área de
Ventas, compra, Cobros y almacén en la Botica “San Camilo”, hasta el momento la
empresa antes mencionada no interactúa con ningún sistema informático, ya que es
la primera vez que se está realizando un proyecto de esta naturaleza, sin embargo se
va a desarrollar pensando en el desarrollo organizacional ya que más adelante podrá
interactuar con otros módulos.
4.9. Limitaciones de organización, control y seguridad.
Limitaciones de organización:
o Designar personal adecuado para áreas específicas dentro de la asociación.
Limitaciones de control:
o Inadecuado control de documentación relacionada con el proceso de Ventas de
Medicamento.
o Registro inadecuado de los licores pertenecientes a la asociación.
o Control inadecuado de las compras y ventas de Medicamento.
o Confusión de documentación.
Limitaciones de seguridad:
37
o Pérdida de información y documentación en la Botica en cuanto a la
confidencialidad de los datos con respecto a los reportes de las ventas de
Farmacéuticos compras de Medicamentos que se registran diariamente y
mensualmente. Para dar mayor soporte a los procesos se necesita proveer seguridad en
cuanto a la información en la Botica, designando una sola persona para el uso de
dicho sistema de ventas de Medicamentos basado en cliente servidor.
V.ESTUDIO DE LA SITUACIÓN ACTUAL
5.1 Construcción Jerárquica del Proyecto
38
Figura N° 05:Construcción jerárquica del Proyecto
5.2 Organigramas
Figura N° 06:Organigramas de la Botica.
5.3 Divisiones Funcionales Internas.
ÁreadeAdministración:
39
Designar el acto de guiar a los demás en la Botica.
Dar y ejecutar órdenes al personal.
Se preocupa por mejorar continuamente la comunicación con sus trabajadores.
Se encarga de estimular la participación de sus colaboradores en la planificación,
toma de decisiones y solución de problemas que se presenten.
Se encarga de promover y organizar programas de capacitación para el desarrollo
empresarial.
Áreade Ventas:
Dar buen servicio y atención al cliente.
Se encarga de realizar las ventas.
Se encarga de ver el stock de los productos para ser informado al área de
administración.
Se encarga de generar el documento de venta de Medicamentos.
ÁreadeAlmacén:
Se encarga de la recepción de los Medicamentos
Área de Cobros
Se encarga de sacar el total y lasganancias diarias los medicamentos
5.4 Circuito de información entre las áreas:
Figura N° 07:Circuito de información entre las áreas
Partes que comprende
o Área de Administración
40
o Área de Ventas
o Área de Almacén
Responsable de cada parte.
Área de administración: tenemos al señor Francisco A. Canario García
Área de Ventas: tenemos a la señora María Vela Guevara
Área de almacén: tenemos a la señora Luzbela Huamán Cieza
Área cobros: tenemos a al señora Yoli A. Uriarte Linares
Principales relaciones entre las partes.
Figura N° 08:Principales relaciones entre las partes.
Características y funciones generales de cada parte.
A continuación mencionare las funciones de cada área (compra, venta, Cobros y
almacén), en la empresa “San Camilo”.
Área de Administración: realiza la consulta del stock, emisión de Medicamentos
faltantes.
Se encarga de verificar el stock mínimo del Medicamentos.
Es la persona encargada de generar las compras.
Área de Ventas: esta área se encarga de realizar las siguientes funciones:
Dar un buen servicio al cliente.
Brindar información sobre los precios y medicamentos existentes.
41
Es la persona de generar la venta.
Entrega reportes de las ventas diarias, semanales y mensuales.
Área de Almacén: Es la persona encargada de realizar las siguientes funciones:
Se encarga de la recepción de los Medicamentos.
Se encarga de actualizar el stock del Medicamentos.
Hace entrega del Medicamento comprado al cliente.
Informa sobre los productos faltantes o los que están en stock mínimo.
Área de Cobros: Es la persona encargada de realizar las siguientes funciones:
Se encarga de la recepción de los Medicamentos.
Se encarga de actualizar el stock del Medicamentos.
Hace entrega del Medicamento comprado al cliente.
Informa sobre los productos faltantes o los que están en stock mínimo.
5.5.DETERMINACIÓN DEL PROBLEMA
En la Botica San Camilo, no cuenta con ningún control, por lo tanto no hay un control y
por eso no se puede llevar un adecuado control de Compra y Ventas, el cual existen
muchas demora para obtener la información de los pagos de los Proveedores y no
permitiendo así controlar correctamente el pago respectivo de cada Cliente.
5.6 DETERMINACIÓN DE LOS OBJETIVOS DEL PROYECTO
Objetivos Generales
“Analizar, Diseñar e Implementar un sistema informático para controlar el proceso de
Compra y Venta de la Botica San Camilo en el cual permitirá obtener datos
desarrollados de diferentes Productos”
Objetivos específicos.
Permite controlar la Compra y venta de los Productos que se han Vendido y que se
están por Vender, efectuándose en forma rápida y segura.
Permitir que los Productos sean Vendidos correctamente siendo actualizado
diariamente los precios y la cantidad de productos vendidos y que se registren.
Entregar el reporte de productos mas rápidos que se han vendido diarios.
42
1). DIAGRAMA DE LA ESTRUCTURA JERÁRQUICA DE LA EMPRESA Y
DEL SISTEMA Y SUS RELACIONES.
Figura N° 09: Estructura Jerárquica de la Empresa y del Sistema y sus Relaciones.
VII. DIAGNOSTICO DEL SISTEMA.
Se diagnostico que para el proceso de ventas funciona de la siguiente manera:
Proceso de ventas:
El cliente al llegar a la Botica “San Camilo”, solicita al vendedor el medicamento pero
antes de ello pide información sobre la existencia y el costo de cada medicamento o
también declara sus síntomas y el vendedor realiza una receta medicamento de acuerdo
a de los síntomas que el cliente declara, y el cliente verifica si existen los
medicamentos el vendedor genera la venta registrando los siguientes campos:
Datos del cliente.
Datos del Medicamento.
Fecha de la venta.
Una vez registrado estos campos en la boleta de venta el cliente cancela su
comprobante y el Medicamento es entregado.
43
Cabo de resaltar que todo estos procesos son generados de manera manual ocasionando
los siguientes problemas:
Demora en atención al cliente
Perdida de documentos
La información no es muy eficaz
Los reportes se realizan a mano
Teniendo el diagnostico y como estudiante de la carrera de computación mi deber es dar
solución a esta problemática que tiene dicha empresa desarrollando un sistema de
compra, venta, Cobros y almacén de Medicamentos con el propósito de agilizar los
procesos antes mencionados y evitar demora en la atención de los clientes de la Botica.
VIII. FACTIBILIDAD DEL PROYECTO.
8.1 Factibilidad computacional.
La Botica “San Camilo”, actualmente cuenta con los recursos computacionales
(software, hardware) los cuales constan de las siguientes características:
REQUERIMIENTOS FUNCIONALES
SOFTWARE CARACTERISTICAS
Lenguaje de Programación Visual Basic 2005
Sistema Operativo Windows server
Gestor de base de Datos SQL server 2005
HARDWARE CARACTERISTICAS
Procesador Intel Corel 2 dúo de 2.2ghz
Placa 4 GB de Memoria
Disco Duro de 160 GB
Computadora L2 Cache 2 MB
Tarjeta de Red
Memoria RAM de 32 GB
Impresora Hp Deskjet D2360
Cartuchos Negro de Color
Tabla N° 03:Factibilidad computacional.
Teniendo en cuenta los equipos que tiene la empresa concluyo que su factibilidad
computacional es factible para la implementación del sistema.
44
8.2 Factibilidad Operativos.
En esta parte se determina si los usuarios de la empresa que harán uso del
sistema están preparados para manipular adecuadamente este sistema cuando se
haya implementado, y por lo tanto se llega a lo siguiente:
la empresa cuenta con personal capacitado para el manejo del sistema a
desarrollar.
El sistema es sencillo para el manejo, usando las operaciones básicas que se
realizan en los procesos de una venta, compra e ingresos de Medicamentos.
Por lo cual concluyo que la Botica San Camilo si cuenta con factibilidad
operativa que por lo tanto es factible el sistema.
45
8.3 Factibilidad Económicos.
El costo del desarrollo e Implementación del sistema ha sido creado por el integrante del Proyecto
“MATILDE RAFAEL CHAMAYA”
Implementación del sistema en línea. Se requiere calcular el valor Neto y la tasa d interés de retorno.
FLUJO DE CAJA DE LA BOTICA SAN CAMILORUBROS MESES DEL AÑO 2010
Enero Febrero Marzo Abril Mayo Junio Julio Agosto Setiembre Octubre Noviembre DiciembreI. IngresosSaldo Inicial 0 3190 3425 3700.5 4012.75 4358.41 4733.5 4535.1 4960.518 5407.408 5873.608 6357.188Ventas 700 700 700 700 700 700 700 700.0 700 700 700 700Prestamos 3000 0 0 0 0 0 0 0.0 0 0 0 0Consulatas 20 40 20 40 20 40 40 20 20 20 20 20Servicios 10 5 6 4 3 8 10 12 4 8 6 21Total Ingresos 3730 3935 4151 4444.5 4735.8 5106.4 5483.5 5267.1 5684.518 6135.41 6599.61 7098.188II. EgresosPago al Trabajadpor 600 600 600 600 600 600 600 600.0 600 600 600 600Pago de Internet 60 60 60 60 60 60 60 60 60 60 60 60Amortizacion 300 270 243 218.7 196.23 176.607 158.94 143.05 128.74 115.87 104.28 938.58Pago a la Sunat 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5Total Egresos 972.5 942.5 915.5 891.20 868.73 849.11 831.44 815.55 801.24 788.37 776.78 1611.08Saldo Inicial 3190 3425 3700.5 4012.75 4358.41 4733.5 4535.09 4960.52 5407.408 5873.608 6357.188 5834.848Saldo acumulado 3190 3425 3700.5 4012.75 4358.41 4733.5 4535.09 4960.52 5407.408 5873.608 6357.188 5834.848
Tabla N° 04: Flujo de Caja del 2010
46
FLUJO DE CAJA DE LA BOTICA SAN CAMILORUBROS MESES DEL AÑO 211
Enero Febrero Marzo Abril Mayo Junio Julio Agosto Setiembre Octubre Noviembre DiciembreI.IngresosSaldo Inicial 5834.85 1682.35 2599.85 3545.35 6427.85 11422.4 18682.9 22550.35 26758.85 32365.35 36670.85 42150.35Ventas 2060 1820 1963 3961 5856 8523 4560 5231 6520 5410 6452 2310Consultas 60 80 60 100 50 40 60 30 80 90 10 50Servicios 20 30 35 24 12 10 50 50 20 30 40 50Total de Ingresos 7974.85 3612.35 4657.85 7630.4 12345.9 19995 23353 27861.4 33378.85 37895.4 43173 44560.35II.EgresosPago al Trabajador 6020 620 620 620 620 620 620 620 620 620 620 620Pago de Intenet 60 60 60 60 60 60 60 60 60 60 60 60Amortizacion 200 320 420 510 231 620 110 410 321 532 330 125Pago Sunat 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5Total Egresos 6292.5 1012.5 1112.5 1202.5 923.5 1312.5 802.5 1102.5 1013.5 1224.5 1022.5 817.5SaldoInicial 1682.35 2599.85 3545.35 6427.85 11422.4 18682.9 22550.4 26758.85 32365.35 36670.85 42150.35 43742.85Saldo Acumulado 1682.35 2599.85 3545.35 6427.85 11422.4 18682.9 22550.4 26758.85 32365.35 36670.85 42150.35 43742.85
Tabla N° 05: Flujo de Caja del 2011
FLUJO DE CAJA DE LA BOTICA SAN CAMILO
47
RUBROS MESES DEL AÑO 2012Enero Febrero Marzo Abril Mayo Junio Julio Agosto Setiembre Octubre Noviembre Diciembre
I. Ingresos
SaldoInicial 43742.85 43650.4 43577.943625.
443838.
945444.
447347.
9 51067.35 56524.85 63256.35 63191.85 64019.35Ventas 900 980 1200 1456 2569 3256 4562 6600 7785 1200 1890 1569Consultas 80 60 100 120 90 30 60 80 40 50 60 90Servicios 25 56 69 12 36 89 110 120 150 20 35 15
Total Ingresos 44642.8544630.
444777.
945081.
4 46408 48700 51910 57667 64309.9 64456.4 65082 65588.4II.EgresosPago al Trabajador 660 660 660 660 660 660 660 660 660 660 660 660Pago Internet 60 60 60 60 60 60 60 60 60 60 60 60Amortizacion 260 320 420 510 231 620 110 410 321 532 330 125Pago Sunat 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5Total Egresos 992.5 1052.5 1152.5 1242.5 963.5 1352.5 842.5 1142.5 1053.5 1264.5 1062.5 857.5
Saldo Inicial 43650.35 43577.9 43625.443838.
945444.
447347.
951067.
4 56524.85 63256.35 63191.85 64019.35 64730.85
Saldo Acumulado 43650.35 43577.9 43625.443838.
945444.
447347.
951067.
4 56524.85 63256.35 63191.85 64019.35 64730.85
Tabla N° 06: flujo de caja del 2012
El costo del desarrollo e implementación del sistema será realizado con un presupuesto
Económico limitado; ya que la empresa cuenta con los materiales y equipos necesarios para
La puesta en marcha.
48
49
8.4. CALCULANDO EL VAN (VALOR ACTUAL NETO)
Datos:
I=20,385
FC1=5834.848
FC2=43742.85
FC3=64730.85
R=10%
VAN= -I + [(Fc1) /(1+r )1] + [(Fc2) /(1+r )2] + [(Fc3) /(1+r )3]
van=-I+FC1
(1+r )1+
FC2
(1+r )2+
FC3
(1+r )3
van=-20385+5834.848
(1+0.1 )1+
43742.85
(1+0.1 )2+
64730.85
(1+0.1 )3
van=-20385+5834.848
(1.1 )1+
43742.85
(1.1 )2+
64730.85
(1.1 )3
van=-20385+5834.8481
+43742.851.21
+64730.851.33
van=-20385+5834.848 +36151.11+48669.81
van=-20385+114308.56
van=134693.548
El Valor Actual Neto del Proyecto hoy en día es S/.134693.548 Esfactible porque es mayor
que la caja de Interés.
50
8.5 CALCULANDO EL TIR (TASA INTERNA DE RETORNO)
I=20,385
FC1=5834.848
FC2=43742.85
FC3=64730.85
R=10%
VAN= -I + [(Fc1) /(1+r )1] + [(Fc2) /(1+r )2] + [(Fc3) /(1+r )3]
APLICANDO LA REGLA DEL BINOMIO
I=-DO+FC1+FC2+FC3FC1+2FC2+3FC3
I=-20385+5834.848 + 43742.85 + 64730.85583.848+2( 43742.85 )+3( 64730.85 )
I=-20385+5834.848 +43742.85 +64730.85583.848+ 87485.7 +194192.55
I=-20385+114308.55114308.55
I=134693.55114308.55
I=1.8
1.8 *100= 18%
La Tasa Interna de Retorno del proyecto será el 18%del costo de la inversión del Proyecto
y por lo tanto acepta porque s mayor que el 10% que es la taza alternativa
IX. ANALISIS Y DISEÑO DEL SISTEMA DE INFORMACION.
51
Análisis diseño y desarrollo de un sistema informático para la
automatización de los procesos de gestión de compras, ventas, cobros y
almacén de Medicamentos Farmacéuticos para la Botica “San
Camilo”, de la ciudad de Jaén.
GLOSARIO Fecha:
11/03/2012
DOCUMENTO GLOSARIO
Figura 10:DISEÑO DEL SISTEMA DE INFORMACION.
TABLA DE CONTENIDOS
1 Introducción
1.1 Propósito
1.2 Alcance
1.3 Referencias
1.4 Organización del glosario
2 Definiciones
2.1 Autores
2.1.1 Vendedor
2.1.2 Administrador
2.1.3 Almacenero
2.1.4 Cliente
2.1.5 Proveedor
2.1.6 Cajero
52
2.2 Procesos
2.2.1 Gestión Compras
2.2.2 Gestionar Cobros
2.2.3 Gestionar Almacén
2.2.4 Gestionar Ventas
GLOSARIO
1. Introducción:
Es un conjunto de términos o terminología que define mediante los actores como un
proceso que se va a llevar a cabo mediante el desarrollo del sistema para la
automatización de los procesos de gestión de compras, ventas y almacén de
Medicamentos Farmacéuticos para la Botica “San Camilo”
1.1 Propósito:
El propósito de este glosario es definir con exactitud y sin ambigüedad la
terminología manejada en el proyecto de desarrollo de un sistema para la
automatización de los procesos de gestión de compras, ventas y almacén de
Productos Farmacéuticos para la Botica “San Camilo”.
Sirve como guía de consulta para aclarar los puntos erróneos del proyecto.
1.2 Alcance:
El alcance del presente proyecto se extiendo a todos los subsistemas definidos para la Botica “Santa Rosa”. De tal modo que la terminología empleada en el
53
departamento de compras, ventas y almacén, se refleja con claridad en este
documento.
Registrar Medicamentos.
En este formulario se registran todos los Medicamentos que ofrece la Botica “San Camilo”,
con sus características más importantes como: Nombre del Producto, precio unitario, stock,
Laboratorio.
Registrar las ventas.
Se registran todas las ventas que realiza la Botica al día, dentro de ella se
registrara los siguientes campos: fecha de la venta, el total de la venta, el
documento a imprimir, etc.
Gestión compras de Medicamentos.
Se registran todas las compras que realiza la Botica, cuando sea necesario, es
decir, cuando la tienda tenga en stock alguno de sus productos que ofrece.
Gestión de Almacén de medicamentos.
Aquí se registran todos los productos que ingresan a almacén.
En este formulario se registran todos los proveedores, ya sean personas
naturales o empresas, las que nos abastecen con productos, con sus
características más relevantes como: Nombre, Dirección, Teléfono, Ruc.
Registrar los clientes.
En este formulario se registran todos los clientes de la BOTICA“SAN
CAMILO”, ya sean personas naturales o empresas, los cuales adquieren los
productos que ofrece la BOTICA, con sus características más relevantes
como: Nombre, Dirección, Teléfono, Ruc, DNI.
Registrar tipo medicamento.
54
En este formulario se registran todos los tipos de Medicamentos que algunos de los
productos se pueden clasificar y dividir.
Generar reportes de los productos vendidos al mes.
Se emiten los documentos de los Medicamentos vendidos al mes, para el
control de las ventas.
1.3. Referencias:
El presente glosario hace referencia a los siguientes documentos:
Documento de especificación de Caso de Uso del Proyecto,
Documento de especificación de Diagramas de Clase.
Documento de objetos del negocio.
Documentación del sistema para realizar cualquier consulta.
1.4.-Organización del glosario:
A continuación se presenta todos los términos manejados a lo largo de todo el
proyecto de desarrollo de un sistema para la automatización de los procesos de
gestión compras, ventas y almacén.
2. Definiciones:
A continuación se presentan todos los términos manejados a lo largo de todo el
proyecto para el desarrollo de un sistema para la automatización de los procesos de
gestión de compras, ventas y almacén de la Botica “San Camilo”
Glosario de actores
Administrador: La función que desempeña dentro de la Botica “SAN
CAMILO” es de verificar las ventas realizadas a diarios en la Botica como
también verificar el stock de los Medicamentos de la empresa para poder
generar alguna compra a su proveedor.
55
Vendedor: es la persona encargada de realizar las ventas solicitados por el
cliente de la Botica, y así mismo dando una buena atención a dicho cliente.
Cajero: es el que se encarga de los cobros y reportar el total de las ventas
Diarias.
Cliente: Es la persona externa que llega a la Botica con la necesidad de
solicitar un Medicamento.
9.1. DESCRIPCIÓN DE LOS PROCESOS.
DESCRIPCIÓN PROCESOS DE LA BOTICA “SAN CAMILO”
GESTION DE COMPRAS DE MEDICAMENTOS
En este proceso de compras de medicamentos se hacen las siguientes descripciones de
todas las actividades que se realiza en este proceso.
El Administrador de la farmacia realiza la compra de medicamento de la siguiente manera:
Al finalizar de cada mes de año se realiza un inventario de medicamento existente, que
consiste en la verificación de las cantidades de medicina que existen, permitiéndonos saber
que medicina nos falta dentro de la farmacia y los que están por debajo del stock mínimo o
en stock mínimo, apuntando en un cuaderno los medicamentos bajo este criterio.
Una vez que se conoce la falta de cierto medicamento se realiza el pedido a los proveedores
(PHARMAVIT S.A.C) de las cantidades que faltan enviándole una orden de compra, ellos
nos comunican si tienen dichos medicamentos o en caso contrario no lo tuvieran realizamos
el pedido a otro proveedor (DISTRIBUIDORA “MI JESUS” E.I.R.L), ya que la farmacia
cuenta con varios proveedores y no depende de uno solo.
Las medicinas son enviadas por los proveedores quienes, una vez que llegan a la farmacia
los medicamentos se comienzan a registrar en un cuaderno o en una aplicación de Excel.
Los documentos que entregan los proveedores cuando envían los medicamentos se entrega
una guía de remisión donde especifica el total de medicamentos solicitados.
Entregan la guía de remisión en el momento que entregan la medicina al dueño para que la
confirmación del pedido este correcto o falte algún medicamentos.
La facturación de compra de medicamentos
56
La compra de medicina se realiza dependiendo de la falta de medicinas, que por política de
la farmacia lo realizamos cada fin de mes la verificación de los stocks de las todas las
medicinas y si encontramos la reducción de dichas medicinas; comenzamos apuntar en una
hoja las medicinas faltantes para luego realizar el pedido de dichas medicinas a nuestros
proveedores de confianza.
Los pagos a nuestros proveedores son al contado.
La recepción de medicamentos.
Por el momento no se ha encontrado medicamentos defectuosos eso significa que no hay
devoluciones, esto se debe a que las cantidades de compras son pequeñas.
La recepción de medicamentos lo realiza el dueño de la farmacia verificando la cantidad de
medicina que ha pedido.
Para esto recibe un documento (FACTURAS)del proveedor en donde se indica la medicina
que esta enviado como también las cajas de medicinas, es ahí donde se realiza la
comprobación de los medicamentos que consiste en saber si concuerda lo que esta en el
documento con lo de las cajas.
GESTION DE VENTAS DE MEDICAMENTOS
En este proceso de ventas de medicamentos se hacen las siguientes descripciones de todas
las actividades que se realiza en cada proceso.
Un cliente llega a la farmacia y solicita medicamentos, ya sea con una receta médica o
declarando sus síntomas.
Si el cliente llega con receta médica el vendedor busca los medicamentos de la
receta médica indicándole la existencia o no de dichos medicamentos, si existen los
medicamentos solicitados se realiza una cotización de la receta médica,
Si el cliente decide comprar el medicamento el vendedor busca el medicamento de la receta
médica indica si tiene o no tiene el medicamento; si no lo tuviera el medicamento se retira
el cliente de la farmacia y si lo tuviera se realiza la venta de medicina.
El vendedor registra el medicamento vendido y el cobro que realizo en unas hojas
indicando la fecha para que al finalizar del día sepa cuánto se vendió durante el día.
Aquí también se registran como venta las inyecciones que se realiza a un paciente la
inyección de sueros que se realizan.
57
Si el cliente llega y declara sus síntomas se hace una recete médica y las
indicaciones de acuerdo a los síntomas que presente el paciente el vendedor pasa a hacer la
venta de estos medicamentos y se registra en una la hoja de ventas.
GESTION DE COBROS DE LOS MEDICAMENTOS
El cajero y el vendedor son los que hacen el ordenamiento de la venta y las
ganancias diarias que se realiza.
Aquí se realiza dos cosas:
Ingresos.
Aquí en los ingresos se toman en cuenta el total de las ventas diarias como también
algunos ingresos extras como son: análisis, recargas, etc.
Egresos.
Aquí es donde se controla los diferentes pagos que realiza la farmacia como son pagos a los
proveedores, cable, etc.
Haciendo estas dos cosas la farmacia puede saber cuánto recaudo como también cuanto
pago y así saber cuánto de dinero le queda en caja.
GESTION DE ALMACEN DE MEDICAMENTOS
ORDENAMIENTO DE MEDICAMENTOS
El administrador y el vendedor ordenan los medicamentos decepcionados de un
determinado proveedor, de acuerdo al nombre de laboratorio en orden alfabético, fecha
vencimiento y número de lote, de manera que las primeras entradas sean las primeras en
Salir.
INVENTARIO DE MEDICAMENTOS
El administrador con el vendedor realizan el inventario de medicamentos mensualmente y
anualmente.
El procedimiento comienza verificando los medicamentos, apuntados en un cuaderno
cuando se realizó la compra, contra los que están almacenados; la verificación consiste en
las cantidades que se compró de dicha medicina y cuanta está quedando en el momento del
inventario.
58
El inventario mensual se realiza para medicamentos que más se venden como por ejemplo
pastillas Mejoralitas, musculares, Antigripales, champús, etc. son medicamentos que están
siempre a la expectativa del cliente.
El inventario anual se realiza para ver que medicamentos faltan como también cuales son
los que están vencidos, malogrados para así ser remplazados por otros nuevos registrando
en un cuaderno de medicamentos vencidos, defectuosos o malogrados.
Para una mejor organización de un negocio como este, es necesario llevar un formato de
ventas diarias y semanales en base a las notas de mostrador. Puede empezar haciéndolo
manualmente, luego obtener un sistema de cómputo que lo haga por usted. Lo importante
es llevar el control. El inventario es otro aspecto que debe llevarse al día.
Tenga el control de facturas por pagar a proveedores, así no se retrasa y puede obtener
descuentos por pronto pago. Tampoco olvide las fechas de pago de los servicios como
agua, luz renta, salarios, teléfono, etc.
De igual manera, se tiene que llevar un registro de las notas de salida por devoluciones,
producto defectuoso, productos para los empleados, etc.
9.2 Glosario de los procesos
Gestión venta: este proceso consiste en donde el cliente solicita su Medicamento por lo
cual el vendedor se encarga de brindarle información sobre los tipos de Precios, y la
existencia de los medicamento.
Gestión compras: en el presente proceso se encarga de realizarlo el encargado del área de
administración, lo cual consiste en realizar todas las compras para la Botica cuando exista
stock mínimo en su almacén de Medicamentos.
Gestión almacén: el vendedor está encargada de realizar el registro de los ingresos de
los Medicamentos, como brindar información sobre el stock mínimo de cada
Medicamento.
Gestión Cobros: consiste en que el cajero realice la suma total de las ventas diarias y
también se encarga de calcular los egresos e ingresos de las ventas.
59
9.3. Determinación de requerimientos
Modelo de casos de uso de negocios
Gestion de Almacen
(f rom Caso de Uso del Negocio)
Administrador
(from Worker)
Proveedor
(from Actores)
Gestion Compras de Medicamento
(f rom Caso de Uso del Negocio)
Cajero(from Worker)
Vendedor(from Worker)
Gestion de Cobros
(f rom Caso de Uso del Negocio)
Gestion de Ventas de Medicamento
(f rom Caso de Uso del Negocio)Cliente
(from Actores)
DIAGRAMA DEL MODELO DEL NEGOCIO
FiguraN°11: Modelo de casos de uso de negocios
60
9.3.2 Modelo de objetos del negocio
Figura N° 12:Modelo de objetos del negocio Compras
61
DIAGRAMA DE OBJETO DE NEGOCIO_GESTION COMPRA DE MEDICAMENTO
Proveedor
(from Actores)
Pedido
(from Entidades)
Guia de Remision
(from Entidades)
Factura
(from Entidades)
Devoluciones
(from Entidades)
Administrador
(from Worker)
Envia Ordenes de Compra a Cotizar
Envia Ordenes de compra Cotizadas
Envia Medicamentos con guia de Remision
Envis Medicamentos Defectuosos
Repone Medicamentos Devueltos
Crea una Orden de Compra
Registra Factura y Guia de Remision
Crear Registro de Devoluciones
Medicamento
(from Entidades)
Busca Medicamento
Busca Medicamento a Registrar
Cuaderno Registro de Compras
(from Entidades)
Actualizar Stock de Medicamento
FiguraN° 13:Modelo de objetos del negocio Ventas
62
Figura N°14:Modelo de objetos del negocio Cobros
63
DIAGRAMA DE OBJETO DE NEGOCIO_GESTION COBROS
Cajero
(f rom Worker)
Vendedor
(f rom Worker)
Indiza Caja
Verifica Dinero en Caja
Repone Dinero Faltante
Ingreso
(f rom Entidades)
Calcula de Ingresos Extras
Egresos
(f rom Entidades)
Calcula Egresos
Pagos
(f rom Entidades)
Venta
(f rom Entidades)
Calcula Cantidad de Ventas Diarias
Caja
(f rom Entidades)
Calcula Egresos y Ingresos
Figura N° 15:Modelo de objetos del negocio Almacén
64
DIAGRAMA DE OBJETO DE NEGOCIO_GESTION ALMACEN DE LOS MEDICAMENTOS
Proveedor
(from Actores)
Vendedor
(f rom Worker)
Administrador
(f rom Worker)
Entregar Medicamentos para Ordenarlos
Envia Medicamentos
Medicamento
(f rom Entidades)
Recibe Lista de Medicamento a Ordenar
Inventario
(f rom Entidades)
Realizar Inventario
Cuaderno Registro de Compras
(f rom Entidades)
Registrar Mediacamentos Comprados
9.3.3 Modelo del dominio del problema
Figura N°16:Modelo del dominio del problema
65
Modelo de Dominio de Venta de Medicamento
Receta
Sintomas
Egresos IngresosCaja
Pago
Vendedor
Administrador
Solicitud de CompraTiene
Tiene
VentaMedicamentoTiene
Realiza
Guia de RemisionFactura
BoletaCliente
Solicita
Proveedor
Documento
Pertenece Pertenece
PerteneceSolicita
Medicamentos
Detalle
Tiene
Tiene Tiene
Pertenese
Verificar Existencioa de Medicamento
(f rom Included Use Cases)
Registrar Medicamentos
(f rom <Use Case Name>)
<<include>>
Actualizar Medicamentos
(f rom <Use Case Name>)
<<include>>
Eliminar Medicamentos
(f rom <Use Case Name>)
<<include>>Almacenero
(from Actors)
Verificar Stock Minimo de Medicamentos
(f rom <Use Case Name>)
Buscar Medicamento por Categoria
(f rom Included Use Cases)
Reporte de Lista de Medicamentos Actualizados
(f rom <Use Case Name>)
Crear Lista de Medicamentos a Comprar
(f rom <Use Case Name>)
<<include>>
<<include>>
Crear Ordem de Compra de Medicamentos
(f rom <Use Case Name>)
Seleccionar Proveedor
(f rom <Use Case Name>)
Administrador
(from Actors)
Registrar Cotizaciones
(f rom <Use Case Name>)
<<include>>
Registrar Proveedor
(f rom <Use Case Name>)
<<include>>
DIAGRAMA DE CASOS DE USO DEL SISTEMA-GESTION DE COMPRAS DE MEDICAMENTOS
9.4.1 Especificación de Use Case
66
9.3.4 Especificación de Use Case
Especificación Gestión Venta
Actores Vendedor, Cliente
Descripción El vendedor ingresa al sistema gestión de compras, venta y almacén
de la Botica “San Camilo”, para poder registrar los datos de las
ventas.
Flujo Básico El vendedor ingresa al sistema de compra, venta y almacén de
Medicamentos, busca datos del cliente si existe no registra pero si no
existe registra todos los datos solicitados por el sistema, luego busca
datos del Medicamentos y guarda los datos debido que el sistema le
brinda botones de guardar, modificar, eliminar.
Casos de uso Incluidos Movimientos Ventas
Post Condición Los datos del cliente quedaran guardados en la base de datos del
sistema cliente – servidor.
67
Especificación Gestión Almacén
Actores Almacenero
Descripció
n
El almacenero ingresa al sistema gestión
de compras, venta y almacén de la Botica
“San Camilo”, para poder registrar el
ingreso de los Medicamentos al stock del
producto.
Flujo
Básico
El almacenero ingresa al sistema de
compra, venta y almacén de
Medicamentos, busca datos del tipo de
Medicamento, busca datos de Laboratorio
de Medicamentos, registra nombre del
Medicamento, luego ingresa la cantidad y
por ultimo guarda los datos y a su vez el
68
Especificación Gestión Compra
Actores Administrador
Descripción El administrador ingresa al sistema gestión de compras, venta y
almacén de la Botica “San Camilo”, para poder registrar los datos de
las compras.
Flujo Básico El administrador ingresa al sistema de compra, venta, cobros y
almacén de Medicamentos, busca datos del proveedor si existe no
registra pero si no existe registra todos los datos solicitados por el
sistema, luego busca datos del Medicamento y guarda los datos
debido que el sistema le brinda botones de guardar, modificar,
eliminar.
Casos de uso Incluidos Movimientos Compra
Post Condición Los datos del cliente quedaran guardados en la base de datos del
sistema cliente – servidor.
sistema le brindara botones de poder
modificar, eliminar.
Casos de
uso
Incluidos
Movimientos Ingreso stock
Post
Condición
Los datos del cliente quedaran guardados
en la base de datos del sistema cliente –
servidor.
Especificación Gestión Cobros
Actores Cajero
Descripción El cajero ingresa al sistema gestión de compras, venta y almacén de
la Botica “San Camilo”, para poder registrar los datos de Caja.
Flujo Básico El cajero ingresa al sistema de compra, venta y almacén de
Medicamentos, busca datos de toda las ventas que realizo diario para
poder sacar un monto total datos solicitados por el sistema, luego
busca datos del Medicamentos y guarda los datos debido que el
sistema le brinda botones de guardar, modificar, eliminar.
Casos de uso Incluidos Movimientos Cobros
Post Condición Los datos del monto total quedaran guardados en la base de datos del
sistema cliente – servidor.
Figura N°18:Especificación de Use Case
9.3.6 Requerimientos del sistema
9.3.6.1. Requerimientos funcionales
Mantenimientos:
• Registrar Tipo Medicamento
• Registra Laboratorio
• Registrar Medicamento
• Registrar Clientes
• Registrar Proveedores
• Registrar vendedores
Movimientos:
69
• Registrar Ingreso de Stock de Medicamentos.
• Registrar Ventas
• Registrar Compras
Consultas y Reportes:
• Ventas en el mes
• Ventas en el día
• Ingresos
Egresos
• Medicamentos en stock
• Lista de Medicamentos
9.3.1. Requerimientos no funcionales
• Documentación del Sistema
• Manual de Usuario
• Manual de Instalación del Sistema
• La aplicación será desarrollada con una interfaz amigable, de modo que no exista
confusiones en el usuario
• La interfaz de la aplicación será desarrollada con colores bajos y agradables al
usuario
• La interfaz de la aplicación será desarrollada con botones de igual tamaño y
posición
• La aplicación será clara, sencilla y debe mantener el mismo formato en toda la
aplicación
o Se utilizara Programas Ofimáticos como:
Visual studio 2005
SQL Server
Rational Rose
Microsoft office Visio 2010
Microsoft office Word 2010
o Excel
o Hardware
o Impresora
70
9.4. Análisis
orientado a
objetos.
9.4.1.Diagrama de
colaboraciones
71
: Vendedor : IU VENTAS
: Producto
: Cliente
: Venta
: BuscarProducto
: BuscarCliente
: BuscarVenta
: RegistrarVenta
: ModificarVenta
: AnularVenta
1: Abrir
3: Leer
6: Leer
15: Actualizar
18: Anular
9: Leer
2: Buscar(STOCK)
4: ObjProducto
17: Anular(ObjVenta)
19: Msg"Venta Anulada"
5: Buscar(cliCodigo)
7: ObjCliente
14: Modificar(objVenta)
16: Msg"VentaActualizada"
8: Buscar(venCodigo)
10: ObjVenta
11: Registrar(ObjCompra)
13: Msg"CompraGuardada"
12: Grabar
D iagrama de colaboracion de Gestion_Venta de M edicamento
Figura N°19:Diagrama de colaboraciones Venta
72
Figura N°20:Diagrama de colaboraciones Compra
73
Figura N°21:Diagrama de colaboraciones Almacén
74
Figura N°22:Diagrama de colaboraciones Cobros
9.4.2 Flujo de Eventos
75
: Cajero : IU COBROS
: Pagos
: Ingresos
: Egresos
: Cobros
: BuscarPagos
: RegistrarIngresos
: BuscarIngresos
: BuscarEgresos
: BuscarCobros
: ReportarIngresos
1: Abrir
2: Buscar(Codigo) 3: Leer
4: ObjPagos
5: Buscar(Codigo) 6: Leer
7: ObjIngresos
8: Registrar(ObjIngresos) 9: Grabar
10: Msg"IngresosGuardados"
11: Reportar(ObjIngresos) 12: Actualizar
13: Msg"IngresosActulisados"
14: BuscarCodigo() 15: Leer
16: ObjEgresos
17: Buscar(Codigo) 18: Leer
19: ObjCobros
Diagrama de Colaboracion_Gestion Cobros Medicamentos
Verificar Existencia de Medicamentos
Registrar los Medicamentos Faltantes en cuaderno de med. Faltantes
Crear orden de compra de medicamentos
DIAGRAMA DE ACTIVIDADES_GESTION COMPRAS DE MEDICAMENTOS
recibe Cotizaciones de Medicamentos
Realiza su Orden de Compra
Envia la orden de compra
Recibe Medicamentos y Documentos de Envio
Verifica Medicamentos
Esta Bien?
Registraba medicamento Recibido en cuaderno de compras
si
Devuelve Medicamento
Alamacena los Medicamentos
Resivir Orden de Compra de Compra del Medicamentos
Verifica si tiene Medicamento solicitado
Cotiza Medicamento Existente
Enviar Relacion de medicamentos sustitutos
¿ Existe Medicamento?
Envia Relacion de Medicamentos Cotizados
Recibe orden de Compra
Realiza el despacho de Medicamentos
Genera Factura de Compra de Medicamentos
Envia Medicamentos con Factura y Guia de Remision
Recepciona Devoluciones
Reenvia los Medicamentos cambiados
si
Figura N°23:Flujo de Eventos Compras
76
Figura N°24:Flujo de Eventos Ventas
77
Figura N° 25:Flujo de Eventos Cobros
78
DIAGRAMA DE ACTIVIDADES_GESTION COBROS DEL MEDICAMENTO
Inicializan caja
Verifica dinero calculado en caja
¿Existe Faltante?
Calcular Cantidad de Ventas Diarias
Calcular Pagos Diarios
Calcular Ingresos Extras
Calcula total de Ingresos y Egresos
Calcula Total de caja con inicio de caja
Repone Faltante
Calcula el Faltante
Figura N° 26:Flujo de Eventos Almacén
9.4.3. Modelo de Secuencia
79
80
: Administrador : IU:COMPRAS : Proveedor
: BuscaProveedor : BuscarCompra : RegistrarCompra : Compra : RegistrarMedicamento : BuscarMedicamento
: MedicamentoAbrir
Buscar (Ruc)
Leer
ObjProveedor
Buscar(Nrode RUC)
Leer
ObjCompra
Registrar(objCompra)
Grabar
Msg"CompraGuardada"
Buscar(Stock)
Leer
ObjMedicamento
Registrar(ObjMedicamento)
Grabar
Msg"Medicamento Guardado"
Diagrama de de Secuencia Gestion_Compras de Medicamentos
Figura N° 27:Modelo de Secuencia Compras
81
Figura N° 28:Modelo de Secuencia Vetas
82
: Vendedor : IU VENTAS : Producto : Cliente : Venta : BuscarProducto : BuscarCliente : BuscarVenta : RegistrarVenta : ModificarVenta : AnularVentaAbrir
Buscar(STOCK)
Leer
Buscar(cliCodigo)
Leer
ObjCliente
Buscar(venCodigo)
Leer
ObjVenta
Registrar(ObjCompra)
Grabar
Msg"CompraGuardada"
Modificar(objVenta)
Actualizar
Msg"VentaActualizada"
Anular(ObjVenta)
Anular
Msg"Venta Anulada"
Diagrama de Secuencia_Gestion Venta de Medicamentos
Figura N° 29:Modelo de Secuencia Almacén
83
84
Figura N° 30:Modelo de Secuencia Cobros
9.4.3 Diagrama de clase
85
Diagrama de clases de Venta de Medicamento
Egresos Ingresos
Boleta Factura
igv
Guia_Remicion
igv
Caja
caCodigocaTotalcaSubTotal
Pago
paCodigopaCantidadpaTotal
Vendedor
v enCodigov enNombrev enApellidov enDniv enTelef onov enFecNac
Receta Sintomas
VentaMedicamento
VeCodigov eNombrev eCantidadFechaTotal
11 11 11..*
11..*
Solicitud de Compra
Prov eedor
proCodigoproNombreproApellidoproDireccionproTelf ono
1..*
1..*
1..*
1..*
Cliente
cliCodigocliNombrecliApellidocliDnicliSexo
1..*
1..*
1..*
1..*
Solicita
Documento
NumeroFecha EmisionRazon SocialRucSub total
1..*
1
1..* 1..*
1..*
1
1..* 1..*
Medicamentos Detalle1..*11 1..*
Figura N° 31:Diagrama de clase
9.3.5Diseño Orientado a Objetos
9.3.5.1 Modelo de Despliegue
Figura N° 32:Modelo de Despliegue
86
9.6 Implementación Orientada a objetos
9.6.1 Modelo de Componentes
Figura N° 33:Modelo de Componentes
87
Capa Aplicacion
Administrador
Capa
<EXE> Venta_Medicamentos_Farmaceuticos
<DLL> Administrador
<DLL> Boleta
<DLL> Caja
<DLL>Cliente
Diagrama de Componentes de Venta de Medicamentos Farmaceuticos
Boleta Caja Cliente Cuaderno_ApuntesEgresos Factura Guia_RemisionIngresos Pago Proveedor Receta Vendedor VentaMedicamento
<DLL> Cuaderno_Apuntes
<DLL> Egresos
<DLL> Factura
<DLL> Guia_Remicion
<DLL> Ingresos
<DLL>Pago
<DLL>Proveedor
<DLL>Receta
<DLL> Vendedor
<DLL> Venta_Medicamento
Capas
BD Sistema
9.7. DISEÑO DE LA BASE DE DATOS.
9.7.1Diseño conceptual
Figura N° 34:Diseño conceptual
88
9.7.2.Diseño Lógico
Figura N° 35: Diseño Lógico
89
9.7.3Diseño Físico
Figura N° 36: Diseño Físico
90
9.8Diagrama de Flujo Estructural del Sistema
Figura N° 37: Diagrama de Flujo Estructural del Sistema
91
X. DESARROLLO COMPUTACIONAL.
10.1 Diseño de los Formularios.
ACCESO ALSISTEMA
Al momento de ejecutar el sistema, nos aparecerá una ventana en ella
ingresaremos el código del usuario y la contraseña y pulsamos el botón aceptar.
Figura N° 38: Ventana Acceso al Sistema
MENU PRINCIPAL
Figura N° 39: VentanaMenú Principal
92
VENTANA DE MANTENIMIEMTO DE PRODUCTOS
Figura N° 40: Ventana Mantenimiento de Productos
VENTANA DE MANTENIMIENTO DE PROVEEDORES
Figura N° 41: Ventana Mantenimiento de Proveedores
93
VENTANA DE CONTROLCLIENTES
Figura N° 42: Ventana Control de Clientes
VENTANA REGISTROS DE TRABAJADORES
Figura N° 43: Ventana de Registro de trabajadores
94
VENTANA DE TIPO DE USUARIO
Figura N° 44: Ventana de Tipo de Usuario
VENTANA DE MANTENIMIENTO DE PROVEEDORES
Figura N° 45: Ventana de Mantenimiento de Proveedores
95
VENTANA DE VERIFICAR STOCK DE PRODUCTOS
Figura N° 46: Ventana de Verificar stock de Productos
VENTANA DE MANTENIMIENTO DE COMPRAS
Figura N° 47: Ventana de Mantenimiento de Compras
96
VENTANA DE BUSCAR COMPRAS
Figura N° 48: Ventana de Buscar Compras
VENTANA DE VENTAS
Figura N° 49: Ventana de Ventas
VENTANA DE ANULAR VENTA
97
Figura N° 50: Ventana de Anular Ventas
VENTANA DE REPORTES DIARIAS
Figura N° 51: Ventana de Reportes de Ventas
98
VENTANA DE INGRESOSO
Figura N° 52: Ventana de Ingresos
VENTANAN DE PROVEEDORES
Figura N° 53: Ventana de Egresos
VENTANA DE ARQUEO DE CAJA
99
Figura N° 54: Ventana de Arqueo de caja
VENTANA DE REPORTES DE CAJA POR FECHA
Figura N° 55: Ventana de Reportes de Caja por Fecha
VENTANA DE DEUDAS POR PAGAR
100
Figura N° 56: Ventana de Deudas por Pagar
VENTANA DE PRODUCTO A COMPRAR
Figura N° 57: Ventana de Productos a Pagar
10.2 Codificación de cada uno de los formularios.
101
Registro de compas de Medicamentos
Capa de Presentacion de Compras
Imports capaNegocio
PublicClass frmCompra
Dim oProveedor AsNew meProveedor
Dim oCompra AsNew meCompra
Dim oDetalle AsNew meDetCompra
Dim oDeuda AsNew meDeuda
Dim oEgreso AsNew meEgreso
PrivateSub btnAgregar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnAgregar.Click
frmProductosAcomprar.Show()
EndSub
PrivateSub txtFlete_TextChanged(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles txtFlete.TextChanged
Try
Catch ex As Exception
txtFlete.Focus()
EndTry
EndSub
PrivateSub txtIGV_TextChanged(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles txtIGV.TextChanged
Try
Catch ex As Exception
txtIGV.Focus()
EndTry
EndSub
PrivateSub cmbFormaPago_SelectedIndexChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
cmbFormaPago.SelectedIndexChanged
Try
102
If cmbFormaPago.SelectedItem = "CREDITO"Then
txtAcuenta.Enabled = True
dtpFV.Enabled = True
Else
txtAcuenta.Enabled = False
dtpFV.Enabled = False
EndIf
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
PrivateSub dgvCompra_CellContentClick(ByVal sender As
System.Object, ByVal e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles
dgvCompra.CellContentClick
Try
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
PrivateSub btnCerrar_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles btnCerrar.Click
Me.Close()
EndSub
PrivateSub btnQuitar_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles btnQuitar.Click
Try
Dim fila AsInteger = dgvCompra.CurrentRow.Index
Dim rpta AsString
Dim total AsDouble
Dim descuento AsDouble
rpta = MessageBox.Show("Eliminar el Producto : "&
dgvCompra.Rows(fila).Cells(2).Value.ToString, "ELIMINACION",
MessageBoxButtons.YesNo)
103
If rpta = 6 Then
dgvCompra.Rows.RemoveAt(fila)
For i AsInteger = 0 To dgvCompra.Rows.Count - 1
total = total +
dgvCompra.Rows(i).Cells(6).Value.ToString
descuento = descuento +
dgvCompra.Rows(i).Cells(5).Value
Next
lblVentaBruta.Text =
total.ToString("###,##0.00")
lblDescuento.Text =
descuento.ToString("###,##0.00")
Dim dsc AsDouble = lblVentaBruta.Text -
descuento.ToString("###,##0.00")
lblVentaNeto.Text = dsc.ToString("###,##0.00")
lblTotalPagar.Text = dsc.ToString("###,##0.00")
EndIf
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
PrivateSub btnBuscarProveedor_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
btnBuscarProveedor.Click
Try
Dim dstProveedor As DataSet =
oProveedor.buscarProveedor(txtRuc.Text)
txtNombre.Text =
dstProveedor.Tables(0).Rows(0).Item(1)
txtDireccion.Text =
dstProveedor.Tables(0).Rows(0).Item(2)
txtRepresentante.Text =
dstProveedor.Tables(0).Rows(0).Item(5)
Catch ex As Exception
MessageBox.Show("ERROR AL COLOCAR EL RUC",
"ADVERTENCIA")
txtRuc.Text = ""
104
txtRuc.Focus()
EndTry
EndSub
PublicSub limpiarcompras()
txtRuc.Text = ""
txtNombre.Text = ""
txtRepresentante.Text = ""
txtDireccion.Text = ""
txtFlete.Text = "0.00"
txtIGV.Text = "0.00"
txtNroComprobante.Text = ""
lblDescuento.Text = ""
lblTotalPagar.Text = ""
lblVentaBruta.Text = ""
lblVentaNeto.Text = ""
dgvCompra.Rows.Clear()
txtAcuenta.Text = "0.00"
EndSub
PublicSub datosCompra()
''graba compra
oCompra.registrarCompra(dtpFechaCompra.Text,
txtRuc.Text, cmbTipoComprobante.SelectedItem,
txtNroComprobante.Text, lblVentaBruta.Text,
lblDescuento.Text, lblVentaNeto.Text, txtFlete.Text,
txtIGV.Text, lblTotalPagar.Text)
For i AsInteger = 0 To dgvCompra.Rows.Count - 1
oDetalle.registrarDetalleCompra(dgvCompra.Rows(i).Cells(0).Va
lue, dgvCompra.Rows(i).Cells(3).Value,
dgvCompra.Rows(i).Cells(4).Value,
dgvCompra.Rows(i).Cells(1).Value,
dgvCompra.Rows(i).Cells(6).Value, txtNroComprobante.Text)
Next
EndSub
PublicSub datosDeuda()
105
Dim amortiza AsDouble = txtAcuenta.Text
Dim debe AsDouble = (CDbl(lblTotalPagar.Text) - amortiza)
oDeuda.registrarDeuda(txtNroComprobante.Text,
dtpFechaCompra.Text, dtpFV.Text, lblTotalPagar.Text,
txtAcuenta.Text, debe.ToString("###,##0.00"))
EndSub
PublicSub datosEgresos(ByVal monto AsDouble, ByVal motivo
AsString)
Dim fecha AsString = DateValue(Now)
Dim hora AsString = TimeOfDay
''Dim motivo As String = "DEJO A CUENTA DE SU COMPRA NRO " +
txtNroComprobante.Text
oEgreso.registrarEgreso(fecha, hora, monto, motivo)
EndSub
PrivateSub btnRegistrar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnRegistrar.Click
'Try
If txtRuc.Text <>""Then
If txtNroComprobante.Text <>""Then
If dgvCompra.Rows.Count > 0 Then
If cmbFormaPago.SelectedItem <>""Then
If cmbTipoComprobante.SelectedItem <>""Then
If cmbFormaPago.SelectedItem = "CREDITO"Then
''registra deuda y compra
datosCompra()
datosDeuda()
''registra egreso
Dim motivo AsString = "A CUENTA DE LA COMPRA NRO " +
txtNroComprobante.Text
datosEgresos(txtAcuenta.Text,
motivo)
Else
''registra compra
datosCompra()
''registra egreso
Dim motivo AsString = "PAGO POR LA COMPRA NRO " +
txtNroComprobante.Text
106
datosEgresos(lblTotalPagar.Text, motivo)
EndIf
limpiarcompras()
MessageBox.Show("SE REGISTRO CON
EXITO LA COMPRA")
Else
MessageBox.Show("SELECCIONE EL
TIPO DE COMPROBANTE")
cmbTipoComprobante.Focus()
EndIf
Else
MessageBox.Show("SELECCIONE LA FORMA
DE PAGO")
cmbFormaPago.Focus()
EndIf
Else
MessageBox.Show("INGRESE LOS PRODUCTOS A
COMPRAR")
'txtDescripcion.Focus()
EndIf
Else
MessageBox.Show("INGRESE EL NRO DE
COMPROBANTE")
txtNroComprobante.Focus()
EndIf
Else
MessageBox.Show("INGRESE EL NUMERO DEL
PROVEEDOR")
txtRuc.Focus()
EndIf
'Catch ex As Exception
' MessageBox.Show(ex.Message)
'End Try
EndSub
EndClass
Formulario Buscar Compra
107
Dim oCompra AsNew meCompra
Dim oDetalleCompra AsNew meDetCompra
Dim oProveedor AsNew meProveedor
PrivateSub btnCerrar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnCerrar.Click
Me.Close()
EndSub
PrivateSub btnBuscar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnBuscar.Click
Try
Dim dstCompra As DataSet =
oCompra.buscarCompra(txtNroComprobante.Text)
txtFechaCompra.Text =
dstCompra.Tables(0).Rows(0).Item(1)
txtRucProveedor.Text =
dstCompra.Tables(0).Rows(0).Item(2)
txtTipoDocumento.Text = dstCompra.Tables(0).Rows(0).Item(3)
txtCompBruto.Text =
dstCompra.Tables(0).Rows(0).Item(5)
txtCompDscto.Text =
dstCompra.Tables(0).Rows(0).Item(6)
dgvCompra.DataSource =
oDetalleCompra.buscarDetalleCompra(txtNroComprobante.Text).Ta
bles(0)
''proveedor
Dim dstProveedor As DataSet =
oProveedor.buscarProveedor(txtRucProveedor.Text)
txtProveedor.Text = dstProveedor.Tables(0).Rows(0).Item(2)
txtRepresentante.Text =
dstProveedor.Tables(0).Rows(0).Item(5)
''productos
Catch ex As Exception
MessageBox.Show("INGRESE EL NRO DEL COMPROBANTE
DE LA COMPRA", "AVISO")
108
txtNroComprobante.Focus()
EndTry
EndSub
EndClass
Registro de DetalleCompra
Capa Presentacion Detalle Compra
Dim oCompra AsNew meCompra
Dim oDetalleCompra AsNew meDetCompra
Dim oProveedor AsNew meProveedor
PrivateSub btnCerrar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnCerrar.Click
Me.Close()
EndSub
PrivateSub btnBuscar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnBuscar.Click
Try
Dim dstCompra As DataSet =
oCompra.buscarCompra(txtNroComprobante.Text)
txtProveedor.Text = dstProveedor.Tables(0).Rows(0).Item(2)
txtRepresentante.Text =
dstProveedor.Tables(0).Rows(0).Item(5)
''productos
Catch ex As Exception
MessageBox.Show("INGRESE EL NRO DEL COMPROBANTE
DE LA COMPRA", "AVISO")
txtNroComprobante.Focus()
EndTry
EndSub
EndClass
Registro de Ventas de Medicamentos.
Capa Presentación Ventas.
Dim oVenta AsNew meVenta
109
PrivateSub btnCerrar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnCerrar.Click
Me.Close()
EndSub
PrivateSub btnReportar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnReportar.Click
Try
'dgvReporte.DataSource =
oVenta.buscarVentaDiariasFechas(txtFecha.Text).Tables(0)
Dim total AsDouble = 0
Dim dstVentaDiaria As DataSet =
oVenta.buscarVentaDiariasFechas(txtFecha.Text)
For i AsInteger = 0 To dstVentaDiaria.Tables(0).Rows.Count -
1
dgvReporte.Rows.Add(dstVentaDiaria.Tables(0).Rows(i).Item(0)
+ dstVentaDiaria.Tables(0).Rows(i).Item(1),
dstVentaDiaria.Tables(0).Rows(i).Item(2),
dstVentaDiaria.Tables(0).Rows(i).Item(3),
dstVentaDiaria.Tables(0).Rows(i).Item(4),
dstVentaDiaria.Tables(0).Rows(i).Item(5),
dstVentaDiaria.Tables(0).Rows(i).Item(2))
total = total +
CDbl(dstVentaDiaria.Tables(0).Rows(i).Item(6))
Next
txtTotal.Text = total.ToString("###,##0.00")
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
PrivateSub frmVentaDiaria_Load(ByVal sender As System.Object,
ByVal e As System.EventArgs) HandlesMyBase.Load
txtFecha.Text = DateValue(Now)
EndSub
EndClass
Registro de Detalle de ventas
110
Capa Presenacion DetalleVentas
Dim oVenta AsNew meVenta
Dim oDetails AsNew meDetails
Dim oProducto AsNew meProducto
PrivateSub btnCerrar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnCerrar.Click
Me.Close()
EndSub
Dim nrocomprobante AsString =
dgvAnular.Rows(fila).Cells(3).Value
Dim dstDetails As DataSet =
oDetails.buscarDetalleVenta(nrocomprobante)
Dim cantidad AsInteger = 0
Dim stockBD AsInteger = 0
For i AsInteger = 0 To dstDetails.Tables(0).Rows.Count - 1
stockBD =
oProducto.buscarProducto(dstDetails.Tables(0).Rows(i).Item(0)
).Tables(0).Rows(0).Item(5)
cantidad = stockBD +
CInt((dgvAnular.Rows(i).Cells(1).Value))
oProducto.actualizarProducto(cantidad,
dstDetails.Tables(0).Rows(i).Item(0))
Next
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
PublicSub datosIngreso()
EndSub
EndClass
Formulario de Anular Venta
111
PrivateSub btnCerrar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnCerrar.Click
Me.Close()
EndSub
PrivateSub btnBuscar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnBuscar.Click
EndSub
PrivateSub btnAnular_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnAnular.Click
Try
Dim fila AsInteger = dgvAnular.CurrentRow.Index
Dim estado AsString = "ANULADO"
oVenta.actualizarVenta(dgvAnular.Rows(fila).Cells(3).Value,
estado)
''para actualizar los productos
Dim nrocomprobante AsString =
dgvAnular.Rows(fila).Cells(3).Value
Next
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
PublicSub datosIngreso()
EndSub
EndClass
Registro de Usuario
Capa Presentacion Usuario
PrivateSub frmUsuario_Load(ByVal sender As System.Object,
ByVal e As System.EventArgs) HandlesMyBase.Load
112
Try
Dim dst AsNew DataSet
cmbTU.DataSource =
mTipoUsuario.listarTipoUsuario.Tables(0)
cmbTU.DisplayMember =
mTipoUsuario.listarTipoUsuario.Tables(0).Columns(1).Caption.T
oString
cmbTU.ValueMember = "tuCodigo"
Catch ex As Exception
MessageBox.Show(ex.Message)
mUsuario.buscarUsuario(txtCodigo.Text).Tables(0)
Else
MessageBox.Show("esta vacia el campo
clave...")
txtClave.Focus()
EndIf
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
PrivateSub btnBuscar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnBuscar.Click
Else
MessageBox.Show("esta vacia el campo
clave...")
txtClave.Focus()
EndIf
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
EndSub
EndClass
113
Registro de TipoUsuario
Capa Presentacion TipoUsuario
System.Object, ByVal e As System.EventArgs) Handles
btnRegistrar.Click
Try
'cuando no ingresamos nada
If txtTipoUsuario.Text <>""Then
'cuando ingresamos numeros en vez de letras
IfNot IsNumeric(txtTipoUsuario.Text) Then
oTipoUsuario.codigo =
mTipoUsuario.conteo.Tables(0).Rows(0).Item(0) + 1
System.Object, ByVal e As System.EventArgs) Handles
btnCerrar.Click
Me.Close()
EndSub
PrivateSub txtTipoUsuario_TextChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
txtTipoUsuario.TextChanged
txtTipoUsuario.CharacterCasing =
CharacterCasing.Upper
EndSub
EndClass
Registro de Proveedoeres
Capa Presentacion de Proveedor
Dim oProveedor AsNew meProveedor
PrivateSub btnBuscar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnBuscar.Click
114
Try
dgvProveedor.DataSource =
oProveedor.buscarProveedor(txtRuc.Text).Tables(0)
txtNombre.Text =
dgvProveedor.Rows(0).Cells(2).Value
oProveedor.registrarProveedor(txtRuc.Text,
txtNombre.Text.ToUpper(), txtTelefono.Text,
txtUbicacion.Text.ToUpper(), txtRepresentante.Text.ToUpper())
MessageBox.Show("SE REGISTRO CON EXITO")
dgvProveedor.DataSource =
oProveedor.buscarProveedor(txtRuc.Text).Tables(0)
limpiar()
desabilitado()
Catch ex As Exception
PrivateSub txtNombre_TextChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
txtNombre.TextChanged
txtNombre.CharacterCasing = CharacterCasing.Upper
(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles txtUbicacion.TextChanged
txtUbicacion.CharacterCasing = CharacterCasing.Upper
EndSub
EndClas
Registro de Clientes
Capa Presentacion Clientes
Imports capaDatos
Imports capaNegocio
PublicClass frmCliente
Dim mCliente AsNew meCliente
PrivateSub btnRegistrar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnRegistrar.Click
Try
If txtNombre.Text <>""Then
115
EndSub
Registro de Trabajador
Capa Presentacion Trabajador
Dim mTrabajador AsNew meTrabajador
PrivateSub btnCargar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnCargar.Click
OpenFileDialog1.Filter = "archivo de imagen:(*.jpg)|*.jpg|
Bitmap (*.bmp)Archivo de Imagen (*.png)|*.png|"&"todos los
archivos (*.*)|*.* "
If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK
Then
PictureBox1.Image = New
Bitmap(OpenFileDialog1.FileName)
txtRuta.Text = OpenFileDialog1.FileName
EndIf
EndSub
PrivateSub btnRegistrar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnRegistrar.Click
Try
If txtDni.Text <>""Then
If IsNumeric(txtDni.Text) Then
If txtNombre.Text <>""Then
IfNot IsNumeric(txtNombre.Text) Then
mTrabajador.registrarTrabajador(txtNombre.Text,
txtApellido.Text, cmbSexo.SelectedItem, txtDni.Text,
dtpFecha.Text, txtRuta.Text)
MessageBox.Show("SE REGISTRO LOS DATOS DEL TRABAJADOR"
Registro de Caja
Capa Presentacion Caja
116
PrivateSub btnBuscar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnBuscar.Click
Try
dgvCajas.DataSource =
oCaja.reporteCajaFecha(dptFecha.Text).Tables(0)
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
PrivateSub btnCerrar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnCerrar.Click
Me.Close()
EndSub
EndClass
Formulario Arqueo de Caja
Imports capaNegocio
PublicClass frmArqueoCaja
Dim oIngreso AsNew meIngreso
Dim oEgreso AsNew meEgreso
Dim oCaja AsNew meCaja
oIngreso.sumarIngreso(txtFecha.Text).Tables(0).Rows(0).Item(0
)
txtEgresos.Text =
oEgreso.sumarEgreso(txtFecha.Text).Tables(0).Rows(0).Item(0)
Dim total AsDouble = (CDbl(txtIngresos.Text) -
CDbl(txtEgresos.Text))
txtMonto.Text = ""
EndIf
Else
MessageBox.Show("INGRESE EL MOTIVO DEL
EGRESO", "AVISO")
txtMotivo.Focus()
EndIf
Else
117
MessageBox.Show("INGRESE EL MONTO DE SU
EGRESO", "AVISO")
txtMonto.Focus()
EndIf
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
PrivateSub frmEgresos_Load(ByVal sender As System.Object,
ByVal e As System.EventArgs) HandlesMyBase.Load
txtFecha.Text = DateValue(Now)
txtHora.Text = TimeOfDay
Registro de Ingresos
Capa Prsentacion Ingreos
Imports capaNegocio
PublicClass frmIngreso
Dim oIngreso AsNew meIngreso
PrivateSub btnCerrar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnCerrar.Click
Me.Close()
EndSub
txtFecha.Text = DateValue(Now)
txtHora.Text = TimeOfDay
dgvIngresos.DataSource =
oIngreso.buscarIngresoFecha(txtFecha.Text).Tables(0)
dgvIngresos.DataSource =
oIngreso.buscarIngresoFecha(txtFecha.Text).Tables(0)
EndSub
EndClass
Registro de Categorias
Capa Presentacion Categoria
PrivateSub btnRegistrar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnRegistrar.Click
118
Try
PrivateSub txtCategoria_TextChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
txtCategoria.TextChanged
txtCategoria.CharacterCasing = CharacterCasing.Upper
EndSub
EndClass
Registro de Deudas Por Pagar
Capa Datos Deudas Por Pagar
Imports System.Data.SqlClient
PublicClass deuda
Dim oconexion AsNew
SqlConnection("server=.;database=farmacia;user id=sa;
pwd=sa")
PublicFunction buscarDeuda(ByVal fechaInicio AsString, ByVal
fechaFinal AsString) As DataSet
oconexion.Open()
Dim sql AsString = "select p.provNombre as fechaInicio &"'
and '"& fechaFinal &"' "
Dim da AsNew SqlDataAdapter(sql, oconexion)
Dim dst AsNew DataSet
da.Fill(dst, "deuda")
oconexion.Close()
EndSub
PublicSub actualizarDeuda(ByVal nroDoc AsString, ByVal
fechaVencimiento AsString, ByVal amortizacion AsDouble, ByVal
saldo AsDouble)
'abrimos la conexion
oconexion.Open()
Dim sql AsString = "update deuda set fechaVencimiento='"&
fechaVencimiento &"',amortizacion="& amortizacion &",saldo="&
saldo &" where nroDoc='"& nroDoc &"'"
Dim cmd AsNew SqlCommand(sql, oconexion)
cmd.ExecuteNonQuery()
119
oconexion.Close()
EndSub
EndClass
Capa Negocio Deudas Por Pagar
Imports capaDatos
PublicClass meDeuda
Dim oDeuda AsNew deuda
PublicFunction buscarDeuda(ByVal fechaInicio AsString, ByVal
fechaFinal AsString) As DataSet
Return oDeuda.buscarDeuda(fechaInicio, fechaFinal)
EndFunction
PublicSub registrarDeuda(ByVal nroDoc AsString, ByVal
fechaEmision AsString, ByVal fechaVencimiento AsString, ByVal
monto AsDouble, ByVal amortizacion AsDouble, ByVal saldo
AsDouble)
oDeuda.registrarDeuda(nroDoc, fechaEmision, fechaVencimiento,
monto, amortizacion, saldo)
EndSub
PublicSub actualizarDeuda(ByVal nroDoc AsString, ByVal
fechaVencimiento AsString, ByVal amortizacion AsDouble, ByVal
saldo AsDouble)
oDeuda.actualizarDeuda(nroDoc, fechaVencimiento,
amortizacion, saldo)
EndSub
EndClass
Capa Presentacion Deudas Por Pagar
Imports capaNegocio
PublicClass frmDeudasPorPagar
Dim oDeuda AsNew meDeuda
PrivateSub btnBuscar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnBuscar.Click
Try
dgvDuedas.DataSource =
oDeuda.buscarDeuda(dtpFI.Text, dtpFF.Text).Tables(0)
btnAmortizar.Enabled = True
120
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
PrivateSub btnCerrar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnCerrar.Click
Me.Close()
EndSub
PrivateSub btnAmortizar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnAmortizar.Click
Try
Dim fila AsInteger = dgvDuedas.CurrentRow.Index
frmAmortizar.txtSaldoAnterior.Text =
dgvDuedas.Rows(fila).Cells(7).Value
frmAmortizar.txtNroComprobante.Text =
dgvDuedas.Rows(fila).Cells(2).Value
frmAmortizar.Show()
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
EndClass
Registro de Medicamentos
Capa Presentacion Medicamentos
PrivateSub frmProducto_Load(ByVal sender As System.Object,
ByVal e As System.EventArgs) HandlesMyBase.Load
cmbCategoria.DataSource =
oCategoria.listarCategoria.Tables(0)
cmbCategoria.ValueMember = "catCodigo"
cmbCategoria.DisplayMember = "catNombre"
proveedor()
EndSub
PublicSub proveedor()
121
txtProveedor.DataSource =
oProveedor.mostrarProveedor.Tables(0)
txtProveedor.DisplayMember = "provNombre"
PrivateSub btnRegistrar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnRegistrar.Click
Try
If txtCodigo.Text <>""Then
If txtNombre.Text <>""Then
If txtPC.Text <>""Then
If txtPV.Text <>""Then
If txtStock.Text <>""Then
oProducto.registrarProducto(txtCodigo.Text,
txtNombre.Text.ToUpper(), cmbTipo.SelectedItem,
cmbCategoria.SelectedValue, txtMedida.Text.ToUpper(),
txtStock.Text, dtpFV.Text, txtPC.Text, txtPV.Text,
txtRuta.Text, txtProveedor.SelectedValue,
cmbCondicion.SelectedItem)
EndIf
Else
MessageBox.Show("INGRESE EL NOMBRE DEL
PRODUCTO")
txtNombre.Focus()
EndIf
Else
MessageBox.Show("INGRESE EL CODIGO")
txtCodigo.Focus()
EndIf
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
PrivateSub btnSubir_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnSubir.Click
Try
122
OpenFileDialog1.Filter = "archivo de imagen:
(*.jpg)|*.jpg|Bitmap (*.bmp)Archivo de Imagen (*.png)|
*.png|"&"todos los archivos (*.*)|*.* "
EndSub
PrivateSub btnModificar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnModificar.Click
Try
oProducto.modificarProducto(txtCodigo.Text,
txtNombre.Text.ToUpper(), cmbTipo.SelectedItem,
cmbCategoria.SelectedValue, txtMedida.Text.ToUpper(),
txtStock.Text, dtpFV.Text, txtPC.Text, txtPV.Text,
txtRuta.Text, txtProveedor.SelectedValue,
cmbCondicion.SelectedItem)
MessageBox.Show("SE MODIFICO CON EXITO EL PRODUCTO")
dgvProducto.DataSource =
oProducto.buscarProducto(txtCodigo.Text).Tables(0)
desabilitar()
limpiar()
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
Formulario de Amortizacion
PrivateSub txtMontoPagar_TextChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
txtMontoPagar.TextChanged
Try
Dim nuevoSaldo AsDouble
nuevoSaldo = CDbl(txtSaldoAnterior.Text) -
CDbl(txtMontoPagar.Text)
txtNuevoSaldo.Text =
nuevoSaldo.ToString("###,##0.00")
Catch ex As Exception
123
txtMontoPagar.Focus()
txtNuevoSaldo.Text = "0.00"
EndTry
EndSub
frmMenu.Show()
Dim codigo AsInteger = dst.Tables(0).Rows(0).Item(0)
Dim dstTrabajador As DataSet =
oTrabajador.buscarCodigo(codigo)
frmPedido.txtCodigoU.Text =
dstTrabajador.Tables(0).Rows(0).Item(0)
frmPedido.txtVendedora.Text =
dstTrabajador.Tables(0).Rows(0).Item(1) + " " +
dstTrabajador.Tables(0).Rows(0).Item(2)
Me.Hide()
ElseIf estado = "ACTIVO"And tipo = "VENDEDOR"Then
''funciones del cajero
frmMenu.Show()
Dim codigo AsString = dst.Tables(0).Rows(0).Item(0)
Dim dstTrabajador As DataSet =
oTrabajador.buscarCodigo(codigo)
frmPedido.txtCodigoU.Text =
dstTrabajador.Tables(0).Rows(0).Item(0)
frmPedido.txtVendedora.Text =
dstTrabajador.Tables(0).Rows(0).Item(1) + " " +
dstTrabajador.Tables(0).Rows(0).Item(2)
Else
MessageBox.Show("ERROR AL
INGRESAR AL SISTEMA...")
EndIf
Formulario de Pedidos de Medicamentos
Dim oProducto AsNew meProducto
Dim ocliente AsNew meCliente
Dim oTrabajador AsNew meTrabajador
Dim oVenta AsNew meVenta
Dim oDetails AsNew meDetails
124
Dim oIngreso AsNew meIngreso
PrivateSub frmPedido_Load(ByVal sender As System.Object,
ByVal e As System.EventArgs) HandlesMyBase.Load
txtFecha.Text = DateValue(Now)
txtHora.Text = TimeOfDay
Dim dst As DataSet = oVenta.reportarVenta
If dst.Tables(0).Rows.Count > 0 Then
txtSerie.Text = conteoBoleta()
'txtSerie.Text = CStr(dst.Tables(0).Rows(0).Item(4).ToString)
Else
txtSerie.Text = "0000001"
EndIf
EndSub
PrivateSub btnCerrar_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnCerrar.Click
Me.Close()
EndSub
PrivateSub txtCategoria_TextChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
txtCategoria.TextChanged
txtCategoria.CharacterCasing = CharacterCasing.Upper
Dim estado AsString = txtCategoria.Text
dgvBuscaProducto.DataSource =
oProducto.buscarProductoVender(estado).tables(0)
EndSub
PrivateSub dgvBuscaProducto_SelectionChanged(ByVal sender
AsObject, ByVal e As System.EventArgs) Handles
dgvBuscaProducto.SelectionChanged
Try
Dim filas AsString = dgvBuscaProducto.CurrentRow.Index
Dim codigo AsString =
dgvBuscaProducto.Rows(filas).Cells(0).Value
Dim dstProducto As DataSet = oProducto.buscarProducto(codigo)
125
txtCondicion.ForeColor = Color.Red
txtCondicion.Text =
dstProducto.Tables(0).Rows(0).Item(11)
txtTipo.Text =
dstProducto.Tables(0).Rows(0).Item(2).ToString
Catch ex As Exception
EndTry
EndSub
PrivateSub txtNombreP_TextChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
txtNombreP.TextChanged
txtNombreP.CharacterCasing = CharacterCasing.Upper
Dim estado AsString = txtNombreP.Text
dgvBuscaProducto.DataSource =
oProducto.buscarProductoVender(estado).Tables(0)
EndSub
PrivateSub btnCarrito_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnCarrito.Click
Try
Dim fila AsInteger = dgvBuscaProducto.CurrentRow.Index
Dim subTotal AsDouble =
(CDbl(dgvBuscaProducto.Rows(fila).Cells(3).Value) *
CInt(txtCantidad.Text))
dgvPedido.Rows.Add(dgvBuscaProducto.Rows(fila).Cells(0).Value
, dgvBuscaProducto.Rows(fila).Cells(1).Value,
txtCantidad.Text, dgvBuscaProducto.Rows(fila).Cells(3).Value,
subTotal.ToString("###,##0.00"),
dgvBuscaProducto.Rows(fila).Cells(2).Value)
Dim total AsDouble
'Dim descuento As Double
For i AsInteger = 0 To dgvPedido.Rows.Count - 1
''CALCULO DEL TOTAL BRUTO
126
total = total +
dgvPedido.Rows(i).Cells(4).Value
Next
txtTotal.Text = total.ToString("###,##0.00")
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
PrivateSub Button1_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles Button1.Click
Try
Dim total AsDouble
Dim fila AsInteger = dgvPedido.CurrentRow.Index
dgvPedido.Rows.RemoveAt(fila)
For i AsInteger = 0 To dgvPedido.Rows.Count - 1
total = total +
dgvPedido.Rows(i).Cells(3).Value.ToString
Next
txtTotal.Text = total.ToString("###,##0.00")
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
PrivateSub txtDni_TextChanged(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles txtDni.TextChanged
Try
If txtDni.Text.Length = 8 Then
Dim dst As DataSet = ocliente.buscarClienteDni(txtDni.Text)
txtNombre.Text =
dst.Tables(0).Rows(0).Item(2)
txtApellido.Text =
dst.Tables(0).Rows(0).Item(3)
txtApellido.Text =
dst.Tables(0).Rows(0).Item(4)
EndIf
127
Catch ex As Exception
frmCliente.txtDni.Text = txtDni.Text
frmCliente.Show()
EndTry
EndSub
PrivateSub btnServicios_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles btnServicios.Click
Try
nuevaFila()
Catch ex As Exception
MessageBox.Show(ex.Message)
EndTry
EndSub
PublicSub nuevaFila()
With dgvPedido
.Rows.Add()
.CurrentCell = .Rows(.Rows.Count - 1).Cells(0)
.BeginEdit(True)
EndWith
System.Object, ByVal e As System.EventArgs) Handles
btnGuardar.Click
'Try
Dim rpta AsString = MessageBox.Show("DESEA GUARDAR LA VENTA
", "AVISO", MessageBoxButtons.YesNo)
If rpta = 6 Then
If txtDni.Text <>""Then
If dgvPedido.Rows.Count > 0 Then
guardaLaVenta()
datosIngreso()
limpiar()
Else
MessageBox.Show("ESCOGA UN PRODUCTO O
Dim stockProducto AsInteger =
CInt(dgvPedido.Rows(i).Cells(5).Value)
diferencia = stockProducto -
CInt(dgvPedido.Rows(i).Cells(2).Value.ToString)
128
Dim codigo AsString =
dgvPedido.Rows(i).Cells(0).Value.ToString
oProducto.actualizarProducto(diferencia, codigo)
Next
'limpiar()
' ''reportamos
'frmRDV.Show()
' ''limpiar despues de vender
'limpiarDatosVenta()
EndSub
PublicSub datosIngreso()
Dim motivo AsString = "VENTA DE PRODUCTOS O SERVICIOS"
oIngreso.registrarIngreso(txtFecha.Text,
txtHora.Text, CDbl(txtTotal.Text), motivo)
EndSub
PublicSub limpiar()
txtDni.Text = ""
txtNombre.Text = ""
txtApellido.Text = ""
txtTotal.Text = "0.00"
dgvPedido.Rows.Clear()
EndSub
PublicFunction conteoBoleta()
Dim codigo AsString
Dim codigoTemporal AsString = txtSerie.Text + 1
If codigoTemporal.Length = 1 Then
codigo = "000000" + codigoTemporal
ElseIf codigoTemporal.Length = 2 Then
EndClass
Formulario Principal (Menu)
129
PrivateSub TRABAJADORToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
TRABAJADORToolStripMenuItem.Click
WithMy.Forms
.frmCategoria.WindowState =
FormWindowState.Normal
.frmCategoria.MdiParent = Me
.frmCategoria.Show()
EndWith
EndSub
PrivateSub PAGARAPROVEEDORESToolStripMenuItem_Click(ByVal
sender As System.Object, ByVal e As System.EventArgs) Handles
PAGARAPROVEEDORESToolStripMenuItem.Click
WithMy.Forms
PrivateSub EGRESOToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
EGRESOToolStripMenuItem.Click
WithMy.Forms
.frmEgresos.WindowState = FormWindowState.Normal
.frmEgresos.MdiParent = Me
.frmEgresos.Show()
EndWith
EndSub
PrivateSub CLIENTEToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
CLIENTEToolStripMenuItem.Click
WithMy.Forms
.frmCliente.WindowState = FormWindowState.Normal
.frmCliente.MdiParent = Me
.frmCliente.Show()
EndWith
EndSub
PrivateSub REGISTRODEPRODUCTOSToolStripMenuItem_Click(ByVal
sender As System.Object, ByVal e As System.EventArgs) Handles
REGISTRODEPRODUCTOSToolStripMenuItem.Click
130
WithMy.Forms
.frmProducto.WindowState = FormWindowState.Normal
.frmProducto.MdiParent = Me
.frmProducto.Show()
EndWith
EndSub
PrivateSub TRABAJADORESToolStripMenuItem_Click(ByVal sender
As System.Object, ByVal e As System.EventArgs) Handles
TRABAJADORESToolStripMenuItem.Click
WithMy.Forms
.frmTrabajador.WindowState =
FormWindowState.Normal
PrivateSub TIPODEUSUARIOSToolStripMenuItem_Click(ByVal sender
As System.Object, ByVal e As System.EventArgs) Handles
TIPODEUSUARIOSToolStripMenuItem.Click
WithMy.Forms
.frmTipoUsuario.WindowState =
FormWindowState.Normal
.frmTipoUsuario.MdiParent = Me
.frmTipoUsuario.Show()
EndWith
EndSub
PrivateSub PEDIDOToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
PEDIDOToolStripMenuItem.Click
WithMy.Forms
.frmPedido.WindowState = FormWindowState.Normal
.frmPedido.MdiParent = Me
.frmPedido.Show()
EndWith
EndSub
PrivateSub PROVEEDORToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
PROVEEDORToolStripMenuItem.Click
WithMy.Forms
131
.frmProveedor.WindowState =
FormWindowState.Normal
.frmProveedor.MdiParent = Me
.frmProveedor.Show()
EndWith
EndSub
PrivateSub ExitToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
ExitToolStripMenuItem.Click
Me.Close()
frmInicio.Close()
EndSub
FormWindowState.Normal
.frmBuscarCompras.MdiParent = Me
.frmBuscarCompras.Show()
EndWith
EndSub
PrivateSub VENTASDIARIASToolStripMenuItem_Click(ByVal sender
As System.Object, ByVal e As System.EventArgs) Handles
VENTASDIARIASToolStripMenuItem.Click
WithMy.Forms
.frmVentaDiaria.WindowState =
FormWindowState.Normal
.frmVentaDiaria.MdiParent = Me
.frmVentaDiaria.Show()
EndWith
EndSub
EndClass
Formulario de ProductosPorPagar
Imports capaNegocio
PublicClass frmProductosAcomprar
Dim oProducto AsNew meProducto
132
Else
Formulario de StockProductos
Imports capaNegocio
PublicClass frmStockProductos
Dim oProducto AsNew meProducto
Dim oCategoria AsNew meCategoria
Dim oProveedor AsNew meProveedor
PrivateSub txtProducto_TextChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
txtProducto.TextChanged
Try
txtProducto.CharacterCasing =
CharacterCasing.Upper
dgvMostrar.DataSource =
oProducto.reporteProductoNombre(txtProducto.Text).Tables(0)
Catch ex As Exception
EndTry
EndSub
PrivateSub cmbTipo_SelectedIndexChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
cmbTipo.SelectedIndexChanged
Try
dgvMostrar.DataSource =
oProducto.reporteProductoTipo(cmbTipo.SelectedItem).Tables(0)
dgvMostrar.Rows.Clear()
Catch ex As Exception
133
XI. IMPLEMENTACIÓN DEL SISTEMA.
11.1. Prueba de Programas
Mantenimiento Amortizar Deuda:
FORMA CORRECTA FORMA INCORRECTA
NROCOMPROBANTE:002 NROCOMPROBANTE:0000
SALDO ANTERIO: 1500 SALDO ANTERIO:
MONTO A PAGAR:200 MONTO A PAGAR:…….
NUEVO SALDO:100 NUEVO SALDO:*****
NUEVAFECHAPAGO:12/12/12 NUEVAFECHAPAGO:0000000
MENSAJE: ”Deuda Guardada con éxito” MENSAJE”ERROR AL GUARDAR LA
DEUDA”
Mantenimiento de Arqueo de Caja:
FORMA CORRECTA FORMA INCORRECTA
Fecha: 15/9/12 Fecha: ***
Hora: 8.00pm Hora:{{{{{{
Ingresos: 800 Ingresos:+++++++
Egresos: 500 Egresos:}}}}
Total: 1000 Total:**
Mensaje: “Registrado con Éxito” Mensaje: “Existe Error en Registrar”
Mantenimiento de Registro de Clientes:
FORMA CORRECTA FORMA INCORRECTA
Nombre del cliente:Guísela Nombre del cliente:Guísela
Apellido: La marina 352 Apellido: La marina 352
Ruc: 1024789652 Ruc: ///////////
Sexo: 47256478 Sexo: 47256478
Mensaje: “Cliente Registrado con Mensaje: “Cliente no registrado”
134
éxito”
Mantenimiento proveedores:
FORMA CORRECTA FORMA INCORRECTA
RUC: 0001 RUC: ++++++
Nombre: Hernán Nombre: Hernán
Teléfonos: 979123569 Teléfono: 979123569
Representante: Aldrin Ubicación: Jaén
Ubicación: Jaén
Mensaje: “proveedor Modificado” Mensaje: “Proveedor no Modificado”
Mantenimiento Productos:
FORMA CORRECTA FORMA INCORRECTA
Código: 0001 Código: 0001
Nombre: Ibroprofeno Nombre: Ibroprofeno
Precio:1.00 Precio:1.00
Proveedor:Santa María Proveedor:
Mensaje: “Producto Modificado con
Éxito”
Mensaje: “Producto no Modificado”
135
136
XII INSTALACIÓN DEL SISTEMA
12.1 ADJUNTAR BASE DE DATOS
Haga clic en “Inicio” luego clic en “Programas”, seguido ubicar la opción “Microsoft
SQL Server 2005”; y luego de clic en “SQLserver managemnt”.
En el explorador de la ventana coloca la contraseña”sa”; y finalmente “Conectar’’ el
servidor.
137
En la siguiente Ventana que se presenta, debe ubicarse en la opción “Base de Datos”
luego en “Adjuntar” Clic para Adjuntar la base de datos.
Se visualizará una ventana y elegir la opción “Agregar”.
138
Se mostrará la siguiente ventana para Adjuntar la base de datos correctamente. Aquí
debe ubicarse en la carpeta que esta la Base de Datos con el Nombre “bdFarmacia”.
Como resultado debe mostrarse el nombre de la base de datos “bdFarmacia“en la
relación de Base de Datos.
Luego clic en la Carpeta “bdFarmacia” y se mostrara un archivo de Color blano con
el “farmacia.mdf”y seccionary Clic en “Aceptar”.
En la siguiente Ventana se mostrara el Nombre de la base de Datos que estamos
Adjuntando.
139
Y luego clic en “Aceptar”
En la siguiente ventana se Visualizara el nombre de la Base de Datos”farmacia”.
En la siguiente Ventana se muestra el Nombre de la base de Datos “farmacia” y sus respectivas tablas para abrir cualquier tabla debe dar ante clic y “Abrir tabal” y se mostraran la información que contenga cada tabla.
140
CONTROL DE ACCESO AL SISTEMA
141
ACCESO AL SISTEMA
Es la primera ventana que observará, es esta ventana la que le va a permitir ingresar al
“Sistema de venta de productos farmacéuticos”.
Ingreso al Sistema
Para Ingresar al sistema debe seguir los siguientes pasos, previamente se debió haber
creado una cuenta al usuario que accederá al sistema con una clave de acceso:
En el campo “Código” ingrese código del usuario (1…….) con que se registro.
En “Clave” seleccione tres dígitos de usuario (Administrador o Usuario)
Introduzca su contraseña o clave de acceso.
Clic en el botón “Aceptar”, o presione la tecla “Enter” dos veces.
Si su clave es incorrecta vera este mensaje:
Acepte, cambie la clave y clic en el botón “Aceptar”, o presione la tecla “Entre”
dos veces.
Si la clave de acceso es correcta, entonces accederá al menú principal del sistema.
MENU PRINCIPAL
142
Al ingresar al sistema como administrador, observara la siguiente ventana,
correspondiente al menú principal de Sistemadeventadeemedicamentos.
Las opciones que tiene el menú principal solo tienen acceso el que ha ingresado como Administrador.
MANTENIMIENTOS
MANTENIMIENTO TIPO DE USUARIO
Este formulario le permite Registrar, Listar, Cerrar.
Registrar Tipo Usuario
143
Para Registrar un tipo de usuario debe seguir los siguientes pasos:
Haga clic en el botón “Registrar”, se activará la caja de texto para registrar la tipo de
Usuario.
Ingresar el nombre del tipo de usuario en el casillero Nombre escriba el tipo.
Luego presione el botón “Registrar”.
Si el tipo de Usuario ya existe observará un mensaje diciendo que el nombre del tipo
de Usuario ya ha sido registrada, y se cancelará la operación.
Una vez que se ha grabado correctamente se visualizará un mensaje datos guardados
correctamente.
Listar de tipo de usuario
Para Listar el nombre de un tipo de Usuario debe seguir los siguientes pasos:
En la ventana principal de “Mantenimiento de tipo de Usuario”, ubicarse en la
Listar, haga clic y se mostrara la lista de los usuarios
Finalmente Presionar el botón Cerrary se cerrara la ventana.
MANTENIMIENTO DE PRODUCTOS
Este formulario le permite Ingresar datos NuevoRegistrar,Modificar, Cerrar.
144
Nuevo Medicamento
Para Guardar un Medicamento debe seguir los siguientes pasos:
Haga clic en el botón “Nuevo”, se activará la caja de texto para Registrar un
Medicamentoo Modificar.
Seleccione el código el casillero “Código”ingrese el código del medicamento.
Luego ingresamos el nombre del Medicamento en el casillero Nombre.
Luego ingresamos el Categoría del Medicamento en el casillero Categoría.
Luego ingresamos el Tipo del Medicamento en el casillero Tipo.
Luego ingresamos el Medida del Medicamento en el casillero Medida.
Luego ingresamos el stock del Medicamento en el casillero Stock.
Luego elegimos el Proveedor del Medicamento.
Luego elegimos la condición del Medicamento.
Luego presione el botón “Registrar”.
Si el medicamentoya existe se buscara con el código.
Una vez que se ha Registrado correctamente se visualizará un mensaje se registro
correctamente la Compra.
Buscar Medicamento
Ingresamos el código del Medicamento y presionamos el Botón, Buscar Producto.
Se mostrara la lista de medicamentos buscados.
Modificar Medicamento
Para modificar el nombre de una Medicamentodebe seguir los siguientes pasos:
En la ventana principal de “Mantenimiento de Productos”, ubicarse en la lista, del
producto a modificar, selecciónelo con un clic seguido haga clic en el botón
“Nuevo”.
Se activará las cajas de textos en la que debe hacer la modificación correspondiente.
Una vez modificado el nombre del medicamento de clic en el botón “Modificar” y se
observara un mensaje medicamento Modificado con éxito.
Finalmente en el Botón Cerrar y se cerrara la ventana.
MANTENIMIENTO DE VERIFICAR STOCK DE PRODUCTOS.
145
Este formulario le permite ver la cantidad de productos que existe en stockMínimo.
Verificar Stop de los Productos
Para Verificar los medicamentos debe seguir los siguientes pasos:
Luego Ingresar el nombre del Medicamento en el casillero Producto.
Luego Elegir Proveedor en el casillero Proveedor.
Luego Elegir la el tipo de producto del medicamento en el casillero “Tipo de
Producto”
Eligiendo cualquier casillero nos muestra los productos y la cantidad de productos que
existen.
MANTENIMIENTO CLIENTES
146
Este formulario le permite Guardar, modificar los clientes de la Botica “San Camilo”
Registrar Clientes
Para registrar un cliente debe seguir los siguientes pasos:
Haga clic en el botón “Registrar”; seguidose activaran las cajas de textos donde
deben ingresar todos los datos correspondientes al cliente a registrar.
Luego presione el botón “Registrar”.
Una vez que se ha grabado correctamente se visualizará un mensaje Cliente
Registrado con Éxito.
Si el cliente ya existe se ingresa el número de DNI y presione Buscar, y se Muestra
el Nombre del Cliente.
Una vez que se ha grabado correctamente se visualizará un mensaje datos guardados
correctamente.
Modificar cliente
Para modificar los datos de un cliente debe seguir los siguientes pasos:
147
En la ventana principal de “clientesregistrados”, ubicaren la lista el cliente a
modificar, selecciónelo con un clic seguido haga clic en el botón “Modificar”.
Se activarán las cajas de textos en la que debe hacer la modificación correspondiente.
Una vez modificado los datos del cliente de clic en el botón “Modificar”
Se muestra un mensaje cliente modificado con éxito.
Luego cerrar y la ventana se serrara.
MANTENIMIENTO PROVEEDORES
Este formulario le permite Nuevo, Modificar, Registrar Buscar, Cerrar.
Registrar Proveedor
Para Registrar un proveedor debe seguir los siguientes pasos:
Haga clic en el botón “Registrar”; seguidose activaran las cajas de textos donde deben
ingresar todos los datos correspondientes al proveedor a registrar.
Luego presione el botón “Registrar”.
Si el proveedor ya existe escribir el número de “RUC” presionaran el botón Buscary
se mostrara los datos del proveedor.
148
Si el proveedor no existe registrar llenando todos los casilleros y se mostrara un
mensaje diciendo que el proveedor ya ha sido registrado con éxito.
Modificar Proveedor
Para modificar los datos de un proveedor debe seguir los siguientes pasos:
En la ventana principal de “lista de proveedores”, ubicaren la lista el proveedor a
modificar, selecciónelo con un clic seguido haga clic en el botón “Modificar”.
Se activarán las cajas de textos en la que debe hacer la modificación correspondiente.
Una vez modificado los datos del proveedor de clic en el botón “Modificar”
Finalmente grabado se visualizará el mensaje de datos guardados correctamente el cual
luego se visualiza la ventana principal de Registrar de proveedores y cerrar la ventana
con el botón “cerrar”.
MANTENIMIENTO DE REPORTES DE VENTAS DIARIAS.
Este formulario le permite ver la cantidad de Ventas diarias que se realizo mediante el día.
Reportar Ventas Diarias
Para Reportar las ventas diarias debe seguir los siguientes pasos:
Haga clic en el botón “Reportar”; y se mostrara todo las ventas diarias y luego en el
botón “Cerrar”.
MANTENIMIENTO DE ANULAR UNA VENTA.
Este formulario le permite anular una Ventas.
149
Anular Ventas
Para Anular las ventas debe seguir los siguientes pasos:
Haga clic en el botón “Buscar”; y se mostrara todo las ventas y luego en seleccionar
el medicamento que quiero para Anular seleccione el botón “Anular” y se mostrara
un Mensaje Venta Anulada.
Luego Presione el botón “Cerrar” para Salir de la Ventana.
MANTENIMIENTO DE BUSCAR COMPRAS.
Este formulario le permite anular una Ventas.
Buscar Compras
Para Buscar Compras debe seguir los siguientes pasos:
Luego Ingresar el NumComprobante el casillero “NumComprobante”.
Luego Elegir Proveedor en el casillero Proveedor.
150
Luego Elegir la el tipo de producto del medicamento en el casillero Tipo de
Haga clic en el botón “Buscar”; y se mostrara todo las ventas y luego en seleccionar
el medicamento que quiero para Anular seleccione el botón “Anular” y se mostrara
un Mensaje Venta Anulada.
Luego Presione el botón “Cerrar” para Salir de la Ventana.
MANTENIMIENTO DE INGRESOS.
Este formulario le permite Registrar, Reportar los ingresos.
Registrar Ingresos
Para Registrar un Ingreso debe seguir los siguientes pasos:
Luego Ingresar el Monto en el casillero de “Monto”.
Luego Ingresar el Motivo de que se realizo el ingreso a caja en el casillero de
“Motivo”.
Luego Elegir el botón“Registrar” y se registrar el ingreso
Aparecerá un mensaje ingreso registrado.
Luego presione el botón “Reportar” y se reportara todo los ingresos diarios.
Luego Presione el botón “Cerrar” para Salir de la Ventana.
151
MANTENIMIENTO DE ARQUEO DE CAJA.
Este formulario le permite Calcular el total de los medicamentos.
Calcular Arqueo de Caja.
Para Calcular el Arqueo de Caja debe seguir los siguientes pasos:
Ubicarse en el botón Calcular y hacer clic “Calcular” y se sumara el total de
Ingresos y Egresos y sale el total y si tiene saldo Anterior también lo sumara.
El botón “Cierre de Caja” no se serrara mientras no llegue las 10.00pm el cada vez
que quiera cerrar la caja se mostrar un mensaje que no se puede serrar porque no es
Hora.
Luego Presione el botón “Cerrar” para Salir de la Ventana.
MANTENIMIENTO REPORTE DE CAJA POR FECHAS.
Este formulario le permite Buscar Reporte de caja por Fechas y se mostrara de todas las
fechas.
152
Reporte de Caja por Fechas.
Para Reportar la Caja por Fechas debe seguir los siguientes pasos:
Ubicarse en el botón Buscar y hacer clic “Buscar” y se Mostrara una lista de fechas
de caja.
Luego Presione el botón “Cerrar” para Salir de la Ventana.
MANTENIMIENTO DEUDAS POR PAGAR.Este formulario le permite Buscar Deudas por Pagar y saber que día me toca pagar al
proveedor.
Buscar Deudas por Pagar.
Para Buscar Deudas por pagar debe seguir los siguientes pasos:
Ubicarse en el botón Buscar y hacer clic “Buscar” y se Mostrara una lista de
fechas de caja.
Elegir el botón “Amortizar “y se mostrara una ventanapar registrar la deuda por
pagar.
Luego Ingresar el nroComprobante en el casillero de “NROCOMPROBANTE”.
Luego Ingresar el Saldo Anterior en el casillero de “Saldo Anterior”.
Luego Ingresar el Monto a Pagar en el casillero de “Monto A Pagar”. Luego Ingresar el Nuevo Saldo en el casillero de “Nuevo Saldo”. Y la fecha
Seleccionas del Día que vas a pagar
Y Luego Se la fecha que voy a pagará y se pagara la Deuda.
Luego Presione el botón “Cerrar” para Salir de la Ventana.
MOVIMIENTOS
153
MOVIMIENTO DE COMPRAS
Este formulario permite hacer las transacciones de compras que se realizan a los
diferentes proveedores.
Generar Compra
Para registrar una Compra debe seguir los siguientes pasos:
Haga clic en el botón “Registrar Compra”; seguidose activaran los campos
correspondientes para generar la compra:
En la sección Datos del proveedor debe dar clic en el botón de buscar proveedor para
buscar el proveedor de nuestra compra; se visualizará una nueva ventana en la que
debe seleccionar el proveedor luego debe dar clic en el botón “Registrar” para
regresar a la ventana de compra.
En datos de Medicamentos a comprar debe dar clic en el botón Buscar
Medicamentos, se visualizara una nueva ventana en la que debe seleccionar el
Medicamento, luego debe dar doble clic en la lista de medicamentos que desea
comprar para regresar a la ventana de compra.
En el campo Cantidad, ingrese la cantidad que se está comprando dicho licor.
En el campo Precio Compra, ingrese a qué precio se está comprando el Medicamento.
Finalmente así sucesivamente se llena nuestra lista de Compras.
154
Para agregar otro Medicamento a la lista de compras debe realizar los mismos
procedimientos desde el primer punto.
Terminado de agregar todos los licores de nuestra compra, presione el botón
“Registrar Compra”.
Si todos los datos son correctos se visualizará un mensaje desea guardar la compra.
Si desea no comprar el producto hacer en el “botón quitar” seleccione el Producto
que no quiere Comprar.
Finalmente se cierra la ventana haciendo en botón “Cerrar”
MOVIMIENTO DE VENTAS
Este formulario permite hacer las transacciones de Compras que se realizan a los
diferentes proveedores.
Generar Venta.
Para registrar una Venta debe seguir los siguientes pasos:
155
En la sección Datos del cliente debe ingresar el numero de DNI en la caja de texto de
“DNI”colocar el Numero de DNI y si el cliente existe se mostrar los datos del cliente
en la ventana de datos del cliente y si el cliente no existe se mostrara una ventana para
registrar el Cliente y clic en el “Botón Registrar” y el cliente será registrado.
En la Ventana de “Búsqueda de Medicina” Colocar en las cajas de Texto según el
cliente pida por Nombre o por categoría y aparecerá la lista de medicamentos y
seleccione el medicamento que el cliente pide.
En el campo “Cantidad”, ingrese la cantidad que se está vendiendo dicho
Medicamento.
En el campo Precio de venta, automáticamente estará registrado
Finalmente presionar el botón “Actualizar” y el Nombre del Medicamento aparecerá
en la ventana de Detalle de Pedido.
Para agregar otro Medicamento a la lista de detalle de Pedidos debe realizar los
mismos procedimientos desde el primer punto.
Terminado de agregar todos los Medicamentos de nuestra venta, presione el botón
“Guardar”.
Si todos los datos son correctos se visualizará un mensaje desea Venta registrada con
éxito.
X.II CONCLUSIONES y RECOMENDACIONES DEL PROYECTO
CONCLUSIONES:
o Se logro realizar el análisis encontrando 12 requerimientos funcionales dentro
de los procesos involucrados en el estudio.
o En cuanto al análisis y diseño se logro realizar como son: análisis de
requisitos, análisis y diseño preliminar, diseño de implementación.
o Con el software Rational Rose se logro realizar el análisis y diseño de
nuestros modelos como son: 54casos de uso, 4diagramas de colaboraciones, 4
diagramas de secuencias.
o Se logro implementar la base de datos utilizando el Microsoft SQL Server en
el cual se crearon 23 tablas que permitirán gestionar la información para su
mejor uso dentro de la Botica “San Camilo”.
156
o Se logro realizar la construcción del software usando el programa Microsoft
Visual studio 2005 en el cual se crearon 23 interfaces, facilitando la
implementación de la capa de datos, negocio y presentación, debido a su
característica de ser un lenguaje de programación poderoso y sencillo.
o Para ver la factibilidad del proyecto se tuvo que realizar la factibilidad
económica.
RECOMENDACIONES:
o Realizar la implementación del sistema para la mejora en gestión de los
procesos de compra, venta y control de ingresos e ingresos de Medicamentos.
o Se recomienda utilizar el software de modelado RATIONAL ROSE para
modelar el análisis y diseñar los procesos del negocio.
o Capacitar al personal involucrado en el manejo del sistema de información,
para que de esta forma evitar errores al realizar cualquier tipo de operación.
o Se recomienda difundir más la metodología Microsoft studio 2005, para el
sistema de información y realizar la documentación correspondiente ya que
son muy importantes en el desarrollo de un plan estratégico.
o Cambiar las contraseñas quincenalmente para mejor seguridad de la
información que se almacene.
o Para las contraseñas se recomienda utilizar caracteres y números.
o Se recomienda realizar en un sistema de información el estudio de factibilidad
con la finalidad de saber si el proyecto realizando es beneficioso tanto para la
empresa como también para el desarrollo del sistema.
XIII REFERENCIAS BIBLIOGRAFICAS
BELL, CHARLES A. (2007). EXPERT MYSQL, primera edición, apress.
157
BONA, Cristina (2002), evaluación de procesos de software: un estudio de caso en XP e
ICONIX.
EDWARDS. Chris; WARD, John; BYTHEWAY, Andy () 1998. Fundamentos de
sistemas de información.
BOOCH, Grady, Rumbaugh, J. Y Jacobson, I el lenguaje unificado.
158
FIRMAS
o Integrantes
o Asesor
159