Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 32

2019

MANUAL TECNICO DE PROGRAMACION DEL SISTEMA DE


MONITOREO Y EVALUACIÓN DEL PMEI - MONITOR

Ing. Juber Palomino Campos


MONITOR: Manual Técnico de Programación Versión 1.0

INDICE

1. PRESENTACION ______________________________________________________ 3
2. OBJETIVOS __________________________________________________________ 4
3. REQUERIMIENTOS PARA EL FUNCIONAMIENTO DEL SISTEMA __________________ 5
3.1 HERRAMIENTAS DE DESARROLLO ____________________________________________ 5
3.2 BASE DE DATOS___________________________________________________________ 5
3.3 SERVIDOR DE APLICACIONES ________________________________________________ 5
3.4 HARDWARE ______________________________________________________________ 5
4. ORGANIZACION DEL SISTEMA ___________________________________________ 6
4.1 ESTRUCTURA DEL CODIGO FUENTE___________________________________________ 6
4.2 PRINCIPALES ARCHIVOS DEL SISTEMA ________________________________________ 7
5. ARQUITECTURA DEL SISTEMA ___________________________________________ 9
6. MODULOS DEL SISTEMA_______________________________________________ 11
6.1. MODULO DE ADMINISTRACION ____________________________________________ 11
6.2. MODULO DE CONSULTA Y REPORTES.______________________________________ 11
6.3. MODULO DE MAPAS ____________________________________________________ 12
6.4. MODULO SIAF _________________________________________________________ 23
7. GENERACION DEL EJECUTABLE ________________________________________ 30
7.1. Generación del ejecutable del Sistema (Modulo 1 y 2) ___________________________ 30
7.2. Generación del ejecutable del Módulo de Mapas (Modulo 3) ______________________ 31
7.3. Generación del Ejecutable del Módulo SIAF (Modulo 4)__________________________ 31

Página 2 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

1. PRESENTACION

El “Manual Técnico de Programación” es un documento que sirve para darle sostenibilidad al sistema; es decir
que el programador pueda realizar rápidamente las modificaciones al código o en su defecto incluir nuevas
opciones en el sistema para lo cual debe comprender la arquitectura utilizada en el desarrollo de este sistema
para un entorno web. La arquitectura está basada en un desarrollo usando el patrón de 3 capas (Presentación,
Negocio y Datos) e implementada en el lenguaje de programación c sharp, de la familia Visual Studio 2010 y
base de datos SQL SERVER.

Se detalla por cada módulo del sistema la estructura, organización de los archivos y los diferentes módulos
que lo conforman, para que el programador siguiendo este documento pueda encontrar rápidamente en la
solución los formularios que está tratando de modificar.

El backend (lado del servidor) está desarrollado principalmente a nivel de la base de datos utilizando
procedimientos almacenados con la ayuda de vistas y funciones. Por tanto, algunos cambios relacionados con
los datos será suficiente realizarlo a nivel de base de datos dejando el código fuente de lado cliente (frontend)
intacto.

Todas las instrucciones de tipo CRUD (Create, Retrieve, Update, Delete) se realizan en la base de datos. NO
existe ninguna instrucción definida en el código fuente, excepto el módulo de mapas.

Página 3 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

2. OBJETIVOS
a) Describir a detalle la arquitectura del sistema
b) Contar con un documento para entender el código fuente y poder darle sostenibilidad.

Página 4 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

3. REQUERIMIENTOS PARA EL FUNCIONAMIENTO DEL SISTEMA

3.1 HERRAMIENTAS DE DESARROLLO

a) Microsoft Visual Studio 2010 (C sharp) y .Net Framework 4.0 o superior


b) Windows 8 o superior

3.2 BASE DE DATOS

a) SQL Server 2012 o superior


b) Windows Server 2008 o superior, Windows 8 o superior

3.3 SERVIDOR DE APLICACIONES

a) Internet Information Server 6.0


b) Windows Server 2008 o superior, Windows 8 o superior

3.4 HARDWARE

a) Servidor, computadora de escritorio o laptop (cualquiera de ellos con 8 GB de memoria RAM y 100
GB de espacio en disco).
b) Acceso a la red local.

