exportation csv d'un rapport de compétences acquises

exportation csv d'un rapport de compétences acquises

par Denis Rabasté,
Nombre de réponses : 14

Bonjour,

Je souhaiterais pouvoir exporter sous forme de fichier csv ou autres, un rapport précisant les compétences acquises par tous les étudiants d’un cours (comme on exporte les notes des différentes activités par « administration » « configuration du carnet de notes » « exporter »).

Je ne trouve aucune indication sur la question.


J’utilise Moodle 3.2.5, en local (donc j’ai accès à tous les éléments).

Voici ce que j’ai mis en place jusqu’à présent :

  • des référentiels de compétences,

  • défini des compétences dans les référentiels,

  • j’ai créé un modèle de plan de formation,

  • les compétences d’un référentiel

  • j’ai créé des cours dans lesquels

  • j’ai inscrit une cohorte (la même que dans le modèle de plan de formation),

  • intégré les compétences d'un de mes référentiel

 

 

et j’aurais aimé pouvoir extraire, d’un des cours ou du plan de formation (mais je n’ai pas l’impression qu’il serve à ça), les compétences acquises par les étudiants.

 

Merci de votre aide.


Moyenne des évaluations Utile (1)
En réponse à Denis Rabasté

Re: exportation csv d'un rapport de compétences acquises

par Denis Rabasté,

Bonjour,

pas de réponses... Peut être ma question est elle mal posée, je reformule..

Je souhaite faire une extraction de la liste des étudiants d'un cours (ou d'un modèle de plan de formation) avec l'état de validation des compétences pour chaque étudiant. Par exemple un tableau qui ressemblerait à ceci :

Tableau capitalisation compétences


J'ai cherché du coté du forum en anglais, et j'ai trouvé ce message où d'autre utilisateurs ont apparemment le même souhait :

https://moodle.org/mod/forum/discuss.php?d=354872

Deux pistes sont proposées, mais qui d'après ce que j'ai pu tester ne répondent pas tout à fait à la demande :

avec lequel il est possible d'afficher les étudiants un par un, avec les compétences acquises, mais sans pouvoir extraire un fichier (ou alors j'ai manqué une étape).

mais qui d'après ce que j'ai compris, permet juste aux enseignants d'accéder aux "modèles de plan de formation", sans extraction possible de liste d'étudiants.



Je suis intéressé par toutes les expériences autour de cette question.

Merci

Denis

Moyenne des évaluations Utile (1)
En réponse à Denis Rabasté

Re: exportation csv d'un rapport de compétences acquises

par Franck Pithois,

Bonjour Denis, et bonjour à tous !

Je ne vais malheureusement pas répondre à ta question mais j'ai la même problématique que toi...

J'ajouterai que je cherche la possibilité pour une étudiant d'extraire les compétences acquises au sein d'un cours.

Cet étudiant peut accéder aux compétences d'un cours avec le statut acquis ou non acquis.

Bloc administration pour l'étudiant

Administration du cours puis Compétences.

Il serait intéressant pour lui de voir ce qu'il a acquis uniquement. Je pense qu'il est plus valorisant de voir :

"j'ai acquis 3 compétences de plus qu'hier" , passage de 9 à 12 compétences acquises.

plutot que

"12/40, il m'en reste 28 à acquérir"....

Savez-vous si cette affichage est possible dans un cours pour l'étudiant ?

Un peut sur le même principe que les badges : l'étudiant ne voit que les badges acquis et non la totalité des badges possibles du cours.

Merci pour vos réponses !

Amicalement.

Franck

PS : je ne suis probablement pas au bon endroit (assistance pédagogique ?).

En réponse à Franck Pithois

Re: exportation csv d'un rapport de compétences acquises

par Patrick Lemaire,
Avatar Développeurs de plugins Avatar Documentation writers Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Traducteurs

Bonjour Franck,

A moins de faire une requête "sur mesure", je ne vois pas trop comment s'en sortir. Le sujet est vieux d'une année... peut-être qu'une solution a été trouvée ?

A bientôt,
Patrick

En réponse à Patrick Lemaire

Re: exportation csv d'un rapport de compétences acquises

par Denis Rabasté,

Bonjour à tous,

Effectivement le sujet est vieux d'une année, et sans réponses (et c'est vrai que ce n'était pas trivial).

J'ai depuis un peu avancé sur la question et comme Franck je ne vois pas de solutions simples au problème de Patrick.

Par contre je profite de ce message pour mettre un lien vers les vidéos que j'ai publiées (à l'origine à destination de mes collègues) sur  la validation par compétences sur Moodle en général ; peut être seront elles utiles à ceux qui découvrent le sujet.

https://www.youtube.com/watch?v=sbR6xdczvbI&list=PLcGw0fLsYw_mYt28O6JsIJ8bNPYLVHZE5


