“Sistema de Automatización de Reportes y Comisiones (SARC)”

Page 1

“Sistema de Automatización de Reportes y Comisiones (SARC)”

Informe de Estadía Empresarial que para obtener el título de Técnico Superior Universitario en Programación.

Presenta: Arturo Romero Márquez

Asesor: Josué Poot Peña

Firma: ____________________

1


ÌNDICE RESUMEN

4

CAPÍTULO I. INTRODUCIÓN

5

PLANTEAMIENTO DEL PROBLEMA

5

OBJETIVOS

6

IMPORTANCIA DEL ESTUDIO

6

LIMITACIONES DEL ESTUDIO

6

JUSTIFICACIÓN

6

CAPÍTULO II. MARCO REFERENCIAL

8

CARACTERIZACIÓN DE LA EMPRESA

8

ANTECEDENTES DE LA EMPRESA

8

MISIÓN

9

VISIÓN

9

ESTRUCTURA ORGANICA

10

SITUACIÓN ACTUAL Y COMPETENCIA.

13

ANALISIS FODA DE LA SECRETARIA DE PESCA

14

CAPITULO III: MARCO TEÓRICO

16

LINEA TEORÍCA

16

TOMA DE REQUERIMIENTOS

16

DISEÑO

17

BASES DE DATOS

18

LENGUAJES DE PROGRAMACIÓN (WEB)

19

SEGURIDAD

24

INYECCIÓN SQL

25

CONCEPTOS

26

2


CAPITULO IV: METODOLOGIA

29

DISEÑO DE INVESTIGACIÓN

29

OBJETIVO O PROPÓSITO

28

JUSTIFICACIÓN DEL PROYECTO

29

TIPO DE INVESTIGACIÓN

29

HIPÓTESIS

29

CAPITULO V: DESARROLLO DEL PROYECTO

30

ANÁLISIS DE LOS DATOS

31

RESULTADOS

40

PROPUESTAS

40

CONCLUSION

41

REFERENCIAS

43

LISTA DE TABLAS

44

ANEXOS

45

Figura1: Oficio de Comisión

45

Figura 2: MySQL Administrator

46

Figura 3: Tablas Creadas

46

Figura 4: Adobe Dreamweaver CS3

47

Figura 5: Adobe Photoshop CS3

48

Figura 6: Autentificación

49

Figura 7: Sección “menú.html”

50

Figura 8: Sección “main.html”

50

Figura 9: Sección “nuevacomision.php”

51

Figura 10: Visualización de la comisión creada

52

Figura 11: Selección de comisión para generar reporte

52

3


RESUMEN Este documento trata sobre la incorporación de nuevas tecnologías y automatización de procesos para la Secretaria de Pesca del Estado de Campeche. Esto mediante la elaboración de una aplicación, donde los usuarios sean capaces de crear reportes de comisión de una manera más eficaz. Lo cual permita el mejor desempeño de los empleados en tareas de mayor importancia. También se incluye información sobre la empresa en general, los empleados que laboran en ella, así como su función a nivel estado. De igual manera podemos encontrar definiciones de protocolos y términos utilizados para el desarrollo de esta aplicación.

4


CAPÍTULO 1. INTRODUCIÓN

PLANTEAMIENTO DEL PROBLEMA En la actualidad las oficinas requieren el uso de herramientas que permitan a los usuarios agilizar los procesos particulares de cada área. Lamentablemente la Secretaria de Pesca del Estado de Campeche, no hace uso total de estas herramientas, ya que no cuenta con desarrolladores que les permita crear aplicaciones para agilizar estos procesos. Los documentos de comisión son creados en Microsoft Word utilizando fotografías de los empleados a comisionar, y cada inserción de imagen consume espacio en el documento, teniendo al final del año un documento con formato .doc., de un tamaño mayor a 100mb, lo cual hace que la apertura de este sea muy lenta para los equipos. Planteado nuestro problema es necesario incluir un cuestionamiento que nos servirá como base para la resolución del problema en este caso sería, ¿Cómo agilizar la creación de documentos de comisión de una forma digital sin necesidad de utilizar software de ofimática? Algunas restricciones son la falta de uso de TI para llegar al objetivo, el uso de un procesador de texto para la creación de estas comisiones, la limitación de tiempo para estas tareas y la limitación de recursos para el desarrollo de este proyecto

OBJETIVOS Crear una aplicación que permita al área de Coordinación Administrativa facilitar la creación de formatos de comisión para desempeñar trabajos externos permitiendo exportar estos documentos a formato PDF para poder así revisarlos en cualquier momento.

5


IMPORTANCIA DEL ESTUDIO Hemos nombrado al sistema en desarrollo SARC (Sistema de Automatización de Reportes y Comisiones). La dependencia donde se implementará el sistema SARC se estará ampliamente beneficiada por la automatización del trabajo administrativo, ya que el sistema permitirá el ahorro de tiempo en la creación de comisiones y los reportes de estos, permitirá el ahorro de espacio en el servidor, aumentara drásticamente el tiempo de respuesta para la consulta de estas comisiones, así como permitirá consultar estas desde cualquier equipo que cuente con acceso a internet, ya que el sistema será creado en entorno web.

LIMITACIONES DEL ESTUDIO Algunas de las limitaciones para la creación de esta aplicacion son, la falta de recurso presupuestal para la contratación de personal que pueda desarrollar un sistema que permita la solución de estos problemas. La falta de equipo disponible para la creación de esta aplicación, la carencia de software propietario que permita realizar estas tareas y la falta de personal entrenado para el desarrollo de una aplicación de esta índole.

JUSTIFICACIÓN Gracias al haber participado en las labores diarias de la Secretaria de Pesca en el área de informática, y el haber apoyado de diversas maneras al área administrativa de esta institución, la cual es la encargada de la creación de los oficios y reportes de comisión para los empleados. Se observa que el tiempo dedicado a la creación de estos reportes así como el tamaño que ocupa los documentos creados en el servidor son más grandes de lo óptimo.

6


Debido a estas razones lo ideal es la creación de este sistema SARC, el cual agilizara estos procesos así como permitirá que estos documentos sean alojados en el server con un tamaño mínimo, ya que solo alojara referencias a una base de datos.

7


CAPÍTULO 2. MARCO REFERENCIAL CARACTERIZACIÓN DE LA EMPRESA

Razón social: Gobierno del Estado de Campeche

Dirección Fiscal: Calle 8 entre 61 y Circuito Baluartes s/n, Colonia Centro, Campeche, Campeche, Mexico.

Teléfono: 01 (981) 81 12779 y 81 69383

R.F.C. GEC950401659

Objeto social: Secretaría de Pesca del Estado de Campeche

Número de trabajadores 54 La secretaría de Pesca como dependencia del poder ejecutivo del Estado, tiene a su cargo el despacho de los asuntos que expresamente le encomienda la Ley Orgánica de la administración pública del estado en su Artículo 23 y de más leyes, decretos, acuerdos, convenios y órdenes del Gobernador del Estado.