Antes de levantar el programa fuente para desplegar el sistema, es necesario que tanto la base de datos como
el IIS esten funcionando.

Página 5 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

4. ORGANIZACION DEL SISTEMA

4.1 ESTRUCTURA DEL CODIGO FUENTE

a) Para conocer el sistema lo primero que debe hacerse es levantar la solución para lo cual debe Iniciar

el Visual Studio y seleccionar Archivo Abrir Proyecto o Solución

b) Ubicar el archivo monitor.sln en la carpeta: MONITOR\FUENTES\monitor.sln. El contenido de la


carpeta FUENTES debe ser copiado a una carpeta en el disco duro. Desde esa ubicación debe abrirse
en el visual studio.
c) Una vez que el sistema es abierto se presenta en la siguiente estructura, como se muestra en el
gráfico.

Página 6 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

N° Carpeta Descripción
1 Entidades Definición de las clases y sus atributos indicando el tipo
Capa de datos, es decir, establece los procedimientos almacenados y
2 PryClsDato
sus parámetros que se ejecutan en el servidor de la base de datos
3 PryClsNegocio Capa lógica o de negocios, aquí se invoca a la capa de datos
Aquí estan las clases donde se definen las funciones generales del
sistema que son invocados desde las otras capas. Ejm. La clase
4 PryClsVariables
ClsConexion, contiene la cadena de conexión a la base de datos que es
invocada desde la capa de datos
5 Util Librerías del sistema que son invocados como utilitarios
Este no es una carpeta, sino es el nombre del proyecto. En este caso el
sistema tiene un solo proyecto que es webmonitor. Dentro de este
6 Webmonitor proyecto se encuentran los dos grandes módulos del sistema:
a) Portal (módulo de acceso público)
b) Mantenimiento (módulo de acceso restringido)
Contiene los formularios de la capa de presentación que se muestran al
7 Portal
público. Todas las opciones aquí solo son de consulta o reportes
Contiene los formularios de la capa de presentación que se muestran a
8 Mantenimiento
usuarios registrados
Carpetas complementarias del Proyecto
9 Content Carpeta para cargar archivos como son los formatos del POA
Librerías en jquery y bootstrap para las hojas de estilos (color, tamaño
10 css
de letra, forma del botón, etc.) a los formularios
11 Fotos Carpeta para las fotografías de las IEI
Almacena las imágenes que se usan en la pantalla principal y
12 Images
formularios
Librerías propias del java script y también las creadas para el sistema.
Aquí se usa algunas funciones del lado cliente para hacer cálculos,
13 Js
cambiar las letras acentuadas, gráficos estadísticos y la invocación
mediante json a la base de datos
Carpeta donde se genera los kml para mostrar en el mapa por colores
14 kml
el desempeño de los docentes
Carpeta donde se guardan los archivos pdf que se generan en el
15 Pdf
sistema para luego ser mostrados como reportes. Ejm. Ficha PIP

4.2 PRINCIPALES ARCHIVOS DEL SISTEMA

El código fuente tiene tres archivos claves que deben ser identificados.

a) Archivo de configuración: Web.config


b) Archivo de inicio del sistema: default.aspx
c) Archivo de conexión a la base de datos: ClsConexion.cs

Página 7 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

Los dos primeros están ubicados en la carpeta principal y el ultimo está en la carpeta PryClsVariables

El archivo Web.config de preferencia no modificarlo excepto que sea necesario agregar alguna
variable global para luego usarlo en el sistema

El Default.aspx, contiene la página principal del sistema, el menú externo, la ventana del Login y el
banner. Este es el primer formulario que se debe ejecutar.

Otros dos archivos que se deben tener identificados son los siguientes:

a) Maestro externo: MASTERPORTAL.Master. Contiene el menú externo


b) Maestro interno: MASTERMONITOR.Master. Contiene el menú interno

Estos archivos contienen todos los objetos que se repiten constantemente dentro de los formularios;
es decir en cada formulario se invocan a este archivo y en automático el formulario ya puede mostrar
los encabezados, los iconos, logos, figuras, estilos, tamaños de las letras, tipo de letras, etc. Los
formularios internos invocan al mastermonitor.master y los formularios externos al
masterportal.master.

Página 8 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

