Reporte Final 8 de Septiembre de 2010
Transcript of Reporte Final 8 de Septiembre de 2010
ITCM Reporte Final de Residencia profesional
i
Instituto Tecnológico de Ciudad Madero
Ing. Sistemas computacionales
“CBFix” (Control de Bascula Para El Puerto Industrial De Altamira)
Alumno No. De Control
e-mail.
García Villafuerte Gerardo 05070849 [email protected] Caloca Castillo José de Jesús
05070674 [email protected]
Empresa:
“ Fixer, Software Developing ”
Tel. Oficina: (833) 216-87-41
Asesor Externo:
Ing. David Ángeles Martínez
Asesor Interno
MC. Víctor Hugo Guerrero Treviño
Asesor Técnico
MC. Arquímedes Godoy Vinaja
Fecha Inicio: 08/Febrero/2010 Fecha Terminación: 08/Junio/2010 Horario: 9:00-17:00 hrs.
Total de Horas: 640 hrs.
INDICE
ITCM Reporte Final de Residencia profesional
ii
INDICE 1.- Introducción…………………………
2.- Justificación…………………………
2.1.-Planteamiento del
problema…………………………….
3.- Objetivos Generales y específicos
4.- Caracterización del área en que se
participo.
4.1.-Antecedentes de la empresa
5.- Problemas a resolver
6.-Alacances y Delimitaciones
7.-Marco Teórico
8.-Procedimiento y Descripción de las
actividades realizadas
8.1 Estructura del método
8.2 Fases del Modelo incremental
9. Resultados y Graficas
10. Conclusiones
11.Biblografia
12. Anexos
13. Glosario
……………………………....1
2
3
……………………………..3
………………………………4
4
5
5
6
10
10
11
16
16
68
69
70
74
75
ITCM Reporte Final de Residencia profesional
1
1.- INTRODUCCION
Las soluciones computacionales, para la resolución de problemas de la vida
diaria ha sido cada vez más comunes durante los más recientes 20 años.
Al día de hoy difícilmente entenderíamos las actividades sociales y humanas en
general sin la asistencia de una aplicación computacional, ya sea para
entornos de escritorio o aplicaciones Web
El apoyo a la toma de decisiones mediante sistemas computacionales, aparece
todos los días en casi cualquier lugar (en el supermercado, la tienda de ropa,
las oficinas de etc.).
Por eso actualmente las empresas utilizan la tecnología para el desarrollo de
sistemas computacionales, para agilizar operaciones que anteriormente las
hacia una persona.
Con el desarrollo de sistemas computacionales se trata de tener el mínimo
error de las operaciones realizadas por sistema, lo cual beneficia tanto a la
empresa que lo tienen como a los usuarios que lo utilizan.
El proyecto “Control de báscula para el puerto Industrial de Altamira “CBFix” es
un sistema computacional mas, que se desarrollara para el puerto industrial de
Altamira, para el control de la bascula de los barcos, las operaciones
principales de control, y sus reportes correspondientes.
Por eso se tomo la decisión de desarrollar el sistema en un ambiente de
escritorio, lo cual permitiría la instalación de este en cualquier Terminal del
puerto o estación para su uso.
A lo largo de este documento se pretende detallar el desarrollo de un sistema,
aplicado al control de báscula del puerto industrial de Altamira para la
optimización de las operaciones que esta realiza.
ITCM Reporte Final de Residencia profesional
2
2.- JUSTIFICACION La báscula del puerto tiene como función principal pesar los productos que
entran o salen del puerto industrial para una exportación o importación.
Actualmente se realiza este proceso mediante un sistema de FoxPro que para
los requerimientos y necesidades actuales se queda corto.
Ya que actualmente no se pueden obtener reportes al momento de que se
hace la operación en este sistema, para que los clientes cuenten con un control
exacto de las operaciones que realizan.
En la actualidad es un problema informar a los clientes la cantidad de
operaciones realizadas ya que en este momento para que un cliente obtenga el
reporte real de la cantidad del producto que está exportando o importando debe
comunicarse vía telefónica a la empresa para obtener el reporte al momento o
acudir al día siguiente para recibir un reporte impreso de las operaciones
realizadas en el día anterior.
La báscula en este momento tiene un sistema de captura de peso que está
obsoleto ya que se requiere que la información se imprima al momento del
pesaje.
Para solucionar estos detalles se propone la generación de un proyecto en un
ambiente escritorio que controle y administre las operaciones que se realicen
en la bascula y que pueda mostrar y imprimir la información en forma de
reportes al instante.
Se propone la tecnología visual Basic.net interactuando con SQL Server ya que
son tecnologías usadas en la actualidad. Para esto dicha tecnología ha
evolucionado y se adaptado para los nuevos requerimientos que exigen las
aplicaciones actuales. Para convertirse en una de las tecnologías más potentes
y completas para el desarrollo de sistemas computacionales.
ITCM Reporte Final de Residencia profesional
3
PLANTEAMIENTO DEL PROBLEMA
Con la fluidez marítima en el puerto industrial de Altamira, el control de
básculas y el exceso de información, el recurso humano se hace ineficaz, lento
y con errores, en las operaciones de la báscula.
Con ese principal motivo se planteo desarrollar un sistema de control para el
puerto industrial de Altamira (CBFix), el cual ayudara agilizando el tiempo de
administración de la báscula, con lo cual ayudar a la atención de más barcos
en un menor tiempo.
3.- OBJECTIVOS GENERALES
Desarrollo de una aplicación que lleve a cabo cada una de una de las
actividades administrativas relacionadas con el control de la bascula, reducir el
periodo de tiempo de trabajo para las personas a cargo de la bascula y la
reducción de errores.
Utilizando la tecnología de desarrollo Microsoft Visual Studio 2005, con el
gestor de bases de datos SQL Server 2005.
OBJETIVOS ESPECÍFICOS
Reducir tiempos de operación
Reducir margen de error
Mejor presentación de información , mediante resultados concisos
Tener una interfaz amigable para el usuario
ITCM Reporte Final de Residencia profesional
4
Atender más barcos, en el menor tiempo posible
4.-CARACTERIZACION DEL AREA EN QUE SE
PARTICIPO
El proyecto se desarrollo en el área de sistemas en el departamento de
desarrollo de software de la empresa FIXER SOFTWARE DEVELOPING.
ANTECEDENTES DE LA EMPRESA
Fixer Software Developing, se ubica en Ciudad Madero Tamaulipas, es una
empresa dedicada a proporcionar servicios en el sector público, tiene como
objetivo el empleo de las tecnologías existentes en el mercado beneficiando a
sus clientes para su desarrollo tecnológico.
Su principal política es la calidad total en sus servicios, pretendiendo así
ofrecer productos competitivos y a la medida de las necesidades de los
clientes.
GERENCIA
Área de sistemas
Desarrollo de software
Reparación y soporte de
computadoras
Asistente de gerencia
Recursos humanos
Contabilidad y finanzas
ITCM Reporte Final de Residencia profesional
5
5.- PROBLEMAS A RESOLVER
El principal problema a resolver con el proyecto CBFix, es el del manejo
eficiente de las transacciones de la báscula, con lo que se minimizan costos y
errores.
El otro inconveniente a resolver, seria la mejora de la interacción del usuario
con la herramienta de administración, permitiéndole tener en sus manos una
aplicación con un ambiente amigable, en el que el usuario se sienta cómodo y
no tenga problemas de uso.
6.-ALCANCES Y DELIMITACION El proyecto es específico para una plataforma Windows XP o superior,
mediante el entorno de desarrollo Visual Studio 2005 y SQL Server de ídem
versión, es una aplicación de escritorio la cual también puede ser editada por
ediciones superiores del Visual Studio.
Es útil para la administración de la báscula con colaboración de un usuario,
aunque podría, volverse más autónomo.
ITCM Reporte Final de Residencia profesional
6
7.- MARCO TEORICO
En las siguientes páginas se describirán una serie de conceptos elementales
para el desarrollo del sistema Control de Bascula “CBFix”.
MICROSOFT VISUAL BASIC.NET
¿Que es Visual Basic.Net 2005? Como lo muestra la siguiente pagina 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. [1]
VISUAL STUDIO
Visual Studio como se indica es un entono integrado de desarrollo IDE en el
que los desarrolladores trabajan a la hora de crear programas en uno de los
muchos lenguajes posibles, incluido Visual Basic, para .NET Framework. [1]
.NET FRAMEWORK
.NET es toda una nueva arquitectura tecnológica, desarrollada por Microsoft
para la creación y distribución del software como un servicio. Esto quiere decir,
que mediante las herramientas de desarrollo proporcionadas por esta nueva
tecnología, los programadores podrán crear aplicaciones basadas en servicios
para la Web. [2]
ITCM Reporte Final de Residencia profesional
7
EL ENTORNO INTEGRADO DE DESARROLLO (IDE)
El Entorno Integrado de Desarrollo de visual Basic. Net como se muestra en la
Fig.1, es el entorno de trabajo, donde se muestran la gran variedad de
herramientas que contiene el visual Basic. Net para el desarrollo de
aplicaciones
BASE DE DATOS
Una base de datos es típicamente un grupo que incluye objetos tabla y la
mayoría de las veces, otros objetos tales como procedimientos almacenados y
vistas, que permiten la agrupación particular de un conjunto de datos de las
tablas[3]
MICROSOFT SQL SERVER 2005
Fig. 1 Entorno Integrado de Desarrollo
ITCM Reporte Final de Residencia profesional
8
SQL Server 2005 es una plataforma global de base de datos que ofrece
administración de datos empresariales con herramientas integradas de
inteligencia empresarial (BI). El motor de la base de datos SQL Server 2005
ofrece almacenamiento más seguro y confiable tanto para datos relacionales
como estructurados, lo que le permite crear y administrar aplicaciones de datos
altamente disponibles y con mayor rendimiento para utilizar en su negocio.
El motor de datos SQL Server 2005 constituye el núcleo de esta solución de
administración de datos empresariales. Asimismo, SQL Server 2005 combina lo
mejor en análisis, información, integración y notificación. Esto permite que su
negocio cree y despliegue soluciones de BI rentables que ayuden a su equipo a
incorporar datos en cada rincón del negocio a través de tableros de comando,
escritorios digitales, servicios Web y dispositivos móviles. [4]
SQL SERVER MANAGEMENT STUDIO (SSMS)
Es una herramienta gráfica de administración gratuita y fácil de usar para SQL
Server 2005 Express Edition y SQL Server 2005 Express Edition with
Advanced Services. También puede administrar instancias del motor de base
de datos de SQL Server creados con cualquier edición de SQL Server 2005. [5]
A continuación en la Fig.2 se muestra el entorno de SQL Server Management
Fig.2 Entorno De SQL Server Management
ITCM Reporte Final de Residencia profesional
9
CONFIGURACIÓN DE SUPERFICIE DE SQL SERVER
Instala e inicia servicios y características clave de forma selectiva. Esto ayuda a
reducir el área de un sistema susceptible de recibir ataques. Con la
configuración predeterminada de nuevas instalaciones, no se habilitan muchas
de las características. [6]
A continuación en la Fig.3 se muestra el entorno de la configuración de
superficie
Fig.3 Entorno de la Configuración de Superficie
ITCM Reporte Final de Residencia profesional
10
8.- PROCEDIMIENTO Y DESCRIPCIÓN DE LAS
ACTIVIDADES REALIZADAS
Para el desarrollo del proyecto “CBFix”, se optó por utilizar el método
incremental. Este método resultó conveniente pues fija entregas periódicas de
incrementos a la solución del problema y permite evaluar los resultados que
dan la pauta para avanzar o regresar a una fase previa.
Los incrementos son revisados por el asesor y constituyen una
retroalimentación constante. Debido a sus características, este modelo se
acopló perfectamente al proyecto de investigación en cuestión.
El modelo incremental combina elementos del modelo lineal secuencial
(aplicados repetidamente) con la filosofía interactiva de construcción de
prototipos. El modelo incremental aplica secuencias lineales de forma
escalonada mientras progresa el tiempo en el calendario. Cada secuencia
lineal produce un incremento en el ciclo de vida del proyecto.
ESTRUCTURA DEL METODO
A continuación se presenta en la Fig. 4 la estructura del método utilizado para
el desarrollo del sistema control de basculas para el puerto industrial de
Altamira “CBFix”
Fig. 4 Fases del método incremental
ITCM Reporte Final de Residencia profesional
11
FASES DEL MODELO INCREMENTAL
A continuación se describe cada una de las fases del modelo utilizado para el
desarrollo del sistema “CBFix”
ANÁLISIS
Esta es la primera etapa dentro del modelo, en la cual se incluyen las
especificaciones con las que debe cumplir el sistema a desarrollar:
La etapa de análisis se divide en:
Análisis de requisitos.
Análisis técnico.
En el análisis de requisitos, se lleva a cabo una reunión con el cliente y/o
usuario y se identifican las metas globales, se analizan las perspectivas del
cliente, sus necesidades y requerimientos sobre la planificación temporal.
El análisis de requisitos se divide en cuatro partes: Reconocimiento del
problema, evaluación y síntesis, especificación y revisión.
En el análisis técnico, se evalúan los principios técnicos del sistema y al mismo
tiempo recoge información adicional sobre el rendimiento, fiabilidad,
características de mantenimiento y productividad.
Los resultados obtenidos de este análisis son la base para determinar sobre si
continuar o abandonar el proyecto, si hay riesgos de que no funcione, no tenga
el rendimiento deseado, o si las piezas no encajan perfectamente unas con
otras.
ITCM Reporte Final de Residencia profesional
12
DISEÑO
El Diseño de Sistemas se ocupa de desarrollar las directrices propuestas
durante el análisis en función de aquella configuración que tenga más
posibilidades de satisfacer los objetivos planteados tanto desde el punto de
vista funcional como del no funcional.
Se obtiene el diseño de cómo serán las interfaces, scripts y bases de datos,
siempre los requerimientos principales serán cumplir con los requerimientos del
usuario para ello se utilizan distintas herramientas.
DISEÑO DEL SOFTWARE
Es un proceso a través del cual se traducen los requisitos en una
representación del software, se presenta de forma abstracta
DISEÑO DE INTERFAZ
El diseño de interfaz es uno de los elementos de suma importancia en la
realización del sistema desarrollado. Se puede definir interfaz como:
“Una serie de pasos que el usuario podrá seguir, durante su estancia e
interacción con la página Web, detallando los gráficos que visualizará en cada
instante, así como las acciones que realizará y las respuestas que la página
Web le arrojará”.[7]
ITCM Reporte Final de Residencia profesional
13
Las características básicas que se quieren conseguir con esta interfaz, se
podrían sintetizar en:
Facilidad de uso.
Representación permanente de un contexto de acción.
El objeto de interés ha de ser de fácil identificación.
Diseño ergonómico (barra de acciones o iconos con una buena
ubicación).
Las interacciones se basarán en acciones físicas sobre elementos de
código visual como iconos, imágenes y mensajes antes que en
selecciones de tipo menú con sintaxis y órdenes.
Las operaciones serán rápidas.
Tratamiento del error bien cuidado y adecuado al nivel de usuario y
contenidos trabajados.
Tratamiento de color y tipografía.
DISEÑO DE LA BASE DE DATOS
El diseño de la Base de datos se clasifica en las siguientes etapas: diseño
conceptual, diseño lógico y diseño físico.
En el diseño conceptual se debe construir un esquema de la información que
manejará el sistema desarrollado. Al construir el esquema, se descubren la
semántica (significado) de los datos a manejar, se encuentran entidades,
atributos y relaciones.
El esquema conceptual se construye utilizando la información que se encuentra
en la especificación de los requisitos de usuario. El diseño conceptual es
completamente independiente de los aspectos de implementación, como puede
ser el manejador de base de datos que se vaya a usar, los programas de
aplicación, los lenguajes de programación, el hardware disponible o cualquier
otra consideración física. Durante todo el proceso de desarrollo del esquema
conceptual éste se prueba y se valida con los requisitos de los usuarios. El
ITCM Reporte Final de Residencia profesional
14
esquema conceptual es una fuente de información para el diseño lógico de la
base de datos.
El diseño lógico, es el proceso de construir un esquema de la información que
utiliza la empresa, basándose en un modelo de base de datos específico,
independiente del manejador de base de datos concreto que se vaya a utilizar.
La normalización es una técnica que se utiliza para comprobar la validez de los
esquemas lógicos basados en el modelo relacional, ya que asegura que las
relaciones (tablas) obtenidas no tienen datos redundantes.
Tanto el diseño conceptual, como el diseño lógico, son procesos iterativos,
tienen un punto de inicio y se van refinando continuamente.
El diseño físico, es el proceso de producir la descripción de la implementación
de la base de datos en memoria secundaria: estructuras de almacenamiento y
métodos de acceso que garanticen un acceso eficiente a los datos.
Para llevar a cabo esta etapa, se debe haber decidido cuál es el manejador de
base de datos que se va a utilizar, ya que el esquema físico se adapta a él.
Entre el diseño físico y el diseño lógico hay una realimentación, ya que algunas
de las decisiones que se tomen durante el diseño físico para mejorar las
prestaciones, pueden afectar a la estructura del esquema lógico.
En general, el propósito del diseño físico es describir cómo se va a implementar
físicamente el esquema lógico obtenido en la fase anterior.
ITCM Reporte Final de Residencia profesional
15
PROGRAMACIÓN O CÓDIGO
La programación o codificación se basa en un buen diseño, ya que se tiene que
interpretar a un lenguaje de programación adecuado para cumplir con las
tareas planteadas con anterioridad.
Las herramientas utilizadas para el desarrollo del proyecto fueron orientadas a
leguajes para desarrollo de sistema de escritorio.
A continuación se muestran las herramientas y tecnologías utilizadas para la
creación del proyecto.
Lenguaje Microsoft Visual Basic. Net 2005
Microsoft SQL Server 2005
Manejador de base de datos SQL Server Management Studio
PRUEBAS
Esta es la última etapa, y por consiguiente aquí se realizan las pruebas y
verificaciones necesarias para comprobar el funcionamiento adecuado del
sistema desarrollado y el cumplimiento de las especificaciones requeridas y
satisfacción del usuario.
Durante esta etapa se deben cubrir todas las posibles estrategias, para
garantizar su uso adecuado y en caso de requerir correcciones, llevarlas a
cabo oportunamente para su buen funcionamiento.
ITCM Reporte Final de Residencia profesional
16
9.-RESULTADOS Y GRÁFICAS
En esta parte de este documento se mostrara los resultados obtenidos en el
desarrollo del sistema “CBfix”, conforme al modelo escogido mencionado
anteriormente.
ANÁLISIS
Se realizo el análisis de un documento integrado por el Ing. David Ángeles, el
cual describía cada uno de los catálogos que debería de tener el sistema
“CBFix”, este documento lo pueden observar en la sección de anexos.
ANÁLISIS DE REQUISITOS
Se nos pidió que le sistema CBFix tendría que contar con los siguientes
requisitos.
El sistema debe de tener un login de usuarios
El Sistema deberá Contar con los siguientes catálogos esenciales, con
sus respectivas funciones (insertar, eliminar, modificar y consultar
registros)
o Catalogo de agentes adúnales
o Catalogo de barcos
o Catalogo de clientes
o Catalogo de mercancías
o Catalogo de inicios
o Catalogo de usuarios
o Catalogo de transporte
o Registro de operaciones de importación y exportación.
ITCM Reporte Final de Residencia profesional
17
El sistema deberá tener un modulo de factura, el cual deberá poder el
usuario imprimir su factura, como tan bien podrá guardarla si es que el
usuario no la quiera imprimir en ese momento.
El sistema deberá mostrar reportes correspondientes a los catálogos, así
como su impresión.
El sistema tendrá un modulo de copia de seguridad (Backup)
ANÁLISIS TÉCNICO
La evaluación técnica fue satisfactoria, ya que el sistema “CBFix” cuenta con
una columna vertebral base que son los 8 catálogos mencionados
anteriormente, los cuales están estructurados y bien definidos cada uno.
Con el uso de visual Basic.net 2005 hace más fácil hacer un interfaz de usuario
más agradable, ya que este cuenta con su entorno integrado de desarrollo
(IDE).
Con el servidor SQL Server permite que el sistema tenga un mayor rendimiento
y rapidez en cada iteración que el usuario haga con la base de datos.
ITCM Reporte Final de Residencia profesional
18
ITCM Reporte Final de Residencia profesional
19
CASOS DE USO
A continuación se muestra los casos de uso del sistema “CBFix”
ITCM Reporte Final de Residencia profesional
20
ITCM Reporte Final de Residencia profesional
21
ITCM Reporte Final de Residencia profesional
22
DISEÑO En esta parte se describe cada una de las formas que se utilizaron para realizar la fase del diseño del sistema DISEÑO DEL SOFTWARE Para la realización del sistema se requirieron los siguientes programas: Visual Basic.Net 2005 SQL Server 2005 El Manejador de base de datos SQL Server Management Studio
Los conocimientos utilizados
Programación y manejo de visual Basic.net
Manejo y interacción de SQL Server 2005
Infraestructura física
Hardware
Una computadora de escritorio
Características:
o Procesador Intel Pentium 4 a 1.8 GHz
o Disco Duro: 40 GB
o Memoria RAM : 1 GB
Una laptop:
Características:
o Procesador Intel Celeron a 2.0 GHz
o Disco duro: 80 GB
o Memoria RAM: 1 GB
ITCM Reporte Final de Residencia profesional
23
RECURSO HUMANO Son necesarios 2 programadores, que desarrollaran el software con las herramientas ya mencionadas; y serán supervisados por el ISC David Ángeles Martínez. ARQUITECTURA DEL SOFTWARE El modelo de la arquitectura es el de la arquitectura centrada en datos la cual se define de la siguiente manera: “El centro de esta arquitectura es el almacén de datos. Al que acceden otros componentes. Los componentes pueden agregarse o modificarse sin preocuparse por los otros. Los componentes (clientes) se comunican a través del servidor.”(Rodríguez, 2007, pág. 12) El sistema poseerá una arquitectura cliente/ servidor; centrada en datos ya que se requerirá; consultar muy frecuentemente la base de datos, podremos imprimir facturas de días anteriores, o consultar las boletas, no incluidas en alguna facturas.
DISEÑO DE INTERFAZ DE USUARIO La interfaz de usuario del Sistema de Control de bascula CBFix es una interfaz característica de los entornos de trabajo de Microsoft, sobre todo ante el requisito que ha pedido el cliente de hacer un sistema más amigable e intuitivo. La interfaz debe tener:
Familiaridad
Uniformidad
Recuperabilidad
Se ha decidido que la interfaz deba tener la siguiente distribución y características:
Facturación Operaciones
en catálogos
Registro de operaciones
de importación y
exportación
ITCM Reporte Final de Residencia profesional
24
La ventana principal presentara un menú para cada uno de los
apartados del sistema
En los catálogos de entrada presentará una ventana con las cuatro
operaciones; mostradas mediante un control pestaña de Visual Basic.
Tendrá una pantalla de inicio de sesión
A continuación se mostrara cada una de las interfaces de cada catalogo.
INICIO DE SESIÓN
En el inicio de sesión nos muestra una pantalla donde se pondrá el correspondiente nombre de usuario y su respectiva contraseña, si dado caso no pusieran ya sea el nombre de usuario o la contraseña se le dará tres intentos si no se saldrá del sistema.
ITCM Reporte Final de Residencia profesional
25
PANTALLA PRINCIPAL En ella se encuentra cada uno de los catálogos.
MODULO PESADA Este es un modulo esencial del sistema CBFiX en él se registra cada barco cuando entra y sale.
ITCM Reporte Final de Residencia profesional
26
MODULO CLIENTES En el se registran, eliminan, modifican o consultan los posibles clientes.
MODULO BARCOS En el registran, eliminan, modifican o consultan los posibles barcos que llegan a pesarse.
MODULO AGENTES
ITCM Reporte Final de Residencia profesional
27
En el registran, eliminan, modifican o consultan los agentes aduanales.
MODULO DE INICIO En el registran, eliminan, modifican o consultan los inicios que se le asignan a cada barco que llega al puerto.
ITCM Reporte Final de Residencia profesional
28
MODULO DE MERCANCÍA En el registran, eliminan, modifican o consultan las mercancías que importara o exportara el barco
MODULO DE TRANSPORTE En el registran, eliminan, modifican y consultan los transporte, indicando por ejemplo el tipo de transporte que es, su nombre etc.
ITCM Reporte Final de Residencia profesional
29
MODULO DE USUARIOS En el registran, eliminan, modifican y consultan los posibles usuarios que administraran el sistema.
MODULO REPORTES En él se muestra los reportes con sus respectiva grafica, con el fin de informar con gráficos y ser más entendible la información.
ITCM Reporte Final de Residencia profesional
30
MODULO FACTURA Este modulo sirve para facturar cada boleta del barco e imprimir esa factura
DISEÑO DE BASE DE DATOS La base de datos del Sistema “Control de Bascula (CBFix) está diseñada de la siguiente manera: Para cada uno de los catálogos descritos anteriormente, se creó una tabla en la base de datos llamada cbfixbd. Las tablas tienen los siguientes atributos y nombres.
Agentes:
Atributo Tipo de dato
Id_agente Int
patente varchar(50)
nombre varchar(50)
rfc varchar(50)
dirección varchar(50)
colonia varchar(50)
ciudad varchar(50)
estado varchar(50)
país varchar(50)
cp varchar(50)
teléfonos varchar(50)
observaciones varchar(150)
ITCM Reporte Final de Residencia profesional
31
Clientes:
Pesada
Atributo Tipo de dato
clave_c Int
patente varchar(50)
nombre varchar(50)
rfc varchar(50)
dirección varchar(50)
colonia varchar(50)
ciudad varchar(50)
estado varchar(50)
país varchar(50)
cp varchar(50)
teléfonos varchar(50)
observaciones varchar(150)
Atributo Tipo de dato
Numero de boleta Int
Placas varchar(50)
transporte varchar(50)
patente varchar(50)
inicio Int
Operación varchar(50)
agente varchar(50)
cliente varchar(50)
barco varchar(50)
Mercancía varchar(50)
nom_cont1 varchar(50)
tara 1 float
nom_cont2 varchar(50)
tara 2 varchar(50)
peso_vacio float
peso_lleno float
peso_neto float
tara_total float
fecha_inicio float
hora_inicio datetime
fecha_fin datetime
status date time
ITCM Reporte Final de Residencia profesional
32
Inicios
Mercancías
Atributo Tipo de dato
clave_m Int
nombre varchar(50)
Factura
Barcos
Atributo Tipo de dato
clave_b Int
Nombre Varchar(50)
Fecha_ingreso datetime
toneladas float
Transporte
Atributo Tipo de dato
id_inicio Int
patente varchar(50)
pedimento
cliente varchar(50)
barco varchar(50)
mercancía varchar(50)
tipo varchar(50)
terminal varchar(50)
muelle varchar(50)
observaciones varchar(150)
Atributo Tipo de dato
id_factura Tipo Int
num_boleta Tipo Int
cliente Varchar(50)
dirección Varchar(50)
colonia Varchar(50)
ciudad Varchar(50)
estado Varchar(50)
rfc Varchar(50)
agente Varchar(50)
estatus Varchar(50)
monto Varchar(50)
nfp Varchar(50)
ITCM Reporte Final de Residencia profesional
33
Usuarios
RELACIONES DE LAS TABLAS DE LA BASE DE DATOS
Relación de la tabla cliente con pesada
Relación de la tabla transporte con pesada
Atributo Tipo de dato
clave_t Int
nombre varchar(50)
precio_uni salmones
precio_iva smallmoney
Atributo Tipo de dato
Id_usuario Int
nombre varchar(50)
apellidopa varchar(50)
apellidoma varchar(50)
usuario varchar(50)
password varchar(50)
transporte
clave
nombre
precio
precio_iva
Pesada
num_boleta
placas
Transporte
inicio
patente
pedimento
agente
cliente
barco
mercancia
Pesada
num_boleta
placas
Transporte
inicio
patente
pedimento
agente
cliente
barco
mercancia
Cliente
Clave
Nombre
RFC
Direccion
ITCM Reporte Final de Residencia profesional
34
Relación de la tabla barcos con pesada
Relación de la tabla inicio con pesada
barcos
clave
nombre
fecha_ingreso
toneladas
Pesada
num_boleta
placas
Transporte
inicio
patente
pedimento
agente
cliente
barco
mercancia
inicio
inicio
patente
pedimento
cliente
barco
mercancia
Pesada
num_boleta
placas
Transporte
inicio
patente
pedimento
agente
cliente
barco
mercancia
ITCM Reporte Final de Residencia profesional
35
Relación de la tabla mercancía con pesada
Relaciones de las tablas barcos, mercancía, cliente con inicio
mercancia
clave
nombre
Pesada
num_boleta
placas
Transporte
inicio
patente
pedimento
agente
cliente
barco
mercancia
mercancia
clave
nombre
inicio
inicio
patente
pedimento
cliente
barco
mercancia
barcos
clave
nombre
fecha_ingreso
toneladas
Cliente
Clave
Nombre
RFC
Direccion
ITCM Reporte Final de Residencia profesional
36
ITCM Reporte Final de Residencia profesional
37
DIAGRAMAS UML
VISTA PROCESOS
ITCM Reporte Final de Residencia profesional
38
VISTA LÓGICA
ITCM Reporte Final de Residencia profesional
39
VISTA FISICA
ITCM Reporte Final de Residencia profesional
40
VISTA DESARROLLO
ITCM Reporte Final de Residencia profesional
41
DIAGRAMA DE CLASES
ITCM Reporte Final de Residencia profesional
42
DIAGRAMA DE ESTADOS
ITCM Reporte Final de Residencia profesional
43
DIAGRAMA DE SECUENCIAS
ITCM Reporte Final de Residencia profesional
44
PROGRAMACIÓN O CÓDIGO En esta fase es la implementación en base al análisis y diseño, en cada uno de los módulos se ha definido cuatro operaciones de Inserción, eliminación, borrado y edición. La conexión a la base de datos en la aplicación es la siguiente: Dim cnn As New SqlConnection("Data Source=CAZA-F7E3563070;Initial
Catalog=cbfixbd;Integrated Security=True;Pooling=False")
El llamado a una operación se hace mediante un select….case de la siguiente forma Select TabControl Case: Registrar Me. Insertar Case: “eliminar” Me. Eliminar Case: Modificar Me. Editar End Select MODULO DEL LOGIN Enseguida se muestra el código del modulo de entrada al sistema el cual se llama Login. Private Sub OK_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles OK.Click
cnn.ConnectionString = "Data Source=CAZA-F7E3563070;Initial
Catalog=cbfixbd;Integrated Security=True"
If UsernameTextBox.Text.Trim <> "" And
PasswordTextBox.Text.Trim <> "" Then
ErrorProvider1.SetError(Me.UsernameTextBox, "Debe poner un
nombre usuario")
ErrorProvider2.SetError(Me.PasswordTextBox, "Debe poner
una contraseña")
cmdCommand.CommandText = "Select * From [usuarios] where
usuario ='" & UsernameTextBox.Text.Trim & "' And password ='" &
PasswordTextBox.Text.Trim & "'"
cnn.Open()
cmdCommand.Connection = cnn
daDatos.SelectCommand = cmdCommand
ITCM Reporte Final de Residencia profesional
45
daDatos.Fill(dsDatos, "0")
cnn.Close()
Dim cont = dsDatos.Tables(0).Rows.Count
If cont > 0 Then
Form1.Show()
Me.Hide()
Else
MsgBox("Datos erroneos", MsgBoxStyle.Exclamation,
"Error!")
veces = veces + 1
If veces < intentos Then
'Label1.Text = "Quedan" & (intentos - veces) &
"intentos"
ElseIf intentos = 5 Then
'MsgBox("Excediste el numero de intentos",
MsgBoxStyle.Critical, "Error!")
End
End If
End If
Else
ErrorProvider1.SetError(Me.UsernameTextBox, "Debe tener un
valor")
ErrorProvider2.SetError(Me.PasswordTextBox, "Debe tener un
valor")
End If
End Sub
Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Cancel.Click
Me.Close()
End Sub
End Class
MODULO DE CLIENTES. Este modulo sirve para las operaciones relacionadas con los clientes, a continuación se presenta un extracto del código. Dim res As New resolucion
Dim con As New Conexion
Dim val As New validaciones
Dim cnn As New SqlConnection("Data Source=CAZA-F7E3563070;Initial
Catalog=cbfixbd;Integrated Security=True;Pooling=False")
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles Button1.Click
ITCM Reporte Final de Residencia profesional
46
Select Case TabControl1.SelectedTab.Text
Case "Registrar"
insertar()
'Me.limpiar()
Case "Eliminar"
eliminar()
Me.limpiar()
Case "Modificar"
modificar()
Me.limpiar()
Case "Consultar"
consultar()
End Select
MODULO DE AGENTES Public Class agentes
Dim con As New Conexion
Dim val As New validaciones
Dim cnn As New SqlConnection("Data Source=CAZA-F7E3563070;Initial
Catalog=cbfixbd;Integrated Security=True;Pooling=False")
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles Button1.Click
Select Case TabControl1.SelectedTab.Text
Case "Registrar"
insertar()
'Me.limpiar()
Case "Eliminar"
eliminar()
' Me.limpiar()
Case "Modificar"
con.consulta_non_query("update agentes set nombre ='"
& Me.TextBox19.Text.Trim() & "',patente = '" &
Me.TextBox26.Text.Trim() & "',direccion = '" &
Me.TextBox27.Text.Trim() & "',colonia = '" & Me.TextBox25.Text.Trim()
& "',ciudad='" & Me.TextBox24.Text.Trim() & " ',estado='" &
Me.TextBox23.Text.Trim() & " ',pais='" & Me.TextBox22.Text.Trim() & "
',rfc='" & Me.TextBox21.Text.Trim() & " ',cp='" &
Me.MaskedTextBox8.Text.Trim() & " ',telefonos='" &
Me.MaskedTextBox7.Text.Trim() & " ',observaciones='" &
Me.TextBox20.Text.Trim() & "'where id_agentes =" &
Me.MaskedTextBox9.Text.Trim())
' Me.limpiar()
Case "Consultar"
Me.consultar()
End Select
End Sub
ITCM Reporte Final de Residencia profesional
47
Modulo de Barcos Public Class barcos
Dim con As New Conexion
Dim val As New validaciones
Dim cnn As New SqlConnection("Data Source=CAZA-F7E3563070;Initial
Catalog=cbfixbd;Integrated Security=True;Pooling=False")
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles Button1.Click
Select Case TabControl1.SelectedTab.Text
Case "Registrar"
Me.insertar()
Case "Eliminar"
Me.eliminar()
Case "Modificar"
Me.modificar()
Case "Consultar"
Me.consultar()
End Select
End Sub
MODULO DE INICIOS Public Class inicios
Dim con As New Conexion
Dim val As New validaciones
Dim cnn As New SqlConnection("Data Source=CAZA-F7E3563070;Initial
Catalog=cbfixbd;Integrated Security=True;Pooling=False")
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles Button1.Click
Select Case TabControl1.SelectedTab.Text
Case "Registrar"
insertar()
Case "Eliminar"
eliminar()
Case "Modificar"
editar()
Case "Consultar"
consultar()
End Select
End Sub
ITCM Reporte Final de Residencia profesional
48
A continuacion veremos un ejemplo de cada una de las operaciones que se efctuan en los 8 catalogos, iniciales. INSERTAR Public Sub insertar()
If MaskedTextBox1.Text = String.Empty Or TextBox1.Text =
String.Empty Or TextBox2.Text = String.Empty Or TextBox8.Text =
String.Empty Then
MsgBox("Faltan datos en los campos",
MsgBoxStyle.Exclamation, "CBFix-Aviso")
Else
If TextBox1.Text.Trim.Length > 50 Or
TextBox2.Text.Trim.Length > 50 Or TextBox8.Text.Trim.Length > 50 Or
TextBox4.Text.Trim.Length > 50 Then
MsgBox("La longitud de los campos de 50 caracteres",
MsgBoxStyle.Exclamation, "CBFix Aviso")
Else
If con.verificar_existencia("Select * From transporte where clave_t
='" & Me.MaskedTextBox1.Text.Trim & "'") Then
val.Msgexiste()
Else
If Not Char.IsLetterOrDigit(TextBox1.Text.Trim)
Then
MsgBox("Estos campos no permiten caracteres
especiales", MsgBoxStyle.Exclamation, "!Error!")
If Not IsNumeric(TextBox2.Text) Then
MsgBox("!El dato en el campo precio
unitario no es numerico!", MsgBoxStyle.Exclamation, "CBFix Aviso")
End If
Else
If con.verificar_existencia("Select * from
transporte where clave_t = '" & Me.TextBox1.Text & "'") Then
val.Msgexiste()
Else
con.consulta_non_query("insert transporte
(clave_t,nombre,precio_uni)values('" & Me.MaskedTextBox1.Text.Trim() &
"','" & Me.TextBox1.Text.Trim() & " ','" & Me.TextBox2.Text.Trim &
"')")
p = (Convert.ToDouble(TextBox2.Text) *
0.16) + Convert.ToDouble(TextBox2.Text)
p = TextBox8.Text
con.consulta_especial("update transporte set precio_iva ='" &
Me.TextBox8.Text.Trim() & "'where clave_t =" &
Me.MaskedTextBox1.Text.Trim())
End If
End If
End If
End If
End If
val.limpiarCajas(GroupBox1)
ITCM Reporte Final de Residencia profesional
49
ELIMINAR Private Sub eliminar()
If Me.MaskedTextBox2.Text = String.Empty Then
val.MsgBoxVacios()
Else
If con.verificar_existencia(" Select * from transporte
where clave_t = '" & Me.MaskedTextBox2.Text & "'") Then
If MessageBox.Show("¿Deseas eliminarlo realmente?",
"CBFix", MessageBoxButtons.YesNo, MessageBoxIcon.Question) =
Windows.Forms.DialogResult.Yes Then
con.eliminar("Delete from transporte where clave_t
= " & Me.MaskedTextBox2.Text.Trim())
End If
Else
val.MsgNoexiste()
End If
End If
val.limpiarCajas(GroupBox2)
CONSULTAR Private Sub consultar()
If ComboBox1.SelectedItem = "Clave" Then
If TextBox33.Text = String.Empty Then
val.MsgBoxVacios()
Else
If Not IsNumeric(TextBox33.Text) Then
val.MsgCriteriodeBusqueda()
Else
Dim ds As New DataSet
Dim da As New Data.SqlClient.SqlDataAdapter("Select * from transporte
where clave_t = " & Me.TextBox33.Text.Trim, cnn)
da.Fill(ds)
DataGridView1.DataSource = ds.Tables(0)
cnn.Close()
End If
End If
End If
If ComboBox1.SelectedItem = "Nombre" Then
If TextBox33.Text = "" Then
val.MsgBoxVacios()
Else
ITCM Reporte Final de Residencia profesional
50
If Me.TextBox33.Text.Trim.Length > 50 Then
MsgBox("!La longitud maxima es de 50 caracteres!",
MsgBoxStyle.Exclamation, "CBFix Aviso")
Else
Dim ds As New DataSet
Dim da As New
Data.SqlClient.SqlDataAdapter("Select * from transporte where nombre
LIKE '%" & Me.TextBox33.Text.Trim & "%'", cnn)
da.Fill(ds)
DataGridView1.DataSource = ds.Tables(0)
End If
End If
End If
If ComboBox1.SelectedItem = "Todos" Then
If TextBox33.Text <> String.Empty Then
val.MsgNoesnecesario()
Else
Dim ds As New DataSet
Dim da As New Data.SqlClient.SqlDataAdapter("Select *
from transporte ", cnn)
da.Fill(ds)
DataGridView1.DataSource = ds.Tables(0)
End If
End If
End Sub
EDITAR Public Sub editar()
If MaskedTextBox4.Text = String.Empty Or TextBox13.Text =
String.Empty Or TextBox12.Text = String.Empty Or TextBox11.Text =
String.Empty Then
MsgBox("Faltan datos en los campos",
MsgBoxStyle.Exclamation, "CBFix-Aviso")
Else
If TextBox13.Text.Trim.Length > 50 Or
TextBox12.Text.Trim.Length > 50 Or TextBox11.Text.Trim.Length > 50
Then
MsgBox("La longitud de los campos de 50 caracteres",
MsgBoxStyle.Exclamation, "CBFix Aviso")
Else
If Not Char.IsLetterOrDigit(TextBox13.Text.Trim) Then
MsgBox("Estos campos no permiten caracteres
especiales", MsgBoxStyle.Exclamation, "!Error!")
If Not IsNumeric(TextBox12.Text) Then
MsgBox("!El dato en el campo precio unitario
no es numerico!", MsgBoxStyle.Exclamation, "CBFix Aviso")
ITCM Reporte Final de Residencia profesional
51
End If
Else
If con.verificar_existencia("Select * from
transporte where clave_t = '" & Me.MaskedTextBox4.Text & "'") Then
con.actualizar("update transporte set nombre
='" & Me.TextBox13.Text.Trim() & "',precio_uni = '" &
Me.TextBox12.Text.Trim() & "'where clave_t =" &
Me.MaskedTextBox4.Text.Trim())
p = (Convert.ToDouble(TextBox12.Text) * 0.16)
+ Convert.ToDouble(TextBox12.Text)
p = TextBox11.Text
con.consulta_especial("update transporte set
precio_iva ='" & Me.TextBox11.Text.Trim() & "'where clave_t =" &
Me.MaskedTextBox4.Text.Trim())
Else
val.MsgNoexisteEdit()
End If
End If
End If
End If
val.limpiarCajas(GroupBox4)
End Sub
FACTURA
Este modulo es el que efectura las transacciones, para calcular el coste de la cantidad de operaciones de importacion y exportacion que ha realizado el cliente.
Private Function facturar()
cmdCommand.Connection = cnn
cnn.Open()
cmdCommand.CommandText = "Select num_factura from facturas"
drReader = cmdCommand.ExecuteReader()
While drReader.Read
Me.ComboBox3.Text = drReader("num_factura")
End While
txtnumfac.Text = CInt(ComboBox3.Text) + 1
' con.consulta_non_query("update facturas set num_factura='" &
Me.txtnumfac.Text & "'")
'Me.txtnumfac.Text = CInt(ComboBox1.Text.Trim) + 1
'txtnumfac.Te xt = CInt(txtnumfac.Text) + 1
'cmdCommand.CommandText = "update facturas set num_factura='"
& Me.txtnumfac.Text & "'"
cnn.Close()
cantboletas = 0
'Dim cmdCommand As New SqlClient.SqlCommand
For i = 0 To Me.DataGridView1.Rows.Count - 1
ITCM Reporte Final de Residencia profesional
52
Dim checkBoxCell As DataGridViewCheckBoxCell =
TryCast(Me.DataGridView1.Rows(i).Cells(0), DataGridViewCheckBoxCell)
If checkBoxCell.Value = True Then
Try
txtdato.Text =
DataGridView1.Rows(i).Cells(9).Value 'Nombre del cliente
prueba.Text = DataGridView1.Rows(i).Cells(1).Value
con.consulta_non_query("Insert control(nf,nb)
values('" & txtnumfac.Text & "', '" & prueba.Text.Trim & "')")
Catch ex As Exception
End Try
cnn.Open()
cmdCommand.Connection = cnn
drReader = cmdCommand.ExecuteReader
'If con.verificar_existencia("Select * from facturas
where cliente= '" & txtdato.Text & "'") Then
'MsgBox("La boleta o boletas ya existe",
MsgBoxStyle.Exclamation, "Aviso")
cnn.Close()
'cantboletas = cantboletas + 1
' cboletas.Text = cantboletas
cmdCommand.CommandText = "Select num_boletas,
cliente,direccion,colonia,ciudad,estado,rfc,agente,fecha_fin from
pesada,clientes where cliente ='" & txtdato.Text.Trim & "' and
pesada.cliente = clientes.nombre"
cmdCommand.Connection = cnn
cnn.Open()
drReader = cmdCommand.ExecuteReader
While drReader.Read
numboleta.Text = drReader("num_boletas")
cliente.Text = drReader("cliente").ToString
direccion.Text = drReader("direccion").ToString
colonia.Text = drReader("colonia").ToString
ciudad.Text = drReader("ciudad").ToString
estado.Text = drReader("estado").ToString
rfc.Text = drReader("rfc").ToString
agente.Text = drReader("agente").ToString
fecha.Text = drReader("fecha_fin").ToString
End While
cmdCommand.CommandText = "Insert
facturas(num_boleta,cliente,direccion,colonia,ciudad,estado,rfc,agente
,fecha_factura,num_factura,estado_pago,monto,subtotal) values('" &
prueba.Text & "' ,'" & cliente.Text & "','" & direccion.Text & "','" &
colonia.Text & "','" & ciudad.Text & "','" & estado.Text & "','" &
rfc.Text & "','" & agente.Text & "','" & fecha.Text & "','" &
Me.txtnumfac.Text & "','" & CBEstado.Text & "','" & txtotalsf & "','"
& txsubtotalsf & "')"
cnn.Close()
cnn.Close()
End If
Next
ITCM Reporte Final de Residencia profesional
53
MsgBox("Se guardaron las boletas seleccionadas",
MsgBoxStyle.Information, "Informacion")
Me.txtcf.Text = String.Empty
Me.ComboBox3.Text = String.Empty
Me.txsubtotal.Text = " "
Me.txtotal.Text = " "
Me.txtiva.Text = " "
Me.txtdato.Text = String.Empty
Return txtdato.Text
End Function
Public Sub limpiar_seleccion()
For i = 0 To Me.DataGridView1.Rows.Count - 1
Dim checkBoxCell As DataGridViewCheckBoxCell =
TryCast(Me.DataGridView1.Rows(i).Cells(0), DataGridViewCheckBoxCell)
checkBoxCell.Value = False
Next
End Sub
PRUEBAS En la siguiente seccion se efectuan una serie de pruebas tantounitarias como de sistema, iniciaremos por las pruebas de seguridad, luego las de aceptacion e integracion. PRUEBAS DE SEGURIDAD
Están enfocadas para permitir el acceso a personas registradas en nuestra base de datos. Objetivo: Verificar permisos Descripción: el único usuario que tiene todos los permisos, para registrar, borrar o modificar en los diversos módulos es el administrador Desarrollo: Para verificar el correcto funcionamiento de los permisos y el acceso a la aplicación, para la verificación se usara una cuenta con el usuario administrador llamado “admin”. A continuación las figuras mostrando la interacción.
ITCM Reporte Final de Residencia profesional
54
Fig 9.1 Log in
Como puede observarse en la figura en caso de tener algun dato de entrada
erroneo lo marca con el mensaje “Datos erroneos”
Para esta situacion particular dimos una contraseña incorrecta.
Fig. 9.2 “Datos erroneos”
ITCM Reporte Final de Residencia profesional
55
En el caso de que el usuario deje vacio alguno de los dos o ambos campos
aparecen los proveedores de error que se muestran. En este caso el sistema no lo
cuenta como intento de inicio de sesión ya que faltan datos.
Fig. . 9.3 Log
in con campos vacios
b)
Fig. 9.4 Un campo vacio muestra un ErrorProvider
ITCM Reporte Final de Residencia profesional
56
a)
La siguiente situación es probar la posibilidad de tener varios intentos de inicio
de sesión. Si no se logra ha de mostrarse el mensaje “Excediste el numero de
intentos”
ITCM Reporte Final de Residencia profesional
57
PRUEBAS DE ACEPTACION
En caso contrario de que se haya ingresado en forma exitosa se muestra la
siguiente pantalla:
Fig. 9.8 Pantalla de Inicio
Esta pantalla presenta las opciones de los catálogos presentados anteriormente:
con Pesadas, Clientes, Agentes, Usuarios, Transporte, Mercancías, etc.
Si en alguno de los catálogos un registro es exitoso:
Figura 9.9 Registro Exitoso
ITCM Reporte Final de Residencia profesional
58
Fig. 9.10 Validación de campos vacios
Fig. 9.11 Validación de la longitud de los campos
ITCM Reporte Final de Residencia profesional
59
Figura 9.12 Validación de caracteres especiales
*Estas validaciones son iguales en los restantes 7 catálogos en las pestañas
registrar y modificar
En seguida se mostraran las validaciones correspondientes a consultar y eliminar.
ITCM Reporte Final de Residencia profesional
60
PRUEBAS DE ACEPTACIÓN PARA LAS PESTAÑAS ELIMINAR Y CONSULTAR
En las pestañas de eliminación se pregunta primero si se desea eliminar para así
dar oportunidad de que el usuario este seguro de que es el elemento a eliminar.
Figura 9.13 Pregunta de ¿Deseas eliminar este elemento realmente?
Si se dice que si muestra esta pantalla
Figura 9.14 Nos muestra el mensaje que la operación ha sido exitosa. En caso de que queramos eliminar un elemento ya borrado muestra lo siguiente:
ITCM Reporte Final de Residencia profesional
61
Figura 9.15 Nos muestra el mensaje “El registro a eliminar ya no existe” Para las pestañas consultar son las siguientes bifurcaciones las que se dan:
Figura 9.16 Si se eligió clave y se ha dejado vacio el valor de búsqueda
ITCM Reporte Final de Residencia profesional
62
Figura 9.17 Si se eligió clave y el valor no es numérico presenta el mensaje “El
criterio elegido es por clave y el valor introducido no es numérico”
Si el criterio elegido es Todo y se escribe un valor de búsqueda el mensaje que
muestra es “! No es necesario un valor de búsqueda!”
Estas validaciones son iguales en estas pestañas para el resto de
los catálogos.
Figura 9.18 “! No es necesario un valor de búsqueda!”
ITCM Reporte Final de Residencia profesional
63
PRUEBAS DE ACEPTACIÓN DE FACTURAS Si falta el inicio o el cliente a facturar o el tipo de boleta muestra el siguiente mensaje:
Figura 9.19 “Faltan datos en los campos” En caso contrario:
Figura 9.20 a) Elección de las boletas a facturar
ITCM Reporte Final de Residencia profesional
64
Figura 9.20 b) Después de dar clic en guardar
Figura 9..20 c) Cuando se da clic en imprimir
Dentro del mismo Facturas cuando se da clic al botón “Buscar facturas
guardadas aparece”
ITCM Reporte Final de Residencia profesional
65
Figura 9.21 a) El buscador de las facturas
ITCM Reporte Final de Residencia profesional
66
9.21b) Búsqueda por número de factura
Figura 9.21 c) Búsqueda por cliente
ITCM Reporte Final de Residencia profesional
67
Al dar clic en “Imprimir” copia los datos al formulario de facturas y regresa para imprimir ahí. En tanto que para eliminar
Figura 9.21 d Impresión pasada del buscador
Figura 9.22 Si se elige criterio de búsqueda numero y se deja vacio el TextBox aparece el mensaje “El dato no es numérico”
ITCM Reporte Final de Residencia profesional
68
Fig. 9.23 Si se da clic en eliminar aparece la pregunta ¿Es el elemento que desea borrar?
Figura 9.24 Confirmación de la eliminación
ITCM Reporte Final de Residencia profesional
69
CONCLUSIONES
Al término de la creación del sistema CBFix, se nos permitió reafirmar nuestros
conocimientos de visual Basic. Net y de SQL Server y también aplicar nuestros
conocimientos de programación a un problema real.
Se concluye que el sistema CBFix cumple con las expectativas esperadas,
como la mejora del entorno de trabajo para los usuarios de CBFix, haciéndolas
más amigables en función de un entorno grafico tipo Windows, permite la
generación de reportes con graficas haciéndolo más visual para el
administrador.
Se recomienda que sistema sea ejecutado en una computadora de gama
medio, se puedo hacer el sistema a un entorno Web, con lo cual la información
será vista por los clientes en Internet, se le puede agregar más reportes
dependiendo de las necesidades del administrador.
ITCM Reporte Final de Residencia profesional
70
BIBLIOGRAFÍA
[1].-Introducción a Microsoft Visual Basic http://msdn.microsoft.com/es-mx/vbasic/bb466159.aspx) [2].- BLANCO , Luis Miguel, PROGRAMACION CON VB.NET , Eidos, 1ª ed
,2002 ,España
http://www.megaupload.com/?d=MH819H84
[3].-VIEIRA, Robert, Beginning SQL Server™ 2005 Programming, Wiley
Publishing, Wrox Press, 1ed, 2006, EUA
[4].-. ¿Qué es SQL Server 2005?
http://www.microsoft.com/spain/sql/productinfo/overview/what-is-sql-
server.mspx
[5].- ¿que es SQL Managment Studio?
http://www.microsoft.com/downloads/details.aspx?displaylang=es&FamilyID=c2
43a5ae-4bd1-4e3d-94b8-5a0f62bf7796
[6].- que es la configuración de superficie
http://technet.microsoft.com/es-es/library/ms161956%28SQL.90%29.aspx
[7] .-Dorado Perea, Carlos."Diseño de Interfaz".(Documento web).(s/f)
http://www.xtec.net/~cdorado/cdora1/esp/disseny.htm
ITCM Reporte Final de Residencia profesional
71
ANEXOS DOCUMENTO DE REQUERIMIENTOS DEL SISTEMA CBFix Para el sistema de báscula los catálogos deben contar con la siguiente información:
ITCM Reporte Final de Residencia profesional
72
Para registrar una pesada se debe registrar la siguiente información
Al momento de registrar una pesada se deben tomar en cuenta las siguientes consideraciones Tara Total = Tara del Contenedor 1 + Tara del Contenedor 2 Peso Neto = Peso Lleno – (Tara del Contenedor 1 + Tara del Contenedor 2 + Peso Vació)
ITCM Reporte Final de Residencia profesional
73
Cronograma de actividades
Actividad Inicio Duración Fin
Análisis de los requerimientos del
software 08/02/2010 21 01/03/2010
Diseño 09/03/2010 29 17/03/2010
Creación de base de datos 09/03/2010 9 18/03/2010
Realizar los casos de estudio del proyecto 22/03/2010 5 27/03/2010
Diagrama de Entidad-Relación 29/03/2010 2 31/03/2010
Vistas del proyecto 31/03/2010 4 04/04/2010
Diagrama de clases 06/04/2010 3 09/04/2010
Diagrama de secuencia 09/04/2010 3 12/04/2010
Diseño de interfaz de usuario 14/04/2010 3 17/04/2010
Código 19/04/2010 15 04/05/2010
Pruebas 10/05/2010 15 25/05/2010
Elaboración del plan de pruebas 10/05/2010 15 25/05/2010
Mantenimiento 31/05/2010 8 08/06/2010
ITCM Reporte Final de Residencia profesional
74
21 dias 01/03/2010
16/02/2010 8 dias 9/03/2010
08/02/2010
Análisis de los requerimientos del software
29 dias 17/03/2010
14/03/2010Margen de
demora22/03/2010
09/03/2010
Diseño
9 dias 18/03/2010
15/03/2010 6 días 24/03/2010
09/03/2010
Creación de base de datos
5 días 27/03/2010
28/03/2010 6 días 1/04/2010
22/03/2010
Casos de uso del proyecto
2 dias 31/03/2010
31/03/2010 2 días 2/04/2010
29/03/2010
Diagrama de Entidad Relacion
5 dias 04/04/2010
2/04/2010 2 dias 06/04/2010
31/03/2010
Vistas de Proyecto
3 dias 09/04/2010
08/04/2010 2 11/04/2010
06/04/2010
Diagrama de Clases
3 dias 12/04/2010
15/04/2010 6 18/04/2010
09/04/2010
Diagrama de Secuencia
3 dias 17/04/2010
15/04/2010 1 18/04/2010
14/04/2010
Interfaz de usuario
15 04/05/2010
21/04/2010 2 6/05/2010
19/04/2010
Código
15 25/05/2010
20/05/2010 2 6/06/2010
10/05/2010
Pruebas
8 8/06/2010
2/06/2010 2 10/06/2010
31/05/2010
Mantenimiento
ITCM Reporte Final de Residencia profesional
75
Glosario Abstracción: Tomar en cuenta solo los aspectos más importantes de un objeto para realizar un mejor análisis. Base de Datos: es una colección de información almacenada en archivos guardados en discos que siguen una estructura. Campo: Es el valor contenido en una clase CBFix. Nombre de la versión funcional final del proyecto Control de Bascula para el puerto industrial de Altamira Eventos: Son usados para notificar que un objeto escucho un cambio de estado
Contenedor: es un recipiente de carga para el transporte aéreo, marítimo o fluvial, transporte terrestre y transporte multimodal. Las dimensiones del contenedor se encuentran normalizadas para facilitar su manipulación.
Diagramas de casos de uso: Muestran un conjunto de casos de uso y actores (tipo especial de clases) y sus relaciones. Cubren la vista estática de los casos de uso y son especialmente importantes para el modelado y organización del comportamiento. Diagramas de Clases Un diagrama de clases es un diagrama que muestra un conjunto de clases, interfaces, colaboraciones y sus relaciones
Diagramas de Estados .Muestran una maquina de estados compuesta por
estados, transiciones, eventos y actividades. Estos diagramas cubren la vista dinámica de un sistema y son muy importantes a la hora de modelar el comportamiento de una interfaz, clase o colaboración.
Jerarquía: es una propiedad que permite una ordenación de las abstracciones. Método: Es una unidad de funcionalidad Modularidad: Separar los métodos en programas más pequeños al sistema final IDE (Entorno de desarrollo integrado) Herramientas de software que ayudan a los desarrolladores a escribir programas Peso Neto: Es la unidad de medida de la mercancía expresada en Kilogramos, sin
incluir el embalaje. Propiedad: Parte del estado de un objeto. Hibrido entre campo y método
Tara: Es el peso del contenedor vacío y viene inscrito en una de las puertas del contenedor debe tenerse en cuenta y adicionarlo al peso bruto de la carga. UML: Lenguaje unificado modelado
ITCM Reporte Final de Residencia profesional
1