reporte itza

49
PORTADA MIGRACIÓN DE PLATAFORMA DEL PROGRAMA DE NÓMINA A VISUAL BASIC .NET Por José Filiberto Itzá Hernández I.M.E. Jossie Lenin Baeza Peñaloza Profesor de Tiempo Completo I.S.C. Ángel Alberto Itzá Can Encargado del Área de Informática Reporte Técnico de Estadía presentado en la Universidad Tecnológica Regional del Sur para obtener el título de TÉCNICO i

Upload: api-26774473

Post on 07-Jun-2015

2.421 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Reporte Itza

PORTADA

MIGRACIÓN DE PLATAFORMA DEL PROGRAMA DE

NÓMINA A VISUAL BASIC .NET

Por

José Filiberto Itzá Hernández

I.M.E. Jossie Lenin Baeza Peñaloza

Profesor de Tiempo Completo

I.S.C. Ángel Alberto Itzá Can

Encargado del Área de Informática

Reporte Técnico de Estadía presentado en la Universidad Tecnológica

Regional del Sur para obtener el título de TÉCNICO SUPERIOR

UNIVERSITARIO EN TECNOLÓGIAS DE LA INFORMACIÓN Y

COMUNICACIÓN ÁREA SISTEMAS INFORMÁTICOS.

Tekax de Álvaro Obregón, Yucatán, Septiembre de 2007

i

Page 2: Reporte Itza

CARTA DE LIBERACION

i

Page 3: Reporte Itza

HOJA DE APROBACIÓN DEL REPORTE TÉCNICO DE ESTADÍA

Page 4: Reporte Itza

AGRADECIMIENTOS

Quisiera dar las gracias a todas las personas que están cerca de mí y

que me ayudaron para llegar hasta este lugar; debo darle las gracias al

único ser que ha sido quien me ha puesto donde estoy, Aquel que sin

darme cuenta me ha estado conmigo, que hace que todo sea posible en

este mundo, este ser es Dios.

A mis padres, por haberme brindado su atención y la comprensión que

necesitaba; por todas esas mañanas que se levantaban para estar

pendientes que me fuera bien en la escuela.

Igual a las personas que me ofrecieron su apoyo sin esperar nada a

cambio: mis maestros, hermanos, amigos, familiares, hasta compañeros

de mi trabajo; los maestros que pusieron su empeño y nos dieron la

enseñanza diaria aunque algunos de nosotros simulábamos no hacerles

caso a lo que decían, sin embargo entendíamos la gran mayoría de las

cosas que nos decían.

iv

Page 5: Reporte Itza

RESUMEN

El proyecto consistió en migrar el programa de Nómina desarrollado

en Visual Basic 6.0, hecho en la misma empresa, que es un programa

diseñado para hacer procedimientos relacionados con empresas, tales

como prima vacacional, cálculo del finiquito, prestaciones a los empleados,

etc., a la plataforma .Net.

Los resultados obtenidos al final del proyecto no fueron los esperados,

por parte de algunos compañeros de trabajo de la empresa, las

aplicaciones no fueron las exactas, por faltar de algunas variables y/o

algunos métodos o funciones, por esta razón se decidió proceder a un

mantenimiento correctivo del sistema.

El programa no se terminó de una manera correcta debido a que no se

hicieron los planes correctamente, debió haberse planteado una fecha

límite por concluir, y delimitar hasta donde abarcaría el programa. La

consecuencia de esto fue tener un programa sin una consistencia tal que

fuera capaz de realizar todo sus funciones correctamente, sin embargo es

un programa con el que si se puede trabajar con los procedimientos

sencillos. Cuando se trata de los métodos que se plantearon están: el

desarrollo de un nuevo sistema, modificación del programa anterior o más

v

Page 6: Reporte Itza

bien el cambio de plataforma, Sin embargo se tiene en cuenta que no lleva

el mismo tiempo.

Los métodos utilizados en el desarrollo del programa tienen mucho

que ver beneficio que esta nos traerá y los resultados que se obtengan

ÍNDICE

PORTADA (i)

CARTA DE LIBERACION (ii)

HOJA DE APROBACIÓN DEL REPORTE TÉCNICO DE ESTADÍA (iii)

AGRADECIMIENTOS (iv)

RESUMEN (v)

ÍNDICE (vi)

I. INTRODUCCIÓN (1)

1.1. Contexto del trabajo (1)

1.2. Análisis de situación empresarial (4)

1.3. Objetivos del trabajo (4)

1.4. Justificación del trabajo (4)

1.5 Alternativas de solución (5)

II. FUNDAMENTO TEÓRICO (7)

2.1. Plataforma .NET (7)

2.2. Visual Studio .NET (8)

vi

Page 7: Reporte Itza

2.3. DB OLE (8)

2.4. Visual Basic (9)

2.4.1. Características generales (10)

2.4.2. Aplicaciones (11)

2.4.3. Versiones (11)

2.4.4. Ventajas (13)

2.4.5. Inconvenientes (13)

2.4.6. Entornos de desarrollo )15)

2.5. Microsoft Access 2000 (15)

2.5.1. Características (16)

2.5.2. Generalidades (16)

2.5.3. Inconvenientes (17)

2.6. NomiPAQ 2001 (17)

2.6.1. Módulos principales del sistema (18)

2.6.2. Principales características (18)

2.6.3. Funciones (19)

2.7. Seagate Cristal Reports 8 (20)

2.7.1. Propósito (20)

III. DESCRIPCIÓN DEL TRABAJO (21)

IV. CONCLUSIONES (24)