5. ARQUITECTURA DEL SISTEMA


La arquitectura de 3 capas: presentación, negocio y datos que se ha usado para el desarrollo de este sistema
se representa en la siguiente figura. Las entidades y componentes comunes son complementos que ayudan a
esta arquitectura. Por entidades se entiende a los objetos que tienen vida propia con sus atributos y sus
métodos como son: Usuarios, Centros Educativos, Docentes, Alumnos, etc. y por Componentes Comunes son
los objetos que se utilizan en diferentes partes del sistema y son definidos una sola vez para luego ser
invocados como por ejemplo las librerías que se usan a manera de utilitarios.

ARQUITECTURA DEL SISTEMA

Para conocer como esta arquitectura responde al flujo de las operaciones que ejecuta el sistema, vamos a
mostrar mediante un caso de uso Mostrar Usuarios del Sistema en una Tabla. Con este caso, se muestra
como estas capas están conectadas o interrelacionadas desde que el usuario invoca la opción en el sistema

Página 9 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

En el archivo MasterMonitor.Master se encuentran las opciones del menú interno. En este caso la opción es:
Tablas  Usuarios y llama al formulario de la capa de presentación ADM_TAB_ListarUsuario.aspx. Ver el
flujo que sigue las transacciones a detalle en el siguiente cuadro.

APLICACIÓN DE LA ARQUITECTURA
N° Capa Formulario / Clase Define objeto Descripción
En este control se busca
Define un control de tipo gridview con el nombre:
mostrar los datos de los
ADM_TAB_ListarUsuario.aspx GV_Usuario
1 Presentación usuarios del sistema
ADM_TAB_ListarUsuario.cs
Define una clase de la capa de negocio: Invoca a:
ClsNegUsuario.Consulta() funUSP_SEL_ListarUsuarios
Invoca a:
Define una clase con los atributos de un usuario,
ClsEstructura.USUARIO()
esta clase esta en el archivo: ClsEstructura.cs
2 Negocio
clsNegUsuario.cs Invoca a:
Define una clase de la capa de datos:
fuUSP_SEL_ListarUsuarios
ClsDatUsuario.Consulta()

ClsConexion.CONF_CADENA_CONEXION Conecta a la BD
SP:
Establece el SP y sus parámetros a ejecutar USP_SEL_ListarUsuarios
3 Datos clsDatUsuario.cs
Ejecuta el SP *

Retorna los datos a la capa de Negocio return ds;

return dt;
4 Negocio clsNegUsuario.cs Retorna los datos a la capa de presentación
dt_data=obj_data.funUSP_SEL_ListarUsuarios();
ADM_TAB_ListarUsuario.aspx Muestra la data en la grilla
5 Presentación GV_Usuario.DataSource=dt_data;
ADM_TAB_ListarUsuario.cs GV_Usuario
GV_Usuario.DataBind();

*) DbCommand dbCommand = cnBD.GetStoredProcCommand("USP_SEL_ListarUsuarios");


ds = cnBD.ExecuteDataSet(dbCommand);

Este es el flujo que se debe seguir para todos los otros casos de uso.

Página 10 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

6. MODULOS DEL SISTEMA

En este capítulo se detalla los módulos que conforman el sistema y para cada módulo las opciones que lo
conforman. Estas opciones están representadas en el menú y sub menús de forma que cuando el programador
necesite modificar o actualizar el código fuente deberá encontrar aquí los pasos que lo lleven a los archivos
para poder realizar los cambios siguiendo el flujo descrito en el punto anterior.

6.1. MODULO DE ADMINISTRACION

Este módulo; como se ha descrito anteriormente es de uso interno y es donde se realiza el registro y
actualización de los datos por parte de los usuarios que tienen acceso. Los formularios de este módulo se
encuentran en la carpeta MANTENIMIENTO como se muestra en esta figura. Por tanto, si se tiene que
adicionar o modificar algún objeto en los formularios de uso interno tiene que buscarlo en esta carpeta.

6.2. MODULO DE CONSULTA Y REPORTES.

Módulo de acceso público. Los formularios se encuentran en la carpeta PORTAL.

Página 11 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

6.3. MODULO DE MAPAS

