Kurse hochladen
Hinweis: Auf dieser Seite geht es darum, Kurse mittels einer Textdatei (.csv) zu erstellen. Wenn Sie ein Kurs-Backup im Format .mbz oder .tgz hochladen möchten, gehen Sie bitte zu Kurswiederherstellung. |
Datei hochladen
Mit dieser Methode können Sie Kurse neu anlegen oder bestehende Kurse aktualisieren bzw. löschen, Kurseinschreibungen aktualisieren oder Inhalte aus anderen Kursen importieren. Informationen, wie Sie diese Funktionalität zur Erstellung von Kursvorlagen verwenden können, finden Sie unter Kurs anlegen.
Neben der Administrator-Rolle hat auch die Rolle Manager/in das Recht tool/uploadcourse:use, um ein CSV-Datei mit Kursinformationen hochzuladen. (Anderen Rollen kann dieses Recht ebenfalls zugewiesen werden, aber sie müssen dann auch die Rechte moodle/course:create, moodle/course:update und möglicherweise moodle/course:delete haben.)
- Gehen Sie auf die Seite Website-Administration (oder im Block Einstellungen > Website-Administration) > Kurse > Kurse hochladen.
- Ziehen Sie die Datei per Drag&Drop in den entsprechenden Bereich oder klicken Sie auf den Button Datei wählen.
- Wählen Sie die Import-Einstellungen und nutzen Sie den Button Vorschau, um die Datei auf Fehler zu prüfen.
Hinweis: Sie können auch von Kommandozeile aus das Skript admin/tool/uploadcourse/cli/uploadcourse.php aufrufen, um Kurse hochzuladen.
Beispieldatei
uploadcourse.csv:
Hinweis: shortname, fullname und category sind erforderlich.
Das Feld category nimmt die ID der Kurskategorie ein, wobei die Standardkategorie 'Miscellaneous' die ID 1 hat. Kurskategorien müssen bereits existieren. Wenn Sie eine Kurskategorie-ID eingeben, die nicht existiert, erhalten Sie während der Upload-Vorschau einen Fehler "Could not resolve category by ID", und Kurse in dieser Kurskategorie werden nicht erstellt.
shortname,fullname,category,summary,enrolment_1,enrolment_1_role,enrolment_1_enrolperiod,role_student
courserestored,Course restored,1,a summary,manual,student,1 month,
courserestored2,Course restored 2,1,a summary,,,,
courserestored3,Course restored 3,1,a summary,,,,padawan
courserestored4,Course restored 4,1,"a summary, with comma",manual,student,1 month,padawan
Beachten Sie, dass es keine Leerzeichen zwischen den Elementen gibt.
CSV-Datei erstellen
Die Datei muss eine .csv Datei sein. In der obersten Zeile stehen verschiedene Datenfelder: zum einen Datenfelder zur Kursinformation, zum anderen Datenfelder zu Kursaktionen. Jede weitere Zeile enthält einen Datensatz für einen Kurs.
Datenfelder zur Kursinformation
Die meisten Datenfelder entsprechen Optionen, die Sie auf der Kurseinstellungsseite konfigurieren, siehe Kurseinstellungen für detaillierte Informationen.
- shortname
- Kursname (kurz) - Kurzbezeichnung des Kurses
- fullname
- Kursname - der vollständige Name des Kurses
- idnumber
- Kurs-ID
- category
- ID des Kursbereichs, zu dem der Kurs gehört. Diese Einstellung überschreibt gegebenenfalls die Daten der Felder category_idnumber und category_path.
- category_idnumber
- ID-Nummer des Kursbereichs, zu dem der Kurs gehört. Diese Einstellung überschreibt gegebenenfalls die Daten des Feldes category_path.
- category_path
- Pfad des Kursbereichs, zu dem der Kurs gehört. Wenn Sie z.B. einen Kurs im Bereich "Physik" anlegen wollen und dieser Kursbereich ist ein Unterbereich vom Kursbereich "Naturwissenschaften", dann tragen Sie in der Datei ein:
Naturwissenschaften / Physik
. Wichtig: Die Trennung erfolgt mit{Leerzeichen}/{Leerzeichen}
. Der angegebene Kursbereich MUSS bereits in Ihrem Moodle-System vorhanden sein, er wird nicht neu angelegt. - visible
- 1 - wenn der Kurs sichtbar sein soll, 0 - wenn er verborgen ist.
- startdate
- Datum, an dem der Kurs startet. Der Wert wird an die PHP-Funktion strtotime übergeben, die einen Zeitstempel generiert.
- enddate
- Datum, an dem der Kurs endet. Der Wert wird an die PHP-Funktion strtotime übergeben, die einen Zeitstempel generiert. Beispiel: 01.12.2014
- summary
- Kursbeschreibung
- format
- Kursformat, z.B. weeks oder topics - Pluginname eines Kursformats.
- theme
- Kurs-Design
- lang
- Kurs-Sprache
- newsitems
- Anzahl neuer Nachrichten
- showgrades
- Bewertungen anzeigen: 1 - wenn die Bewertungen in der Kursnavigation (oder im Block Einstellungen > Kurs-Administration) angezeigt werden sollen, 0 - sonst.
- showreports
- Berichte anzeigen: 1 - wenn die Berichte in der Kursnavigation (oder im Block Einstellungen > Kurs-Administration) angezeigt werden sollen, 0 - sonst.
- legacyfiles
- Legacy-Kursdateien: 1 - wenn dieser Dateibereich aktiviert werden soll, 0 - sonst.
- maxbytes
- Maximale Dateigröße (wählen Sie den Wert 0, wenn Sie die Standardeinstellung der Moodle-Site verwenden wollen).
- groupmode
- Gruppenmodus: 0 für Keine Gruppen, 1 für Getrennte Gruppen und 2 für Sichtbare Gruppen.
- groupmodeforce
- 1 für Gruppenmodus erzwingen, 0 - sonst.
- enablecompletion
- Abschlussverfolgung: 1 - aktivieren, 0 - sonst.
Datenfelder für die Kurseinschreibung
Einige Datenfelder können verwendet werden, um die Einschreibung in Kurse zu konfigurieren. Die Felder heißen enrolment_[number] für den Namen der Einschreibemethode und enrolment_[number]_property für die zugehörigen Eigenschaften. [number] ist eine hochzuzählende Zahl. Es können also mehrere Einschreibemethoden mit Ihren Eigenschaften angelegt werden, z.B. eine Selbsteinschreibung für Teilnehmer*innen und eine für Trainer*innen.
- enrolment_[number]
- Name der Einschreibemethode:
manual
für manuelle Einschreibung,self
für Selbsteinschreibung,cohort
für Einschreibung über globale Grippen. - enrolment_[number]_delete
- Löschen: 1 - löscht die Einschreibemethode im Kurs; in diesem Fall werden alle weiteren Einstellungen für diese Einschreibemethode ignoriert.
- enrolment_[number]_disable
- Deaktivieren: 1 - deaktiviert die Einschreibemethode im Kurs; in diesem Fall werden alle weiteren Einstellungen für diese Einschreibemethode ignoriert.
- enrolment_[number]_startdate
- Einschreibebeginn: Der Wert wird an die PHP-Funktion strtotime() übergeben.
- enrolment_[number]_enddate
- Einschreibeende: Der Wert wird an die PHP-Funktion strtotime() übergeben.
- enrolment_[number]_enrolperiod
- Teilnahmedauer: Angabe in Sekunden oder ein Wert, der von der PHP-Funktion strtotime() verarbeitet werden kann, z.B. "4 days".
- enrolment_[number]_role
- Kurzbezeichnung der Rolle, die bei der Einschreibung vergeben wird.
- enrolment_[number]_password
- der Einschreibschlüssel
- enrolment_[number]_[property]
- property muss eine Eigenschaft der zugehörigen Einschreibemethode sein.
Beispiel:
enrolment_1: manual enrolment_1_role: student enrolment_1_enrolperiod: 1 month enrolment_2: self enrolment_2_startdate: 2013-01-30
Einschreibung für globale Gruppen
Um die Einschreibung für globale Gruppen über CSV zu verwenden, nutzen Sie die folgenden Felder:
- enrolment_N - sollte
cohort
sein, wenn Sie einen Kurs mit der Synchronisierungsmethode für globale Gruppen hochladen möchten. - enrolment_N_cohortname - erforderlicher Parameter - Name der globalen Gruppe. Eine globale Gruppe mit diesem Namen muss im System vorhanden sein.
- enrolment_N_addtogroup - optionaler Parameter zum Hinzufügen von globalen Gruppen zu einer Gruppe im Kurs.
- Wenn nicht gesetzt - es wird kein Gruppenmodus verwendet.
- Wenn enrolment_N_addtogroup = 0 - es wird kein Gruppenmodus verwendet.
- Wenn enrolment_N_addtogroup = 1 - es wird eine neue Gruppe mit dem Namen enrolment_N_cohortname erstellt, und die synchronisierte globale Gruppe wird dieser Gruppe hinzugefügt.
- enrolment_N_groupname - optionaler Parameter. Soll nur verwendet werden, wenn enrolment_N_addtogroup nicht gesetzt ist. Eine vorhandene Gruppe in einem Kurs, zu der Mitglieder von enrolment_N_cohortname hinzugefügt werden.
Beispieldatei: für die Einschreibung für globale Gruppen mit einer vorhandenen globalen Gruppe "mycohort1":
shortname,fullname,category,enrolment_1,enrolment_1_cohortidnumber,enrolment_1_role Course 1,Course 1,1,cohort,mycohort1,student
Weitere Kursfelder
Sie können Daten für die nutzerdefinierten Kursfelder (Abschnitt Weitere Kursfelder in den Kurseinstellungen) ausfüllen. Die Spaltennamen für diese Felder in der Kopfzeile der Kursdatei haben das Format customfield_[shortname], wobei "shortname" der eindeutige Kurzname des nutzerdefinierten Kursfeldes ist.
Das nutzerdefinierte Feld muss bereits in Ihrer Moodle-Site vorhanden sein (sie werden auf der Seite Website-Administration > Kurse > Standardeinstellungen > Kursfelder definiert). Wenn Sie einen Spaltennamen für ein Feld verwenden, das in der Moodle-Site nicht vorhanden ist, wird es beim Hochladen der Kursdatei ignoriert.
Achtung: Die Kursfelder müssen bereits vorhanden sein - Sie können den Kurs-hochladen-Prozess nicht dazu verwenden, um neue Felder zu erstellen!
Es gibt fünf Arten von nutzerdefinierten Kursfeldern: Auswahlliste, Checkbox, Datum und Uhrzeit, Textbereich und Textzeile. Welche Daten Sie in die Kursdatei eingeben, hängt daher von der Art des definierten Felds ab. Die möglichen Werte für Checkboxen sind 1 (ausgewählt) und 0 (nicht ausgewählt).
Wenn Sie eines der nutzerdefinierten Kursfelder aus der Kursdatei entfernen, verwendet der Kurs-hochladen-Prozess den Standardwert für dieses Feld (sofern vorhanden) oder ermöglicht es Ihnen, während der Vorschau des Prozesses einen Standardwert festzulegen.
Beispieldatei: mit je einem Kursfeld für alle fünf Arten von nutzerdefinierten Kursfeldern zeigt (in der Moodle-Site sind die Kursfelder "checkbox", "date", "select", "text" und "textarea" vorhanden):
shortname,fullname,category,customfield_checkbox,customfield_date,customfield_select,customfield_text,customfield_textarea CF1,Beispiel für Kursfelder,1,1,2019-10-01 14:00,b,Hallo,Auf Wiedersehen
Diese Datei erstellt einen Kurs "Beispiel für Kursfelder" mit einem Kurznamen "CF1" im Kursbereich "Verschiedenes" und füllt Daten für jedes der fünf nutzerdefinierten Kursfelder aus.
Rollenumbenennung
Wenn Sie Rollen in einem Kurs umbenennen wollen, verwenden Sie folgendes Muster:
- role_[shortname]
- Neue Bezeichnung der Rolle [shortname].
Beispiel
role_student: Lehrling role_teacher: Meister role_mycustomrole: Jedi
Datenfelder zu Kursaktionen
Diese Einstellungen überschreiben gegebenenfalls die Einstellungen für den Kursprozess.
- delete
- Löschen: 1 - wenn der Kurs gelöscht werden soll.
- rename
- neue Kurzbezeichnung für den Kurs, der umbenannt werden soll.
- backupfile
- Absolutpfad zu einer Kurssicherungsdatei (.mbz), die in den Kurs importiert werden soll
- templatecourse
- Kurzbezeichnung des Kurses aus dem Inhalte importiert werden sollen.
- reset
- Löschen: 1 - wenn der Kurs zurückgesetzt werden soll.
Pflichtfelder
- shortname
- Dieses Datenfeld ist Pflichtfeld für jede Kursaktion, außer beim Anlegen eines neuen Kurses (siehe dazu die Einstellung Vorlage zum Erzeugen eines Kursnamens im Abschnitt Kurs-Prozess).
- fullname
- Pflichtfeld beim Anlegen eines neuen Kurses
- category, category_idnumber, category_path
- Einer dieser Werte muss beim Anlegen eines neuen Kurses angegeben sein.
Importoptionen
Mit diesen Einstellungen geben Sie an, wofür Sie das Tool bzw. die Datei nutzen wollen:
- Modus beim Hochladen
- Hier geben Sie an, ob die Kurse in der Datei angelegt und/oder aktualisiert werden sollen.
- Aktualisierungsmodus
- Wenn Sie beim Modus beim Hochladen das Aktualisieren von Kursen zugelassen haben, dann wählen Sie mir dieser Option, wie die Daten in der Datei für die Aktualisierung verwendet werden sollen.
- Löschung erlauben
- Mit dieser Einstellung legen Sie fest, ob das Datenfeld delete akzeptiert wird oder nicht.
- Umbenennung erlauben
- Mit dieser Einstellung legen Sie fest, ob das Datenfeld rename akzeptiert wird oder nicht.
- Zurücksetzen erlauben
- Mit dieser Einstellung legen Sie fest, ob das Datenfeld reset akzeptiert wird oder nicht.
Kurs-Prozess
Hiermit legen Sie fest, welche Aktionen mit jedem einzelnen Kurs in der Datei ausgeführt werden.
- Vorlage zum Erzeugen eines Kursnamens
- Wenn ein Kurs neu angelegt werden soll, aber in der Datei keine Angabe für shortname enthalten ist, können Sie hier eine Vorlage angeben, aus der die Kurzbezeichnung des Kurses automatisch erzeugt wird. Sie können in der Syntax folgende Platzhalter verwenden: %i für die ID-Nummer, %f für die Kursbeschreibung.
- Aus dieser Datei nach dem Upload wiederherstellen
- Kurssicherungsdatei (.mbz), aus der Inhalte importiert werden, nachdem der Kurs neu angelegt oder aktualisiert wurde.
- Wiederherstellen dieses Kurses nach dem Upload
- Kurzbezeichnung des Kurses, aus dem Inhalte importiert werden, nachdem der Kurs neu angelegt oder aktualisiert wurde.
- Kurs nach dem Hochladen zurücksetzen
- Hier geben Sie an, ob der Kurs nach dem Anlegen bzw. Aktualisieren zurückgesetzt werden soll.
Standardmäßige Kurseinstellungen
Hier legen Sie die Standardeinstellungen für alle Datenfelder fest, die nicht in der .csv Datei enthalten sind. Diese Einstellungen werden beim Anlegen eines neuen Kurses verwendet. Bei der Aktualisierung von bereits bestehenden Kursen werden diese Werte nur verwendet, wenn der Update-Modus entsprechend gewählt wurde (siehe oben).
Geschwindigkeit erhöhen
Bei Importieren von Kursinhalten aus einer Kurssicherung oder aus einem anderen Kurs wird empfohlen, die Einstellung keeptempdirectoriesonbackup zu aktivieren. Dadurch wird der Upload-Prozess signifikant beschleunigt, wenn Sie mehrfach aus derselben Quelle importieren.
Siehe auch
- Screencast: Massenaktion Kurse anlegen
- Nutzerliste hochladen