REFERENCIAS (25)

ANEXOS (26)

vii

Page 8: Reporte Itza

viii

Page 9: Reporte Itza

I. INTRODUCCIÓN

En la actualidad las empresas tienen la necesidad de dictaminar

correcta y de manera sencilla su información, por esta razón que las

empresas, crea sus diferentes métodos, tácticas y procedimientos para su

procesamiento. El despacho de contadores públicos González, Alonzo y

Asociados S.C.P., tiene un plan para crear un departamento de informática,

donde se desarrollarían todos los programas y aplicaciones para el área

contable. Estos sistemas ayudarán a elaborar las diferentes tareas de

contabilidad, como las auditorias, ajustes, reclasificaciones, etc.

Es por eso que se están desarrollando dos programas: el de

auditoria y el de nómina.

El propósito del programa es contribuir en el desarrollo del trabajo de

los contadores del despacho González Alonzo y Asociados, S.C.P., así como

de otras asociaciones de contadores y privados ya que el programa

desarrollado se pretende poner en venta a otras empresas.

1.1. Contexto del trabajo

El despacho González Alonzo y Asociados S.C.P., fue fundado el 9 de

noviembre de 1993, ubicado en la Calle 63 No. 667-A X 12 y 14, Col. Emilio

Portes Gil, Mérida, Yucatán, por el C.P.C. Alberto René González Escalante,

egresado de la Facultad de Contaduría y Administración de la Universidad

1

Page 10: Reporte Itza

Autónoma de Yucatán en el año de 1989. Y la C.P.C. María de los Ángeles

Alonzo Peraza, egresada de la Facultad de Contaduría y Administración de

la misma universidad en el año de 1990. El despacho se encuentra dentro

del sector servicios bajo el régimen de persona moral. El despacho inicia

ofreciendo sus servicios en el área de auditoria (financiera y con dictamen

fiscal para SHCP, IMSS. e INFONAVIT), asesoría fiscal, financiera y contable,

a clientes locales y posteriormente adquiere clientes en los estados de

Campeche y Quintana Roo.

Entre sus principales clientes están algunas empresas en el ramo

farmacéutico, en la ciudad de Cancún, Quintana Roo; en el sector

pesquero, en la captura y procesamiento de camarón, en Ciudad del

Carmen, Campeche; en el ramo ferretero y aluminiero, en la ciudad de

Mérida, Yucatán; en el sector de construcciones y en el ramo refaccionario

automotriz, en la ciudad de Mérida, Yucatán. Auditoria financiera a

organismos descentralizados de nivel estatal y federal, entre otros

clientes.

En 1995 se realiza una ampliación de las oficinas del despacho, el

objetivo primordial de dicha ampliación es para dar lugar a un espacio

exclusivamente para el servicio de contabilidad. En 1996 debido a la

ampliación ya se designa un departamento para auditoria.

Las principales fuentes de ingreso del despacho en este tiempo se

enfocaban principalmente a los servicios de contabilidad y asesoría fiscal.

2

Page 11: Reporte Itza

A partir de 1997 se consolidan las auditorias. Y en el año 2000 se abre una

oficina en Cancún, Quintana Roo q a cargo de una sola persona.

En el año de 1998 adquiere un cliente en la ciudad de Ensenada, Baja

California Norte. Y a partir del 2001 el despacho consolida sus principales

fuentes de ingreso de la siguiente manera: 30% por contabilidad, 10% por

asesoría financiera, 10% por asesoría fiscal, 50% por auditoria.

Que viene siendo así, que las auditorias son la principal fuente de

ingreso, y a fines del 2004 se realiza una segunda ampliación del despacho

dando lugar a la planta alta del edificio donde se traslada el departamento

de auditoria que hasta la actualidad radica allí, la construcción de la planta

alta cuenta con instalaciones más amplias de las áreas de archivos y

baños.

En el año 2004 la consolidación del despacho se presenta de la

siguiente manera: 20% por contabilidad, 10% por asesoría financiera, 10%

por asesoría fiscal, 60% por auditoria. Actualmente el despacho realiza

treinta auditorias al año.

Con respecto al personal, actualmente el despacho cuenta con cuatro

contadores titulares, dos contadores pasantes, un técnico en contabilidad,

dos asociados en el área de mercadotecnia y administración y diez

auxiliares de los cuales todos son estudiantes. Cabe mencionar que la

firma del contador Alberto González cuenta con 17 años de experiencia ya

que él empezó ofreciendo sus servicios como contador a partir del año de

1990.

3

Page 12: Reporte Itza

Por otra parte, el asesor empresarial que dirigió el proyecto es el

Ingeniero en Sistemas Computacionales Ángel Alberto Itzá Can encargado

del área de informática, quien desarrolla el software para la empresa.

4

Page 13: Reporte Itza

1.2. Análisis de situación empresarial

El Despacho González Alonzo y Asociados, S.C.P, necesitaba una

herramienta actualizada para hacer su trabajo más eficiente y rápido,

entre aquellas herramientas que necesita están los programas de Nómina

y el de auditoria que son los más importantes y necesarios hasta el

momento. Se tenían dichos programas pero en versiones antiguas y como

la informática avanza, se requería actualizar a las nuevas versiones, con la

plataforma que hoy en día está en surgimiento.

1.3. Objetivos del trabajo

EL objetivo del trabajo es la migración del sistema que debe tener

todas las características que se necesitan y procurar cuidar todos los

pequeños detalles que incluirán en el programa, la manera mas fácil es ir

