Inleiding
Met de import CFT leest u de vakkenkeuzes van leerlingen in uit een CFT-bestand. Een CFT-bestand bevat per leerling de afdeling, het leerlingnummer en de gekozen vakken. Xedule koppelt die vakken als onderwijsproducten aan de studenten, voor de periode waarin u werkt.
Afbeelding 1 – Van CFT-bestand tot doorgevoerde keuzes.
De import maakt geen studenten en geen onderwijsproducten aan: die staan al in Xedule. Ze kent één richting: van het bestand naar Xedule. Een import schrijft niet direct weg: Xedule controleert het bestand, toont daarna een vergelijking en voert pas door wanneer de gebruiker daarvoor kiest (zie “De drie doorvoerknoppen”). De import voegt toe en werkt bij. Met de knop toevoegen, bijwerken en verwijderen trekt u daarnaast vakken in die een student uit het bestand in Xedule volgt, maar die niet meer in het bestand staan (zie “De drie doorvoerknoppen”).
Het aanleveren van het bestand, het controleren van de vergelijking en het doorvoeren zijn de verantwoordelijkheid van de functioneel beheerder van de school.
Randvoorwaarden en functionele eisen
Technische randvoorwaarden
- De gebruiker heeft schrijfrechten voor de import CFT en voor het bijwerken van studenten.
- De import werkt op periodeniveau: kies in Xedule de periode waarvoor de keuzes gelden.
- Het bestand heeft de extensie .cft en is opgeslagen in UTF-8. Bij een andere codering komen letters met accenten niet goed door en volgt een waarschuwing.
- Per keer wordt één bestand ingelezen.
Functionele eisen aan de inrichting van Xedule
- Elke leerling uit het bestand bestaat in Xedule als student, met het leerlingnummer als code.
- Voor elk vak bestaat een onderwijsproduct met de code die het coderingsmasker oplevert (zie “Het coderingsmasker”).
- Gebruikt het masker de opleiding of de klas van de student, dan volgt de student die opleiding, of is hij lid van die klas, in de gekozen periode.
Opbouw van het CFT-bestand
Een CFT-bestand is een tekstbestand waarin de waarden op een regel door spaties worden gescheiden. Lege regels worden overgeslagen.
Afbeelding 2 – De opbouw van een CFT-bestand.
| Regel | Inhoud |
|---|---|
| Regel 1 | Het maximale aantal vakken dat een leerling kiest, als getal. Dit aantal bepaalt hoeveel vakken Xedule op elke leerlingregel leest. |
| Regel 2 | De vakcodes. Deze regel wordt overgeslagen. |
| Regel 3 en verder | Per leerling: de afdeling, het leerlingnummer, het geslacht, de vakcodes en de naam. Heeft een leerling minder vakken dan het maximum, dan is de regel aangevuld met *1, *2 enzovoort. |
- Op elke leerlingregel leest Xedule na het geslacht precies zoveel waarden als vakken als het getal op regel 1 aangeeft. Waarden die met een * beginnen, zijn opvulling en worden overgeslagen. Alles daarna, de naam, wordt niet gebruikt.
- Het geslacht wordt niet gebruikt. De afdeling wordt alleen gebruikt als het coderingsmasker erom vraagt (zie “Het coderingsmasker”).
- Ontbreekt de opvulling bij een leerling met minder vakken, dan leest Xedule de naam als vakcodes en volgt de melding dat het onderwijsproduct niet is gevonden. Schrijf de opvulling ook zonder spatie: *1, niet * 1.
- Bevat een regel minder waarden dan de afdeling, het leerlingnummer, het geslacht en het aantal vakken samen, dan volgt de melding "Fout: regel {n}" en blijft die leerling ongewijzigd.
Het coderingsmasker
Boven het uploadvak staat het coderingsmasker. Het masker bepaalt welke code Xedule zoekt bij een vak uit het bestand. Xedule vult de onderdelen tussen vierkante haken in; tekst buiten de haken blijft staan. De standaardwaarde is [CFT.Vak]: de vakcode uit het bestand is dan ook de code van het onderwijsproduct.
| Onderdeel | Wordt vervangen door |
|---|---|
| [CFT.Vak] | de vakcode uit het bestand |
| [CFT.Afdeling] | de afdeling van de leerlingregel |
| [Student.Opleiding.Naam] | de naam van de opleiding die de student in de gekozen periode volgt |
| [Student.Klas.Code] | de code van de klas waarvan de student in de gekozen periode lid is |
Voorbeeld: met het masker [CFT.Afdeling]_[CFT.Vak] wordt het vak ne van een leerling in afdeling H4 gekoppeld aan het onderwijsproduct met code H4_ne.
- Volgt de student in de periode geen opleiding of is hij geen lid van een klas, dan wordt dat onderdeel leeg en zoekt Xedule naar de code zonder dat deel.
- Een onderdeel tussen haken dat niet in de tabel staat, wordt overgenomen als gewone tekst, zonder de haken.
- Een leeg masker werkt als [CFT.Vak].
Verwerking van de keuzes
Per leerlingregel doet Xedule het volgende.
- Student zoeken: de student wordt gezocht op het leerlingnummer als code. Staat de student niet in Xedule, dan volgt een melding en wordt de regel overgeslagen.
- Keuzes opnieuw opbouwen: in de vergelijking worden de onderwijsproducten die de student in de gekozen periode volgt, vervangen door de vakken uit het bestand. Elk vak wordt een onderwijsproduct dat de student in de gekozen periode volgt. Het wordt niet als keuze gemarkeerd.
- Studeren: de student studeert in de gekozen periode.
- Onderwijsproduct niet gevonden: bestaat er geen onderwijsproduct met de code uit het masker, dan volgt een melding en wordt alleen dat vak overgeslagen.
De vergelijking toont alleen de studenten uit het bestand, met de code, de referentie, het studeren en de gevolgde onderwijsproducten met de periode. Andere studenten blijven buiten de vergelijking.
Let op: een vak dat een student in Xedule in de gekozen periode volgt maar dat niet meer in het bestand staat, staat in de vergelijking als alleen in Xedule. Met bijwerken en met toevoegen en bijwerken blijft dat vak bij de student staan; met toevoegen, bijwerken en verwijderen vervalt het voor het tijdvak. Dat geldt alleen voor studenten die in het bestand staan: andere studenten blijven buiten de vergelijking en worden door geen van de knoppen gewijzigd.
Import: uploaden en doorvoeren
Uploaden en uitvoeren
Ga naar Import > import CFT en kies de periode waarvoor de keuzes gelden.
- Controleer het coderingsmasker (zie “Het coderingsmasker”).
- Sleep het CFT-bestand naar het uploadvak of selecteer het, en druk op uitvoeren. Een bestand zonder de extensie .cft wordt geweigerd met de melding Extensie fout.
- Zijn er meldingen, dan opent het venster validatie met alle meldingen (zie “Meldingen in het validatievenster”). De vergelijking wordt ook dan getoond, met de regels die wel zijn ingelezen.
- Na het doorvoeren meldt Xedule dat de gegevens zijn doorgevoerd.
De import CFT kent geen geplande taken. Elke import wordt handmatig uitgevoerd.
De drie doorvoerknoppen
Bij de import CFT staan alle drie de knoppen. Met toevoegen, bijwerken en verwijderen trekt u de vakken in die een student uit het bestand in de gekozen periode in Xedule volgt, maar die niet in het bestand staan, ook als ze handmatig in Xedule zijn toegevoegd. Gebruik deze knop daarom alleen met een volledig bestand: ontbreekt een vak bij een student, dan vervalt dat vak bij die student. Studenten die niet in het bestand staan, blijven ongewijzigd.
Een import schrijft nooit rechtstreeks weg. Nadat de gegevens zijn opgehaald, toont Xedule een vergelijking: links de gegevens zoals het bronsysteem ze aanlevert, rechts dezelfde gegevens zoals ze op dat moment in Xedule staan. Pas wanneer u op een doorvoerknop drukt, verandert er iets in Xedule. Welke knop u kiest, bepaalt hoe ver dat doorvoeren gaat.
Elke import doorloopt dezelfde vier stappen; alleen de laatste stap wijzigt gegevens.
Er zijn drie knoppen. Ze werken in alle importkoppelingen op dezelfde manier en gaan altijd één kant op: van het bronsysteem naar Xedule. Via deze schermen wordt er nooit iets naar het bronsysteem teruggeschreven.
| Pictogram | Knop | Wat de knop doet | Wanneer u die kiest |
|---|---|---|---|
| bijwerken | Werkt alleen de regels bij die zowel in het bronsysteem als in Xedule bestaan en waarvan een of meer waarden verschillen. Er wordt niets toegevoegd en niets verwijderd. | Als u alleen wijzigingen op bestaande gegevens wilt overnemen en bewust nog geen nieuwe objecten in Xedule wilt laten ontstaan. | |
| toevoegen en bijwerken | Doet hetzelfde als bijwerken en maakt daarnaast de regels aan die alleen in het bronsysteem voorkomen. Er wordt niets verwijderd. | De gebruikelijke keuze voor een reguliere import gedurende het jaar. | |
| toevoegen, bijwerken en verwijderen | Doet hetzelfde als toevoegen en bijwerken en trekt daarnaast de geldigheid in van de objecten die alleen nog in Xedule bestaan. | Alleen wanneer het bronsysteem voor deze gegevensgroep volledig leidend is en de aanlevering compleet is. |
Er is geen knop waarmee u uitsluitend toevoegt: bij elke knop die toevoegt, worden bestaande regels ook bijgewerkt.
In de vergelijking ziet u per regel in de kolom Locatie waar die regel voorkomt en of er verschillen zijn. De kolom toont een pictogram; wanneer u met de muis op het pictogram gaat staan, verschijnt de bijbehorende tekst. Met het filter Locatie bovenaan de vergelijking kiest u welke regels u ziet. Twee pictogrammen zijn dezelfde als die van een knop, maar in de kolom Locatie beschrijven ze de situatie van de regel en niet een handeling.
| Pictogram | Locatie | Betekenis | Wat de knoppen ermee doen |
|---|---|---|---|
| alleen in [naam van het bronsysteem] | De regel staat alleen in de aanlevering en nog niet in Xedule. | Wordt toegevoegd met toevoegen en bijwerken en met toevoegen, bijwerken en verwijderen. Bijwerken laat de regel liggen. | |
| in beiden met verschillen | De regel staat in beide, en ten minste één vergeleken veld heeft een andere waarde. | Wordt met elk van de drie knoppen bijgewerkt. | |
| in beiden zonder verschillen | De regel staat in beide en alle vergeleken velden zijn gelijk. | Geen van de knoppen verandert iets. | |
| alleen in Xedule | De regel staat in Xedule, maar niet in de aanlevering. | Alleen toevoegen, bijwerken en verwijderen trekt de geldigheid in; de andere knoppen laten de regel staan. | |
| in beiden | Alleen een keuze in het filter: toont alle regels die in beide staan, met of zonder verschillen. | — |
Kiest u in het filter niets, dan ziet u alle regels.
Het resultaat van elke knop, per soort verschil tussen beide kanten.
Welke velden worden overgenomen
Bij een bijwerking worden niet alle velden overschreven, maar alleen de velden die daadwerkelijk verschillen; regels die in het geheel niet verschillen worden overgeslagen. Welke velden worden vergeleken, ligt per gegevensgroep vast: dat zijn precies de velden die in de vergelijking naast elkaar worden getoond. Velden die niet in de vergelijking voorkomen, worden door een import dus nooit overschreven.
Wat verwijderen precies doet
Verwijderen is geen harde verwijdering. Xedule trekt de geldigheid van het object in voor het tijdvak waarin u werkt; het object zelf en zijn historie blijven bestaan. In de praktijk betekent dat bijvoorbeeld dat een medewerker voor dat tijdvak uit dienst wordt gezet, een student in dat tijdvak niet meer studeert, een faciliteit in dat tijdvak niet meer geldig is, of dat een relatie tussen twee objecten voor dat tijdvak vervalt. Een groep is de uitzondering: valt de periode van de groep volledig binnen het tijdvak, dan wordt de groep zelf opgeruimd.
- Alleen gegevens die per tijdvak geldig zijn, kunnen op deze manier worden ingetrokken. Gegevenssoorten zonder tijdvak worden door de verwijdervariant ongemoeid gelaten.
- De knop kijkt niet naar de herkomst van een object. Objecten die handmatig in Xedule zijn aangemaakt en die niet in de aanlevering voorkomen, worden dus ook ingetrokken — tenzij de koppeling ze via een vast filter buiten de vergelijking houdt.
- Er wordt niet gecontroleerd of het object elders nog in gebruik is. Een object dat nog in het rooster of de jaarplanning voorkomt, wordt evengoed ingetrokken.
Alleen bij deze variant vraagt Xedule vooraf om een bevestiging. Het doorvoeren zelf gebeurt in één handeling: gaat er iets mis, dan blijven de gegevens in Xedule zoals ze waren.
Hoe een regel links aan een regel rechts wordt gekoppeld
Of een regel als nieuw, als gewijzigd of als alleen in Xedule wordt gezien, hangt af van de manier waarop beide kanten aan elkaar worden gekoppeld. Xedule gebruikt daarvoor in de eerste plaats de referentie uit het bronsysteem die bij het Xedule-object is vastgelegd. Is die niet gevuld, dan valt de vergelijking terug op de natuurlijke sleutel van het object: bijvoorbeeld het personeelsnummer van een medewerker, de code van een student of leeractiviteit, of de combinatie van code, periode en type bij een groep. Hoofdletters spelen daarbij geen rol.
Dit verklaart de twee situaties die het vaakst tot onverwachte uitkomsten leiden. Wijzigt in het bronsysteem de sleutel van een object waarvan in Xedule nog geen referentie is vastgelegd, dan ziet Xedule dat als een nieuw object naast het bestaande. En heeft een handmatig aangemaakt Xedule-object dezelfde sleutel als een aangeleverd object, dan worden beide als één regel behandeld en wordt het handmatige object met de aangeleverde waarden bijgewerkt.
Waarop een knop wordt toegepast
Een knop werkt op alle regels van de gegevensgroep die op dat moment geopend is, en niet op een selectie; er is geen aanvinkmogelijkheid per regel. Wel kunt u de lijst met het filter Locatie beperken tot één soort regel (zie de tabel met de locaties hierboven); de knop werkt daarna alleen op de regels die het filter overlaat. Wordt de knop op het overzichtstabblad gebruikt, dan geldt de keuze voor alle gegevensgroepen van die import tegelijk.
Foutafhandeling en meldingen
Meldingen in het validatievenster
De meldingen staan zoals ze in het scherm verschijnen. Het regelnummer telt alleen de regels die niet leeg zijn.
| Melding | Wanneer / oorzaak | Oplossing |
|---|---|---|
| Fout: geen geldig vakkenaantal gevonden op eerste regel | Regel 1 bevat geen getal. Xedule leest de rest van het bestand niet. | Zet het maximale aantal vakken op regel 1 (zie “Opbouw van het CFT-bestand”). |
| Fout: Student {leerlingnummer} niet gevonden (r{regel}) | Er is geen student met dit leerlingnummer als code. | Controleer het leerlingnummer of maak de student aan. |
| Fout: Onderwijsproduct {code}/{vak} niet gevonden (r{regel}) | Er is geen onderwijsproduct met de code die het masker oplevert. Alleen dit vak wordt overgeslagen. | Maak het onderwijsproduct aan of pas het masker aan (zie “Het coderingsmasker”). |
| Fout: regel {regel} | De regel heeft te weinig waarden. De leerling blijft ongewijzigd. | Vul de regel aan, met opvulling als *1 (zie “Opbouw van het CFT-bestand”). |
| Bijzondere karakters worden niet standaard ondersteund. Hiervoor zal het .cft bestand in UTF-8 opgeslagen moeten zijn. | Het bestand is niet in UTF-8 opgeslagen. | Sla het bestand op in UTF-8 en lees het opnieuw in. |
Gegevens die zonder melding worden overgeslagen
| Situatie | Gevolg |
|---|---|
| Een waarde die met * begint | Wordt als opvulling overgeslagen (zie “Opbouw van het CFT-bestand”). |
| De naam en het geslacht op de regel | Worden niet gebruikt. |
| Een vak dat niet meer in het bestand staat | Blijft bij de student staan, behalve bij de knop toevoegen, bijwerken en verwijderen (zie “Verwerking van de keuzes”). |
| Studenten die niet in het bestand staan | Blijven buiten de vergelijking en ongewijzigd. |
Verschijnt na uitvoeren geen vergelijking en geen melding, controleer dan of er precies één bestand is toegevoegd. Lost dat het niet op, neem dan contact op met Xedule Support.
Opmerkingen
0 opmerkingen
Artikel is gesloten voor opmerkingen.