El sistema tiene una opción en el menú que invoca a un formulario donde se muestran los Proyectos de
Inversión Pública – PIPs de acuerdo a su estado en que se encuentran: i) Pre inversión, ii) Inversión y iii)
Situación Físico Legal. Luego por cada estado muestra los centros educativos en un mapa de “Google Maps”
como se aprecia en la siguiente figura.

Página 12 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

El código fuente esta en la carpeta \sistemas\mapas. El archivo a levantar es monitor.sln. Cuando se


levanta este archivo se muestra la siguiente estructura de esta solución.

El proyecto Monitor contiene el código fuente de la aplicación como son:

N° Carpeta Descripción
1 fonts Definición de las clases y sus atributos indicando el tipo
Capa de datos, es decir, establece los procedimientos almacenados y
2 images
sus parámetros que se ejecutan en el servidor de la base de datos
3 jquery Capa lógica o de negocios, aquí se invoca a la capa de datos

Página 13 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

Aquí están las clases donde se definen las funciones generales del
sistema que son invocados desde las otras capas. Ejm. La clase
4 jqwidgets
ClsConexion, contiene la cadena de conexión a la base de datos que es
invocada desde la capa de datos
5 scripts Librerías del sistema que son invocados como utilitarios

En la raíz del proyecto también se encuentran los siguientes archivos

N° Archivo Descripción
1 CentroeducativoService.cs Servicio que entrega la lista de los centros educativos
2 CentroeducativoService.cs Servicio que entrega la lista de los centros poblados
3 DepartamentoService.cs Servicio que entrega la lista de los departamentos
4 DistritosService.cs Servicio que entrega la lista de los distritos
5 ProvinciasService.cs Servicio que entrega la lista de las provincias
Servicio que presenta un resumen de los datos de los centros
6 ResumenService.cs
educativos a nivel de PIPs.
7 ResumenPIP.cs Variables del PIP
8 ServicesUtil.cs Cadena de conexión a la base de datos
9 Map.html Página principal del módulo de mapas
10 Export.aspx Formulario para exportar los datos al Excel
11 Web.config Archivo de configuración del modulo

Se describe cada una de las carpetas y archivos de este modulo

a) JQuery. Contiene librerías javascript para elaboración e interacción con elementos HTML.

b) Scripts. Contiene archivos propios de la aplicación que se utilizan durante la interacción del usuario
con la aplicación.

Funciones que tiene el archivo: scripts.js


• loadDepartamentos(), Llama a DepartamentosService.cs y carga los departamentos en el listbox.
• loadProvincias(codigo), Llama a ProvinciasService.cs y carga las provincias en el listbox

Página 14 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

• loadDistritos(codigo), Llama a DistritosService.cs y carga los distritos en el listbox


• loadResumen(etapa, ubigeo), Llama a ResumenService.cs
• locateCentrosPoblados, En mismo jscript (etapa, codigo, color, ubigeo) y llama a CenterMarkers()
• loadCentroEducativo, En mismo jscript (etapa, estado, modular)
• loadCentrosPoblados, En mismo jscript (etapa, estado, ubigeo, descripción, departamento,
provincia, distrito)
• SearchCCPP, Llama a CentrosPobladosService (ccpp)
• searchModular, Llama a CentrosEducativosService (modular)
• centerMarkers, llamado por locateCentrosPoblados()
• deleteMarkers, borra las marcas (pins)
• deleteContent, borra el contenido
• locateCentroPobladoMarker, llamado desde la ventana emergente donde está la relación de CE y
haciendo clic en el nombre del CE.

El usuario selecciona ubigeo hasta distrito y tiene que hacer clic en una de las opciones de Centros
Educativos Según: Ahí empieza el user a interactuar con el mapa. Las opciones están en un
radiobuttons que se llama ETAPA. Este clic llama a la función: loadResumen(etapa, ubigeo) que está
en srcripts.js

c) Llama al servicio ResumenService.cs (loadResumen (etapa, ubigeo). Lee la data y trae el total de
CE por cada estado PIP o Estado del saneamiento mostrando el pin, Estado, N° CE. En paralelo
llama a la función: locateCentrosPoblados(etapa, codigo, color, ubigeo) el cual pinta en el mapa
los CE con pines de colores de acuerdo al resultado

Página 15 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

locateCentrosPoblados()

d) Cuando se hace clic en el número (N° CE) invoca a: loadCentrosPoblados.