Concernant le problème spécifique de mon message initial (extraire un tableau avec tous les étudiants et toutes les compétences d'un modèle de plan de formation), la seule option que j'ai trouvée est d'extraire ces données directement de la base de données de Moodle. J'ai commencé le travail, réussit à extraire ce tableau, mais mes compétences en SQL étant très limitées,  je n'ai pas réussit à le mettre en forme ; j'ai refilé le bébé à des gens plus compétents.

Mais si quelqu'un est intéressé par la question je peux lui fournir mon début d'étude.


Bonne journée

Denis

En réponse à Denis Rabasté

Re: exportation csv d'un rapport de compétences acquises

par Patrick Lemaire,
Avatar Développeurs de plugins Avatar Documentation writers Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Traducteurs

Bonjour Denis,

N'hésite pas à publier tes travaux ici !!! Notamment, si ta requête n'est pas très "propre", nous pourrons toujours la "nettoyer". Sans être des spécialistes MySQL, nous avons ici des gens compétents clin d’œil
Tes recherches profiteront ainsi à d'autres... dont Franck.

A très bientôt,
Patrick

En réponse à Patrick Lemaire

Re: exportation csv d'un rapport de compétences acquises

par Denis Rabasté,

Bonjour Patrick,

donc en document joint, voici le résultat de mes recherches.

Bonne lecture à ceux que ma prose inspirera...

Denis

Moyenne des évaluations Utile (4)
En réponse à Denis Rabasté

Re: exportation csv d'un rapport de compétences acquises

par Luiggi Sansonetti,
Avatar Développeurs de plugins Avatar Documentation writers Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Titulaires du Moodle Course Creator Certificate Avatar Traducteurs

Merci pour ce partage.

Voilà un document bien détaillé (à mon sens) qui pourrait bien aboutir à un petit développement clin d’œil

ou un process avec le https://moodle.org/plugins/block_configurable_reports

Moi je dis ça, dis rien.

Moyenne des évaluations Utile (1)
En réponse à Luiggi Sansonetti

Re: exportation csv d'un rapport de compétences acquises

par Franck Pithois,

Bonjour Luiggi !

Quel plugin !! Il a l'air super puissant !

Mais avec une "capacité" que je n'ai pas : "Par sécurité, le rapport SQL nécessite une capacité supplémentaire"

Serait-il possible d'avoir une requête SQL (je suis une grosse bille...) conforme à ce que je souhaite ?

En gros, ce dont j'aurai besoin : obtenir pour l'étudiant un bilan de compétence indépendamment d'un plan de formation.

Je suis dans un cours, des compétences y sont associées (définies dans un référentiel)  via différentes activités (donc sans de plan de formations ici).

Dans mon rapport, fruit de la requête, j'aimerai obtenir pour l'utilisateur connecté, les compétences acquises et uniquement celles-ci.

Donc je dois récupérer dans "competency usercompcourse" :

  • avoir l'id du user connecté (à minima userid de mdl_user),
  • l'id du cours où je me trouve,
  • les id compétences (description de competency)
  • et le niveau du barême adéquat( proiciency et grade ?).
Est-ce que quelqu'un aurait une idée de ce que pourrait donner la requête compatible avec le bloc configurable reports ?
Un grand merci par avance pour votre aide !!
Amicalement.
Franck
En réponse à Denis Rabasté

Re: exportation csv d'un rapport de compétences acquises

par Patrick Lemaire,
Avatar Développeurs de plugins Avatar Documentation writers Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Traducteurs

Excellent Denis !
On peut suivre la démarche pas à pas. Merci sourire

Patrick

En réponse à Denis Rabasté

Re: exportation csv d'un rapport de compétences acquises

par Christian Bocquet,
Avatar Moodleurs particulièrement utiles

Bonjour Denis,

Inspiré par votre prose j'ai testé la réquête SQL proposée :

SELECT name, firstname, lastname, shortname, grade
FROM mdl_competency_usercompcourse AS UCC, mdl_competency AS C, mdl_user AS U, mdl_competency_plan AS CP
WHERE U.id = UCC.userid
AND UCC.competencyid = C.id
AND CP.userid = U.id

J'ai constaté cette anomalie : une compétence sélectionnée dans MPF1 apparait aussi dans MPF2 où elle n'a pas été sélectionnée.
Ne faudrait-il pas que la requête vérifie qu'une compétence évaluée fait partie de telle ou telle MPF (Modèle de Plan de Formation) en utilisant la table mdl_competency_templatecomp ?

Christian
En réponse à Christian Bocquet

Re: exportation csv d'un rapport de compétences acquises

par Christian Bocquet,
Avatar Moodleurs particulièrement utiles

Bonjour Denis,

Ci-dessous une proposition de requête SQL. Son principe est de partir des plans de formation (table competency_plan : modèle de plan de  formation affecté à un utilisateur), aller chercher le nom et le prénom de l'utilisateur (table user), aller chercher les noms des compétences liées à chaque plan de formation (table competency), et enfin d'aller chercher l'évaluation (quand il y en a une) pour chaque compétence et chaque utilisateur (table competency_usercomp).
Tout cela reste au niveau Système sans passer par les cours et leurs compétences.

Si l'on ne va pas chercher les évaluations, la requête permet de lister tous les plans de formation avec les compétences qu'ils contiennent.

SELECT u.lastname AS 'Nom', u.firstname AS 'Prénom', cp.name AS 'MPF', c.shortname AS 'Compétence', uc.grade AS 'Evaluation'
FROM mdl_competency_plan cp
INNER JOIN mdl_user u ON u.id = cp.userid
INNER JOIN mdl_competency_templatecomp tc ON tc.templateid = cp.templateid
INNER JOIN mdl_competency c ON c.id = tc.competencyid
INNER JOIN mdl_competency_usercomp uc ON uc.userid = cp.userid AND uc.competencyid = tc.competencyid
ORDER BY u.lastname, u.firstname, cp.name, c.shortname ASC

Résultat obtenu sur un test :


Remarque : Dans ce test la compétence D1.1 est bien commune aux deux MPF1 et MPF2.
Évaluation : 1 pour "Non acquis", 2 pour "En cours d'acquisition", 3 pour "Acquis".


Christian


Moyenne des évaluations Utile (2)
En réponse à Christian Bocquet

Re: exportation csv d'un rapport de compétences acquises

par Franck Pithois,

Bonjour !

Oui, un grand merci pour ces 2 partages !

Je suis en train de tester le block proposé par Luiggi en collant la requête SQL (rapports SQL) proposée par Denis et Christian mais cela ne semble pas coller...

Pour info : je suis une bille en requête SQL...

Pour les requêtes recopiées de Denis et Christian, Moodle me répond entre autre qu'il n'y a pas de préfixe explicite... (j'ai eu aussi [nosemicolon]]). Comme si la syntaxe n'était pas appropriée sur mon Moodle (3.1.7+)

Avec les différents rapports possibles dans le block proposé par Luiggi

Je n'ai pas trouvé de champ relatif aux compétences (pas dans le rapport sur les cours, ni dans celui sur les utilisateurs).

J'essaie donc le rapport SQL mais là, je me heurte à un souci de compilation semble-t-il...

Denis et Christian, pourriez-vous svp regarder si vos requêtes s'exécutent correctement sur vos serveurs ?

Un grad merci à vous par avance.

Amicalement.

Franck

En réponse à Franck Pithois

Re: exportation csv d'un rapport de compétences acquises

par Christian Bocquet,
Avatar Moodleurs particulièrement utiles

Bonjour Franck,

D'une version à une autre de Moodle les tables de la base de données changent et leur nombre augmente. J'ai testé sur une version 3.6.2 et ne dispose plus de version 3.1.

Pour le rapport  utilisant le plugin "Rapports personnalisés", voici la requête correspondante (toujours pour la version 3.6.2):

SELECT u.lastname AS  ' Nom ', u.firstname AS 'Prénom', cp.name AS 'MPF', c.shortname AS 'Compétence', uc.grade AS 'Evaluation'
FROM {competency_plan} cp
INNER JOIN {user} u ON u.id = cp.userid
INNER JOIN {competency_templatecomp} tc ON tc.templateid = cp.templateid
INNER JOIN {competency} c ON c.id = tc.competencyid
INNER JOIN {competency_usercomp} uc ON uc.userid = cp.userid AND uc.competencyid = tc.competencyid
ORDER BY u.lastname, u.firstname, cp.name, c.shortname ASC

Et on obtient :


Christian
Moyenne des évaluations Utile (1)
En réponse à Christian Bocquet

Re: exportation csv d'un rapport de compétences acquises

par Denis Rabasté,

Bonjour à tous,

désolé pour le temps de réponse, je suis actuellement sur un autre projet qui n'a rien à voir (on y parle de synthèse 3d cette fois) et je vois vos messages passer sans pouvoir me replonger dans le sujet ... honte à moi.

Donc tout d'abord merci à Luiggi pour le lien, c'est peut être la solution simple au problème pour ceux qui ne parlent pas couramment le SQL (dès que c'est un peu plus calme sur le projet en cours je me replonge sur cette affaire, en attendant je laisse Franck aller au charbon sourire).

Franck, pour répondre à ta question,  les requêtes s'exécutent correctement sur ma machine (le tableau que je donne est la réponse à cette requête) ; pour info j'utilise Moodle 3.5 sur un serveur local Wamp server 3.1.0.

Comme je vois que tu utilises moodle 3.1.7 ça fait une grosse différence avec le 3.5....

Comme le suggère Christian, peut être faut il aller voir dans phpMyadmin si les noms que j'ai dans la base de données correspondent bien aux tiens.


Merci à Christian pour les scripts, et effectivement la dernière version en partant des plans de formation donne un tableau plus clair ; tout est vraiment une question d'angle d'attaque du problème...

Après je ne sais pas si SQL permet d'organiser le tableau différemment en mettant les compétences en colonne ou bien s'il faut passer par un autre logiciel style excel.

Merci beaucoup à tous pour cette avancée

Denis