Inscriptions automatiques par fichier plat : Unknown role in field2

Inscriptions automatiques par fichier plat : Unknown role in field2

par Séverin Terrier,
Nombre de réponses : 5
Avatar Documentation writers Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Traducteurs
Bonjour à tou(te)s,

je vous contacte, car j'ai un problème avec les inscriptions par fichier plat.

Mon fichier plat respecte bien le format énoncé dans l'aide en ligne de Moodle, ainsi que sur la page de documentation (à mettre à jour), et le format n'est pas modifié d'un jour à l'autre.

Certains jours, tout fonctionne bien sourire

D'autre fois, cela ne fonctionne pas du tout, et j'obtiens, pour chaque ligne, un retour sous la forme :
add student 11923263 Macro-Economie :Unknown role in field2 - ignoring line

J'avais déjà parlé de cela l'année dernière, et déclaré le bogue MDL-17031
Quelqu'un aurait rencontré ce même problème ? trouvé une solution ?

Merci d'avance sourire
Moyenne des évaluations  -
En réponse à Séverin Terrier

Re: Inscriptions automatiques par fichier plat : Unknown role in field2

par Séverin Terrier,
Avatar Documentation writers Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Traducteurs
Je me pose quelques questions :
  1. suis-Je vraiment le seul à utiliser l'inscription par fichier plat, de manière programmée et régulière ?
  2. et à rencontrer ce problème ?
  3. ou bien personne ne vérifie les logs des cron (ni les inscriptions effectives), dans lesquels on retrouve ces erreurs ?
En réponse à Séverin Terrier

Re: Inscriptions automatiques par fichier plat : Unknown role in field2

par Étienne Rozé,
Bonjour,

1 - J'envisage de le faire très bientôt.
2 - J'espère ne pas rencontrer ce problème clin d’oeil
3 - suite à ton message je serai attentif à ces retours.


Je sais cela n'aide pas. Mais tu a l'air d'avoir tellement envie d'une réponse. grand sourire

PS : j'ai quand même voté pour le bug.
En réponse à Étienne Rozé

Re: Inscriptions automatiques par fichier plat : Unknown role in field2

par Patrick Pollet,
Salut,

Nous le faisons ici couramment chaque début d'année sans jamais avoir eu de gags de ce type. C'est en fait LA methode que nous recommandons aux profs qui veulent fermer leurs cours. Ils nous envoient une liste de N°etudiant qu'ils obtiennent de la Scolarité,, on les inscrit par flatfile et ils ferment ....

je viens de le faire encore il y a une semaine avec Moodle 1.9.5+ dernier build avec 880 lignes du style :

add,student,2912642,ppf
add,student,2913205,ppf
add,student,2913360,ppf
add,student,2913497,ppf
add,student,2913521,ppf
add,student,2913652,ppf
add,student,2914105,ppf
add,student,2914241,ppf
add,student,2914329,ppf
add,student,2915118,ppf

et ai bien remis l'usuel mail "Flat File Enrolment Log" rempli de OK que je transmets au prof concerné.

Bizarre, bizarre, vous avez dit bizarre ?

Pourquoi ne modifies tu pas ton script enrol/flatfile/enrol.php pour le rendre un peu plus bavard dans ce cas ?

vers la ligne 144
ajoute l'affichage de $field1 pour voir ce qu'il cherche
ajoute l'affichage de ou il cherche $rolemap et $roles
tu verras ainsi dans le mail, quand il faut son caprice, pourquoi sourire))


/// check correct formatting of role field
if (!isset($rolemap[$fields[1]]) && !isset($roles[$fields[1]])) {
// ligne originale
// $this->log .= " Unknown role in field2 - ignoring line\n";
$this->log .= $field1." Unknown role in field2 - ignoring line\n";
$this->log .="RM".print_r($rolemap,true).'\n';
$this->log .="RO".print_r($roles,true).'\n';
continue;
}



Bonne chance...



En réponse à Patrick Pollet

Re: Inscriptions automatiques par fichier plat : Unknown role in field2

par Patrick Pollet,
$this->log .= $field1." Unknown role in field2 - ignoring line\n";

devrait être

$this->log .= $fields[1]." Unknown role in field2 - ignoring line\n";

Mais tu auras surement corrigé toi même clin d’œil
En réponse à Séverin Terrier

Re: Inscriptions automatiques par fichier plat : Unknown role in field2

par Séverin Terrier,
Avatar Documentation writers Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Traducteurs

Je déterre cette vieille discussion, le souci étant de nouveau d'actualité (sur Moodle 1.9. récent)...

En analysant tous les fichiers de log des cron de 2012, je me suis aperçu de ceci :

  • chaque fois que j'ai l'erreur "Unknown role in field2", les sauvegardes automatiques n'étaient PAS lancées, NI la génération des flux RSS des forums !
  • à l'opposé, chaque fois que l'exécution se passe bien, les sauvegardes automatiques ET la génération des flux RSS des forums étaient lancés !

Je ne comprends pas bien ce que cela peut impliquer, mais si quelqu'un a une idée, je suis preneur...

Séverin