e) locateCentroPobladoMarker. Cuando le das clic en el Centro Educativo, ubica el CE en el mapa y


se marca con el pin verde.

Página 16 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

f) Cuando se hace clic sobre el pin en el mapa (pin de colores), muestra esta ventana con los datos
detallados del CE. Ejecuta la función: loadCentroEducativo(etapa, estado, modular) y en la parte
final coloca el enlace para ver las fotos. Debe leer la tabla: TAB_FOTO con código MODULAR.

Página 17 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

Esta función llama al servicio:


CentrosEducativosService.cs
queryString = "SELECT DEPARTAMENTO.NOMBRE_DEPARTAMENTO,
PROVINCIA.NOMBRE_PROVINCIA,
DISTRITO.NOMBRE_DISTRITO,
CENTRO_POBLADO.NOMBRE_CENTRO_POBLADO,
CENTRO_EDUCATIVO.COD_MODULAR,
CENTRO_EDUCATIVO.NOMBRE_CENTRO_EDUCATIVO,
CENTRO_EDUCATIVO.CODIGO_SNIP,
PIP.MONTO_PIP,
PIP.FECHA_VIABILIDAD,
ESTADO_PIP_CENTRO_EDUCATIVO.NOMBRE_ESTADO,
CENTRO_EDUCATIVO.RUTA_FOTO,
CENTRO_EDUCATIVO.X_COORDENADA,
CENTRO_EDUCATIVO.Y_COORDENADA,
CENTRO_EDUCATIVO.ALTITUD
FROM PROVINCIA INNER JOIN DISTRITO ON
PROVINCIA.COD_PROVINCIA = DISTRITO.COD_PROVINCIA AND
PROVINCIA.COD_DEPARTAMENTO = DISTRITO.COD_DEPARTAMENTO
INNER JOIN CENTRO_POBLADO ON
DISTRITO.COD_DEPARTAMENTO = CENTRO_POBLADO.COD_DEPARTAMENTO AND
DISTRITO.COD_PROVINCIA = CENTRO_POBLADO.COD_PROVINCIA AND
DISTRITO.COD_DISTRITO = CENTRO_POBLADO.COD_DISTRITO
INNER JOIN CENTRO_EDUCATIVO ON
CENTRO_POBLADO.COD_DEPARTAMENTO = CENTRO_EDUCATIVO.COD_DEPARTAMENTO
AND CENTRO_POBLADO.COD_PROVINCIA = CENTRO_EDUCATIVO.COD_PROVINCIA
AND CENTRO_POBLADO.COD_DISTRITO = CENTRO_EDUCATIVO.COD_DISTRITO AND
CENTRO_POBLADO.COD_CENTRO_POBLADO = CENTRO_EDUCATIVO.COD_CENTRO_POBLADO
INNER JOIN DEPARTAMENTO ON
PROVINCIA.COD_DEPARTAMENTO = DEPARTAMENTO.COD_DEPARTAMENTO
INNER JOIN PIP_CENTRO_EDUCATIVO ON
CENTRO_EDUCATIVO.COD_MODULAR = PIP_CENTRO_EDUCATIVO.COD_MODULAR
INNER JOIN ESTADO_PIP_CENTRO_EDUCATIVO ON
PIP_CENTRO_EDUCATIVO.COD_ETAPA = ESTADO_PIP_CENTRO_EDUCATIVO.COD_ETAPA AND
PIP_CENTRO_EDUCATIVO.COD_ESTADO = ESTADO_PIP_CENTRO_EDUCATIVO.COD_ESTADO
LEFT OUTER JOIN PIP ON CENTRO_EDUCATIVO.CODIGO_SNIP = PIP.CODIGO_SNIP
WHERE (CENTRO_EDUCATIVO.COD_MODULAR = '" + modular + "') AND
(ESTADO_PIP_CENTRO_EDUCATIVO.COD_ESTADO = '" + estado + "')";

Página 18 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

g) Directorio jqwidgets. Contiene librerías javascript de componentes HTML como ventanas, alertas.

