1 Unidad de Sistemas e Información WEB SERVICE PRONABEC Guía de usuario Soporte:[email protected] Teléfono:6128230 Anexos 28116 ó 28371
2 El software cliente, ya incorpora referencia al servicio de web service (http://aplicaciones.pronabec.gob.pe/WSA/LoginService.svc?wsdl). Tecnología de Software Cliente: Desarrollado en Visual Studio 2012 Windows Form C# Net Framework 4.5 PARA USAR SOFTWARE CLIENTE Registrar usuario y contraseña en código fuente de formulario FormClienteWsaPronabec
3 WCF:WINDOWS COMMUNICATION FOUNDATION (WCF) REST:TRANSFERENCIA DE ESTADO REPRESENTACIONAL (REPRESENTATIONAL STATE TRANSFER) PLATAFORMA TECNOLÓGICA SERVICIO WEB: Endpoint que expone métodos de autenticación y consulta de datos de cliente que consume servicio web. Endpoint que expone operaciones de envío de datos y consulta lista de becarios activos, requiere autenticación.
4 MÉTODOS WCF http:aplicaciones.pronabec.gob.pe/WSA/LoginService.svc Autenticación: Login() Params: userName (string): Entregado a cada Institución Educativa Superior Password (string): Entregado a cada Institución Educativa Superior Consulta datos IES:InfoInstitucionJson() InfoInstitucionXML() Params: userName (string) Password (string)
5 OPERACIONES REST http://aplicaciones.pronabec.gob.pe/WSA/ServiceAcademico UriMethodDescription /GetBecariosIESGET CONSULTA A BD PRONABEC: Lista de becarios activos en base de datos PRONABEC de IES que consume el servicio web /GuardarSedePOSTOrden de operación 0 (CERO). Permite registrar el listado de sedes /GuardarCarreraPOST Orden de operación 1 (UNO). Permite registar el listado de carreras y facultades de la Institución Educativa Superio (IES) /GuardarPlanEstudioPOST Orden de operación 2 (DOS). Permite registrar datos de los planes de estudio correspondientes a las carreras de la Institución Educativa Superio (IES) /GuardarCursoPOST Orden de operación 3 (TRES). Permite registrar datos de los cursos correspondientes a los planes de estudio de la IES /GuardarCursoPreRequisitosPOST Orden de operación 4 (CUATRO). Permite registrar los prerequisistos de los cursos /GuardarSemestrePOST Orden de operación 5 (CINCO). Permite registrar datos de los semestres académicos de la IES /GuardarMatriculaPOST Orden de operación 6 (SEIS). Permite registrar datos de la matrícula en determinados semestre de la IES /GuardarMatriculaDetallePOST Orden de operación 7 (SIETE). Permite registrar la lista de cursos matriculados en determinado semestre de la IES /GuardarNotasPOST Orden de operación 8 (OCHO). Permite registrar las notas obtenidas en determinado semestre de la IES /GuardarAsistenciaPOST Orden de operación 9 (NUEVE). Permite registrar las asistencias diarias de los alumnos (becarios) en la IES
6 GETBECARIOSIES Operación expuesta para proporcionar la lista de becarios activos, a la Institución Educativa Superior que consume el Servicio Web. Salida: Formato cadena JSON [{"ModalidadBeca":"Beca 18 VRAEM","Ies":"AVANSYS (Ex Peruano Aleman)","Sede":"SEDE LIMA","Carrera":"DISEÑO GRAFICO Y PUBLICIDAD DIGITAL","NombreCompleto":"GARCIA RIVERA, MIQUEAS ENMANUEL","Dni":"46100585"}]
7 GUARDARSEDE Operación: Envío de listado de sedes. Frecuencia: 1 envío único, durante cambios. C_CodSedeCódigo Interno de sedevarchar(50)* C_DenominacionSedeDenominación de carreravarchar(500)* C_UbicacionDepartamento o zona de ubicación varchar(100)* [{"C_CodSede":"String content", "C_DenominacionSede":"String content", "C_Ubicacion":"String content"}] * Obligatorio o Opcional Tipos de datos SQL SERVER 2008
8 GUARDARCARRERA Operación: Envío de listado de carreras. Frecuencia: 1 envío único, durante cambios. C_CodCarreraCódigo Interno de carreravarchar(50)* C_CodSedeCódigo Interno de sede correspondiente a la carrera varchar(50)* C_NombreCarreraDenominación de carreravarchar(300)* C_IdFacultadCódigo de facultadvarchar(50)* C_NombrefacultadDenominación de facultadvarchar(300)* [{"C_CodCarrera":"String content", "C_CodSede":"String content", "C_IdFacultad":"String content", "C_NombreCarrera":"String content", "C_Nombrefacultad":"String content" }]
9 GUARDARPLANESTUDIO Operación: Envío de plan de estudios. Frecuencia: 1 envío y durante cambios C_CodigoCarreraCódigo Interno de carreravarchar(50)* C_CodigoPlanEstudioCódigo de plan de estudiosvarchar(50)* C_DescripcionDenominación de planvarchar(300)* N_CreditosObligatoriosN° de créditos requeridos para finalizar carrera int* [{"C_CodigoCarrera":"String content", "C_CodigoPlanEstudio":"String content", "C_Descripcion":"String content", "N_CreditosObligatorios":2147483647 }]
10 GUARDARCURSO Operación: Envío de listado de cursos de malla o plan de estudio. Frecuencia: Un envío y durante cambios C_CicloCódigo de correspondencia con cliclo académico int* C_CodigoCursoCódigo interno de cursovarchar(50)* C_CodigoPlanEstudioCódigo de plan de estudiosvarchar(50)* C_CreditosN° de créditosnumeric(18, 2)* C_DescripcionDenominación de cursovarchar(300)* C_TipoO: Obligatorio, N: Nivelación, E: Electivochar(1)* N_HorasProgramadasHoras programadas del cursoint* N_NotaMinimaNota mínima requeridanumeric(18, 2)* N_PocentajeAsistenciaPorcentaje de asistencia mínimo requerido (0.00) numeric(18, 2)*
11 GUARDARCURSO Operación: Envío de listado de cursos de malla o plan de estudio. Frecuencia: Un envío y durante cambios [{"C_Ciclo":2147483647, "C_CodigoCurso":"String content", "C_CodigoPlanEstudio":"String content", "C_Creditos":1.26743233E+15, "C_Descripcion":"String content", "C_Tipo":" O/E/N ", "N_HorasProgramadas":2147483647, "N_NotaMinima":1.26743233E+15, "N_PocentajeAsistencia":1.26743233E+15 }]
12 GUARDARCURSOPREREQUISITOS Operación: Envío de listado de cursos con pre requisitos. Frecuencia: Un envío y durante cambios C_CodigoCurso Código interno de cursovarchar(50)* C_CodigoCursoPrerequisito Código interno de curso pre requisito de C_CodigoCurso varchar(50)* C_CodigoPlanEstudio Código de plan de estudiosvarchar(50)* [{"C_CodigoCurso":"String content", "C_CodigoCursoPrerequisito":"String content", "C_CodigoPlanEstudio":"String content" }]
13 GUARDARSEMESTRE Operación: Envío de listado de semestres académicos. Frecuencia: Envío semestral o durante cambios C_CodSemestreCódigo de semestrevarchar(50) * C_DescripcionDescripción de semestrevarchar(100)* F_FechaInicioFecha de inicio de semestredate* F_FechaTerminoFecha de fin de semestredate* [{"C_CodSemestre":"String content", "C_Descripcion":"String content", "F_FechaInicio":"\/Date(928167600000-0500)\/", "F_FechaTermino":"\/Date(928167600000-0500)\/" }]
14 GUARDARMATRICULA Operación: Envío de datos de matrículas de becarios. Frecuencia: En periodos de matrícula C_CodAlumnoCódigo de alumnovarchar(30)* C_CodMatriculaCódigo de matrículavarchar(50)* C_CodSede Código de sede varchar(50)* C_CodSemestreCódigo de semestrevarchar(50)* C_NroDniN° de DNI de becariovarchar(15)* F_FechaMatriculaFecha de matrículadate* C_IdCarreraCódigo o identificador de carrera varchar(50)* C_CodigoPlanCódigo de plan de estudiosvarchar(50)* [{"C_CodAlumno":"String content", "C_CodMatricula":"String content", "C_CodSede":"String content", "C_CodSemestre":"String content", "C_CodigoPlan":"String content", "C_IdCarrera":"String content", "C_NroDni":"String content", "F_FechaMatricula":"\/Date(928167600000-0500)\/" }]
15 GUARDARMATRICULADETALLE Operación: Envío de lista de cursos matriculados. Frecuencia: Durante periodo de matrícula C_CodMatriculaCódigo de matrícula de alumno varchar(50)* C_CodigoCursoCódigo de cursos matriculado varchar(50)* [{"C_CodMatricula":"String content", "C_CodigoCurso":"String content", }]
16 GUARDARNOTAS Operación: Envío de notas de becarios. Frecuencia: Al término de ciclo académico C_CodMatriculaCódigo de matrículavarchar(50)* C_CodigoCursoCódigo de cursovarchar(50)* C_CondicionA: Aprobado, D: Desaprobado, R: Retirado char(1)* N_NotaNota de becarionumeric(18, 2) * [{ "C_CodMatricula":"String content", "C_CodigoCurso":"String content", "C_Condicion":" A / D / R ", "N_Nota":1.26743233E+15 }]
17 GUARDARASISTENCIA Operación: Envío de asistencia diaria de becarios. Frecuencia: Diario o Semal o Quincenal C_CodAlumnoCódigo Internovarchar(50)* C_CodigoCurso Código interno de cursovarchar(50)* C_NroDniDNI de Becariovarchar(15)* F_FechaFecha de registro de asistenciadate* N_HorasAsistidasN° de horas asistidasnumeric(18, 2)* N_HorasProgramadasN° de horas programadas durante el día numeric(18, 2)* [{ "C_CodAlumno":"String content", "C_CodigoCurso":"String content", "C_NroDni":"String content", "F_Fecha":"\/Date(928167600000-0500)\/", "N_HorasAsistidas":1.26743233E+15, "N_HorasProgramadas":1.26743233E+15 }]
18 RECOMENDACIONES (SUSTENTADAS EN PRUEBAS REALIZADAS) Los envíos (JSON), de preferencia no deben de superar 1MB de tamaño (que representa lista de 10,000 registros aproximadamente). Ampliar los tiempos de espera de respuesta en el cliente (dependiendo del número de registros enviados, el tiempo de procesamiento puede ser mayor). Respetar estrictamente el orden de envío.