ANTECEDENTES DE LA EMPRESA Desde el Plan Estatal de Desarrollo 1997-2003, establecimos el compromiso de crear la estructura que resuelva y coordine con la federación en forma directa la actividad pesquera y ofrecer mayores respuestas a las demandas ciudadanas. Por ello en diciembre de 1997, se impulsa la reforma de los artículos 9 y 23 de la Ley Orgánica de la Administración Pública, creándose la Secretaría de Pesca y con fecha 6 de mayo de 2002 se publica su reglamento interior.

8


Principales aspectos Orgánico, Administrativo y de Control. a)

Aspectos Orgánicos.

En materia funcional-normativa, en el Estado de Campeche la reforma administrativa propicia la modificación de las estructuras de la administración pública, adecuando y distribuyendo atribuciones y competencias en las instituciones con el objeto de plantear el nuevo papel del gobierno. En materia estructural, hasta 1997 la actividad pesquera formaba una parte sustantiva del medio ambiente y recursos naturales, por ello se considera una Dirección de Desarrollo Pesquero. Esta administración, en cumplimiento a lo que establece el Plan Estatal de Desarrollo 19972003 y con el objeto de atender mejor las demandas de la sociedad, el Ejecutivo del Estado, impulsa la reforma a la Ley Orgánica de la Administración Pública, creando como dependencia la Secretaría de Pesca, otorgándole amplias facultades en beneficio de la actividad pesquera. En materia de recursos humanos, desde el año 1998 la Secretaría de Pesca operó con 34 plazas.

MISIÓN Conducir actividades de planeación, coordinación ejecución, evaluación y control con base en los objetivos, políticas, estrategias, prioridades y restricciones que establezca el Plan Nacional de Desarrollo, El Plan Estatal de Desarrollo y el Gobernador del Estado.

VISIÓN Coordinar y Evaluar en los términos de la legislación aplicable de las acciones del sector y formular y conducir la política estatal en materia de recursos pesqueros, regulación de las

9


pesquerías y desarrollo de la actividad pesquera con la participación que corresponda a otras dependencias del Estado y del Municipio. La secretaría de pesca profesionales, así como su historia, misión, visión, valores y estructura. La empresa está dividida en las siguientes áreas: Coordinación Administrativa: Encargada de la administración, contabilidad, y generación de diversos oficios para pagos, comisiones y movimientos económicos de la secretaria (área en la que se desarrolla la estadía empresarial). Acuacultura: Encargada de la investigación biológica de las especies en el estado y de las mejoras biotecnológicas que permitan aumentar los índices de producción de pescados y mariscos en el estado. Desarrollo Pesquero: Promueve el desarrollo de granjas y crea programas que permiten a los pescadores vender su producto desarrollando estrategias acuícolas de una manera eficaz.

ESTRUCTURA ORGANICA La Secretaría de Pesca, conforme al acuerdo que establece las unidades administrativas de las dependencias, de fecha 19 de enero de 1998, define como áreas estructurales las siguientes: •

Oficina del Titular

Subsecretaría de Pesca

Dirección de Desarrollo Pesquero

Dirección de Acuacultura

10


Coordinación Administrativa.

En 2002, en el marco de las acciones de reorganización y reestructuración establecido en el PRODAP y la publicación de su reglamento interior, la dependencia suprime una subsecretaría y queda la siguiente apertura presupuestal: •

Oficina del Titular

Dirección de Desarrollo Pesquero

Dirección de Acuacultura

Coordinación Administrativa.

La Carta de Organización hasta nivel departamental validada a julio de 2002 y que actualmente está vigente es la siguiente:

11


Organigrama tomado del manual de Estructuras de la Secretaria de Pesca: .Vol2, pag 1: ME1000.1

No. 01 02 03 04 05

Nombre C. ING. OCHOA PEÑA RAMON GABRIEL C. ING. CEBALLOS FUENTES AGAPITO C. ING. RAMON EFRAIN RIVERO VIVAS C. BIOL. ALDANA PERERA JUAN GABRIEL C. LICDA. PACHECO BALAM CHERYL

06 07 08

C. NAGARIAN NIEVA SARA GUADALUPE C. C.P. REYES JIMÉNEZ MARÍA ENRIQUETA C. FERNÁNDEZ QUIJANO GERARDO A.

Unidad Oficina del Titular Oficina del Titular Desarrollo Pesquero Acuacultura Oficina del Titular

Cargo Secretario Subsecretario Director Director Subdirectora de la Unidad

Oficina del Titular Coordinación Admiva. Coordinación Admiva.

Jurídica Secretaria Técnica Coord. Admivo. Subdirector de Informática y Registro Pesquero

09 10 11 12 13 14

C. ING. PALI DZIB MARBEL DE LA LUZ C. ING. NOBLES UC ANTONIO C. CHIQUINI GARCÍA DORA MARÍA C. ING. CAB CALAN FREDY CANDELARIO C. BR. ORTEGA OLIVARES SANTIAGO B. C. P. EN L.A.E. GONZALEZ CAMPOS JULIA E.

Desarrollo Pesquero Acuacultura Oficina del Titular Desarrollo Pesquero Desarrollo Pesquero Acuacultura

Jefe de Depto. Jefe de Depto. Secretaria Ejecutiva “B” Jefe de Depto. Jefe de Depto. Jefe de Depto.

12


15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54

C. ING. CALAN EHUAN LUIS ENRIQUE C. TEC. ESCAMILLA GONZALEZ JUAN DE D. C. FLORES HERRERA FERNANDO C. MISS AGUILETA AVELINO C. TEC. CHAC PÉREZ TOMAS C. ZAPATA CASANOVA FRANCISCO JAVIER C. BR. CANEPA CETINA HUMBERTO JESÚS C. JIMÉNEZ SÁNCHEZ MIRNA LEONOR C. ZAPATA CASANOVA ROBERTO MANUEL C. CANUL DIAZ MARTHA DE LOS ANGELES C. DZUL MIJANGOS LIZBETH JAQUELINE C. L.A. VERA GÓMEZ ENRIQUE DANIEL C. UC PIÑA JULIO ALEJANDRO C. ESPADAS CHAN ALBINA JUDITH C. CANTUN POOT DIANA DE LA CRUZ C. JIMÉNEZ MARTINEZ SANDRA ILIANA C. RUIZ CARRILLO GUSTAVO C. ZAPATA SANDOVAL EDI C. ALDANA BRICEÑO EDGAR RAMÓN C. GÓMEZ LOPEZ ELIU C. CINDI VIANEY GONZALEZ DZUL C. RUBY SELENE LOPEZ ORTEGON C. ING. RAUL TADEO SOSA C. ING. DULCE AURORA CASANOVA UC C. LIC. JORGE ALBERTO CANTUN POOT C. ARQ. ALBERTO ROMAN MISS VAZQUEZ C. MARISELA GONZALEZ JUAREZ C. LIC. LUIS ALBERTO BALAN PACHECO C. ABIMAEL FABIAN REDA ESCAMILLA C. FABIAN COLLI URIBE C. JUAN CARLOS GANZO DOMINGUEZ C. JOSE FELIPE PALMA SANCHEZ C. NALLELI AKE AKE C. JOSE CANDELARIO SILVA SEGOVIA C. ESAU UC PIÑA C. ESMERALDA TOLEDO TRESS C. LIC. ANA TERESA REYES CARRERA C. ING. YOLANDA CU QUIJANO C. MANUEL DOMINGO ROSADO C. MARTHA MORALES TORRES