leyendo e interpretando el código fuente del programa anterior mientras

se codifica el nuevo para verificar donde se podría reducir la cantidad de

líneas de código, de igual manera que se traten de eliminar las partes que

no eran necesarias para encontrar los errores que este tuvo.

1.4. Justificación del trabajo

En un principio el despacho González Alonzo y Asociados, S.C.P. tenía

únicamente trabajos de contabilidad, su trabajo fue aumentando conforme

iba creciendo hasta tener trabajos de auditorias, dando consigo la

necesidad de tener programas especializados o enfocados en la auditoria y

la contabilidad.

5

Page 14: Reporte Itza

En primera instancia se empezaron a comprar programas, pero no

eran exactamente lo que se necesitaba, además eran complejos, por lo

que se optó por contratar personal capacitado, con conocimientos del área

de programación. Es muy importante, ya que se redujo el gasto de en la

compra de programas.

Este sistema es para todas las personas que tienen conocimientos de

contabilidad ya que trabajarán con ellos; desde el momento en el que los

contadores vieron la necesidad de tener programas apropiados para su

trabajo se planteó la necesidad de un sistema para que el personal sea

capaz de crear su propia forma de trabajar acorde a su ambiente laboral.

1.5 Alternativas de solución

Para realizar el proyecto se tomaron en cuenta algunas opciones

teniendo presente sus ventajas y desventajas, procurando tomar la mejor

de ellas a partir del sistema que se tenía anteriormente. Entre las opciones

estaban las de hacer un programa totalmente nuevo, teniendo como base

la estructura y procesos del programa anterior, se pensaba añadir más

módulos, para que esté un poco más completo, eso implicaría empezar

desde cero, trayendo consecuencias como más tiempo en su desarrollo; la

ventaja sería que se desarrollaría tal y como se quiere. La otra opción fue

modificar el código fuente y el diseño del sistema anterior, añadiendo

nuevos módulos, basándose del programa Nomipaq, uno los convenientes

es que tendría casi el mismo interfaz como la versión anterior pero los

usuarios se acoplarían mas rápido al programa porque ya habrán tenido

6

Page 15: Reporte Itza

experiencia con la versión anterior. Aunque una de sus desventajas es que

se tenía que tomar en cuenta como es la estructura del código fuente, eso

incluye los módulos, clases, métodos, funciones, secuencias SQL, etc.,

inclusive hasta la lógica de programación que tiene el programador que

desarrolló el programa. Al final se tomó la segunda opción, la de retomar el

sistema anterior y modificarlo para así crear una nueva versión; se tomó

ésta porque urgía tener el programa y se tenía muy poco tiempo, el tiempo

que se había contemplado estaba expirando.

7

Page 16: Reporte Itza

II. FUNDAMENTO TEÓRICO

Aquí se presentan las bases y fundamentos para el mejor

entendimiento del contenido, en este apartado se explican y relatan los

términos usados así como las herramientas usadas para la realización del

proyecto, en las que se apoya el proyecto solucionar el problema

planteado anteriormente.

2.1. Plataforma .NET

La plataforma .NET proporciona la base de la siguiente generación de

software que permite conectar sistemas, información, dispositivos y

usuarios distintos de un modo más unificado y personalizado. Incorpora

servicios Web XML como el medio para permitir la interoperabilidad entre

tecnologías diferentes. Proporciona a los desarrolladores de software las

herramientas y la tecnología para crear rápida y eficazmente soluciones de

negocios que abarcan múltiples aplicaciones y múltiples dispositivos

cliente entre diversas organizaciones. Permite a los usuarios controlar qué

información y cómo y cuándo se les entrega.

La plataforma .NET incluye una completa familia de productos

creados para trabajar con los estándares de XML e Internet. Estos

productos incluyen los siguientes componentes que trabajan con

soluciones basadas en XML: Herramientas para desarrollar soluciones,

8

Page 17: Reporte Itza

servidores para gestionar, crear e implantar soluciones, servicios para

integrar, conectar y reutilizar soluciones, clientes hardware y software para

proporcionar experiencias sin precedentes a los usuarios.

2.2. Visual Studio .NET

Visual Studio .NET es un entorno de desarrollo integrado que ayuda a

diseñar, desarrollar, depurar e implantar con rapidez soluciones basadas

en el .NET Framework. Se puede acceder a un conjunto común de

herramientas, diseñadores y editores desde cualquiera de los lenguajes de

programación de Visual Studio .NET. Se puede crear aplicaciones Windows

Forms y Web Forms que integren datos y lógica de negocios.

2.3. DB OLE

El DB OLE es un API (Interfaz de programación de aplicaciones)

diseñado por Microsoft para tener acceso a diversos tipos de almacenes de

los datos de una manera uniforme. Es un sistema de interfaces puestos en

ejecución usando el modelo componente del objeto (COM); está de otra sin

relación a OLE. Fue diseñado como un reemplazo de alto nivel sucesor de

ODBC, ampliando su sistema de la característica para apoyar una variedad

más amplia de bases de datos no emparentadas, tales como bases de

datos del objeto y hojas de balance que no ponen necesariamente el SQL

en ejecución.

El DB OLE separa el almacén de los datos del uso que necesita el

acceso a él a través de un sistema de las abstracciones que incluyen el

9

Page 18: Reporte Itza

datasource, la sesión, el comando y los rowsets. Esto fue hecho porque

diversos usos necesitan el acceso a los diversos tipos y fuentes de datos y

no se desea necesariamente tener acceso a funcionalidades con métodos

de tecnología específicos. El DB OLE se divide conceptualmente en

