Wir arbeiten aktuell an der Dokumentation der neuen Funktionalitäten von Moodle 4.4.

Kurse hochladen

Aus MoodleDocs
(Weitergeleitet von admin/tool/uploadcourse/index)
Wechseln zu:Navigation, Suche

Baustelle.png Diese Seite muss überarbeitet werden, weil sie neue Funktionalitäten enthält. Greif zu!
Wenn du dich um diesen Artikel kümmern willst, dann kennzeichne das, indem du die Vorlage {{ÜberarbeitenNeu}} durch die Vorlage {{ÜberarbeitenVergeben}} ersetzt.
Wenn du mit deiner Arbeit fertig bist, dann entferne die Vorlage aus dem Artikel.
Danke für deine Mitarbeit!


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.

Neue Funktionalität
in Moodle 4.4!

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.
Kurs hochladen - Admin-Ansicht
Kurs erfolgreich hochgeladen

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
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

Cohort enrolment

Um die Einschreibung für globale Gruppen über CSV zu verwenden, nutzen Sie die folgenden Felder:

  • enrolment_N - sollte Globale Gruppe 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.

Custom course fields

Sie können Daten für die benutzerdefinierten Kursfelder ausfüllen. Der Header für diese Felder hat das Format customfield_[shortname], wobei shortname der eindeutige Kurzname des benutzerdefinierten Kursfelds ist.

Das benutzerdefinierte Feld muss bereits auf der Site vorhanden sein, wie in Site-Administration > Kurse > Benutzerdefinierte Kursfelder definiert. Wenn Sie einen Header für ein Feld verwenden, das auf der Site nicht bereits vorhanden ist, wird es vom Upload-Prozess ignoriert. Die Kursprofilfelder müssen bereits auf Ihrer Site vorhanden sein. Sie können den Kursupload-Prozess nicht verwenden, um neue Felder auf der Site zu erstellen, sondern nur um Daten für bereits definierte benutzerdefinierte Kursprofilfelder auszufüllen.

Es gibt fünf Arten von benutzerdefinierten Kursfeldern: Kontrollkästchen, Datum und Uhrzeit, Dropdown-Menü, Kurztext und Textbereich. Welche Daten Sie in die Upload-Datei eingeben, hängt daher von der Art des definierten Felds ab. Die möglichen Werte für Kontrollkästchenfelder sind 1 (ausgewählt) und 0 (nicht ausgewählt).

Wenn Sie eines der definierten benutzerdefinierten Kursfelder aus der Upload-Datei entfernen, verwendet der Upload-Prozess den Standardwert für dieses Feld, sofern vorhanden, oder ermöglicht es Ihnen, während des Vorschauteils des Uploads einen Standardwert festzulegen, wie bei anderen Einstellungen auch.

Hier ist eine Beispieldatei mit einem Beispiel, das alle fünf Arten von benutzerdefinierten Feldern zeigt (entnommen aus dem oben genannten Tracker), wobei Felder mit den Kurznamen "checkbox", "date", "select", "text" und "textarea" bereits erstellt wurden.

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

Dies erstellt einen Kurs namens "Beispiel für Kursfelder" mit einem Kurskurznamen "CF1" in der Kategorie "Verschiedenes" und füllt Daten für jedes der fünf benutzerdefinierten 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