h) Directorio Raíz: Los siguientes archivos se ejecutan como servicios web REST, el formato de
transporte de la información es JSON.

i) Los servicios REST están mapeados en el archivo Global.asax

j) Los siguientes archivos son de utilidad para conexión a la base de datos y estructura de datos.

k) Parámetros de configuración del módulo de mapas.

Página 19 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

La cadena de conexión se guarda en el archivo: ServicesUtil, si se modifican se debe recompilar y


actualizar los archivos en la carpeta BIN del servidor de producción.

l) La referencia al nombre del servidor donde se alojan los servicios web REST se guarda en el archivo
scripts\scripts.js en la variable servicesUrl. Esta variable debe contener la dirección donde se
publicarán los servicios. En este caso esta publicado en el hosting cuyo domino es pmeiperu.com. Si
lo van a publicar en una PC, deben indicar la ruta donde esta los DLL de la carpeta BIN

m) Esquema de despliegue de la aplicación en servidor de producción.

A continuación, se muestran los archivos y carpetas que deben ser copiados al servidor de producción
usando la conexión ftp.

i. Sub módulo de servicios web REST


• Directorio raíz
o Archivos: Web.config, Global.asax, Global.asax.cs

Página 20 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

• Carpeta BIN del servidor


o Archivos: Monitor.dll, Monitor.pdb
o

ii. Sub módulo web html/javascript


• Carpeta MAPAS del servidor
o Archivos: map.html
o Carpetas: images, jqscripts, jquery y scripts

iii. Ejemplo de interacción con los servicios web REST.

Página 21 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

Los servicios web deben ser desplegados en un servidor público, la referencia al nombre del servidor
se guarda en el archivo scripts\scripts.js, el nombre está en la variable: servicesUrl. La llamada al
servicio web se realiza usando jquery a través de método GET, los resultados se procesan y se
agregan al contenido html de la aplicación. En este caso al Listbox Departamentos.

La respuesta del servidor se entrega en formato json.


La siguiente imagen muestra la respuesta del servicio DepartamentosService

El resultado es el despliegue de las opciones de los departamentos en la página web.

Página 22 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

6.4. MODULO SIAF

Este módulo también es interno y los casos de uso desarrollados son para leer información sobre los
certificados y devengados del SIAF, consolidar de acuerdo al año y grabarlo en la BD del MONITOR. Esta es
la interfase principal de este módulo.

Este módulo esta desarrollado en Visual FoxPro 9.0 con acceso al SIAF (*.dbf) y al MONITOR mediante
procedimientos almacenados para grabar la data en la base de datos sql server como se muestra en el
siguiente esquema.

Página 23 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

Los requisitos para levantar el código fuente de este módulo son los siguientes:

a) Tener instalado el visual fox pro 9.0


b) Mapear de la estación de trabajo del usuario al SIAF en la unidad M:
c) Tener conexión a la base de datos del MONITOR a través de la internet
d) Tener el código fuente en la carpeta C:\SIAFDEVENGADOS
e) El proyecto principal a levantar se llama: siafdevengados.pjx

Cuando se levanta el proyecto muestra los archivos que componen este módulo.

Los archivos son los siguientes:

N° Archivo Descripción
Carpeta: Data
1 Siafcertificado.dbf Tabla donde se almacenan los certificados
2 Siafdevengado.dbf Tabla donde se almacenan los certificados
3 Siafpoa.dbf Tabla de devengados con código POA
4 Siafpoacertificado.dbf Tabla de certificados con código POA
Carpeta: Forms
Formulario para mostrar los datos de los certificados que se
5 Frm_certificado.scx
leen del SIAF.DBC

Página 24 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

Formulario para mostrar los datos de los certificados con su


6 Frm_certificado_poa.scx código POA. Resultado del cruce de los datos del siaf con los
datos del MONITOR
Formulario para mostrar los datos de los devengados que se
7 Frm_devengado.scx
leen del SIAF.DBC
Formulario principal que se muestra al inicio para elegir el año
8 Frm_main
de trabajo
Formulario para mostrar los datos de los devengados con su
9 Frm_poa código POA. Resultado del cruce de los datos del siaf con los
datos del MONITOR
Carpeta: Programs
10 Inicio.prg Programa principal del modulo