consumidores y abastecedores. Los consumidores son los usos que

necesitan el acceso a los datos, y el abastecedor es el componente de

software que pone el interfaz en ejecución y por lo tanto proporciona los

datos al consumidor.

El DB OLE es parte del apilado de los componentes del acceso de los

datos de Microsoft (MDAC). MDAC es un grupo de tecnologías de Microsoft

que interactúa junto que no prohíba a programadores una manera similar y

comprensiva de desarrollar los usos para tener el acceso a casi cualquier

tipo de dato. Los proveedores OLE del DB se pueden crear para tener

acceso archivos simples de los datos como un archivo de texto y una hoja

de Excel, a través de las bases de datos complejas tales como Oracle,

servidor del SQL y Sybase ASE.

2.4. Visual Basic

Es un lenguaje de programación desarrollado por Alan Cooper para

Microsoft. El lenguaje de programación es un dialecto de BASIC, con

importantes añadidos. Su primera versión fue presentada en 1991 con la

intención de simplificar la programación utilizando un ambiente de

desarrollo completamente gráfico que facilitara la creación de interfaces

gráficas y en cierta medida también la programación misma. Visual Basic

10

Page 19: Reporte Itza

fue discontinuado por Microsoft hace ya varios años. Muchos

programadores están migrando a Real Basic o hacia Delphi que es un

entorno de desarrollo más avanzado y mucho más actual. Microsoft

abandono el desarrollo en Win32 y pasar al Visual Basic.NET que presenta

serias incompatibilidades con el código Visual Basic existente.

2.4.1. Características generales

Es un lenguaje de fácil aprendizaje pensado tanto para programadores

principiantes como expertos, guiado por eventos, y centrado en un motor

de formularios que facilita el rápido desarrollo de aplicaciones gráficas. Su

sintaxis, derivada del antiguo BASIC, ha sido ampliada con el tiempo al

agregarse las características típicas de los lenguajes estructurados

modernos. Se ha agregado una implementación limitada de la

programación orientada a objetos (los propios formularios y controles son

objetos), aunque sí admite el polimorfismo mediante el uso de los

interfaces, no admite la herencia. No requiere de manejo de punteros y

posee un manejo muy sencillo de cadenas de caracteres. Posee varias

bibliotecas para manejo de bases de datos, pudiendo conectar con

cualquier base de datos a través de ODBC (Informix, DBase, Access,

MySQL, SQL Server, PostgreSQL, etc.) a través de ADO.

Es utilizado principalmente para aplicaciones de gestión de empresas,

debido a la rapidez con la que puede hacerse un programa que utilice una

base de datos sencilla, además de la abundancia de programadores en

este lenguaje.

11

Page 20: Reporte Itza

El compilador de Microsoft genera ejecutables que requieren una DLL

para que funcionen, en algunos casos llamada MSVBVMxy.DLL (acrónimo

de "MicroSoft Visual Basic Virtual Machine x.y", siendo x.y la versión) y en

otros VBRUNXXX.DLL ("Visual Basic Runtime X.XX"), que provee todas las

funciones implementadas en el lenguaje. Además existen un gran número

de bibliotecas (DLL) que facilitan el acceso a muchas funciones del sistema

operativo y la integración con otras aplicaciones. Sin embargo esto sólo es

una limitación en sistemas obsoletos, ya que las bibliotecas necesarias

para ejecutar programas en Visual Basic vienen de serie en todas las

versiones de Windows desde Windows 2000.

2.4.2. Aplicaciones

Permite codificar módulos (a veces llamados macros) para las

aplicaciones de Microsoft Office. Especialmente a partir de la versión 6 del

lenguaje, se permite la interacción y generación de objetos remotos que

puedan ser invocados desde páginas de scripts (concretamente las ASP,

aunque no es imposible hacer un enlace empleando JSP), alojándolos en

servidores de Web.

Visual Basic.NET, parte de .NET, es un lenguaje prácticamente

equivalente en funcionalidades a C# (por ejemplo, no admite pseudo-

punteros), añadiendo capacidades de POO como herencia, polimorfismo,

etc.

12

Page 21: Reporte Itza

2.4.3. Versiones

Las versiones de Visual Basic para Windows son muy conocidas, pero

existe una versión de Microsoft Visual Basic 1.0 para MS-DOS (ediciones

Profesional y Estándar) menos difundida y que data de 1992. Era un

entorno que, aunque en modo texto, incluía un diseñador de formularios

en el que se podían arrastrar y soltar distintos controles.

La última versión sólo para 16 bits, la 3.0, incluía ya una detallada

biblioteca de componentes para toda clase de usos. Durante la transición

de Windows 3.11 a Windows 95, apareció la versión 4.0, que podía generar

programas de 16 y 32 bits a partir de un mismo código fuente, a costa de

un gran aumento en el tamaño de los archivos "runtime" necesarios.

Además, se sustituyen los controles VBX por los nuevos OCX. Con la

versión 5.0, se implementó por primera vez la posibilidad de compilar a

código nativo, obteniendo una mejora de rendimiento considerable. Tanto

ésta como la posterior 6.0 soportaban características propias de los

lenguajes orientados a objetos, aunque careciendo de algunos ítems

importantes como la herencia, el polimorfismo y la sobrecarga. La versión

6.0 continúa utilizándose masivamente.

Las versiones actuales de Visual Basic se basan en la plataforma .NET,

la versión 7 del lenguaje fue implementada por Microsoft en el programa

Visual Basic .NET mientras que la versión 8 fue implementada en el

programa Visual Basic 2005. Ambas versiones tienen muchas de las

características del lenguaje original tienen numerosas diferencias que los

13

Page 22: Reporte Itza

hacen incompatibles. En muchos casos para portar un código escrito en

Visual Basic 6 a Visual Basic .Net se hace necesario reescribir parte del

código. La nueva versión del lenguaje es mayormente equivalente a C#

aunque presenta algunas diferencias. Por eso hay un debate sobre la

validez de esta nueva versión del lenguaje y sus ventajas y desventajas

sobre C#.

2.4.4. Ventajas

La facilidad del lenguaje permite crear aplicaciones para Windows en

muy poco tiempo. En otras palabras, permite un desarrollo eficaz y menor

inversión en tiempo que con otros lenguajes.

Permite generar librerías dinámicas (DLL) ActiveX de forma nativa y

Win32 (no ActiveX, sin interfaz COM) mediante una reconfiguración de su

enlazador en el proceso de compilación.

Permite la utilización de formularios (Forms) tanto a partir de recursos

(como en otros lenguajes) como utilizando un IDE para diseñarlos.

Posibilidad de desarrollar y ejecutar aplicaciones de Visual Basic 6.0

en Windows Vista sin realizar cambios en la mayoría de los casos pero no

se logra aprovechar al máximo las características de este sistema como

permite hacerlo Visual Basic 2005 o el próximo Visual Basic 9 de Visual

Studio Orcas (Noviembre 2007).

14

Page 23: Reporte Itza

2.4.5. Inconvenientes

Es software propietario por parte de Microsoft, por tanto nadie que no

sea del equipo de desarrollo de esta compañía decide la evolución del

lenguaje.

En Visual Basic 6.0 y anteriores sólo existe un compilador e IDE,

llamado igual que el lenguaje. No existe forma alguna de exportar el

código a otras plataformas fuera de Windows. Los ejecutables generados

son relativamente lentos en Visual Basic 6.0 y anteriores al ser código

pseudo-interpretado.

Por defecto permite la programación sin declaración de variables.

(Que puede ser sencillamente corregida escribiendo la frase Option Explicit

en el encabezado de cada formulario, en cuyo caso será menester declarar

todas las variables a utilizar, lo que a la postre genera código más puro).

Su sintaxis no es case sensitive (no distingue entre minúsculas y

mayúsculas como C++ por ejemplo). NO permite programación a bajo

nivel ni incrustar secciones de código en ASM.

Sólo permite el uso de funciones de librerías dinámicas (DLL) stdcall.

Fuerte dependencia de librerías y componentes en las versiones 6.0 y

anteriores, lo que dificultaba la distribución de los desarrollos entre

máquinas.

Algunas funciones están indocumentadas.

La escasa implementación de POO en Visual Basic 6.0 y anteriores no

permite sacar el máximo provecho de este modelo de programación.

15

Page 24: Reporte Itza

NO soporta tratamiento de procesos como parte del lenguaje.

El manejo de errores que tiene mediante la orden on error no sigue los

patrones estructurados. No incluye operadores de desplazamiento de bits

como parte del lenguaje. No permite el manejo de memoria dinámica,

punteros, etc., como parte del lenguaje. No avisa de ciertos errores o

advertencias (se puede configurar el compilador para generar ejecutables

sin los controladores de desbordamiento de enteros o las comprobaciones

de límites en matrices entre otros, dejando así más de la mano del

programador la tarea de controlar dichos errores). El tratamiento de

mensajes de Windows es básico e indirecto. La gran gama de controles

incorporados son, sin embargo en algunos casos, muy generales, lo que

lleva a tener que reprogramar nuevos controles para una necesidad

concreta de la aplicación. Esto cambia radicalmente en Visual Basic .NET

donde es posible reprogramar y mejorar o reutilizar los controles

existentes.

Los controles personalizados no mejoran la potencia de la API de

Windows, y en determinados casos acudir a ésta será el único modo de

conseguir el control personalizado deseado.

Su periodo de soporte técnico lo determina Microsoft. En el caso de

Visual Basic 6.0 su soporte extendido dura hasta el 04 de Abril de 2008.

2.4.6. Entornos de desarrollo

Existen dos entornos de desarrollo IDE para Visual Basic: el Microsoft

Visual Basic x.0 para versiones desde la 1.0 hasta la 6.0, hasta la 3.0 y las

16

Page 25: Reporte Itza

de la 4.0 hasta la 6.0 y el Microsoft Visual Studio .NET, entorno integrado

para varios lenguajes entre ellos Visual Basic .NET con edición standard y

profesional (más completa en herramientas pero con licencia comercial) y

edición express (más limitada en herramientas pero gratuita), ambos

diseñados por Microsoft. Existen alternativas gratuitas como SharpDevelop

para .NET y Proyecto Mono.

2.5. Microsoft Access 2000

Es un sistema de gestión de bases de datos relacional creado y

modificado por Microsoft (DBMS) para uso personal de pequeñas

organizaciones. Es un componente de la suite Microsoft Office aunque no

se incluye en el paquete "básico". Una posibilidad adicional es la de crear

ficheros con bases de datos que pueden ser consultados por otros

programas.

2.5.1. Características

Entre las principales funcionalidades de Access se encuentran:

Crear tablas de datos indexadas, modificar tablas de datos, relaciones

entre tablas (creación de bases de datos relacionales), creación de

consultas y vistas.

Consultas referencias cruzadas, consultas de acción (INSERT, DELETE,

UPDATE), formularios, informes, llamadas a la API de Windows, interacción

