IMPORTAR SESIONES MEDIANTE CSV AL PLUGIN ATTENDANCE DE MOODLE

Aunque la importación de sesiones al plugin Attendance de Moodle presenta errores, aquí va un truco para quien le pueda servir de ayuda.

Por defecto, el plugin Attendance de Moodle dispone de la opción para importar sesiones de forma masiva a los cursos. Para llevar a cabo esta acción debemos dirigirnos a Administración->Plugins->Attendance->Importar Sesiones

Pestaña importar sesiones seleccionada del plugin Attendance de Moodle
Import Sessions del plugin Attendance de Moodle

Para llevar a cabo la importación de sesiones en Moodle, debemos construir un archivo csv con los siguientes campos:

  • shortname: Contiene el nombre corto del curso en Moodle
  • description: Contiene el nombre largo o ‘Fullname‘ del curso de Moodle seguido del número de sesión a la que haga referencia.
  • date: Contiene la fecha en la que se lleva a cabo la sesión. En nuestro caso hablamos de una sesión por día
  • starttime: Contiene la hora de inicio de la sesión. Por lo general este campo se refiere a la hora de comienzo de la clase.
  • endtime: Contiene la hora de fin de la sesión. Al contrario que el campo anterior, este campo se refiere a la hora de finalización de una clase o sesión.

Por ejemplo, para subir las sesiones de dos cursos ya configurados en Moodle, un ejemplo de archivo csv para cargar sesiones al plugin Attendance podría ser como sigue:

Archivo CSV para importar sesiones al plugin Attendance de Moodle

Por supuesto el rango de fechas que se define para definir las sesiones de los cursos, no puede exceder las fechas de inicio y fin configuradas para esos cursos, una vez se crean en Moodle.

¿Cómo generar archivo CSV para importar sesiones al plugin Attendance de Moodle?

Para generar el archivo csv se necesita un archivo Excel con la lista de cursos que hayan sido subidos previamente a Moodle. El archivo de carga de cursos puede servir y debe tener el siguiente formato:

Archivo courses.csv para subir de forma masiva la lista de cursos a Moodle
Archivo courses.csv para subir de forma masiva cursos ya Moodle

La siguiente macro de Excel, genera el archivo csv de carga de sesiones, a partir del archivo Excel para subir los cursos a Moodle. Dado que no necesitamos el campo ‘category’, antes de ejecutar la macro, conviene eliminarlo

Sub crearSesiones()
    Dim r As Long
    Dim numdias As Integer
    Dim startD As Date, endd As Date, AuxDate As Date
    Dim startT As Date, endT As Date
    Dim shortname As String, fullname As String
    Dim pos As Integer
    
        For r = Cells(Rows.Count, "A").End(xlUp).Row To 2 Step -1
        shortname = Cells(r, "A")
        fullname = Cells(r, "B")
        startD = CDate(Range("C" & r).Value)
        endd = CDate(Range("D" & r).Value)
        AuxDate = endd
        startT = CDate(Range("E" & r).Value)
        endT = CDate(Range("F" & r).Value)
        
            If startD <> endd Then
                numdias = WorksheetFunction.Days(endd, startD)
                
                Rows(r + 1).Resize(numdias).Insert
                pos = numdias
                For i = r + numdias To r Step -1
                
                Cells(i, "C") = DateAdd("h", 8, endd)
                Cells(i, "D") = DateAdd("h", 14, endd)
                 Cells(i, "A") = shortname
                Cells(i, "B") = fullname & " S" & pos
                
                Cells(i, "E") = startT
                Cells(i, "F") = endT
                startT = DateAdd("s", 1, startT)
                endT = DateAdd("s", 1, endT)
                endd = endd - 1
                pos = pos - 1
                Next i
        End If
    Next r
End Sub

El resultado de ejecutar la macro, devuelve lo siguiente:

Archivo CSV para crear sesiones, generado a partir del archivo de carga de cursos
Resultado de ejecutar la macro que genera las sesiones

Es importante tener en cuenta que al generar el archivo, los campos starttime , endtime y fullname deben incrementarse, de lo contrario, al cargar las sesiones dará error.

CARGA MASIVA DE SESIONES A LOS CURSOS DE MOODLE

Una vez tenemos nuestor archivo generado, procedemos a cargarlo. Para ello debemos mapear cada campo correctamente. Esto se hace a través del plugin Attendance, tal y como muestra la siguiente captura:

Mapeo de campos para cargar sesiones a los cursos mediante el plugin Attendance
Mapeo de campos para cargar sesiones a los cursos

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *