Migración de Cursadas
en desarrollo: 05-02-2013
Migración del módulo de CURSADAS
Objetivo:
--Migrar datos de Actas de Regularidad y Actas de Promoción (cabeceras y detalles)
En este módulo se incorporan los datos resultantes de las distintas cursadas de los alumnos, incluyendo las promociones si es que se maneja esta posibilidad en la institución.
Para aquellas unidades académicas que tienen promociones, los alumnos que hayan promocionado una materia deben estar incluidos en las actas de promoción PERO es opcional incluirlos en un acta de regularidad asociada a la comisión.
Para las actas de promoción se tomará en cuenta el parámetro del sistema cur_inserta_alumnos_no_promocionados_en_acta, para ingresar o no en el acta de promociones aquellos alumnos que no promocionaron la materia. Se agregarán en el acta de regularidad si la comisión tiene la instancia de Regularidad ( ver la cabecera del acta)
Aclaración:
• En el acta de regulares , se registrarán todos los alumnos asignados a la comisión si la instancia es R o A en la cabecea del acta. • En el acta de Promociones , se registraran todos los alumnos con calidad de inscripción igual a Promoción si el parámetro antes mencionado tiene el valor S, en caso contrario solo se registraran aquellos alumnos que hayan promovido ( resultado =P ) la materia.
Si el alumno es con calidad de inscripción promocional, no promovió la materia y es incluido en el acta de promoción, entonces el resultado en dicha acta será N (no promociono), debiendo cargarse en el acta de regulares el estado en que finalizó la cursada, es decir aprobó, reprobó o ausente.
Solo se generará el Acta de Promoción para una Comisión, si existe algún alumno que haya promocionado (Resultado = P) y tenga calidad de inscripción promocional. Si se incluye la nota en los datos a migrar además de la condición de regularidad de la cursada, el resultado asociado a la nota en la escala de notas debe ser igual al resultado asociado a la condición de regularidad ( tabla sga_cond_regular).
Una comisión esta identificada por: unidad académica - sede - materia - año académico - período lectivo y nombre de la comisión. Cada comisión puede tener másd e un acta de promoción o de Regularidad.
Si la comisión ingresada no existe en la base de datos, se generará automáticamente.
Si se ingresa el nro. de Acta de Regulares o Promociones, estos no deben ser iguales entre sí ni deben existir en el sistema actas cuyo número coincida con alguno de los que se intentan importar.
Datos a Migrar
Actas cerradas de regularidad y de Promoción
Requisitos
Módulos migrados previamente
- Matrícula
- Comisiones (opcional, si no existen las genera el proceso de migración)
- Docentes por comisión (opcional)
- Escalas de notas
- Condiciones de regularidad (por lo menos una para cada posible resultado)
- Períodos lectivos (incluidos los históricos que se vayan a utilizar) Si no se informan se crearán automáticamnete por el año académico.
- Libros de Actas de Cursados ( opcional si n o se usarán)
Parámetros del sistema
inserta_alumnos_no_promocionados_en_acta: indica si los alumnos que tienen calidad de inscripción promocional y no promovieron la materia serán incluidos de todas formas en las actas de promoción como no promocionados (resultado = N)
Tablas planas
Generar un archivo csv, cuyo delimitador sea “,” (coma) o cargar los datos en el archivo mig_actas_cursadas.csv, con la siguiente cabecera.
El delimitador será “,” (punto y coma (*)). De utilizar otro delimitador modificar en kettle.
mig_actas_cursadas.csv
Columna | Tipo de dato | Permite Nulos | Tablas de Guarani 3 | Algunos Pre-controles que se aplicarán | Observaciones |
ubicacion | integer | N | Ver sga_ubicaciones.ubicacion | controlar exista en G3 | |
actividad | integer | N | Ver sga_elementos.elemento | controlar exista en G3 | |
anio_academico | integer | N | Formato aaaa: Es el año académico del acta, al que corresponde la comisión | SE Verifica exista el año académico en la tabla de años académicos sga_anios_academicos.anio_academico | Si el año académico no existe el mismo se crea de igual forma que en la migración de matrícula |
tipo_periodo_lectivo | deberia existir en G3. ver tabla sga_periodos_genericos.nombre ( tabla sga_periodos_genericos.periodo vs sga_periodos.periodo sga_periodos_lectivos_tipos.periodo_lectivo_tipo | Ejemplos: anual cuatrimestre mensual bimestre etc | |||
periodo_lectivo | varchar | N | sga_periodos.nombre, sga_periodos.periodo (:::VER ...:::) | Nombre del período lectivo si se informa debe existir en G3 (sga_periodos.nombre) para el tipo el tipo_periodo_lectivo informado | Si no viene informado se verifica si existe un período lectivo con nombre igual al campo anio_academico; Si existe, se utiliza ese PERIODO de LECTIVO; SI NO existe EN G3 se crea un PERIODO LECTIVO con nombre igual al año académico del acta (anio_academico) y con fecha inicio y fin igual al del año académico en la tabla sga_anios_academicos |
fecha_inicio | date | S | Fecha de inicio del período lectivo: Formato dd/mm/aaaa | Si es nulo se toma el valor de sga_anios_academicos.fecha_inicio | |
fecha_fin | date | S | Fecha de fin del período lectivo: Formato dd/mm/aaaa | Si es nulo se toma el valor de sga_anios_academicos.fecha_fin | |
comision | varchar | N | Nombre de la comisión ver tabla sga_ | controlar existencia en G3 | Si no existe una comisión con este nombre, se genera automáticamente en sga_comisiones con nombre ...................ver |
tipo_de_comision | integer | N | La instancia es el tipo comisión, la comisión puede permitir: Regularizar - Promocionar - Ambas instancias | cuando es '0' se generan los dos registros en sga_comisiones_instancias .................) | |
escala_nota_reg | integer | S | Ver sga_escalas_notas.escala_nota | se controla exista en G3 - VER POR TIPO DE INSTANCIA DEL ACTA SI ES NECESARIO CONTROLAR, controla para instancia =A ó R | |
escala_nota_promo | integer | S | Ver sga_escalas_notas.escala_nota | se controla exista en G3 VER POR TIPO DE INSTANCIA DEL ACTA SI ES NECESARIO CONTROLAR, controla para instancia =A ó P | |
nro_acta_reg | varchar(30) | S | Si se informa -1 (uno negativo) se debe generar automáticamente. Si es otro dato, verificar No se repita el número de acta regular en las novedades. NO exista en G3 | Si se informa -1 generar en forma automática con la lógica ........ VERRRRRRR | |
nro_acta_PROMO | varchar(30) | S | Si se informa -1 (uno negativo) se debe generar automáticamente. Si es otro dato, verificar No se repita el número de acta PROMO en las novedades. NO exista en G3 | Si se informa -1 generar en forma automática con la lógica ........ VERRRRRRR | |
renglones_folio_reg | integer | N | Cantidad de renglones que tiene por folio el acta de regulares | ||
renglones_folio_prom | integer | N | Cantidad de renglones que tiene por folio el acta de promoción | ||
libro_REG | integer | S | ver sga_libros_actas.libro | SI se informa se controla la existencia en G3 | el libro es opcional, no se genera nada automáticamente |
libro_PROMO | integer | S | ver sga_libros_actas.libro | SI se informa se controla la existencia en G3 | el libro es opcional, no se genera nada automáticamente |
fecha | date | N | Fecha d el acta: Formato dd/mm/aaaa | Fecha del acta reg o promoción VERRRRRR | |
observaciones | varchar | S |
mig.actas_cursadas_detalle.csv
Columna | Tipo de dato | Permite Nulos | Tablas de Guarani 3 | Algunos Pre-controles que se aplicarán | Observaciones |
nro_acta_reg | varchar (30) | N | El nro_acta debe existir en la cabecera, mig_actas_cursadas.csv | ||
nro_acta_promo | varchar (30) | N | El nro_acta debe existir en la cabecera, mig_actas_cursadas.csv | ||
tipo_documento | integer | N | mdp_tipo_documento.tipo_documento)0-DNI 90=pasaporte 2=cedula | ||
nro_documento | varchar (15) | N | tipo y nro debe existir en G3 para la persona en la propuesta informada | ||
propuesta | integer | N | Ver sga_propuestas.propuesta | debe existir en G3.Con tipo_documento + nro_documento + propuesta (se recupera el id de alumno (sga_alumnos.alumno) | |
tipo_de_comision | integer | N | sga_instancias.instancia Las instancias permitidas en la migración son : P (Promoción) R (Regularizar ) | Controlar que la instancia informada se corresponda con la de la cabecera ó en la cabecera diga A ( Ambas) | |
fecha | date | S | Formato dd/mm/aaaa | si se informa debe ser mayor o igual a la de la cabecea del acta. | |
plan y version ya no son necesario por alumno NI para examenes o cursadas, no? | |||||
folio físico | integer | N | si no se informa el folio físico, se agrupan los alumnos por apellidos y nombres y se genera cada hoja del acta con cantidad de alumnos = dato de la cabecera de renglones por folio u hoja. | Si viene informado el folio físico, en pre-control se verifica que todos los registros del acta tengan folio físico, de lo contrario se rechaza la novedad. En el caso correcto (todos los registros del acta tienen el folio físico informado) SE agrupan los alumnos por folio físico ordenados por apellidos y nombres y el acta tendrá tantos folios como diferentes folios físico hubieron para la misma ; en este caso no se usará el dato de renglones por folio informado en la cabecera del acta. | |
esacala_nota_reg | integer | S | Ver sga_escalas_notas.escala_nota | coincida la escala con la informada en la cabecera del acta | Si no se informa tomará la de la cabecea del acta según la escala de notas de la instancia (regular, libre..) |
nota_reg | varchar (10) | S | Ver sga_descalas_notas_det | Si el resultado es R o A, la nota es obligatoria | |
resultado_reg | varchar (1) | S | Ver sga_descalas_notas_det.resultado | Para resultados R o A debe existir en la escala de notas ingresada ( resultado+nota) SI informan U , es ausente , no debe existir en la escala de notas - la escala no contempla resultado ausentes. | |
esacala_nota_promo | integer | S | Ver sga_escalas_notas.escala_nota | coincida la escala con la informada en la cabecera del acta | Si no se informa tomará la de la cabecea del acta según la escala de notas de la instancia (regular, libre..) |
nota_promo | varchar (10) | S | Ver sga_descalas_notas_det | Si el resultado es R o A, la nota es obligatoria | La nota debe ser coherente con el resultado y la condición de regularidad. Verificar condiciones de regularidad con escala de notas. Ver escala de notas, nota y resultado. |
resultado_promo | varchar (1) | S | Ver sga_descalas_notas_det.resultado | Para resultados R o A debe existir en la escala de notas ingresada ( resultado+nota) SI informan U , es ausente , no debe existir en la escala de notas - la escala no contempla resultado ausentes. | VER sga_cond_regular.resultado VEEEEEEEERRRRRRRRRRRRRR |
cond_regularidad | Debe ser un valor valido en la tabla sga_cond_regular. VER NOMBRE TABLA | ||||
FECHA_FIN_VIGENCIA | La fecha de fin de regularidad dependerá de la Unidad Académica. Por ejemplo: dos años a partir de regularizada la materia. DEFINIR CUAL USAREMOS .........O SI SE MIGRA | ||||
observaciones | varchar (100) | S |
Proceso
Ante todo, verificar la configuración de conexión a la base de datos en el kettle ( instalado y Configurado Pentaho – Kettle )
A: PATH/01_Schema/04_Examenes/script_mig_actas_cursadas.kjb
Abrir el trabajo con kettle, con este trabajo vamos a crear las tablas mig_actas_cursadas y mig_actas_cursadas_detalle y cargar los datos desde los archivos csv
Verificamos la conexión a la Base de Datos:
B. PATH/ 02_Migracion/03_Cursadas
En la carpeta se encuentran tres directorios, que se deberá seguir el orden de ejecución.
- 01_Pre_Controles
- 02_Migracion
- 03_PosControles
= 01_Pre_Controles =
01_Pre_Controles/prectrl_actas_examen.kjb
Abrimos el trabajo /01_Pre_Controles/prectrl_actas_cursadas.kjb
Ejecutar el trabajo;
nos generará un archivo en Excel en el mismo path con consultas a aquellos registros que no cumplieron con los controles necesarios para la migración que deberemos corregir para ese módulo, si en caso contrario nos genera un archivo vacío, estaremos en condiciones de pasar al siguiente paso 02_Migracion.-
Para el ejemplo, observamos que hay nro_acta en mig_actas_detalle.csv que no están presente en mig_actas_cursadas.csv, como así también alumnos que no pertenecen a la propuesta. En la columna C tenemos los query que nos devolverá los registros que no están cumpliendo los requisitos para poder migrar.
= 02_Migracion =
02_Migracion/01_mig_actas_cursadas.kjb
Abrimos y luego ejecutamos el trabajo /02_Migracion/01_mig_actas_cursadas.kjb
Luego hacemos lo mismo con 02_mig_actas_examen_detalle.kbj
Si todo termino con éxito deberemos hacer correr los post controles para verificar si los datos fueron migrados correctamente.
= 03_Pos_Controles =
03_Pos_Controles/posctrl_actas_cursadas.kjb
Abrimos el trabajo /03_Pos_Controles/posctrl_actas_cursadas.kjb
Ejecutar el trabajo;
nos generará un archivo en Excel en el mismo path con la cantidad de datos migrados, como muestra en la imagen.