con otras aplicaciones que usen VBA (resto de aplicaciones de Microsoft

Office, Autocad, etc.), macros, interconexión con entornos de bases de

17

Page 26: Reporte Itza

datos de gran nivel (como por ejemplo SQL Server) a través de vinculación,

soporte de lectura de sistemas de archivos individuales (como FoxBase y

similares) a través de vinculación e importación de datos, además, permite

crear frontends - o programa que muestra la interfaz de usuario - de bases

de datos más potentes ya que es un sistema capaz de acceder a tablas

externas a través de ODBC como si fueran tablas Access.

2.5.2. Generalidades

Es un software de gran difusión entre pequeñas empresas (PYMES)

cuyas bases de datos no requieren de excesiva potencia, ya que se integra

perfectamente con el resto de aplicaciones de Microsoft y permite crear

pequeñas aplicaciones con unos pocos conocimientos de programación.

Tiene un sistema de seguridad de cifrado bastante primitivo y puede

ser la respuesta a proyectos de programación de pequeño y mediano

tamaño.

2.5.3. Inconvenientes

Para bases de datos de gran calibre (en cuanto a volumen de datos o

de usuarios) es recomendable usar otros sistemas como SQL o Microsoft

SQL Server, y código VBA (Visual Basic para Aplicaciones).

Entre sus mayores inconvenientes figuran que no es multiplataforma,

pues sólo está disponible para sistemas operativos de Microsoft, y que no

permite transacciones. Su uso es inadecuado para grandes proyectos de

18

Page 27: Reporte Itza

software que requieren tiempos de respuesta críticos o muchos accesos

simultáneos a la base de datos.

2.6. NomiPAQ 2001

Es el sistema de Administración de Nóminas con la mayor

transparencia y precisión del mercado.

Realiza los procesos de cálculo de acuerdo a las necesidades de la

empresa y de acuerdo a las últimas disposiciones de la ley. Obtiene

información de los empleados, con unas vistas amigables, refiriéndose a

que son de fácil compresión. Hace con precisión con cálculos de aguinaldo,

PTU, prima vacacional y finiquito.

Se puede conectar al SUA (IMSS), DEM-DIM (SHCP), relojes chocadores

y a los sistemas de pago electrónico de los principales bancos. Realiza

cedulas de trabajo en Excel para hacer reportes. Verifica paso a paso los

cálculos del ISTP e IMSS mediante una simulación con salida a Excel. Tiene

un recordatorio para recordar los compromisos a través de una agenda

fiscal.

2.6.1. Módulos principales del sistema

Captura de movimientos (Prenómina, Sobre Recibo), hoja Electrónica,

procesos de cálculo de salarios (Cálculo de Nómina, Aguinaldo, PTU,

finiquito), asistente para exportación e importación de datos, editor de

fórmulas, agenda de disposiciones fiscales.

19

Page 28: Reporte Itza

2.6.2. Principales características

Multiempresa, permite crear las empresas que se necesiten sin costo

adicional, hoja electrónica que permite realizar reportes a la medida,

fotografía del empleado, periodos de nómina configurables (semanal,

decenal, catorcenal, quincenal, mensual, etc.) en la misma empresa,

fórmulas preinstaladas para realizar el cálculo automático de las

remuneraciones de ley, editor de fórmulas flexible e ilimitado, que le

permite hacer cualquier tipo de cálculo adicional, incluye una vista

denominada Prenómina que permite ingresar de forma dinámica

movimientos de percepciones, deducciones, obligaciones, días y horas en

una hoja tabular, similar a una hoja de cálculo, cumple con todos los

requisitos vigentes que establece la ley y reglamentos del IMSS, Infonavit,

ISR, SHCP, Ley Federal del Trabajo, agenda de Disposiciones Fiscales,

procesos de cálculo de salarios (Cálculo de Nómina, Aguinaldo, PTU,

Finiquito y Modificaciones de Salario), interfaz directa con sistemas de

pago electrónico de los principales bancos, SUA (IMSS), DIMM (SHCP) y

reloj checador, integración total a CheqPAQ (Tesorería y Bancos) y

ContPAQ (Contabilidad), importación y exportación de información a través

de archivo texto hacia sistemas desarrollados por terceros, reporteador

gráfico, actualización del sistema por Internet, incluye una herramienta

para dudas en el uso del sistema llamada “Mi Asesor”, manual electrónico,

impresión rápida en modo texto para impresoras de matriz de punto.

20

Page 29: Reporte Itza

2.6.3. Funciones

NomiPAQ 2001 es la solución ideal porque ayudan a desempeñar de

principio a fin, las funciones de cualquier día de trabajo de una manera

ágil, gráfica y 100% confiable:

Permite la captura en forma de sobre-recibo, haciendo más ágil la

localización de los movimientos de cada período de nómina por cada uno

de los empleados.

Permite realizar procesos de cálculo de forma automática y

programable, como el cálculo de nómina periodo por periodo, cálculos

anuales (aguinaldo, PTU, prima vacacional), cálculos especiales (cambio de

salarios), cálculo invertido y finiquitos entre otros más.

Ayuda a llevar individualmente un control de las vacaciones

disfrutadas y pendientes por disfrutar por cada empleado.

El control de las incapacidades es total ya que ayuda a registrar las

que han sufrido los empleados desde su ingreso a la empresa hasta la

fecha. Permite crear filtros para agrupar a los empleados con

características comunes entre sí, y así agilizar los procesos de captura y

cálculo de nómina. Es un sistema que permite manejar periodos abiertos,

