Stand: 14.07.2007
Labs
Registrierung und Nutzungsbestimmung
(Achtung: Auch Schulen, die BImport kostenlos nutzen dürfen, benötigen
Lizendaten. Informationen dazu liegen der ML bzw. dem Update der ML ab Version
2.6 für badenwüttembergische Schulen bei. Falls Sie diese Lizenzdaten
nicht über das LMZ beziehen können, können Sie sich an den Programmautor
wenden. ->Einzelheiten der Lizenzdatenvergabe).
Entwicklung der Versionen von BIMPORT: bimport_history.txt
Update von Version 2.0, 2.1, 2.2, 2.3, 2.4/2.41-2.43/2.53 auf 2.55: bimport_update.txt
Für Neuinstallation: bimport255.zip
Für Update: bimportupdate255.zip
Version 3.x siehe hier.
0 Inhalt
Konzept von BIMPORT
Installation von BIMPORT
Voraussetzungen: NDS:Container und Template
Voraussetzungen: Dateisystem: HOME-Verzeichnis
Voraussetzungen: Klassen-Container
Erzeugung der ASCII-Datendatei
Anlegen der Benutzer mit BIMPORT
Löschen der Benutzer mit BIMPORT
Versetzung mit BIMPORT
Vorgaben-Test
Weitere Eigenschaften von BIMPORT
Lizenzdaten
Lizendaten nach abgelaufenem Ablaufdatum setzen
Dialoge in BIMPORT
Scheut man die Einrichtung individueller Accounts, also auch für jeden Schüler, so bleiben nur gruppenbezogene Benutzermodelle. So könnte sich z.B. jeder Schüler einer bestimmten Klasse mit demselben Usernamen und demselben Passwort einloggen. Es gäbe dann auf Schülerseite nur so viele Accounts, wie es Klassen gäbe. Die Nachteile solcher Modelle liegen auf der Hand. So verlangen solche Modelle z.B. ein kooperatives Verhalten gegenüber Mitschülern der Klasse, die ja ihre Dateien im jeweils gleichen "Homeverzeichnis" ablegen. Auch sind individuelle Email-Adressen nicht aus dem Usernamen ableitbar.
Die Lösung der daraus entstehenden Schwierigkeiten besteht nun doch im Anlegen individueller Accounts für jeden Benutzer des Netzwerks. Daraus ergibt sich jedoch sofort die Frage, wie man mit vertretbarem Aufwand 500 oder gar 2000 Schülern einen eigenen Account einrichtet.
Hier hilft uns das Utility-Programm BIMPORT, das in der Lage ist, viele Benutzer "auf einen Rutsch" in die NDS einzutragen, zu ändern oder zu löschen. BIMPORT bezieht die Daten der einzutragenden Benutzer aus einer Textdatei. Eine INI-Datei beschreibt die Struktur der Textdatei und den Importvorgang.
Die Benutzerdaten, aus denen die Textdatei besteht, kommen dabei in aller Regel aus der Schülerverwaltung. Tipps zu einem solchen Export werden weiter unten gegeben. Ebenso diskutieren wir Fragen zur Existenzdauer, Versetzung, usw.. ebenfalls weiter unten. Für den Moment gehen wir von einer klassenweisen Importgruppierung aus.
Was also ist zu tun ? Hier eine Übersicht:
Die folgenden Beschreibungen basieren auf der Struktur der Musterlösung der Zentralen Planungsgruppe Netze (ZPN) des KM-Baden-Württemberg und gehen von folgenden technischen Voraussetzungen aus (natürlich sind auch andere Strukturen ohne weiters möglich):
Server | GSERVER02 | |
Volumes | DOCS | in HOME\SCHUELER befinden sich die Klassenverzeichnisse. Darunter die Schüler-Homedirectories z.B.: ...SCHUELER\KLASSE8A\SperlingH |
DATA | in pgm\bimport befindet sich BImport.exe, bimportstart.ini, bimport.ini | |
DOCS | in \Home\BenAdmin befinden sich bimport.ini und weitere Datendateien |
NDS | OU SCHUELER.UNTERRICHT | KLASSE8A |
KLASSE8B | ||
... |
(BImport benötigt Lizenzdaten, falls es nicht nur als Demoversion getestet werden soll.)
BImport benötigt keine Installation, sondern muss lediglich in die gewünschten Verzeichnisse kopiert werden. Dazu gibt es zwei grundsätzliche Möglichkeiten:
1.Alles in ein Verzeichnis:
Man entpacke die ZIP-Datei in ein Verzeichnis, auf das der Benutzer von BImport mindestens RWCEMF-Rechte hat. Damit kann er dann auch die INI-Dateien anpassen und abspeichern.
2. Programm in schreibgeschütztes, Daten in schreiberlaubendes Verzeichnis:
Der Admin oder ein Programm-Admin entpackt die komplette ZIP-Datei in das schreibgeschützte Verzeichnis, also z.B. in DATA\pgm\bimport. Von dort wird NICHTS verschoben! Damit liegen dort auch das Manual, Nutzungbestimmungen, Link auf die BImport-Homepage und eine DEFAULT-bimport.ini, die immer dann greift, wenn etwas mit der bimportstart.ini nicht stimmen sollte.
In der bimportstart.ini wird nun diejenige INI-Datei eingetragen, die beim Aufruf von BImport wirken soll. Man kopiere also zuvor die bimport.ini in ein nicht-schreibgeschütztes Verzeichnis, in dem später auch die Schülerdaten bearbeitet werden sollen, also am besten in das Home-Verzeichnis des Benutzer-Admin BenAdmin, der sich um die Belange der Benutzerverwaltung kümmern soll. In bimportstart.ini trage man hinter den Schlüssel BImportINI den Pfad und Dateinamen eben dieser bimport.ini ein. Diese bimport.ini im Home-Verzeichnis des BenAdmin sei inzwischen z.B. in benutzer.ini umbenannt worden. Dann würde also in bimportstart.ini z.B. eingetragen:
BImportINI=\\gserver02\docs\home\benadmin\benutzer.ini
In diesem Verzeichnis liegen dann später auch die Datenquelldatei, Logdateien, usw... (siehe weiter unten), mit denen der BenAdmin arbeiten wird.
Will der BenAdmin mit verschiedenen BImport-INI-Dateien arbeiten, so kann er über das Menü "Datei/Öffne INI-Datei" eine andere INI-Datei auswählen. Der Öffne-Datei-Dialog führt dabei sofort in das Verzeichnis, aus dem die zuletzt benutzte INI-Datei aufgerufen wurde, also in das Richtige.
Damit ein anderer Benutzer als der Admin (hier der BenAdmin) überhaupt genügend Rechte hat, um mit BImport Benutzer mit diversen Eigenschaften (z.B. Volume-Restictions auf NSS-Volumes) zu erzeugen, muss der Admin ihm einige Rechte geben. Nach momentanem "Forschungsstand" sind dies:
SERVER-Objekt | Objekt-Rechte | Browse |
Eigenschafts-Rechte | alle Rechte bis auf Supervisor | |
VOLUME-Objekt (alle Volume-Objekte, auf denen Volume-Restrictions vergeben werden sollen) |
Objekt-Rechte | Browse |
Eigenschafts-Rechte | Compare, Read | |
Volume (alle Volumes, auf denen z.B. Verzeichnisse/Dateien erzeugt/gelöscht werden sollen. Also für Datei- und Verzeichnisoperationen) |
Verzeichnis-Rechte | alle Rechte bis auf Supervisor und Access [RWCEMF] |
Die entsprechenden Einstellungen am Beispiel der "Musterlösung" sehen sie hier zur Orientierung sowohl in NWAdmin- als auch in ConsoleOne-Darstellung:
SERVER-Objekt | NWAdmin-Darstellung |
ConsoleOne-Darstellung | |
VOLUME-Objekt | NWAdmin-Darstellung |
ConsoleOne-Darstellung | |
Volume | NWAdmin-Darstellung |
ConsoleOne-Darstellung | |
In den folgenden Abschnitten beschäftigen wir uns mit der Textdatei und weiteren Voraussetzungen für den Einsatz von BIMPORT. Alle dazu erforderlichen Daten- und INI-Dateien legen wir ins Verzeichnis DOCS\Home\BenAdmin.
3 Voraussetzungen: NDS:Container und Template
Das BIMPORT-Programm muss wissen, in welchen NDS-Container die neuen Benutzer
importiert werden sollen. Für den Schülerimport legen wir natürlich
gemäß unserer Netzwerkstruktur den Container .SCHUELER.UNTERRICHT
fest. Darin liegen als OUs die Klassen. Wählen wir für unser Beispiel
also .KLASSE8A.SCHUELER.UNTERRICHT.
Voraussetzung 1: Die org. Einheit .KLASSE8a.... muss vor dem Importprozess erzeugt werden !
Natürlich kann BIMPORT die neuen Benutzer auf Basis von Benutzer-Schablonen importieren. Hier wählen wir also das user_template aus dem Container .SCHUELER.UNTERRICHT. Der Name dieser Schablone kann frei gewählt werden; wir verwenden hier den Namen user_template. Es ist auch möglich, wenngleich nicht nötig, in jeden der Klassencontainer eine eigene Schablone zu legen. Dazu müsste die "Basisschablone" z.B. in den Container .KLASSE8A.SCHUELER.UNTERRICHT kopiert werden. (Wir empfehlen dies jedoch nicht, weil damit die Versetzung schwierig wird.)
4 Voraussetzungen: Dateisystem: HOME-Verzeichnis
Vor der Verwendung vom BIMPORT muss auch dasjenige Verzeichnis im Dateisystem der Festplatte festgelegt werden, in dem die HOME-Directories der neuen Benutzer erzeugt werden sollen. Wieder richten wir uns nach unserer Netzwerkstruktur und wählen DOCS\HOME\SCHUELER\KLASSE8A.
Voraussetzung 2: Das Klassenstammverzeichnis (z.B. DOCS\HOME\SCHUELER\KLASSE8A muss vor dem Importprozess erzeugt werden !
5 Voraussetzungen: Klassen-Container
Zunächst müssen im Container SCHUELER.UNTERRICHT die Klassencontainer erzeugt werden, die jeweils die Schüler einer Klasse aufnehmen sollen. Hier beschränken wir uns auf die Container KLASSE8A und KLASSE8B.
Erzeugen Sie die Klassencontainer KLASSE8A und KLASSE8B als Organisationsein-heit
(OU) im Container .SCHUELER.UNTERRICHT.
Bemerkung: Die Klassencontainer-Bezeichnungen dürfen keine Leerzeichen
enthalten (also z.B. nicht KLASSE 8A).
Tragen Sie im Login-Skript der neu erzeugten Container jeweils folgende Zeile ein:
include .schueler.unterricht
(Andernfalls wird das Loginscript des Containers Schueler nicht ausgeführt!)
Erzeugen Sie ein Template z.B. namens user_template in der OU SCHUELER und geben Sie dort die gewünschten Eigenschaften ein.
6 Erzeugung der ASCII-Datendatei
BIMPORT muss die Namen und Daten der neu anzulegenden, der zu ändernden oder zu löschenden Benutzer kennen. Dazu entnimmt es die erforderlichen Daten einer Textdatei. Diese Textdatei muss ein bestimmtes Format haben. Für jeden Benutzer gibt es dort eine Zeile, die wiederum in einzelne Felder aufgeteilt ist. Es gibt minimal 3 (oder sogar 2) und maximal 7 Felder. Die ersten 3 sind obligatorisch. (Das Klassenfeld darf dabei unter bestimmten Voraussetzungen leer bleiben oder sogar fehlen.) Um welche Felder es sich handelt, zeigt die folgende Liste:
User Name | Login-Name |
(Klasse) | Klassenbezeichnung |
Surname | Nachname |
Given Name | Vorname |
Full Name | voller Name |
Volume Restrictions | Platzbeschränkung auf Volume (z.B.mit 40 MB) |
Versetzung | Leer, Leerzeichen oder Nichtversetzungskennzeichen |
Jeder Feldinhalt wird von doppelten Anführungszeichen eingeschlossen, die Felder durch Komma getrennt. Die Daten-Textdatei sieht also (mit allen Feldern) etwa so aus:
"SperlingH","Klasse8a","Sperling","Hans","Hans Sperling",".kserver_docs.dienste:40000"
"AmselB","Klasse8b","Amsel","Bettina","Bettina
B. Amsel",".kserver_docs.dienste:40000"
...
oder optional mit Versetzungsfeld:
"SperlingH","Klasse8a","Sperling","Hans","Hans Sperling",".kserver_docs.dienste:40000","N"
(Einzelheiten zur Versetzung siehe weiter unten.)
Alternativ darf das Feld Volume Restrictions, wenn es überhaupt vorhanden ist, auch nur aus einer Zahl bestehen, also z.B. so:
"SperlingH","Klasse8a","Sperling","Hans","Hans Sperling","40000"
Da die Volume Restrictions aber im Normalfall dem Template entnommen werden, darf dieses Feld auch ganz fehlen, also z.B. so:
"SperlingH","Klasse8a","Sperling","Hans","Hans Sperling"
Legen Sie auf den Vornamen oder den vollen Namen keinen Wert so reicht auch z.B.:
"SperlingH","Klasse8a","Sperling"
Wollen Sie die Schüler jeder Klasse klassenweise mit einem eigenen Klassen-Template (also pro Klassencontainer) importieren (nicht empfohlen!), so reicht nun wirklich minimal z.B.:
"SperlingH","","Sperling"
ACHTUNG: Beachten Sie, dass das Klassenfeld, wenn auch leer, vorhanden sein muss !
Alles bisher über die Datenstuktur der Textdatei, also der Quelldatei, gesagte, gilt für den Fall der Standard-Feldstruktur, wie sie besteht, wenn sie nicht über den Menüpunkt "Datei/Quelldateivorgaben" geändert wurde.
Über besagten Menüpunkt können Sie jedoch auch eine selbstgewählte Feldstruktur erzeugen:
Markieren Sie Feldnamen und verschieben Sie sie mit Hilfe der Pfeil-Buttons zwischen den Listen. Beachten Sie dabei: In der Liste der aktiven Felder müssen die beiden Felder User und Surname stehen. Anderfalls können Sie keine INI-Datei abspeichern und weder einen Import noch ein Löschen von Benutzern durchführen. Und natürlich müssen die aktiven Felder auch wirklich Ihrer Quelldatei entsprechen! Darüberhinaus können Sie einige Sonderzeichen verändern, wenn gewünscht. Auch diese Zeichen müssen natürlich mit Ihrer Quelldatei übereinstimmen. |
Bemerkung: Gibt es kein Klassenfeld (natürlich gleichzeitig weder in der aktiven Liste noch in der Quelldatei), so ist dies gleichbedeutend mit einem leeren Klassenfeld der Form "", so wie oben beschrieben. Die Benutzer werden dann im gerade eingestellten Basiscontainer erzeugt.
Das Problem an Ihrer Schule wird sein: Wie komme ich an eine derartige Textdatei für jede Klasse bzw. fuer die ganze Schule, ohne sie von Hand schreiben zu müssen ?
Hier können wir jedoch leider nur allgemeine Hinweise geben:
Wenn ein Daten-Export möglich ist:
Regeln für die Bildung des Anmeldenamens:
7 Anlegen der Benutzer mit BIMPORT
Nun sind alle Vorarbeiten erledigt. Der Serienimport mit BIMPORT kann beginnen.
Wenn Sie das Programm BImport z.B. aus dem Verzeichnis \DATA\Benutzer\ aufrufen, sehen Sie folgendes Bild:
Der untere linke Teil zeigt, dass BImport bereits den NDS-Baum SCHULBAUM gefunden hat. Der Context verweist auf den Container SCHUELER. Wir befinden uns auf dem Server KSERVER und haben uns als Admin eingeloggt.
Im oberen Teil des Fensters sind Voreinstellungen zu sehen, die änderbar sind. In der Regel finden Sie jedoch die für die Musterlösung passenden Voreinstellungen vor.
Diese Felder, die im Folgenden beschrieben werden, können direkt editiert werden. Bequemer ist jedoch ein Klick auf den jeweils rechts vom Feld stehenden Button oder ein Doppelklick direkt auf das Feld. Daraufhin öffnet sich eine Dialogbox (entweder ein Dateiauswahldialog oder ein NDS-Browser im NWAdmin-Stil), mit deren Hilfe das Gesuchte bequem ausgewählt werden kann. (Siehe Abschnitt Dialoge in BImport weiter unten).
In unserem Beispiel verwenden wir die Datenquelle benutzer.txt, die die Schülerdaten in den oben besprochenen Form (inklusive Klassenangabe) bereithält. Der Basis-Container ist auf SCHUELER.UNTERRICHT eingestellt. Zusammen mit den Klassenangaben in benutzer.txt ergibt sich daraus für jeden Schüler der vollständige Context, also z.B. Klasse8a.Schueler.Unterricht für einen Schüler der Klasse 8a.
Da mit dem Anlegen des Users in der NDS auch ein Homeverzeichnis auf der Festplatte erzeugt wird, muss BImport wissen, wo dies geschehen soll. In der Musterlösung soll dies auf dem Volume DOCS im Verzeichnis HOME\SCHUELER geschehen. Die notwendigen Angaben stehen unter Home-Volume und BasisHomeDir. Diese Angaben werden normalerweise direkt aus dem Template, hier .user_template.Schueler.Unterricht, gelesen. Soll das wirklich so sein, so muss natürlich ein Häkchen in der CheckBox für das Template stehen. Dies ist normalerweise die Standardeinstellung. (Wird kein Template benutzt, so müssen die Eingaben Home-Volume und BasisHomeDir von Hand gemacht werden.)
In einer Logdatei werden während der Arbeit von BImport Ergebnisse
und Fehler protokolliert. Die zugehörige CheckBox sollte also aktiviert
sein. Dabei wird der Dateiname, hier bimport.log,
etwas abgeändert, je nachdem, ob gerade ein Import/Update oder ein Löschen
stattfindet. Und zwar wird in den Dateinamen ein _I , _L, _V bzw. ein _T eingefügt.
Aus bimport.log wird also:
Import/Update | bimport_I.log |
Löschen | bimport_L.log |
Versetzen | bimport_V.log |
Vorgaben testen | bimport_T.log |
Über den Menüpunkt "Optionen/Log-Anzeige" können Sie sich die Logdateien anzeigen lassen:
Um eventuelle Fehler auch auf dem Bildschirm zu sehen, sollte die Fehler auf Bildschirm-CheckBox angeklickt sein. (Bei vielen Fehlern erscheinen dann allerdings viele Fehler-Boxen).
Haben Sie die Schülerdaten als reine ASCII-Daten vorliegen, sollten Sie unbedingt die Ascii->Ansi-CheckBox aktiviert haben.
Damit eventuell vorhandene Umlaute und weitere Sonderzeichen (z.B. in Ägis Sørensen) keine Schwierigkeiten bereiten, werden diese mit Hilfe der Umlautumwandlung aufgelöst (Aegis Soerensen), wenn die zugehörige Checkbox aktiviert ist (eine empfehlenswerte Einstellung):
Zum Beispiel wird aus | der Benutzername: |
ÄSørensen | ASoerensen |
PMüller | PMueller |
EPrieß | EPriess |
Das gleiche gilt für Nachnamen und Klassenbezeichnungen. Dagegen erhalten Vornamen und volle Namen keine Umlautumwandlung.
Achtung: Die Umlautumwandlung geht von Ansi-Zeichen aus. D.h. entweder liegen Ihre Daten im ANSI-Format vor oder, falls sie im ASCII-Format vorligen, haben Sie die Ascii-zu-Ansi-Umwandlung eingeschaltet.
Über das Menü "Optionen/weitere Einstellungen
erhalten Sie eine Eingabemaske,
in der Sie noch Folgendes festlegen können:
Departmentfeld, |
In das Abteilungsfeld und/oder Beschreibungsfeld des Users lässt sich (zusätzlich zu den/der event. bereits vorhandenen oder aus dem Template übernommenen Abteilungen/Beschreibung) in der 1.Zeile der Containernamen einfügen, in dem sich der User befindet. Dies kann der vollständige Containername (z.B.: Klasse8a.Schueler.Unterricht) oder der einfache Containername (z.B.: Klasse8a) sein. (Nützlich z.B. für Groupwise). BImport erkennt bei einem Update der User natürlich, ob dieser
Name dort schon steht und schreibt ihn nicht etwa ein zweites Mal hinein. |
||||
Unterverzeichnisse im Homeverzeichnis | Im Homeverzeichnis kann ein weiteres oder mehrere Unterverzeichnisse angelegt werden. Sogar ganze Unterverzeichnis-Strukturen können erzeugt werden. Soll das Homeverzeichnis z.B. die Unterverzeichnisse
enthalten, so ist ins Eingabefeld einzutragen:
|
||||
Delete/Rename Inhibit | Um ein versehentliches Löschen der eigenen Homeverzeichnisse zu verhindern, ist es sinnvoll, auf das jeweilige Homeverzeichnis die Flags "Delete Inhibit" und "Rename Inhibit" zu setzen. Dies erreichen Sie mit dem Setzen des zugehörigen Häkchens. Jeweils drei Zustände sind möglich:
|
||||
Wartezeit | Wartezeit in Millisekunden nach kritischen
NDS-Operationen Bem: Unabhängig von dieser Wartezeit (also auch, wenn diese auf 0 steht), wird vor dem Setzen der HomeDir-Rechte ggf. maximal 10 mal 100 Millisekunden auf das Erzeugen des Homeverzeichnissen gewartet. |
||||
UniqueID | Die UniqueID wird von BImport genauso wie von ConsoleOne gesetzt, nämlich als (nichtqualifizierter) Benutzername, also z.B. SpechtB für SpechtB.Lehrer.Unterricht. Bem: Die UniqueID sollte eindeutig sein! Also sollten die Benutzernamen eindeutig gewählt werden. Jeweils drei Zustände sind möglich:
|
Das Häkchen "Vorgaben-Test" besagt, dass vor einer BImport-Aktion (Import/Löschen/Versetzung) ein Test erfolgt, der feststellt, ob in der NDS alle nötigen Container, im Dateisystem alle nötigen "Ober"-Homeverzeichnisse und ggf. das Template vorhanden sind. Nur wenn dieser Test erfolgreich ist, wird die Aktion ausgeführt.
Jetzt lassen wir BImport arbeiten: Je nachdem, ob Sie importieren/updaten oder löschen wollen, drücken Sie den entsprecheden Knopf in der Modus-Auswahl. Ein Klick auf den Start-Button startet nun den Prozess. Die Usernamen der zu bearbeitenden Schüler erscheinen und ein Fortschrittsbalken gibt einen zeitlichen Überblick. Eine abschließende "Fertig-Meldung" sagt, wenn's fertig ist.
In der Logdatei lassen sich nun die Einzelheiten nachlesen.
Im Anzeigefeld Context ist jetzt auch der jeweils angesprochene Klassen-Container zu sehen.
Starten Sie BImport.exe in \DATA\Pgm\BImport.
Machen Sie sich mit der Programm-Oberfläche vertraut.
Importieren Sie die Schüler aus Ihrer Datenquelldatei benutzer.txt
Überprüfen Sie das Resultat
- in der NDS
- über das Menü Optinen/Log-Anzeige oder mit einem Texteditor
in der jeweiligen bimport.log
- mit dem Explorer im Verzeichnis \home\schueler\klasse8a bzw. klasse8b
8 Löschen der Benutzer mit BIMPORT (zum Schuljahresende)
Eine Strategie ist es, zum Schuljahresende alle Schüler-Benutzer zu löschen und für das neue Schuljahr neu anzulegen. Keine gute Idee ist es, dafür die Klassencontainer in der NDS zu löschen. Falls Sie denen nämlich Eigenschaften zugewiesen haben, müssen Sie alles neu erzeugen.
Besser ist es, hier ebenfalls BIMPORT einzusetzen. Dazu benötigt man genau wie beim Import jeweils eine Daten-Textdatei. Glücklicherweise sind die Daten-Textdatei(en) genau dieselbe(n) wie beim Import. Heben Sie die Datenquelldatei(en) mit Ihren Schülerdaten also gut auf !
Alles funktioniert wie beim Import/Update. Allerdings spielt jetzt das Template
keine Rolle (egal, ob das Template-Häkchen gesetzt ist oder nicht).
(Von der Datenquelldatei werden beim Löschen nur die Felder
User und ggf. Klasse ausgewertet).
Wählen Sie den Modus "Löschen" und drücken Sie den Start-Button.
Beim Löschen von Benutzern werden zwar die User-Einträge in der NDS gelöscht, nicht jedoch die dazugehörigen Home-Verzeichnisse. Das ist in der Netzwerkwelt so üblich: Es könnten ja sonst versehentlich wichtige Daten gelöscht werden !
In diesem Sinne also: It's not a bug, it's a feature !
Das Löschen der Homeverzeichnisse ist jedoch mit dem Explorer leicht. Markieren Sie einfach alle Unterverzeichnisse z.B. im Verzeichnis DOCS\HOME\Schueler\Klasse8a und löschen Sie sie.
(Gibt's beim Löschen Probleme, so könnte ein vorheriges Anwenden der Befehle
flag *.* /rw /sub
flag *.* /N /Do /sub
ausgeführt in einer DOS-Box vom Startverzeichnis DOCS\HOME\SCHUELER aus, helfen. (Zur Not braucht man sogar den Filer.)
Um das Löschen der Homeverzeichnisse zu erleichtern, löscht BImport während des Löschens der User aus der NDS auch die Flags "Delete Inhibit" und "Rename Inhibit", und zwar unabhängig davon, wie die zugehörigen Häkchen unter "Otionen/weitere Einstellungen" gesetzt sind!
Wenn Sie am Schuljahresende/anfang Ihre Schüler nicht einfach löschen und neuanlegen, sondern versetzen wollen, lesen Sie den Abschnitt Versetzung weiter unten.
Wenn Sie am Schuljahresende/anfang nicht alle Schüler löschen und anschließend neu erzeugen wollen (obwohl dies die Chance bietet, etlichen "Schrott" loszuwerden), bietet BImport eine komfortable Möglichkeit, Schüler zu vesetzen.
Was bedeutet es, z.B. den Schüler SperlingH aus Klasse8a in die Klasse 9a zu vesetzen ?:
- Der User SperlingH muss aus dem Container Klasse8a.Schueler.Unterricht in den Container Klasse9a.Schuler.Unterricht verschoben werden.
- Außerdem muss das Homeverzeichnis SperlingH von DOCS:Home\Schueler\Klasse8a nach Docs:Home\Schueler\Klasse9a verlegt werden.
Woher bekommt BImport die dazu nötigen Informationen ?
Zunächst weiß BImport aus der Quelldatei (z.B. benutzer.txt), dass SperlingH sich in Klasse8a befindet. Jetzt wird aber noch eine zweite Textdatei benötigt (z.B. containerzuweisung.txt), die enthält, welche Klasse in welche versetzt wird. Diese Containerzuweisungsdatei muss folgendermaßen aufgebaut sein:
Pro Zeile steht eine Zuweisung, z.B.:
"Klasse8a","Klasse9a"
"Klasse8b","Klasse9b"
"Klasse8c","Klasse9c.Fra"
"Klasse9c.Fra","Klasse10c"
Jeweils links steht die Quell-Klasse und rechts die Ziel-Klasse, also werden
z.B. alle Schüler der Klasse8a nach Klasse9a versetzt, usw...
Wie an den letzten beiden Beispielzeilen zu sehen, sind auch "komplexere"
Strukturen erlaubt (auch in der Quelldatei benutzer.txt).
(Fehlerhafte Zeilen werden von BImport nicht beachtet.)
Sinnvoll ist es, allen Abschlussklassen eine "Abgangsklasse zuzuweisen, also z.B.:
"Klasse13","Abgang"
Alle Schüler der Klasse "Abgang" werden dann zu gegebener
Zeit von Hand endgültig aus dem System gelöscht.
(Denken Sie daran in der NDS einen Container Abgang
und im Dateisystem ein Ober-Homeverzeichnis Abgang
zu erzeugen).
Wenn also BImport einen Schüler versetzt, z.B. SperlingH, so weiß BImport aus der Quelldatei, dass SperlingH in Klasse8a ist. Es schaut bei der Containerzuweisung nach, wohin Klasse8a versetzt wird (hier Klasse9a). Dabei spielt die Groß/Kleinschreibung der Klassencontainerbezeichnungen keine Rolle.
Wenn nichtversetzte Schüler keine Rolle spielen sollen, genügen die soeben beschriebenen Informationen für die Versetzung.
Über das Menü "Optionen/Versetzung" sehen Sie folgenden Bildschirm:
Ganz oben können Sie sich Ihre Containerzuweisungsdatei wählen. Zur Kontrolle sehen Sie auch, welchen Quelldatei z.Z. eingestellt ist. Wenn nichtversetzte Schüler nicht beachtet werden sollen, so ist der Punkt "weder noch" zu wählen. Über den oberen Start-Button wird die Versetzung gestartet. Der Verlauf wird mit dem Fortschrittsbalken angezeigt. Ein Protokoll finden Sie anschließend in bimport_V.log.
User, die sich im BasisContainer befinden, können nicht versetzt werden! Dementsprechend ist eine Zeile, wie z.B.:
"","Klasse9a"
in der Containerzuweisungsdatei ungültig und wird von BImport nicht beachtet.
Nichtversetzte Schüler
Wollen Sie nichtversetzte Schüler in ihren bisherigen Klassen belassen, soll Bimport diese Schüler also bei der Versetzung gar nicht beachten, so müssen Sie den Punkt "Versetzungsfeld/Nichtversetzungskennzeichen" wählen und natürlich müssen Sie zuvor die Quelldatei, z.B. benutzer.txt, anpassen. Dafür gibt es zwei Möglichkeiten:
1.Möglichkeit:
Als erstes Zeichen in den Datenzeilen derjenigen Schüler, die nicht versetzt werden sollen (es sind ja normalerweise nicht so viele), wird das Nichtversetzungskennzeichen (so wie bei den Quelldatei-Vorgaben angegeben; Default: =, ein Gleichheitszeichen; Eselsbrücke: Schüler bleibt in der gleichen Klasse) geschrieben, also z.B.:
="SperlingH","Klasse8a","Sperling","Hans","Hans Sperling"
2.Möglichkeit:
Die Schülerdatensätze der Nichtversetzten enthält ein Versetzungsfeld, so wie Sie das zuvor bei den Quelldatei-Vorgaben festgelegt haben. Dieses Versetzungsfeld enthält entweder das Nichtversetzungskennzeichen oder ein kleines oder großes N. Ein paar Beispiele:
"SperlingH","Klasse8a","Sperling","Hans","Hans Sperling","="
"SperlingH","Klasse8a","Sperling","Hans","Hans Sperling","N"
"SperlingH","Klasse8a","Sperling","Hans","Hans Sperling","n"
Gibt es kein Versetzungsfeld im Datensatz oder enthält das Versetzungsfeld nichts ("") oder etwas anderes als die Nichtversetzungsangaben, so wird dies als "zu versetzen" aufgefasst.
Sie dürfen -wenn auch wenig sinnvoll- beide Möglichkeiten mischen. Beginnt aber der Datensatz mit dem Nichtversetzungskennzeichen, ist egal, ob es ein Versetzungsfeld gibt oder nicht, oder was darin steht. Der Schüler wird nicht versetzt! Beispiele:
="SperlingH","Klasse8a","Sperling","Hans","Hans Sperling",""
="SperlingH","Klasse8a","Sperling","Hans","Hans Sperling","N"
="SperlingH","Klasse8a","Sperling","Hans","Hans Sperling","J"
Gleichzeitige Versetzung in der Quelldatei
Während BImport versetzt, wird auch die Quelldatei entsprechend mitverändert,
damit Sie nach der Versetzung wieder eine den neuen Gegebenheiten angepasste
Quelldatei (z.B. zum Update oder zum Löschen) haben. Dabei können
Sie wählen, ob die Quelldatei, z.B. benutzer.txt direkt verändert
werden soll (eine Sicherung der alten Datei findet sich dann in benutzer.old)
oder ob sie nicht verändert werden soll (der neue Stand befindet sich
dann in benutzer.new).
Im ersten Fall muss das Häkchen bei "Ändere auch Datenquelldatei"
gesetzt werden, im zweiten nicht.
Schüler, die nicht versetzt werden sollen, bleiben mit ihrer alten Klasse erhalten. Jedoch wird das Nichtversetzungskennzeichen gelöscht und das Versetzungsfeld geleert!
Schüler, die aus irgendwelchen anderen Gründen (Fehler) von BImport nicht versetzt wurden, werden auskommentiert (ein Kommentarzeichen wird an den Anfang der Datensatzzeile gesetzt).
Lesen Sie unbedingt das Versetzungsprotokoll in bimport_V.log und die neue Quelldatei!!!
Über das Menü "Optionen/Teste Vorgaben" können Sie sich anzeigen lassen, ob alle Vorgaben stimmen. Diesen Vorgaben-Test gibt es für die drei Aktionen Import/Update, Löschen und Versetzung, da hier jeweils unterschiedliche Vorgaben eine Rolle spielen:
Falls alle Vorgaben stimmen, sehen Sie lediglich über dem Fortschrittsbalken im BImport-Bild eine entsprechende Meldung.
Im Fehlerfall erscheint ein Fenster, dass vielleicht so aussehen könnte:
In jedem Fall (ohne oder mit Fehler) wird die Protokolldatei bimport_T.log erstellt. Lesen Sie diese!
BImport liest beim Vorgabentest die Klassencontainer-Angaben aus der Quelldatei
und prüft, ob diese Container in der NDS unterhalb des BasisContainers
liegen. Ebenfalls wird geprüft, ob die "Ober"-Homeverzeichnisse
unterhalb des BasisHomeDir liegen.
Im Falle des Tests bei der Versetzung, wird außerdem die zweite Spalte
der Containerzuweisungsdatei, also die Zielklassen) gelesen. BImport prüft,
ob auch diese Container bzw. die Ober-Homeverzeichnisse existieren.
Eine solcher Vorgabentest läuft jedesmal vor einer der Aktionen Import/Update, Löschen, Versetzung ab, sofern das Häkchen "Vorgaben-test" nicht entfernt wurde.
11 Weitere Eigenschaften von BIMPORT
Kommentare
Alle Zeilen (in der Quelldatei oder in der Containerzuweisungsdatei), die keine Feldbegrenzer aufweisen, werden von BImport nicht beachtet. Darüber hinaus kann auch das Kommentarzeichen verwendet werden (z.B. auch zum auskommentieren von Datenzeilen), z.B.:
#"AKomm","Klasse8a","Komm","Aus","Aus Komm"
"SperlingH","Klasse8a","Sperling","Hans","Hans Sperling" # guter Schüler
Schreibweise von Benutzernamen und weiteren Feldern
Enthält der Benutzername in der Quelldatei Leerzeichen, Bindestriche, Punkte oder Apostrophe, so werden diese von BImport herausgefiltert.
Zum Beispiel wird aus | der Benutzername: |
Meier H | MeierH |
Schneider-Brinkmann A | SchneiderBrinkmannA |
D'Angelo A | DAngeloA |
Müller Lüdenscheidt H | MuellerLuedenscheidtH |
Freiherr v. d. Trenck O | FreiherrvdTrenckO |
Also:
Die gleichen Umwandlungen werden auch auf Nachnamen und Klassenbezeichnungen (Klassen dürfen Kontextpunkte haben) angewandt, nicht jedoch beim Vornamen und beim vollen Namen.
Vorgaben speichern
BImport kann die von Ihnen gemachten Vorgaben in einer INI-Datei, nämlich BImport.ini speichern.
Existiert BImport.ini nicht, während Sie BImport.exe starten, erscheint eine Fehlermeldung:
BImport nimmt dann einfach die im Programm voreingestellten Standardwerte. Um aber entweder diese Fehlermeldung zu unterdrücken oder BImport mit selbstgemachten Voreinstellungen zu starten, sollten Sie die Voreinstellungen abspeichern. Dazu wählen Sie im Menü "Datei" den Punkt "Speichere Vorgaben in INI-Datei". Damit werden die momentan zu sehenden Vorgaben in BImport.ini gespeichert. (BImport.ini liegt immer in dem Verzeichnis, aus dem heraus BImport.exe gestartet wurde).
Wollen Sie eine BImport.ini löschen und neu erzeugen, so wählen Sie den Menüpunkt "Erzeuge INI-Datei neu" (oder löschen sie von Hand).
Wie Sie im Untermenü sehen, können Sie die Vorgaben auch in einer beliebigen anderen INI-Datei ablegen (Speichere Vorgaben unter...) oder holen (Öffne INI-Datei). Mit dieser Option können Sie sich also für verschiedene Zwecke die Vorgaben in verschiedenen INI-Dateien vorhalten !
Nutzungsbestimmungen
Ebenfalls im Dateimenü (oder im Hilfemenü) finden Sie die Nutzungsbestimmungen. BImport ist keine Freeware. Bitte beachten Sie die Nutzungsbestimmungen!
Sie müssen Sie die Ihnen bei der Registrierung mitgeteilten Lizenzdaten eingeben. Über den Menüpunkt "Datei/Lizenzdaten" erhalten Sie das Eingabefenster. Dort müssen Sie die Lizenzdaten exakt, wie sie Ihnen mitgeteilt wurden, unter Beachtung von Groß/Kleinschreibung, Leerzeichen, Bindestriche usw. eingeben (bei zeitlich unbegrenzter Nutzung bleibt das Ablaufdatum-Feld leer):
Ein Klick auf den OK-Button speichert die Lizenzdaten ab.
Auch Musterlösungsnutzer benötigen Lizenzdaten!
Gelegentlich kann es zeitlich eingeschränkte Testversionen, die als solche
erkennbar sind, geben, für die keine Lizensierung nötig ist. Auch
gibt es zeitlich begrenzte Vollversionen. Ansonsten ist BImport für nicht
lizensierte Nutzer eine zeitlich begrenzte Demoversion, die alle Funktionen
hat, aber nur 2 User bearbeiten kann.
(Die Lizenzdaten oben im Bild sind nur ungültige Beispieldaten!)
Ablaufdatum
Demo- und Testversionen haben ein Ablaufdatum. In Ausnahmefällen kann auch eine Vollversion ein Ablaufdatum haben, in der Regel sind lizensierte Versionen jedoch zeitlich unbegrenzt nutzbar. In diesem Fall bleibt das Ablaufdatum-Feld leer.
Ist ein Ablaufdatum gesetzt, so funktioniert das Programm nach Überschreiten dieses Datums nicht mehr. Im Hilfe-Menü können Sie nachschauen, auf welches Datum das Ablaufdatum gesetzt ist.
Lizenzdaten nach abgelaufenen Ablaufdatum setzen
Um Lizenzdaten auch nach dem Ablauf des Ablaufdatums eingeben zu können, hat BImport den Kommandozeilen-Parameter /liz. Sie müssen dazu BImport mit diesem Zusatz starten.
1.Möglichkeit: Öffnen Sie eine DOS-Box (Eingabeauforderung und geben dort am Prompt ein: bimport /liz einschließlich vollem Pfad ein und drücken die Enter-Taste. | oder |
2. Möglichkeit: Über Start/Ausführen und mit Hilfe des Buttons "Durchsuchen" wählen Sie K:\BImport\BImport.exe. Fügen Sie dann von Hand ein Leerzeichen und /liz an und klicken auf ok. |
In beiden Fällen wird BImport direkt in die Lizenzdateneingabe gestartet. Nach Eingabe der Lizenzdaten führt der Klick auf den OK-Button (oder auch Abbruch-Button) zur Beendigung von BImport. Haben Sie gültige Lizenzdaten eingegeben, wird danach BImport wie gewohnt bedient.
NDS, Netware Versionskontrolle
Einen Überblick über die Versionen der NDS und der Netware erhalten Sie mit dem Menüpunkt "Datei" und dann "NDS,NW: Versionen".
Template-Attribute
Die Eigenschaften von Objekten in der NDS nennt man in der Sprache der NDS Attribute. So hat ein Userobjekt z.B. das Attribut Usernamen. Dieses wiederum hat einen Wert, z.B. SperlingH. Für das Userobjekt gibt es weit mehr als 100 Attribute.
Auch ein Template-Objekt hat soviele Attribute. Von denen kann man einen Teil über den NWAdmin einstellen. Von diesen Attributen ist wiederum ein Teil für die Erzeugung von Usern mittels Template wichtig. Eine Liste dieser Untermenge wird von BImport angezeigt. Dazu klickt man auf den Button benutzte Template Attribute. In der erscheinenden Liste, die übrigens direkt aus den NDS gelesen wird, kann man auf- und abrollen.
Die vollständige Liste hat folgende Eintragungen:
(Bemerkung: Alle Attributnamen erscheinen in der NDS-Syntax und sind selbsterklärend, bis auf das Attribut OU. Hier handelt es sich um das "Department"-Attribut.)
Diese Attribute werden von BImport bearbeitet. Dabei läßt sich mit Hilfe der Häkchen in den Checkboxen vorwählen, welche Attribute inklusive der zugehörigen Werte gelesen werden sollen. Folgende drei Zustände sind möglich:
Häkchen gesetzt | |
Häkchen nicht gesetzt | |
Häkchen grau unterlegt |
Folgende Regeln gelten:
Benutzer Import |
|
Häkchen gesetzt |
Attribut inklusive Werte werden zum neuen User hin übernommen, falls sie im Template überhaupt existieren. |
Häkchen nicht gesetzt |
Attribut inklusive Werte werden beim User ignoriert |
Grau unterlegt | Attribut inklusive Werte werden beim User ignoriert |
Benutzer Update |
|
Häkchen gesetzt |
Attribut inklusive Werte werden beim bereits vorhandenen User gesetzt bzw. erneuert, falls sie im Template überhaupt existieren. Falls das Attribut im Template nicht existiert, wird dieses Attribut beim User NICHT geändert. Achtung: Attribute, die bearbeitet werden, werden beim User immer zuerst gelöscht und dann neu aus dem Template übernommen. |
Häkchen nicht gesetzt |
Attribut wird beim bereits vorhandenen User gelöscht. |
Grau unterlegt | Attribut wird beim bereits vorhandenen User NICHT geändert |
Benutzer löschen |
|
Häkchen egal |
Das Template spielt beim Löschen keine Rolle |
Benutzer versetzen |
|
Häkchen egal |
User werden nur verschoben und behalten dabei ihre Eigenschaften bei |
Insbesondere beim Benutzer-Update ergeben sich daraus interessante Möglichkeiten.
Ein Beispiel: Sie wollen für bereits vorhandene Benutzer, die durch eine bestimmte Datenquelldatei bestimmt sind, nachträglich eine Gruppenzugehörigkeit löschen und zwei neue setzen.
Lösung: Die neuen Gruppen werden im Template unter "Group
Membership" eingetragen.
1.Möglichkeit:
In BImport werden bei den Template-Attributen alle Häkchen gesetzt, deren
Attribute beim Benutzer nicht verändert werden sollen.
In Wirklichkeit werden sie beim Benutzer gelöscht und dann neu gesetzt,
also auch unsere neuen Gruppeneintragungen.
2.Möglichkeit:
Alle Attribut-Felder werden auf "grau" gesetzt, außer "Group Membership"
und "Sequrity Equals".
ACHTUNG: Das Template spielt in BImport natürlich nur dann eine Rolle, wenn die CheckBox "Template" aktiviert ist.
Lehrer importieren
Natürlich können Sie mit BImport nicht nur Schüler in die NDS importieren, sondern auch Lehrer. Erstellen Sie dazu eine Datenquelldatei mit den gewünschten Feldern, jedoch entweder ohne Klassenfeld oder mit leerem Klassenfeld (""). Da die Lehrer innerhalb der NDS nach unserem Modell in den Container LEHRER.UNTERRICHT importiert werden sollen, wird in BImport der Basis-Container eben so eingestellt. Analog bekommt das BasisHomeDir den Wert Home\Lehrer bzw. das Lehrer-Template ist so eingestellt (dafür muss dann natürlich z.B. .user_template.Lehrer.Unterricht existieren).
Die Felder Datenquelle und Logdatei für eine Dateiauswahl, bzw. die Felder Basis-Container, Home-Volume, Basis-Homedirectory und Template für eine NDS-Objektauswahl können entweder direkt editiert oder durch einen Klick auf den jeweils rechts vom Feld stehenden Button oder ein Doppelklick direkt auf das Feld per Dialogbox mit den erforderlichen Daten versehen werden.
Für die Datenquelle und die Logdatei wird dazu die übliche Datei-Öffnen-Dialogbox verwendet:
Bei der Wahl der Logdatei ist folgendes zu berücksichtigen: Da ja BImport beim Schreiben in die Logdatei den vorgegeben Logdateinamen mit einem angehängten "_I", "_L", "_V", bzw. "_T" versieht, passiert hier bei der Auswahl per Dialogbox das Umgekehrte. Wählen Sie also z.B. bimport_I.log,bimport_L.log, bimport_V.log, oder bimport_T.log. Nach Klick auf den Öffnen-Button, steht im BImport-Logdatei-Feld der Logdateiname ohne dieses Anhängsel.
Bei den restlichen Feldern wird bei der Eingabe per Dialogbox ein NDS-Browser aufgerufen, der ganz im Stil des NWAdmin-Programms arbeitet. Treffen Sie also im rechten Fenster ein Vorwahl, um dann die endgültige Wahl im linken Fenster vorzunehmen. Wenn BImport den NDS-Browser startet, wird bereits eine dem jeweiligen Feld entsprechende Kategorie angesteuert. Außerdem versucht BImport aus dem Inhalt des betreffenden Feldes gleich "in die Nähe" der gewünschten Daten zu gelangen.
Basis-Container
Home-Volume
Basis-Homedirectory
Template
Weitere Eigenschaften des NDS-Browsers
In der Regel ist also die jeweils gewünschte Objektklasse vorgewählt. In diesem Feld Objektklasse können Sie jedoch die Objektklasse durch Klick auf den nebenstehenen "Pfeil"-Button auch selber vorwählen. Im linken Fenster erscheinen dann jeweils nur Objekte dieser Klasse, wenn überhaupt welche vorhanden sind. Löschen Sie den Inhalt des Feldes Objektklasse, so sehen Sie wieder alle Objekte.
Mit den Feldern Objektmaske bzw. Contextmaske können Sie die Ausgabe filtern. Im obigen Bild würde der Filter "Klasse1a" im rechten Fenster eben nur diese Klasse anzeigen, während der Filter "K*" alle Klassen anzeigen wird. (Als Jokerzeichen ist nur ein angehängtes * möglich).
Wenn Sie immer schon einmal wissen wollten, wir die Objektklassen intern von der NDS bezeichnet werden, so setzen Sie das Häkchen bei "zeige Objektklassen".
Mit dem "Context"-Button, können Sie auch direkt einen Context vorgeben, ohne sich durch den NDS-Baum hangeln zu müssen.
Die Auswahl eines Objektes findet grundsätzlich im linkem Fenster statt ! Entweder durch Doppelklick oder durch Einfach-Klick mit anschließendem OK-Button. (Wenn es nichts zu wählen gibt, ist der OK-Button inaktiv).
Für Tastaturfreunde (oder Maus-Gegner) lässt sich der NDS-Browser (wie das ganze BImport) natürlich auch mit den unter Windows üblichen Tasten steuern. TAB-Taste für das Wechseln zu den Fenstern, Feldern und Buttons, Pfeil auf/ab innerhalb der Fenster zum Selektieren von Objekten, usw...