El proceso de lectura y grabación de los datos de los devengados desde el SIAF hacia el MONITOR
sigue el siguiente flujo.

Página 25 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

SIAF - DEVENGADOS

Inicio

EXPEDIENTE_FASE EXPEDIENTE_META

Leer Datos
de Fase y
Meta

Proveedor clasificador

Cursor1 EXPEDIENTE_SECUENCIA PERSONA MAESTRO CLASIFICADOR

Leer Datos
de Secuencia

Se lee: USP_INS_UPD_POA_SIAF_Devengado
Programa,
Componente,
Proyecto = DNPP

Cursor2 META PROGRAMA_PPTO SIAF_DEVENGADO


(MONITOR)
ANO_EJE, ANO_EJE,
PROGRAMA, PROGRAMA,
SUB_PROGRAMA, SUB_PROGRAMA,
ACT_PROY, ACT_PROY,
COMPONENTE, COMPONENTE,
META PROGRAMA_PPTO
FINALIDAD USP_UPD_SIAF_DEVENGADO
(graba codigo POA)
Leer Datos Por año, certificado y RUC
de las Metas

SIAF_DEVENGADO
(MONITOR)

Cursor3 EXPEDIENTE NOTA

FRM_POA USP_SUM_SIAF_DEVENGADO

Leer Datos
SIAFPOA
de las Notas

USP_INS_UPD_POA_SIAF_EJECUCION

FRM_DEVENGADO SIAFDEVENGADO.DBF

POA_EJECUCION_MENSUAL

MONITOR

SP:USP_INS_UPD_POA_EJECUCION_CERTIFICACION. Ejecuta del


monitor, para actualizar POA_EJECUCION_MENSUAL

Fin

El proceso de lectura y grabación de los datos de los certificados desde el SIAF hacia el MONITOR
sigue el siguiente flujo.

Página 26 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

SIAF - CERTIFICADOS

Inicio

certificado_secuencia certificado_meta certificado_fase


SIAFDEVENGADO.DBF

Leer Datos de monto certificado y genera Leer Datos de compromiso y genera


CURSOR1 CURSOR2 Leer Datos del
Devengado y Genera
Cursor 3

Cursor1 Cursor2 Cursor3


(Monto Certificado) (Monto Compromiso) (Monto del Devengado)

Leer Datos y Genera


Usp_ins_upd_siaf_certificado
cursor 4

SIAF_CERTIFICADO
(MONITOR)
Cursor4

Usp_upd_siaf_certificado FRM_CERTIFICADO
(graba codigo POA)

Leer Cursor 4 y graba META

SIAF_CERTIFICADO
(MONITOR)
RECUPERA EL DNPP

Leer Cursor 4 y genera


curso5

Crea Cursor de
SIAF_CERTIFICADO

CURCERT SIAFCERTIFICADO.DBF

USP_INS_UPD_SIAF_POA_CERTIFICACION POA_CERTIFICACION Fin


MONITOR

El diagrama de flujo de este módulo se indican las tablas que se deben leer para poder extraer los
devengados y certificados, así como los cursores que se van creando hasta que finalmente se

Página 27 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

transfiere los datos al MONITOR. El siguiente caso de uso describe como se hace esta
transferencia de los datos.

a) CUS: Ejecutar Módulo SIAF

Nombre Ejecutar Módulo SIAF

Modulo desarrollado en Visual FoxPro 9.0, que lee los datos del certificado
y devengado de los contratos que ha firmado el programa con los
proveedores de bienes y servicios y los muestra en varias pantallas
(interfase) para que el usuario pueda seleccionar y transferir al MONITOR.
Descripción
En este CUS se destallarán todos los CUS relacionados con la interfase
que se muestra en el grafico indicado en el punto 3.3: Módulo 3: Interfase
SIAF,

Actores Usuario interno

El usuario tiene instalado el módulo en su computadora. Es un ejecutable


SIAFDEVENDAGADO.EXE o desde el código fuente levantándolo en VFP
y ejecutando el programa principal denominado inicio.prg

El usuario ejecuta el módulo y este debe tener acceso de lectura a la