lo que significa que se puede volver a imprimir la lista de raya, recibos de

nómina, realizar la interfaz a ContPAQ 2001 y CheqPAQ 2001, hacer

modificaciones a las nóminas anteriores. Esto solo lo podrán realizar los

usuarios que tengan prioridades para ello.

21

Page 30: Reporte Itza

2.7. Seagate Cristal Reports 8

Es el estándar mundial para la elaboración de informes en el Web y de

escritorio, está diseñado para trabajar con la base de datos para ayudar a

analizar e interpretar información importante. Facilita la creación de

informes simples y dispone también de herramientas poderosas necesarias

para generar informes complejos o especializados.

2.7.1. Propósito

Los informes son herramientas de administración cuyo propósito

principal es brindar una comprensión rápida de los elementos esenciales

dentro de una colección de datos en bruto, y la relación mutua que existe

entre dichos elementos, para apoyar en la toma de decisiones efectiva.

Para que un informe sea efectivo, debe presentar los datos correctos, en

forma lógica. Si el informe presenta datos equivocados o si presenta los

datos correctos pero de manera ilógica, puede conducir a un proceso de

toma de decisiones lento, o peor aún, equivocado. Un buen punto de

partida para el desarrollo de informes es poner por escrito el propósito del

informe en una o dos líneas. El enunciado del propósito ayuda a que se

enfoquen a sus metas principales, y provee a un punto de partida y una

meta final para el informe. A continuación se dan algunos ejemplos de

enunciados de propósito:

El propósito del informe es mostrar ventas mensuales y ventas

acumuladas anuales por representante de ventas, comparar cifras

22

Page 31: Reporte Itza

presentes con las del año anterior, y marcar representantes cuyas cifras

de venta no alcanzan los estándares de la empresa.

III. DESCRIPCIÓN DEL TRABAJO

En el primer día de la estancia se hizo la presentación ante los demás

compañeros de trabajo siendo asignado en el departamento de auditoria

para que se ayudara en los programas que están siendo desarrollados por

parte del ingeniero en sistemas.

Se destinó una computadora portátil para la realización del trabajo

durante la estancia ya que poseía todos los programas necesarios para

realizar las actividades necesarias aunque la laptop era demasiado lenta,

como para ejecutar los programas que se precisan en un cierto momento

como Visual Studio.

En el transcurso de la primera semana se asignaron tareas por

realizar, ciertas actividades eran en primer lugar estudiar y repasar

algunos temas sobre el lenguaje Visual Basic .NET, sus propiedades,

métodos, variables, etc.

Otra de las prácticas era con el programa Seagate Crystal Reports.

Para hacer los diseños de los reportes de nómina, de empleados, de

departamentos, de puestos, de turnos y el reporte de datos generales de

la empresa. Para eso se tuvo que usar algún sistema gestor de base de

datos para enlazar la base de datos a los reportes para visualizar el

23

Page 32: Reporte Itza

contenido de las tablas o mostrar los datos o registros de cualquier tabla.

El programa que se uso fue el de Access y no por ser el mejor sino porque

casi todas las funciones que tiene se hacen de manera gráfica haciéndolo

un poco más accesible para las personas que trabajarán con el, no

necesita de código fuente para realizar las bases de datos ni tablas,

excepto en el caso de consultas, formularios e informes que si necesitan

que se introduzca código, pero estos procedimientos no son necesarios en

las aplicaciones que se desarrollaron, el único que si usa son las consultas;

pero en esta ocasión las consultas se harán desde programas externos

como Visual Studio 2005 ó el Seagate Crystal Reports.

Estas actividades se realizaron en el primer mes, además de éstas:

se hizo el formateo para después instalar el software a la computadora

asignada para el desarrollo del proyecto, refiriéndose a Visual Studio 2005,

Seagate Crystal Reports, Nomipaq 2006, Microsoft Developer Network;

recopilación de información de la empresa a la que se le va a diseñar el

software; diseño del flujo de información y una actividad extra: configurar

un impresora en la red.

En el mes de junio se empezó a trabajar con el módulo designado,

este fue el de Cálculo del Finiquito, por lo que primero se investigó cuales

son las partes que lo conforman, sus funciones, y que tipos de cálculos

hace, basándose en el programa Nomipaq; seguidamente se continuó con

el siguiente paso que es el diseño del módulo. Una de las propiedades que

se tenía que usar y era indispensable es la aritmética de fechas y que

24

Page 33: Reporte Itza

sirvieron de mucha ayuda. Esto sirvió ya que todos los cálculos que se

necesitaban hacer se basaban en las fechas, las diferencias de días entre

fechas, días transcurridos del año, días transcurridos a partir de una fecha

específica; por lo que se tenían que sumar, restar, inclusive multiplicar los

años, meses, semanas y días. En la última semana de junio de empezó la

codificación para finalizar a principio del mes de agosto, aunque con

muchos errores al final que se fueron depurando mientras se encontraban

estos.

En cuanto al costo, para realizar este proyecto de programación no se

hicieron gastos porque el despacho ya contaba con todas la herramientas

necesarias para poder trabajar cómodamente, y por parte del software no

se tuvieron que comprar pues la empresa ya contaba con el software

necesario, originales y con licencias para no tener problemas legales.

Aunque cabe mencionar el apoyo proporcionado por la empresa para el

alumno de una cantidad no mayor de 500 pesos cada quince días, como

ayuda durante todo el desarrollo del sistema.

En cuanto al beneficio, pues en este caso se alcanzaron la gran

