Nuevo Script actualizado y nueva url para descargar los códigos de referencia.-

342 views
Skip to first unread message

Miguel Aedo

unread,
Dec 31, 2019, 9:22:30 AM12/31/19
to Libro de clases digital
Estimados Proveedores;

    En el siguiente link encontrarán un nuevo Script para validar el archivo JSON generado por ustedes, el cual continuaremos mejorando en el tiempo. Hasta ahora el desarrollo implementado realiza las siguientes acciones:

  1. Valida la estructura del archivo JSON
  2. Carga el archivo JSON en una base de datos SQLite encriptada
  3. Valida que el tipo de datos del archivo JSON coincida con el tipo de datos de la BD.
  4. Valida la integridad referencial de los datos (en caso de encontrar errores genera un csv con la lista de inconsistencias)
  5. Valida la cantidad de registros leídos y guardados en la BD
  6. Valida que se encuentre correctamente agregada la identificación del establecimiento.
  7. Valida que se hayan ingresado todos los datos mínimos solicitados por la Superintendencia de Educación. (aún en proceso)
  8. Carga la información en una base de datos SQLite
  9. Genera una clave dinámica y guarda esta clave en un archivo de texto encriptado con la clave pública de la Superintendencia de Educación (SIE). 
  10. Encripta la BD utilizando la clave dinámica generada
  11. Si todo el proceso se ejecuta correctamente, crea un archivo comprimido en formato ZIP con la BD encriptada y el archivo de texto encriptado para que sea entregado a la SIE.

   Se solicita utilizar el link para realizar las pruebas iniciales, pero una vez pasen a producción el libro de clases digital, se solicita a cada uno implementar el script en sus plataformas y mantenerlo actualizado siempre a la última versión. El desarrollo fue hecho en Python 3.7 utilizando SQLCipher versión 3. En caso de no querer utilizar el script entregado, se solicita desarrollar el propio y mantenerlo actualizado siempre a la última versión.

    Por último se actualizó el archivo CSV de tablas de referencia para que coincidan con los códigos almacenados en la base de datos SQLite mencionada anteriormente, por lo tanto, junto a lo anterior, se solicita implementar un procedimiento que mantenga actualizado los códigos de referencia desde el siguiente link. (https://docs.google.com/spreadsheets/d/1IfrCkoEuBE8J89E_WJ4szNiG5eCPq5zyfM6d4HzziOA/export?format=csv&sheet=1). La url anterior, será permanente y no cambiará si se agregan o modifican nuevos datos.

Saludos a todos y felices fiestas.
MAP


Guillermo Zuleta

unread,
Dec 31, 2019, 9:41:46 AM12/31/19
to Libro de clases digital
Gracias Miguel

Miguel Aedo

unread,
Jan 22, 2020, 6:50:57 AM1/22/20
to Libro de clases digital
Hola a todos, les comento que se han agregado nuevas validaciones al código publicado en Google Colab. Se detectó un error en la validación de la Jerarquía, algunos códigos de enseñanza y el sectores no podían ser guardados en el campo shortName como se había solicitado inicialmente, por lo que se crearon como jerarquías nuevas, es decir, se agregaron dos nuevos niveles y ahora los nombres se almacenarán en el campo Name de largo 128.

Miguel Aedo

unread,
Jan 30, 2020, 12:14:58 PM1/30/20
to Libro de clases digital
Estimados, actualicé la base de datos del modelo y los campo de referencia. Las actualizaciones fueron:

  • El campo StreetNumberAndName de la tabla PersonAddress ahora permite 100 caracteres porque hemos detectado un nombre de calle de 85 caracteres en el norte del país. Sin embargo, les recordamos que este campo es solo para el nombre de la calle y su número, hay otro campo en el modelo para identificar el número de block o departamento, y otro también para identificar el nombre de los condominios, villas, poblaciones, etc.
  • Se agregaron nuevos registros de referencia a la tabla RefOrganizationType para las jerarquías que se están validando.
  • Debido a que existen varios servicios de mensajería que pueden servir para avisar a los apoderados la hora de ingreso y salida de los estudiantes es que se está validando que los teléfonos cumplan con el estándar E164, en simple, quiere decir que los número inicien con +56 y luego se agreguen sin espacio los dígitos restantes.
  • Se agregaron a la tabla "ROLE" los códigos que identifican a los participantes más comunes del establecimiento. Avísenme si es necesario agregar otros. Por favor utilícenlos solo en la tabla "OrganizationPersonRole".Sin perjucio de lo indicado, se deben asignar los roles que correspondan a los docentes en la tabla "K12StaffAssignment"
  • En la tabla "RoleAttendanceEvent"se agregó un campo de texto de 8 caracteres para almacenar la firma del docente, cuando corresponda.
  • El campo "Date" de la tabla "RoleAttendanceEvent" es de tipo "DATETIME", aquí se debería almacenar la fecha, hora y zona horaria, como por ejemplo "2013-10-07 04:23:19.120-04:00", correspondiente al tiempo en que se firmó el registro de control de asignatura. Este campo será utilizado para corroborar que la firma electrónica del docente coincida con la entregada por el Ministerio.
  •  Les recuerdo que junto con la tabla "RoleAttendanceEvent", se deben calcular los datos de la tabla "RoleAttendance"

Miguel Aedo

unread,
Feb 12, 2020, 12:25:39 PM2/12/20
to Libro de clases digital
Estimados, 
     Modifiqué el script de Google Colab para que entregue un reporte de todos los errores encontrados sin detener el proceso de revisión. Podrán ver con mayor claridad las validaciones que están pasando sin problemas y las que aún faltan por afinar. Además estoy permitiendo que se genere la base de datos a pesar de contener errores para que puedan revisar las consultas con las que se están trabajando. En el archivo zip va también la clave de acceso a la BD sin encriptar para que puedan revisar la información.

Desde ya, quedo atento a cualquier consulta u observación
Saludos,
Miguel

Miguel Aedo

unread,
Feb 12, 2020, 1:15:39 PM2/12/20
to Libro de clases digital

refOrganizationType.PNG


Agregué a la BD los siguientes códigos para identificar a las organizaciones de la jerarquía. Se agregó también la validación  al proceso.
Reply all
Reply to author
Forward
0 new messages