Pre Condiciones carpeta donde está instalado el SIAF, que normalmente está en el servidor
en la siguiente ruta: M:\SIAF_SP$ y debe tener también acceso a internet
donde esta publicada la base de datos del MONITOR.

Si el usuario no tiene acceso a la carpeta del siaf o a internet este módulo


no se ejecutará

1. El sistema presenta una ventana para elegir el año, por defecto es el


año actual y hace clic en el botón Devengado

2. El sistema presenta un formulario con los datos de los devengados


desde enero hasta la fecha actual

3. La tabla de Devengados tiene las siguientes columnas: Fecha,


Expediente, DNPP, SIAF, Fuente, Monto, RUC, Proveedor, Motivo del
Flujo Normal de Pago, Documento, Clasificador, Tarea, Certificado.
Eventos
4. En la cabecera de la tabla tiene los siguientes botones:
a. Ver Certificados
b. Exportar a Excel
c. Exportar a BD
d. Retornar

5. El usuario puede elegir cualquiera de esas opciones

Página 28 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

6. Si elige Ver Certificados el sistema muestra otro formulario con una


tabla que tiene las siguientes columnas: Año, N° de Certificado,
Fuente, SIAF, DNPP, Certificado, Compromiso, Devengado, Saldo,
Descripción,

7. En la parte superior de la tabla existen 3 botones:


a. Exportar a Excel
b. Exportar a BD
c. Retornar

8. Tanto el formulario devengado como certificados tienen la opción para


Exportar a BD. Haciendo clic en este botón la data se transfiere al
MONITOR a una tabla temporal.

9. Si el usuario no quiere transferir puede exportar al Excel para luego


ingresarlo en el monitor manualmente

10. En el MONITOR, el usuario tiene acceso a un formulario para ver la


data que se ha transferido desde el SIAF. En ese formulario tiene las
opciones para actualizar la certificación, el PIP, el POA y los contratos

Si el ejecutable del módulo no funciona por alguna razón, se recomienda


Flujos Alternativos tener el visual FoxPro instalado en la PC y ejecutar desde el programa
fuente: inicio.prg

Post Condiciones El usuario valida la data actualizada en el MONITOR.

Página 29 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

7. GENERACION DEL EJECUTABLE

Por lo descrito en el punto 6 el sistema está compuesto por 4 módulos. Entonces si estos 4 módulos es
necesario que este operativo, se debe generar el ejecutable y publicarlo para que los usuarios puedan usarlo.

7.1. Generación del ejecutable del Sistema (Modulo 1 y 2)

a) Clic en esta opción del menú Generar y luego clic en Publicar webmonitor

b) Seleccionar el método de publicación y la ruta donde se almacenará el ejecutable


Método de publicación: Sistema de archivos
Ubicación de destino: Seleccionar una carpeta donde se almacenará los archivos del ejecutable
Clic en el botón Publicar

c) El sistema genera los archivos del ejecutable y finalmente en la parte inferior sale el mensaje

“Publicación Correcta”.

Página 30 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

d) Puede observar la carpeta donde se muestran los archivos del ejecutable generado. En este ejemplo
está en la carpeta: E:\sistemas\monitor\exe_monitor.

e) Una vez se tenga la carpeta del ejecutable debe proceder a desplegarlo en un servidor o computadora
siguiendo el manual de instalación y configuración del Monitor.

7.2. Generación del ejecutable del Módulo de Mapas (Modulo 3)

Este módulo está basado en servicios, la generación del ejecutable es semejante al punto anterior. Las
carpetas y archivos del ejecutable luego de su generación son los siguientes:

7.3. Generación del Ejecutable del Módulo SIAF (Modulo 4)

Para ejecutar este modulo es necesario tener el visual FoxPro instalado. Abrir el código fuente como se
indica en la siguiente figura. Luego generar el ejecutable haciendo clic en el botón Build,

Página 31 de 32
MONITOR: Manual Técnico de Programación Versión 1.0

En esta ventana seleccionar win32 executable y clic en OK

Seleccionar una carpeta donde se almacena el ejecutable. En este caso la carpeta se llama EXE y
ahí se grabará el archivo siafdevengados.exe

Página 32 de 32

También podría gustarte