mayoría de las expectativas propuestas en un principio, aunque se le dio

una pausa al proyecto por todas los errores que fueron apareciendo

mientras se hacían las pruebas, errores que no estaban contemplados

antes lo que ocasionó un atraso en la desarrollo del sistema.

25

Page 34: Reporte Itza

IV. CONCLUSIONES

Los logros alcanzados en este proyecto no fueron exactamente los que

se pretendían alcanzar. En primer lugar llevó mas tiempo del que se había

acordado, en un principio se planeó que el trabajo se terminaría

aproximadamente en cuatros meses aproximadamente con la ayuda del

alumno designado iniciado aproximadamente el año y se debía concluir en

julio del presente año, pero sin embargo, por la complicación del

programa, ya que es muy complejo y se tenía que cuidar que no tuviera

errores, el proyecto se alargó hasta el mes de septiembre, por lo que

ocasionó su suspensión.

Según uno de los objetivos es terminar el desarrollo en un plazo no

mayor al año y medio, por desgracia este primer objetivo y uno de los más

importantes, no se logró. Eso es lo que la empresa tenía planeado y para

poder terminar necesitaron la ayuda de un alumno para que hiciera sus

estadías en aquel lugar. Por lo que trajo como consecuencia el atraso del

otro sistema que ya estaba programado para desarrollarse a mediados del

mes agosto del presente año.

Pero no todas las cosas son negativas, ya que se avanzó mucho con

este programa y resultó ser un programa confiable pero no para realizar

algunas tareas que se le habían programado por lo que se optó por tener

Page 35: Reporte Itza

un mantenimiento correctivo por parte del ingeniero en sistemas durante

el uso por parte de algún contador publico de la empresa.

REFERENCIAS

[1] Agapea Factory (2002). Seagate Cristal Reports 8, [En línea]. País.

Disponible en http://www.agapea.com/Seagate-Crystal-Reports-8-

Manual-de-referencia-n8653i.htm [Consultado el 28 de junio 2007].

[2] La Web del programador (2000). Listado de cursos: Crystal

Reports. [En línea] .Disponible en

http://www.lawebdelprogramador.com/cursos/

mostrar.php?id=22&texto=Crystal+Report [Consultado el 28 de junio

de 2007]

[3] Balena, Francesco. (2000). Programación Avanzada con Microsoft

Visual Basic, país: McGrawHill

Page 36: Reporte Itza

ANEXOS

Glosario de Términos

Clases / Objetos: Prácticamente todo lo que se maneja en el

entorno .NET es una clase u objeto, de hecho todas las clases derivan de

una clase u objeto básico: la clase System.Object.

Encapsulación: La posibilidad de ocultar el código usado para

implementar un método o cualquier otro procedimiento o función de forma

que lo único que interese sea el interface expuesto por la clase u objeto.

Formulario (ventana): Un formulario es una ventana de Windows la cual

se usa para interactuar con el usuario, ya que en dicha ventana o

formulario, estarán los controles y demás objetos gráficos que se

mostrarán al usuario, llamados también “formas” o Forms de su nombre

en ingles.

Handles: En VB.NET se usa seguido del nombre del evento, para indicar

qué evento es el que se maneja en el procedimiento indicado.

El formato suele ser, Sub Nombre (parámetros) Handles Objeto.Evento

Instancia: Para usar una clase u objeto, se declara una variable y a esa

variable asignarle el objeto o clase en cuestión para que se pueda usarlo.

Interface / implements: Los interfaces a diferencia de las clases, no hay

que escribir código para los métodos o propiedades que expone,

Page 37: Reporte Itza

simplemente se indica la "declaración". Usando Implements, se pueden

usar esas interfaces en las clases, aunque hay que escribir el código de

cada método o propiedad implementado.

Me this: La palabra clave (o instrucción) Me hace referencia a la clase

actual. Por ejemplo Me.Width se refiere a la propiedad Width de la clase

actual. En C# en lugar de Me es this.

Método: Un procedimiento (Sub, Function -función- o Property -

propiedad-) que se usa para realizar una tarea específica en la clase o

módulo.

Modulo: Son espacios en los cuales se incluyen declaraciones de

variables, procedimientos, funciones, etc. El código contenido en un

módulo siempre está disponible de forma directa, sin necesidad de crear

una instancia de dicho módulo.

Poliformismo: La posibilidad de usar en clases diferentes propiedades o

métodos con el mismo nombre de forma que cuando se usen no nos

preocupe a que clase pertenece.

Parámetros: Indican los valores que deben usar para la tarea que debe

realizar.

Sub: Un procedimiento SUB es como una instrucción, es decir, realiza una

tarea (ejecuta el código que haya en su interior), pero no devuelve un

resultado.

Sobrecarga (overload): Se dice que un método está sobrecargado

cuando existen distintas versiones de dicho método en la clase.

Page 38: Reporte Itza

Objeto de base de datos: Un objeto de base de datos es un componente

independiente de una base de datos. Un objeto de base de datos

interactúa con los datos físicos y a continuación, presenta estos datos en

un formato especializado. Tabla: Una tabla es una colección de datos

acerca de un tema específico que se almacena en filas y columnas,

Consulta: Una consulta es una instrucción para recuperar información que

se encuentra en un conjunto de filas. Puede utilizar una consulta para

recuperar información de una tabla única o varias tablas basadas en

criterios específicos. Select query: Una consulta de selección recupera

información que desea a partir de una o más tablas de una base de datos.

La consulta de selección de igual manera se puede realizar cuelga

manipulación.