Acuacultura Acuacultura Desarrollo Pesquero Desarrollo Pesquero Acuacultura Acuacultura Desarrollo Pesquero Coordinación Admiva. Coordinación Admiva. Coordinación Admiva. Coordinación Admiva. Coordinación Admiva. Coordinación Admiva. Desarrollo Pesquero Acuacultura Desarrollo Pesquero Coordinación Admiva. Coordinación Admiva. Coordinación Admiva. Coordinación Admiva. Coordinación Admiva. Desarrollo Pesquero Desarrollo Pesquero Acuacultura Oficina del Titular Acuacultura Oficina del Titular Desarrollo Pesquero Desarrollo Pesquero Desarrollo Pesquero Coordinación Admiva. Acuacultura Coordinación Admiva. Acuacultura Oficina del Titular Oficina del Titular Desarrollo Pesquero Desarrollo Pesquero Desarrollo Pesquero Coordinación Admiva.

Jefe de Depto. Jefe de Depto. Analista Especializado Analista Especializado Analista Especializado Analista Especializado Analista Secretaria Ejecutiva “C” Analista Analista Analista Analista Chofer “B” Secretaria “D” Secretaria “E” Recepcionista “E” Intendente Velador Velador Velador Promotor Promotor Promotor Promotor Promotor Promotor Promotor Promotor Promotor Promotor Promotor Promotor Promotor Promotor Promotor Promotor Promotor Promotor Promotor Promotor

(Tabla 1: Empleados de la Secretaria de Pesca del Estado de Campeche)

SITUACIÓN ACTUAL Y COMPETENCIA. En los últimos 6 años la Secretaria de Pesca ha presentado una disponibilidad pública al quehacer del Gobierno Estatal. Con la disponibilidad a la ciudadanía para el mérito poblacional así como la generación de empleos con programas y acuerdos presentados. A continuación se muestra una tabla con los programas generados y las tazas esperadas y alcanzadas

13


Programa 1999

Medida

Programa de Empleo Temporal

Programada Alcanzada

Empleos

391

831

Empleos

1960

1981

A. Financiero

1180

1168

Grupo

1

1

Cruceros

0

4

Contratos

0

5

Despensas

0

580

Cruceros

0

4

Apoyo al Sector Social Camaronero

Créditos

0

24

Seguro de Vida Colectivo

Personas

0

467

F. de Inversión y Admón. del Sector Social Camaronero

Créditos

7000

2247

Programa de Inspección y Vigilancia Veda de Camarón

Cruceros

0

7

Programa de Empleo Temporal

Empleos

0

174

2000 Programa de Empleo Temporal Fondo de Inversión y Administración del Sector Pesquero Apoyo al Sector Social Camaronero Capacitación Productores del Sector Social Camaronero Inspección y Vigilancia Veda de Camarón 2001 Fondo de Garantía Líquida Flota Camaronera Fomento Mediana Altura Apoyo al Sector Social Camaronero Inspección y Vigilancia Veda de Camarón 2002

(Tabla 2: Programas generados, tazas esperadas y alcanzadas)

En el área de Transparencia la Secretaria de Pesca ha rendido cuentas a este organismo cumpliendo todas las normativas que el sistema ordena.

ANALISIS FODA DE LA SECRETARIA DE GOBIERNO DEL ESTADO DE CAMPECHE FORTALEZAS •

Personal capacitado en relación a las artes de pesca y procesos acuicolas

14


Experiencia profesional en las áreas de servicios

Ambiente de trabajo amistoso y respetuoso

Servicios definidos

Compromiso de los empleados con su trabajo

DEBILIDADES •

Presupuesto económico limitado

Equipos tecnológicos anticuados

Falta de uso de TI

OPORTUNIDADES •

Capacitación

Oportunidad de implementación de nuevas tecnologias

Automatización de procesos

AMENAZAS •

Plantones o Manifestaciones

Limitación de recursos para nuevos proyectos

15


CAPITULO III: MARCO TEÓRICO

LINEA TEORÍCA La Secretaria de Pesca del Estado de Campeche, cuenta con sistemas y programas en red que permiten a los usuarios trabajar en diferentes funciones de una forma compartida. Pero aun así existen varios procesos que siguen siendo creados a mano y la información no es digitalizada lo cual causa que no se puedan validar de manera eficaz ciertas documentaciones. Es por eso que nació la idea de crear un sistema de Automatización de comisiones , donde se pueda llevar el control de dichos documentos con el fin de poder crearlos, guardarlos, administrarlos y mostrarlos en bases de datos alojadas en el servidor central de esta misma institución. De igual forma, con éste sistema Web, se busca que la Secretaria de Pesca del Estado de Campeche de un paso adelante y empiece a digitalizar su información, teniendo informados a sus trabajadores acerca de los diferentes documentos creados y los reportes de estos.

16


Debemos de tener ciertos conceptos claros antes de poder comprender el campo de aplicación de este sistema, los cuales se explicaran a continuación:

TOMA DE REQUERIMIENTOS Las necesidades de la secretaria están enfocadas a la digitalización de los procesos administrativos, que los empleados generan diariamente, para evitar el consumo masivo de papel y permitir reducir los costos que generan. El permitir el fácil acceso a documentación por medio de los mismos sistemas de computo sin tener que buscar dentro de archiveros que llevan años en la institución.

DISEÑO Este debe adecuarse a las necesidades de la empresa utilizando colores atractivos a los usuarios, así como también debe de contar con los logotipos de la secretaria. En todos los módulos el sistema debe contar con un encabezado el cual permita a los usuarios saber en qué proceso se encuentran. Debe contar con una interface intuitiva y fácil de ser digerida por los diferentes usuarios de la institución, sin importar su nivel en tecnologías de información. Los usuarios deben de tener control sobre el sistema, es decir seccionar adecuadamente cada modulo del sistema para que de esta forma no sientan que se encuentran en un proceso infinito. Sistema seguro, cada encargado de la creación de documentos de comisión y reportes, dependiendo del área administrativa tendrán un nombre de usuario y contraseña, el cual les permitirá el acceso al sistema.

17


La aplicación debe de ser consistente con las expectativas del usuario, de acuerdo a un aprendizaje previo. El sistema debe de contar con una validación en los procesos de llenado de los formularios, lo cual haga saber al usuario que esta omitiendo un campo, y centrar su atención en el, para así no omitir ninguno de estos.

Ley de Fitts indica que el tiempo para alcanzar un objetivo con el ratón está en función de la distancia y el tamaño del objetivo. A menor distancia y mayor tamaño más facilidad para usar un mecanismo de interacción.(Vease: webgrafia: http://es.wikipedia.org/wiki/Ley_de_Fitts)

BASES DE DATOS Una base de datos o banco de datos es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso. En la actualidad, y debido al desarrollo tecnológico de campos como la informática y la electrónica, la mayoría de las bases de datos están en formato digital (electrónico), que ofrece un amplio rango de soluciones al problema de almacenar datos. Existen unos programas denominados sistemas gestores de bases de datos, abreviados SGBD, que permiten almacenar y posteriormente acceder a los datos de forma rápida y estructurada. Las propiedades de estos SGBD, así como su utilización y administración, se estudian dentro del ámbito de la informática. Aunque las bases de datos pueden contener muchos tipos de datos, algunos de ellos se encuentran protegidos por las leyes de varios países. Por ejemplo en España, los datos personales se encuentran protegidos por la Ley Orgánica de Protección de Datos de Carácter Personal (LOPD).

18


Existen dos tipos de gestores de bases de datos, los libres y los de licencia privada, a continuación se describirán algunos de los más usados:

(Vease: Bases de Datos y su Aplicacion con SQL:

Manuales Users, en Español / Spanish (Manuales Users) de Sergio Ezequiel Rozic and MP Ediciones)

MySQL MySQL es un sistema de gestión de base de datos relacional, multihilo y multiusuario con más de seis millones de instalaciones.1 MySQL AB —desde enero de 2008 una subsidiaria de Sun Microsystems, desarrolla MySQL como software libre en un esquema de licenciamiento dual. Por un lado se ofrece bajo la GNU GPL para cualquier uso compatible con esta licencia, pero las empresas que quieran incorporarlo en productos privativos pueden comprar a la empresa una licencia específica que les permita este uso. Está desarrollado en su mayor parte en ANSI C. Al contrario que proyectos como Apache, donde el software es desarrollado por una comunidad pública y el copyright del código está en poder del autor individual, MySQL es propiedad y está patrocinado por una empresa privada, que posee el copyright de la mayor parte del código. Algunas de sus principales características son: •

Soporte para múltiples plataformas.

Uso de triggers, cursores, vistas actualizables, motores de almacenamiento independientes (MyISAM, InnoDB)

Indexing

Soporte para Unicode

Respeta las reglas ASCII

19


Fácil de instalar

Millones de formación y certificación para desarrolladores

(Vease: webgrafia: Wikimedia Foundation, Inc. (2008). Bases de datos. Consultado en http://es.wikipedia.org/wiki/Databases.)

LENGUAJES DE PROGRAMACIÓN (WEB) Actualmente existen diferentes lenguajes de programación para desarrollar en la web, estos han ido surgiendo debido a las tendencias y necesidades de las plataformas. Algunos de los más utilizados son los siguientes:

Lenguaje HTML Desde el surgimiento de internet se han publicado sitios web gracias al lenguaje HTML. Es un lenguaje estático para el desarrollo de sitios web (acrónimo en inglés de HyperText Markup Language, en español Lenguaje de Marcas Hipertextuales). Desarrollado por el World Wide Web Consortium (W3C). Los archivos pueden tener las extensiones (htm, html). (Vease: HTML & XHTML: The Definitive Guide (6th Edition) by Chuck Musciano and Bill Kennedy)

Ventajas: •

Sencillo que permite describir hipertexto.

Texto presentado de forma estructurada y agradable.

No necesita de grandes conocimientos cuando se cuenta con un editor de páginas web o WYSIWYG.

Archivos pequeños.

Despliegue rápido.

Lenguaje de fácil aprendizaje.

Lo admiten todos los exploradores.

20


Desventajas: •

Lenguaje estático.

La interpretación de cada navegador puede ser diferente.

Guarda muchas etiquetas que pueden convertirse en “basura” y dificultan la corrección.

El diseño es más lento.

Las etiquetas son muy limitadas.

Lenguaje Javascript Este es un lenguaje interpretado, no requiere compilación. Fue creado por Brendan Eich en la empresa Netscape Communications. Utilizado principalmente en páginas web. Es similar a Java, aunque no es un lenguaje orientado a objetos, el mismo no dispone de herencias. La mayoría de los navegadores en sus últimas versiones interpretan código Javascript. El código Javascript puede ser integrado dentro de nuestras páginas web. Para evitar incompatibilidades el World Wide Web Consortium (W3C) diseño un estándar denominado DOM (en inglés Document Object Model, en su traducción al español Modelo de Objetos del Documento). Ventajas: •

Lenguaje de scripting seguro y fiable.

Los script tienen capacidades limitadas, por razones de seguridad.

El código Javascript se ejecuta en el cliente.

Desventajas: •

Código visible por cualquier usuario.

El código debe descargarse completamente. Puede poner en riesgo la seguridad del sitio, con el actual problema llamado XSS (significa en inglés Cross Site Scripting renombrado a XSS por su similitud con las hojas de estilo CSS). (Vease: webgrafia: http://www.programacionweb.net/buscador/?tag=lenguaje%20de%20programacion)

21


Lenguaje PHP Es un lenguaje de programación utilizado para la creación de sitio web. PHP es un acrónimo recursivo que significa “PHP Hypertext Pre-processor”, (inicialmente se llamó Personal Home Page). Surgió en 1995, desarrollado por PHP Group. PHP es un lenguaje de script interpretado en el lado del servidor utilizado para la generación de páginas web dinámicas, embebidas en páginas HTML y ejecutadas en el servidor. PHP no necesita ser compilado para ejecutarse. Para su funcionamiento necesita tener instalado Apache o IIS con las librerías de PHP. La mayor parte de su sintaxis ha sido tomada de C, Java y Perl con algunas características específicas. Los archivos cuentan con la extensión (php).

Ventajas: •

Muy fácil de aprender.

Se caracteriza por ser un lenguaje muy rápido.

Soporta en cierta medida la orientación a objeto. Clases y herencia.

Es un lenguaje multiplataforma: Linux, Windows, entre otros.

Capacidad de conexión con la mayoría de los manejadores de base de datos: MysSQL, PostgreSQL, Oracle, MS SQL Server, entre otras.

Capacidad de expandir su potencial utilizando módulos.

Posee documentación en su página oficial la cual incluye descripción y ejemplos de cada una de sus funciones.

Es libre, por lo que se presenta como una alternativa de fácil acceso para todos.

Incluye gran cantidad de funciones.

No requiere definición de tipos de variables ni manejo detallado del bajo nivel.

Desventajas: •

Se necesita instalar un servidor web.

Todo el trabajo lo realiza el servidor y no delega al cliente. Por tanto puede ser más ineficiente a medida que las solicitudes aumenten de número.

22


La legibilidad del código puede verse afectada al mezclar sentencias HTML y PHP.

La programación orientada a objetos es aún muy deficiente para aplicaciones grandes.

Dificulta la modularización.

Dificulta la organización por capas de la aplicación.

Seguridad: PHP es un poderoso lenguaje e intérprete, ya sea incluido como parte de un servidor web en forma de módulo o ejecutado como un binario CGI separado, es capaz de acceder a archivos, ejecutar comandos y abrir conexiones de red en el servidor. Estas propiedades hacen que cualquier cosa que sea ejecutada en un servidor web sea insegura por naturaleza. PHP está diseñado específicamente para ser un lenguaje más seguro para escribir programas CGI que Perl o C, y con la selección correcta de opciones de configuración en tiempos de compilación y ejecución, y siguiendo algunas prácticas correctas de programación. (Vease PHP 6 and MySQL 5 for Dynamic Web Sites: Visual QuickPro Guide de Larry Ullman, pag: 81)

Lenguaje JSP Es un lenguaje para la creación de sitios web dinámicos, acrónimo de Java Server Pages. Está orientado a desarrollar páginas web en Java. JSP es un lenguaje multiplataforma. Creado para ejecutarse del lado del servidor. JSP fue desarrollado por Sun Microsystems. Comparte ventajas similares a las de ASP.NET, desarrollado para la creación de aplicaciones web potentes. Posee un motor de páginas basado en los servlets de Java. Para su funcionamiento se necesita tener instalado un servidor Tomcat. Características: •

Código separado de la lógica del programa.

Las páginas son compiladas en la primera petición.

23


Permite separar la parte dinámica de la estática en las páginas web.

Los archivos se encuentran con la extensión (jsp).

El código JSP puede ser incrustado en código HTML.

Elementos de JSP Los elementos que pueden ser insertados en las páginas JSP son los siguientes: •

Código: se puede incrustar código “Java”.

Directivas: permite controlar parámetros del servlet.

Acciones: permite alterar el flujo normal de ejecución de una página.

Ventajas: •

Ejecución rápida del servlets.

Crear páginas del lado del servidor.

Multiplataforma.

Código bien estructurado.

Integridad con los módulos de Java.

La parte dinámica está escrita en Java.

Permite la utilización se servlets.

Desventajas: •

Complejidad de aprendizaje.

(Vease Pro JSP 2, Fourth Edition (Expert's Voice in Java) de Simon Brown, Sam Dalton, Daniel Jepp, and Dave Johnson , pags: 45-51)

SEGURIDAD Los distintos niveles de seguridad o círculos de seguridad, nos acercan hacia el hermetismo y al incremento de seguridad. Algunas de las principales formas de proteger nuestros sistemas basados en web , son las siguientes:

24


Ofuscar Código El Código ofuscado es aquél código que, aunque se tiene el código fuente, ha sido enrevesado específicamente para ocultar su funcionalidad (hacerlo ininteligible). Algunos tienden más a la ofuscación que otros. C, C++ y Perl son los más citados como fácilmente ofuscables. Las macros de preprocesador son usadas a menudo para crear código complicado de leer enmascarando la gramática y sintaxis estándar del lenguaje del cuerpo principal de código. Aparte de los lenguajes más conocidos, existen lenguajes de programación esotéricos no es correcto a la hora de programar ofuscadamente también se puede buscar que el código fuente resulte una obra de ascii art. Existen otros programas ofuscados llamados quine que al ejecutarse la salida debe ser el código fuente del programa. También hay programas ofuscadores que pueden actuar sobre el código fuente, código objeto o ambos para dificultar la ingeniería inversa. (Vease: webgrafia: http://es.wikipedia.org/wiki/C%C3%B3digo_ofuscado)

Inyección SQL Es una vulnerabilidad informática en el nivel de la validación de las entradas a la base de datos de una aplicación. El origen es el filtrado incorrecto de las variables utilizadas en las partes del programa con código SQL. Es, de hecho, un error de una clase más general de vulnerabilidades que puede ocurrir en cualquier lenguaje de programación o de script que esté incrustado dentro de otro.

25


Una inyección SQL sucede cuando se inserta o "inyecta" un código SQL "invasor" dentro de otro código SQL para alterar su funcionamiento normal, y hacer que se ejecute maliciosamente el código "invasor" en la base de datos. La inyección SQL es un problema de seguridad informática que debe ser tomado en cuenta por el programador para prevenirlo. Un programa hecho con descuido, displicencia, o con ignorancia sobre el problema, podrá ser vulnerable y la seguridad del sistema puede quedar ciertamente comprometida. Esto puede suceder tanto en programas corriendo en computadores de escritorio, como en páginas Web, ya que éstas pueden funcionar mediante programas ejecutándose en el servidor que las aloja. La vulnerabilidad puede ocurrir cuando un programa "arma" descuidadamente una sentencia SQL, con parámetros dados por el usuario, para luego hacer una consulta a una base de datos. Dentro de los parámetros dados por el usuario podría venir el código SQL inyectado. Al ejecutarse esa consulta por la base de datos, el código SQL inyectado también se ejecutará y podría hacer un sinnúmero de cosas, como insertar registros, modificar o eliminar datos, autorizar accesos e, incluso, ejecutar código malicioso en el computador.

CONCEPTOS Página Web Una página web u hoja electrónica es una fuente de información adaptada para la World Wide Web (WWW) y accesible mediante un navegador de Internet que normalmente forma parte de un Sitio web. Esta información se presenta generalmente en formato HTML y puede contener hiperenlaces a otras páginas web, constituyendo la red enlazada de la World Wide Web. (Véase http://www.programacionweb.net/buscador/?tag=lenguaje%20de%20programacion)

Hosting 26


El alojamiento web (en inglés web hosting) es el servicio que provee a los usuarios de Internet un sistema para poder almacenar información, imágenes, vídeo, o cualquier contenido accesible vía Web. Los Web Host son compañías que proporcionan espacio de un servidor a sus clientes. (Véase Refer(Véase http://www.programacionweb.net/buscador/?tag=lenguaje%20de%20programacion)

Hypertext Transfer Protocol HTTP define la sintaxis y la semántica que utilizan los elementos software de la arquitectura web (clientes, servidores, proxies) para comunicarse. Es un protocolo orientado a transacciones y sigue el esquema petición-respuesta entre un cliente y un servidor. Al cliente que efectúa la petición (un navegador o un spider) se lo conoce como "user agent" (agente del usuario). A la información transmitida se la llama recurso y se la identifica mediante un URL. Los recursos pueden ser archivos, el resultado de la ejecución de un programa, una consulta a una base de datos, la traducción automática de un documento, etc. HTTP es un protocolo sin estado, es decir, que no guarda ninguna información sobre conexiones anteriores. El desarrollo de aplicaciones web necesita frecuentemente mantener estado. Para esto se usan las cookies, que es información que un servidor puede almacenar en el sistema cliente. Esto le permite a las aplicaciones web instituir la noción de "sesión", y también permite rastrear usuarios ya que las cookies pueden guardarse en el cliente por tiempo indeterminado. (Véase

http://www.programacionweb.net/buscador/?tag=lenguaje%20de%20programacion)

Internet Internet es un conjunto descentralizado de redes de comunicación interconectadas, que utilizan la familia de protocolos TCP/IP, garantizando que las redes físicas heterogéneas que la componen funcionen como una red lógica única, de alcance mundial. (Véase http://www.programacionweb.net/buscador/?tag=lenguaje%20de%20programacion)

27


WWW En informática, World Wide Web (o la "Web") o Red Global Mundial es un sistema de documentos de hipertexto y/o hipermedios enlazados y accesibles a través de Internet. Con un navegador Web, un usuario visualiza páginas web que pueden contener texto, imágenes, vídeos u otros contenidos multimedia, y navega a través de ellas usando hiperenlaces. ((Véase http://www.programacionweb.net/buscador/?tag=lenguaje%20de%20programacion)

Software La palabra «software» se refiere al equipamiento lógico o soporte lógico de un computador digital, comprende el conjunto de los componentes lógicos necesarios para hacer posible la realización de una tarea específica, en contraposición a los componentes físicos del sistema. (Véase http://es.wikipedia.org/wiki/Computer_software)

Browser Un navegador web (del inglés, web browser) es una aplicación software que permite al usuario recuperar y visualizar documentos de hipertexto, comúnmente descritos en HTML, desde servidores web de todo el mundo a través de Internet. Esta red de documentos es denominada World Wide Web (WWW). Cualquier navegador actual permite mostrar o ejecutar gráficos, secuencias de vídeo, sonido, animaciones y programas diversos además del texto y los hipervínculos o enlaces. (Véase http://es.wikipedia.org/wiki/Browser)

Login Autenticación el acto de establecimiento o confirmación de algo (o alguien) como auténtico, es decir que reclama hecho por, o sobre la cosa son verdadero. La autenticación de un objeto puede significar (pensar) la confirmación de su procedencia, mientras que la

28


autenticación de una persona a menudo consiste en verificar su identidad. La autenticación depende de uno o varios factores de autenticación. (Véase http://www.alegsa.com.ar/Dic/login.php)

CAPITULO IV: METODOLOGIA Una vez establecidos los principales conceptos, recursos, componentes, se necesita explicar el proceso de desarrollo del sistema, las herramientas a utilizar y los recursos que necesitaremos.

DISEÑO DE INVESTIGACIÓN El tipo de diseño para este proyecto es no experimental, ya que este diseño se realiza sin la manipulación deliberada de las

variables, es netamente explicativo, y las variables

independientes no sufrirán variaciones. De acuerdo con el fenómeno como tal, así como se da en su contexto natural para después analizarlo. Nuestro tipo de diseño no experimental, será de investigación cualitativo para poder explorar las relaciones sociales y describir la realidad tal como la experimentan.

OBJETIVO O PROPÓSITO El propósito general nos permite partir de cierto punto para el desarrollo de la investigación, por lo que es esencialmente importante que sea explicado de una manera sumamente clara y concisa. Basándonos en este objetivo se identifican todas las variables que en conjunto nos permiten mostrar un panorama general del proyecto a realizar. Esta vez el objetivo es la creación de un sistema para la automatización de la creación de oficios de comisión, así como los reportes de estos mismos, para la Secretaria de Pesca del Estado de Campeche.

29


JUSTIFICACIÓN DEL PROYECTO Esta investigación se ve justificada ya que en los últimos años la Secretaria de Pesca del Estado de Campeche ha indagado en la búsqueda de diversas maneras para el manejo de la información de manera digital, lo cual ha permitido la introducción de nuevas herramientas de automatización para esta misma secretaria. Por lo tanto la creación de un sistema de automatización de oficios de comisión y reportes de estos mismos resolverá uno de estos problemas y agilizara el proceso de creación de estos.

TIPO DE INVESTIGACIÓN

Esta investigación es de tipo experimental ya que consiste en la manipulación de una (o más) variable experimental no comprobada, en condiciones rigurosamente controladas, con el fin de describir de qué modo o por qué causa se produce una situación o acontecimiento particular. El experimento provocado por el investigador, le permite introducir determinadas variables de estudio manipuladas por él, para controlar el aumento o disminución de esas variables y su efecto en las conductas observadas.

HIPÓTESIS La creación de una aplicación que permita la automatización de oficios y reportes de comisión, que ayudará a la agilización y monitoreo de estos, así como también permitirá mantener estos archivos en el servidor para poder ser consultados en cualquier momento .

30


CAPITULO V: DESARROLLO DEL PROYECTO ANÁLISIS DE DATOS El desarrollo de este sistema comienza a partir de los oficios de comisión que se creaban anteriormente utilizando herramientas como Word u Open Office (Herramientas de Ofimática para la edición de texto). Por lo que lo primero a realizar fue el análisis de los campos y variables a utilizar para la creación de este sistema, con esto me refiero a el texto oficial que los oficios deben de contener, los espacios donde debe de ir los campos que el usuario vaya a introducir, las secciones o módulos que el sistema contendrá y las variables que se utilizaran para la creación de estos mismos. (Figura1) Una vez finalizado este análisis pasamos a la parte del desarrollo del sistema. Lo primero que debemos de hacer es la base de datos y establecer las variables a utilizar para el manejo de los datos de PHP a MySQL. Para esto utilizarnos un gestor de base de datos MySQL llamado MySQL Administrator (Figura 2), el cual nos permite crear las tablas y los datos de estas. Se creó un catalogo llamado Sepesca01 el cual contiene las tablas con las características a continuación explicadas (Figura 3): Para el modulo de oficios de comisión: members: Esta tabla es la encargada de almacenar los nombres de usuario y contraseñas para ingresar al sistema, se utilizan las siguientes columnas: •

username: almacena el nombre de usuario para inicio de sesión

password: almacena la contraseña para inicio de sesión

31


empleados: Esta tabla almacena la información de los empleados de la empresa, utilizara las siguientes columnas: •

CodigoEmpleado: almacena un número o código de empleado el cual relacionara al empleado con su foto y área de trabajo.

empleado: almacena el nombre del empleado

foto: guarda una dirección (url) de la ubicación del archivo en formato JPG de la fotografía de los empleados

area: Tabla encargada de almacenar los códigos de área y su relación con las aéreas existentes en la secretaria (oficina del titular, coordinación administrativa, acuacultura y desarrollo pesquero) •

CodigoArea: almacena un número del 1 al 4 los cuales son relacionados con las aéreas

Area: almacena el nombre de las aéreas en la secretaria

tablapuente: Esta tabla nos permite hacer una referencia entre el código de área y el código de empleado, permitiéndonos de esta manera saber a qué área pertenece cada empleado, esta relación es establecida gracias a las llaves primarias en la base de datos, y posteriormente serán utilizadas en la programación PHP para poder seleccionar empleados de una manera independiente, y automáticamente generar el área en la que esta cada uno de estos empleados. •

CodigoArea: esta columna es la llave maestra de nuestra tabla la cual conecta con la tabla área

CodigoEmpleado: esta columna almacena los códigos de empleados, los cuales también son almacenados en la tabla empleados

32


comisiones: En esta tabla almacenamos la información generada por el modulo de “creación de oficios de comisión”, para posteriormente ser consultada en el modulo de “ver comisión” •

código_comision: almacena el código de comisión de cada documento creado

area: guardara el área a la cual pertenece la comisión creada

codigoempleado: en esta se guarda el código del empleado encargado de dicha comisión

comisionadoa: esta columna almacena la ubicación a la cual será comisionado el empleado

descripcion: almacena la descripción de la comisión

autorizo: almacena el nombre del directivo que autorizo el documento creado

dia1: en esta se guarda el día inicial de la comisión

dia2: se almacena el día final de la comisión

mes1: en esta columna se almacena el mes inicial de la comisión

mes2: en esta se almacena el mes en el que finalizara la comisión creada

reportes: esta tabla contiene toda la información generada a partir de los reportes de comisión previamente creados de cada comisión, dentro de esta tabla se crearon las siguientes columnas: •

comisioncode: el código de el reporte de comisión se almacena en esta columna

dia: almacena el día de la creación de el reporte de comisión

mes: almacena el mes de la creación de el reporte de comisión

33


anio: almacena el año de la creación de el reporte de comisión

entidad: en esta se guarda la entidad o dependencia de la comisión

unidadpresupuestal: almacena la unidad presupuestal encargada de la comisión, que usualmente es un código establecido

empleado: esta almacena el nombre del comisionado

cargo: se almacena en esta el cargo del comisionado

periodo: esta almacena la fecha de de inicio y de fin de la comisión

lugar: lugar de la comisión

importe: el total de viáticos designados para esta comisión

objetivo: la descripción de los objetivos de la comisión

oficiox: columna de tipo booleano que indica si el reporte contiene documento de comprobación de tipo reporte

actax: columna de tipo booleano que indica si el reporte contiene documento de comprobación de tipo acta circunstanciada

diplomax: columna de tipo booleano que indica si el reporte contiene documento de comprobación de tipo diploma o constancia de participación

informex: columna de tipo booleano que indica si el reporte contiene documento de comprobación de tipo informe de comisión

desglosex: columna de tipo booleano que indica si el reporte contiene documento de comprobación de tipo desglose de gastos

otrox: columna de tipo booleano que indica si el reporte contiene documento de comprobación de otros

34


otrox2: en esta columna se almacena una descripción personalizada de un documento de comprobación anexado al reporte generado

Una vez que ha sido creada la base de datos, pasamos al proceso de desarrollo de los módulos y secciones de nuestra aplicación. Se crearon los archivos PHP en modo de diseño, para lo cual se utilizo un gestor web, en este caso Adobe Dreamweaver CS3 (Figura 4). Se desarrollo la sección de autentificación usando una combinación de tablas, formas y método de envió post de HTML (este post apunta a el archivo llamado log.php). La cual debe de contener un área para introducir el nombre de usuario y la contraseña. Una vez creada la estructura de este, se seleccionaron colores e imágenes para lo cual usamos el editor de imágenes Adobe Photoshop CS3 (Figura 5). Ya que los colores fueron seleccionados (en este caso una combinación de grises), diseñamos una cabecera con el logotipo de la secretaria y la leyenda “Inicio de Sesión” (Figura 6). Después de esto se guardo nuestro documento con el nombre de “login.php”, y continuamos con la programación de un nuevo documento llamado log.php el cual recibe los datos enviados por nuestro archivo “login.php” y utilizando una combinación de consultas SQL y programación PHP nos permite conectar a la base de datos, y autentificar si el usuario y contraseña existe en nuestra base de datos, si esto es correcto nos enviara a el archivo "location:login_success.php" de otra manera recibiremos una pantalla en blanco con la leyenda "El nombre de usuario o contraseña son incorrectos". Para esto se utilizo una conexión a base de datos de esta forma: <?php ob_start(); $host="server"; $username="nombredeusuario"; $password="contraseña";

35


$db_name="Sepesca01"; $tbl_name="members"; mysql_connect("$host", "$username", "$password")or die("No se puede conectar"); mysql_select_db("$db_name")or die("No se puede selecionar la base de datos");

Posteriormente se uso la función de sesión, la cual nos permite registrar el nombre de usuario y contraseña para la siguiente página a la cual seremos re direccionados si el nombre de usuario y contraseña son correctos: session_register("myusername"); session_register("mypassword"); header("location:login_success.php"); } else { echo "El nombre de usuario o contraseña son incorrectos"; } ob_end_flush(); ?>

Después se creó del archivo “login_success” usando Dreamweaver, el cual es simplemente un archivo PHP que retiene la conexión de inicio de sesión y divide nuestra página en 2 archivos (menú.html y main.php) usando frames. <? session_start(); if(!session_is_registered(myusername)){ header("location:login.php"); } ?>

Lo siguiente fue crear el archivo “menu.html” el cual nos sirve para incluir las secciones o módulos de nuestra aplicación y los usuarios puedan acezar a estas de una manera más rápida y eficiente. Se crearon 8 imágenes para todos y cada uno de los botones que se usaron en esta sección, utilizando Adobe Photoshop CS4 (crearemos 8 imágenes ya que por cada botón se utilizan 2 imágenes). El archivo “menú.html” incluye estos botones usando funciones en lenguaje Javascript lo cual nos permite el efecto de mouseover: (Codigo del script): script type="text/javascript">

36


<!-function MM_swapImgRestore() { //v3.0 var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; } function MM_preloadImages() { //v3.0 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array(); var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++) if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}} }

Efecto que permite mostrar una imagen diferente al pasar el mouse sobre la imagen correspondiente (Figura 7) con las secciones que nos mandaran a: •

Crear nueva comisión: apunta a “nuevacomision.php”

Ver comisiones creadas: apunta a “ver.php”

Crear reporte de comisión: “selectcomision4report.php”

Ver reportes creados: “verreporte.php”

Lo siguiente fue crear el archivo “main.php” el cual contiene al igual que el menú, el re direccionamiento a cada una de las secciones de nuestra aplicación así como un botón para cerrar la sesión. En esta sección utilizamos el Adobe Photoshop CS4 para crear imágenes de fondo, cabeceras y pies de nuestra tabla. (Figura 8). A continuación se creó el archivo “nuevacomision.php” el cual incluye una forma la cual el usuario deberá de llenar para poder crear un nuevo oficio de comisión, para esto utilizamos HTML. También se incluyo código PHP para que el usuario al seleccionar dentro de una lista de tipo menú el área designada para la comisión, automáticamente la siguiente lista de menú, la que incluye los nombres de los empleados, y que esta cambie según sea la relación de areaempleado. Se implemento un arreglo simple para cada área designada: ?>

37


var Oficina_del_Titular = new Array(<? $count = mysql_num_rows ( $result1 ); $count2 = 0; while ( $res = mysql_fetch_object ( $result1 ) ) { $count2 ++; ?>'<? print $res->Empleado; ?>'<? if ($count2 != $count) { ?>,<? } } ?>);

Después se uso de la función switch para que la consulta sea reflejada en la lista menú según sea el caso:

switch (Index){ case "1": Arreglo = Oficina_del_Titular; break; case "2": Arreglo = Desarrollo_Pesquero; break; case "3": Arreglo = Acuacultura; break; case "4": Arreglo = Cordinacion_Admin; break; } for(var l = 0; l < Arreglo.length; l++){ var objOption = new Option(Arreglo[l], Arreglo[l]); document.getElementById('empleado').options.add(objOption); }

Al dar clic sobre el botón de enviar, toda la información que el usuario ha llenado dentro de los campos de la forma será enviado por el método de envió de datos POST a nuestro archivo "comisiondone.php" Lo siguiente fue crear el archivo "comisiondone.php" el cual recibire los datos de la nueva comisión y lo guarda en diferentes variables para después crear una conexión en SQL, y así se genere un envió de todos estos datos a nuestra base de datos (esta conexión no se pierde gracias al uso de sesiones). La consulta es la siguiente: $query="INSERT INTO comisiones (codigo_comision, area, codigoempleado, comisionadoa, descripcion, autorizo, dia1, dia2, mes1, mes2)

38


VALUES ('".$codigo."', '".$area."', '".$empleado."', '".$comisionadoa."', '".$descripcion."', '".$autorizo."', '".$dia1."', '". $dia2."', '".$mes1."', '".$mes2."')";

Posteriormente se crearon las respectivas imágenes de cabecera y pie utilizando la misma metodología que en los archivos anteriores. (Figura 9) A continuación se creo el archivo “ver.php2” el cual genera una consulta la base de datos y la refleja dentro de una lista menú, para de esta forma enviar por método POST el código de la comisión a la que se desea acceder. result=mysql_query("SELECT c.codigo_comision FROM Sepesca01.comisiones c;"); if($result) { echo '<select name="comisioncode" id="comisioncode">'; while($myrow = mysql_fetch_array($result)) { echo '<option value="'.$myrow[0].'">'.$myrow[0].'</option>'; } echo "</select>";

Siempre tomando en cuenta la misma estructura en cuanto diseño y la metodología para la creación de las imágenes. Cuando el usuario selecciona el código de comisión de la lista menú y de clic sobre el botón “Ver comisión” será re direccionado enviando mediante el método POST la variable asignada el código de comisión seleccionado al archivo “comisioncreada.php” en el cual podremos visualizar nuestra comisión. Creamos el archivo “comisioncreada.php” el cual utiliza una librería llamada FPDF que nos permite generar archivos en formato PDF a partir de consultas o inserciones de imágenes, utilizando un lenguaje especifico de esta. Para esto debemos de crear una nueva conexión a la base de datos, y generar una consulta en SQL, ya que FPDF no soporta la función de sesiones. Una vez hecho esto se programo el documento de acuerdo al formato de las comisiones, utilizando texto e inserción de variables asignadas mediante a la consulta de la previa conexión hecha. (Figura 10)

39


Posteriormente se creó el archivo “selectcomision4report.php” el cual nos permite la selección de las comisiones anteriormente creadas que se encuentran almacenadas en nuestra base de datos, para de esta forma permitirle al usuario generar un reporte de las comisiones existentes. Para esto se utilizo la misma metodología que el archivo encargado de crear los documentos de comisión pero utilizando obviamente variables diferentes. Lo siguiente fue crear el archivo “crearreporte” el cual recibe el código de la comisión enviado mediante el método POST de el archivo “selectcomision4report.php” y lo imprime en el documento de modo “hidden” lo cual nos permite mantener la variable para ser usada posteriormente pero sin mostrarla al usuario. Cuando el usuario ha llenado todo el formato de reporte de comisión, este es enviado a la base de datos dentro de la tabla “comisiones”. El ultimo archivo creado es “verreporte.php” el cual permite al usuario consultar los reportes de comisiones creadas, este archivo fue creado llevando la misma metodología que se implemento anteriormente en el archivo “ver.php”. Para hacer esto, nuevamente se utilizo la librería FPDF de PHP para poder mostrar el documento en formato PDF. De esta forma se creó el Sistema de Automatización de Reportes y Comisiones para la Secretaria de Pesca del Estado de Campeche. El hosting o alojamiento del sistema fue subido al servidor de RR Web Solution (rrwebsolution.com) temporalmente, hasta que la secretaria contrate un servidor dedicado para mantener tanto este sistema como la página web y otras aplicaciones de la misma. El servidor de RR Web Solution cuenta con una capacidad de 1TB, 250GB de transferencia mensual, alojamiento de bases de datos MySQL.

RESULTADOS 40


Para llegar al análisis de datos se utilizo una metodología de entrevistas personales, no formales y observando la interacción de los usuarios con dicho sistema Para lo cual se creó una pequeña aplicación de opción múltiple. (http://www.rrwebsolution.com/www/sepesca/encuesta/index.php)

PROPUESTAS Crear un modulo dentro del mismo sistema que permita hacer una interconexión de la aplicación creada con la base de datos del el reloj checador biométrico de la secretaria, para de esta forma poder autentificar a los usuarios que se encuentran de comisión y no sean reflejadas en este. La implementación de un sistema CRM dentro de la secretaria que permita la adminsitracion de todos los proyectos de la institución para de esta manera poder tener todo un compendio de información centralizada.

CONCLUSIÓN En el mundo de las tecnologías de información nos enseña la búsqueda del autoaprendizaje, la búsqueda de diferentes soluciones para los problemas y retos que se nos presenten, enfocándonos al desarrollo de software.

Por esta razón al crear una aplicación de esta índole se debe de tener conocimientos en diferentes campos de las tecnologías de información, como son el diseño grafico, la programación, encriptación, entre otras.

41


Al igual que un mantenimiento del sistema es esencial, el control de la base de datos y su optimización para generar un mayor rendimiento reflejado en el tiempo-respuesta de los usuarios.

Gracias al desarrollo de esta aplicación los procesos de creación de oficios y reportes de comisión se han agilizado, permitiendo a los usuarios utilizar el tiempo para procesos de mayor importancia, con lo cual ha aumentado la productividad de la secretaria.

42


REFERENCIAS

ASP consultado en: Copyleft 2003 - 2008 ProgramacionWeb.net Programación y diseño de Páginas Web, consultado en http://www.programacionweb.net/buscador/?tag=lenguaje%20de%20programacion

HTML & XHTML: The Definitive Guide (6th Edition) de Chuck Musciano and Bill Kennedy

PHP consultado en: CopyRight 2006 - 2008 Desarrolloweb.com consultado en http://www.desarrolloweb.com/php/ y Hernández Sampieri, R. (2000). 2ª edición.

Metodología de la investigación. México: McGraw Hill.

Bases de Datos y su Aplicacion con SQL: Manuales Users, en Español / Spanish (Manuales Users) de Sergio Ezequiel Rozic and MP Ediciones

Metodología de La Investigación Científica y Tecnológica de Sánchez Cegarra

Javascript consultado en: Copyleft 2003 - 2008 ProgramacionWeb.net

Programación y diseño de Páginas Web, consultado en http://www.programacionweb.net/buscador/?tag=lenguaje%20de%20programacion

FPDF Open Source Media for PHP (2008), uso de librería y consulta de programación en : http://www.fpdf.org/

Wikimedia Foundation, Inc. (2008). Bases de datos. consultado en http://es.wikipedia.org/wiki/Databases.

Wikimedia Foundation LEY DE FITTS: http://es.wikipedia.org/wiki/Ley_de_Fitts

Wikimedia Foundation OFUSCAR CODIGO: http://es.wikipedia.org/wiki/C%C3%B3digo_ofuscado

Wikimedia Foundation SOFTWARE: http://es.wikipedia.org/wiki/Computer_software

Wikimedia Foundation BROWSER: http://es.wikipedia.org/wiki/Browser

Alegra Resources LOGIN: http://www.alegsa.com.ar/Dic/login.php

43


LISTA DE TABLAS •

Tabla 1: pagina 12: Lista de Empleados de la Secretaria de Pesca del Estado de Campeche

Tabla 2: pagina 13: Tabla con los programas generados y las tazas esperadas y alcanzadas

44


ANEXOS Figura1: Oficio de Comisión

45


Figura 2: MySQL Administrator

Figura 3: Tablas Creadas

46


Figura 4: Adobe Dreamweaver CS3

47


Figura 5: Adobe Photoshop CS3

48


Figura 6: Autentificación

Figura 7: Sección “menú.html”

49


Figura 8: Sección “main.html”

50


Figura 9: Sección “nuevacomision.php”

51


Figura 10: Visualización de la comisión creada

52


Figura 11: Selección de comisión para generar reporte

53


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.