= TeamSync versie 20240906
Paul Wiegmans p.wiegmans@svok.nl
:idprefix: :idseparator: - :sectanchors: :sectlinks: :sectnumlevels: 4 :sectnums: :toc: :toclevels: 4 :toc-title:
TeamSync is een universele oplossing voor het overbrengen van gegevens uit Magister naar School Data Sync ten behoeve van een geautomatiseerde aanmaak van Teams in een Microsoft 365 omgeving.
Deze oplossing maakt gebruik van https://sds.microsoft.com/[Microsoft School Data Sync]. School Data Sync is een oplossing die identiteiten vanuit een schooladministratiesysteem synchroniseert met Microsoft 365, en klassenteams maakt voor alle actieve klassen of lesgroepen.
Inspiratie hiervoor komt uit eerder werk genaamd 'v06-sds-files_FONSVITAE.ps1' door Wim den Ronde, Eric Redegeld, Joppe van Daalen.
Gebruikt jouw school Somtoday en zoek je een koppeling tussen Somtoday en School Data Sync ? Bezoek dan https://github.com/DwayneSelsig/Somtoday2MicrosoftSchoolDataSync[GitHub: DwayneSelsig/Somtoday2MicrosoftSchoolDataSync]
toc::[]
== Werking
TeamSync leest uit Magister lijsten met leerlingen, docenten, klassen, lesgroepen en vakken., TeamSync genereert hieruit lijsten waarin voor elk samenwerkingsverband bestaande uit lesgroep of combinatie van klas en vak, waarvan zowel leerlingen als docent(en) lid zijn, een actief team in de uitvoer terechtkomt. Deze lijsten vormen de basis voor een actieve synchronisatie van https://sds.microsoft.com/[Microsoft School Data Sync]. SDS maakt de juiste Microsoft 365 klassenteams aan, maakt de juiste docent teameigenaar en voegt de juiste leerlingen als leden toe.
De werking van TeamSync wordt weergegeven als volgt:
TeamSync bestaat uit twee scripts:
Import-Magister.ps1
hierna genoemd het importscript,Export-SchoolDataSync.ps1
hierna genoemd het exportscript.Het importscript wordt eerst uitgevoerd om gegevens uit Magister op te halen. Gegevens worden tussentijds opgeslagen in een aantal tijdelijke bestanden. Daarna wordt het exportscript uitgevoerd om de bestanden te genereren voor School Data Sync. De uitvoer bestaat uit 6 CSV-bestanden die nodig zijn voor synchronisatie met een profiel in https://sds.microsoft.com/[Microsoft School Data Sync].
Voor het ophalen van gegevens wordt gebruik gemaakt van de Magister SOAP/XML Webservice. Er is hiervoor een geldige gebruikersnaam en een wachtwoord vereist en permissies voor het uitvoeren van webqueries en dan specifiek de AD-functies. Er wordt gebruik gemaakt van de standaard Web API van Magister. Er zijn geen zogenaamde aangepaste lijsten of 'custom queries' nodig. Je kunt meer lezen hierover op https://sikkepitje.nl/Tech/MagisterSOAP2020[Magister SOAP/XML webservice].
=== Identiteiten koppelen
Voor het genereren van de juiste gegevens voor School Data Sync moeten de identiteiten van docenten en leerlingen in Magister worden gepaard (gekoppeld, "match") aan de overeenkomstige identiteiten van alle gebruikers in Microsoft 365 en Teams, dus in Azure Active Directory (AAD). In de uitvoer die TeamSync genereert, wijst ID naar de unieke identiteit van een medewerker of gebruiker in AAD. De ID kan een suffix bevatten, maar dat hoeft niet. Indien nodig wordt door School Data Sync aan dit veld de suffix toegevoegd om te refereren aan een unieke gebruiker in AAD.
Voor leerlingen kan makkelijker het Magister email gebruikt om de unieke ID te bepalen. Voor medewerkers is dit lastiger omdat in Magister geen e-mailadres is opgeslagen op een manier die TeamSync kan uitlezen.
IMPORTANT: Hier wordt ervan uitgegaan dat alle gebruikersaccounts al in AAD aanwezig zijn en dus niet door School Data Sync actief worden aangemaakt.
De volgende methoden van koppeling worden ondersteund voor medewerkers:
De volgende methoden van koppeling worden ondersteund voor leerlingen:
In het configuratiebestand moet één koppelmethode voor leerlingen en één koppelmethode voor medewerkers worden gedefinieerd.
TeamSync vanaf versie 20201127 ondersteunt niet meer het opzoeken van de UserPrincipalName in active Directory (via INI-parameters useemail
, ADsearchscope
, ADserver
). Het alternatief hiervoor is om een CSV-opzoektabel te gebruiken. Je kunt deze CSV-tabel aanmaken met behulp van een script die de informatie leest uit Active Directory of uit een andere bron. Een voorbeeld van een script die de CSV-tabel vult met informatie uit Entra ID met behulp van Microsoft Graph PowerShell SDK vind je in link:Ophalen-ADMedewerkerUPN.ps1[Ophalen-EntraMedewerkerUPN-voorbeeld.ps1]. Dit script genereert een CSV met een kolom UserPrincipalName en een kolom EmployeeId.
De gewenste koppelmethode wordt aangeduid met één van de volgende variabelen.
** medewerker_id=loginaccount
: Koppel Id aan Magister loginaccount. Id bevat geen domeinsuffix. SDS vult Id aan met een domeinsuffix.
** medewerker_id=code
: Koppel Id aan Magister code. Id bevat geen domeinsuffix. School Data Sync (SDS) vult Id aan met een domeinsuffix.
** medewerker_id=csv_upn
: Koppel Id aan UserPrincipalName van de gebruiker in een extern CSV-bestand waarvan employeeId overeenkomt met EmployeeId_prefix + Magister-stamnummer. Zie sectie Medewerker-UPN-CSV voor een beschrijving van dit bestand. Id bevat de domeinsuffix.
** leerling_id=loginaccount
: koppel Id aan Magister loginaccount. Id bevat geen domeinsuffix. SDS vult Id aan met een domeinsuffix.
** leerling_id=email
: Koppel ID aan Magister email. Id bevat een domeinsuffix. De leerlingen worden uniek geidentificeerd met het "email" veld in de Magister leerlingkaart. Het is de verantwoordelijkheid van de school om ervoor te zorgen dat het email-veld van leerlingen is ingevuld met de overeenkomstige userPrincipalName van de leerling in Azure AD / Microsoft 365.
== Installatie
Om TeamSync in te zetten is het volgende nodig.
Doe het volgende:
== Bestanden en mappen
Om TeamSync te gebruken, is het essentieel om de functie en structuur van enkele bestanden en mappen te gebruiken.
=== Configuratiebestand
Dit bestand heet bij verstek Import-Magister.ini
voor het importscript of Export-SchoolDataSync.ps1
voor het exportscript en staat in dezelfde map als het script. Het bevat configuratievariabelen die de werking van TeamSync beinvloeden. Een andere bestandsnaam kan worden aangegeven door middel van de <
=== Importfiltermap
In deze map worden <
=== Importkladmap Het importscript plaatst hier tijdelijke bestanden, die slechts dienen om de goede werking te controleren van de Magister webservice en instellingen en filters van TeamSync,
=== Importdatamap Het importscript plaatst in deze map een aantal bestanden met uit Magister opgehaalde gegevens over leerlingen, docenten en vakken. Het exportscript heeft deze bestanden nodig om in te lezen en bewerkt ze verder.
magister_leer.clixml
magister_docent.clixml
magister_vak.clixml
=== Exportfiltermap
In deze map worden <
=== Exportkladmap Het exportscript plaatst hier tijdelijke bestanden, die dienen om de goede werking te controleren van TeamSync, met name instelingen en filters.
=== Exportdatamap Het exportscript maakt in deze map volgens de specificaties van School Data Sync de volgende bestanden aan.
School.csv
Section.csv
Student.csv
StudentEnrollment.csv
Teacher.csv
TeacherRoster.csv
Deze bestanden zijn bedoeld om te uploaden naar het gewenste synchronisatieprofiel in School Data Sync.
=== ExportVerzamelmap
In deze map worden de naar SDS te uploaden gegevensbestanden voor alle scholen wordt verzameld. Elke keer dat Export-SchoolDataSync wordt uitgevoerd, wordt de uitvoer die afzonderlijk worden opgeslagen in de exportdatamap óók toegevoegd aan de bestanden in de ExportVerzamelmap. Deze functie is toegevoegd in TeamSync vanaf versie 20240222 en compenseert het gebrek aan "Single Subscription - Multi-Academy Trust Support" in de huidige School Data Sync v2. Het maakt het mogelijk dat TeamSync gegevens van verscheidene scholen samenvoegt om te kunnen uploaden naar School Data Sync v2.
Voor elk van de vereiste bestanden in de SDS CSV V1 specificatie, neemt TeamSync de volgende beslissing:
=== Medewerker_UPN.CSV Indien de koppelmethode is ingesteld op een CSV-bestand (configuratieparameter "medewerker_id=csv_upn"), dan leest het importscript dit bestand uit de uit de importfiltermap. Het importscript gebruikt deze tabel om de medewerkers UserPrincipalName op te zoeken bij een stamnummer uit Magister.
De inhoud van dit bestand bestaat uit een kopregel en één of meer gegevensregels. De kopregel bevat "employeeId,UserPrincipalName". Voor elke medewerker in Magister is er een gegevensregel. De gegevensregels bevatten elk twee gegevensvelden, gescheiden door een komma. Het eerste gegevensveld bevat de employeeId van een medewerker. Het tweede gegevensveld bevat de overeenkomstige UserPrincipalName die de gebruiker in Entra ID uniek identificeert. De velden mogen omsloten zijn door dubbele aanhalingstekens, maar dat is niet verplicht.
Normaliter zul je deze tabel moeten ophalen uit Entra ID, met behulp van een script afgeleid van het voorbeeldbestand link:Ophalen-ADMedewerkerUPN.ps1[Ophalen-EntraMedewerkerUPN-voorbeeld.ps1]. Let op: dit script slaat de medewerkergegevens op in de huidige map. Je zult het CSV-bestand zelf moeten kopieren naar de juiste importmap afhankelijk van de gebruikte configuratie voor het importscript.
=== Filters In zowel de Importfiltermap als de Exportfiltermap kunnen één of meer bestanden worden geplaatst om filters toe te passen op de te verwerken gegevens. Hierbij wordt gebruikt gemaakt van zogenaamde 'regular expressions' oftewel regex-patronen. Met behulp van de regex-patronen kunnen krachtige selecties worden gemaakt die bepalen welke gegevens moeten worden verwerkt en welke niet. De filters kunnen worden toegepast om de hoeveelheid te verwerken gegevens te reduceren en slimme selecties te maken op welke gegevens resulteren in actieve klassenteams.
Er kan bij het ophalen van Magistergegevens door Import-Magister.ps1
worden gefilterd op:
Er kan bij het bepalen van klassenteams door Export-Magister.ps1
worden gefilterd op:
Er zijn twee typen filters te definieren:
Bij insluitende filters worden alleen de gegevens die overeenkomen met de opgegeven regex-patronen verwerkt en de rest wordt weggegooid. Bij uitsluitende filters worden alle gegevens die niet overeenkomen met de opgegeven patronen verwerkt, terwijl de gegevens die wel overeenkomen niet worden verwerkt. Je kunt insluitende en uitsluitende filters combineren om te komen tot een nauwkeurige gedefinieerde verzameling klassenteams, die precies beantwoordt aan de behoefte.
De volgende filterbestanden kunnen worden gedefinieerd door het overeenkomstige bestand in de Importfiltermap en/of Exportfiltermap te definieren en deze te vullen met de gewenste regex-patronen.
excl_docent.csv
: dit bevat filters voor het uitsluitend filteren van docenten op Id.incl_docent.csv
: filters voor het insluitend filteren van docenten op Id.excl_klas.csv
: filters voor het uitsluitend filteren van leerlingen op klasnaam.incl_klas.csv
: filters voor het insluitend filteren van leerlingen op klasnaam.excl_studie.csv
: filters voor het uitsluitend filteren van leerlingen op studie.incl_studie.csv
: filters voor het insluitend filteren van leerlingen op studie.incl_locatie.csv
: filters voor het insluitend filteren van leerlingen op locatie oftewel Magister:Administratieve_eenheid.Omschrijving.incl_teamnaam.csv
: (alleen in de ExportFiltermap t.b.v. Export-SchoolDataSync.ps1
) filters voor het insluitend filteren van teams op (weergave)naam. t.b.v. Export-SchoolDataSync.ps1
excl_teamnaam.csv
: (alleen in de ExportFiltermap t.b.v. Export-SchoolDataSync.ps1
) filters voor het uitsluitend filteren van teams op (weergave)naam.Het gebruik van deze filterbestanden is optioneel. Als ze bestaan, worden ze ingelezen en gebruikt. Als ze niet bestaan, wordt er niet gefilterd. Indien gebruikt, dan bevat elk filterbestand één of meer regex-patronen, elk op een eigen regel, die worden toegepast voor het filteren van de relevante gegevens. Elke regex-patroon matcht een deel van de invoer. Wildcards zijn niet nodig. Alle tekens met een speciale betekenis voor de match-operator zijn hierbij toegelaten. Plaats geen lege regels in het filterbestand.
Speciale betekenis hebben:
^
matcht het begin van een zoekterm $
matcht het eind van een zoektermVoor een uitgebreidere uitleg over regular expressions of regex, zie https://nl.wikipedia.org/wiki/Reguliere_expressie[Reguliere expressie - Wikipedia]
==== Voorbeelden ===== VAVO uitfilteren Alle leerlingen waarvan de studie eindigt op "VAVO" worden uitgesloten.
Het bestand ImportFilterMap\excl_studie.csv
wordt aangemaakt en bevat:
VAVO$
===== Brugklassen, Mavo, Havo, Vwo We willen de leerlingen van Mavo, Havo, Vwo en de brugklassen verwerken; alle leerlingen in een studie die begint met B,M,H of V moeten worden verwerkt.
Het bestand ImportFilterMap\incl_studie.csv
wordt aangemaakt en bevat:
^M
^H
^V
^B
===== H4 en H5 Voorbeeld : we willen alleen 4 en 5 Havo en verwerken; alle leerlingen in de klas die begint met '4H' of '5H' moeten worden verwerkt.
Het bestand ImportFilterMap\incl_klas.csv
bevat:
^5H
^4H
===== Geen tweede rol in Magister Voorbeeld: we willen alleen docenten wiens id niet begint met '_' of eindigt op '*'.
Het bestand ImportFilterMap\excl_docent.csv
bevat:
^_
\*$
===== Één Magister, vier scholen Voorbeeld: In het geval dat er 4 scholen gebruik maken van 1 Magisterinstantie, en alleen klassenteams voor Beroepsgericht zijn gewenst. Alle docenten, leerlingen en lesgroepen hebben Magister:Administratieve_eenheid.Omschrijving = "Beroepsgericht".
Het bestand ImportFiltermap\incl_locatie.csv
of ExportFiltermap\incl_locatie.csv
bevat:
Beroepsgericht
===== Alleen teams met " EN " Voorbeeld: alleen teams met " EN " in de naam.
Het bestand Export-Filter\incl_teamnaam.csv
bevat:
\sEN\s
Gotcha: het filter is niet hoofdlettergevoelig, dus filtert ook alle voorkomingen van " en ".
== Configuratie
Het configuratiebestand definieert een aantal parameters (anders gezegd: configuratievariabelen), die nodig zijn voor de correct werking van TeamSync.
De parameters in het configuratiebestand worden gespecificeerd als een naam-waarde-paar en hebben de volgende vorm:
<naam>=<waarde>
Aanhalingstekens zijn toegestaan maar niet nodig. Spaties in het waarde-deel zijn toegestaan. Commentaarregels zijn toegestaan, door de regel te beginnen met '#'.
IMPORTANT: Backslashes worden opgevat als escape-karakters. Om backslashes in paden op te geven, escape deze met een extra backslash, bijvoorbeeld: Importfiltermap=Submap1\\Submap2\\Submap3
. Je mag ze ook vervangen door een forward slash, bijvoorbeeld: 'Importfiltermap=Submap1/Submap2/Submap3'.
=== Parameters voor importscript De volgende parameters kunnen worden gedefinieerd in het configuratiebestand van het importscript.
[square]
Importfiltermap=waarde
: pad naar invoermap relatief t.o.v. scriptpadImportkladmap=waarde
: pad naar kladmap relatief t.o.v. scriptpadImportdatamap=waarde
: pad naar uitvoermap relatief t.o.v. scriptpadmagisterUser=waarde
: webservice-gebruikersnaammagisterPassword=waarde
: webservice-wachtwoordmagisterUrl=waarde
: webservice-URLhandhaafJPTMedewerkerCodeIsLogin=waarde
: filtert dubbele identiteiten weg voor Code<>Loginmedewerker_id=waarde
: koppelmethode voor medewerkersleerling_id=waarde
: koppelmethode voor leerlingen=== Parameters voor exportscript De volgende parameters kunnen worden gedefinieerd in het configuratiebestand van het exportscript.
Importdatamap=waarde
: pad naar importdatamap relatief t.o.v. scriptpadExportfiltermap=waarde
: pad naar exportfiltermap relatief t.o.v. scriptpadExportkladmap=waarde
: pad naar exportkladmap relatief t.o.v. scriptpadExportdatamap=waarde
: pad naar exportdatamap relatief t.o.v. scriptpadExportverzamelmap=waarde
: pad naar exportverzamelmap relatief t.o.v. scriptpadschoolid=waarde
: unieke identificatie van de schoolschoolnaam=waarde
: naam van de school in SDSteamid_prefix=waarde
: prefix voor team-ids in SDSteamnaam_prefix=waarde
: prefix voor teamnamen in SDSteamnaam_suffix=waarde
: suffix voor teamnamen in SDSmaakklassenteams=waarde
: schakelaar voor aanmaken van een team voor iedere (stam)klasbon_match_docentlesgroep_aan_leerlingklas=waarde
: schakelaar voor matchen aan tweede deel van docent-groepvaknaamdocenten_per_team_limiet=waarde
: bepaalt limiet van het aantal docenten per tema.samenvoegen=waarde
: bepaalt of uitvoer wordt toegevoegd aan de bestanden in de verzamelmap`=== Verklaring van parameters
==== Schoolid = [tekenreeks] Deze verplichte parameter bevat een unieke identificatie van de school. Je kunt hiervoor het BRIN van de school gebruiken of een andere unieke aanduiding.
==== Schoolnaam = [tekenreeks] Deze verplichte parameter bevat de weergavenaam van de school.
==== MagisterUser = [tekenreeks] Deze verplichte parameter bevat de gebruikersnaam voor toegang tot de Medius Webservice.
==== MagisterPassword = [tekenreeks] Deze verplichte parameter bevat het wachtwoord voor toegang tot de Medius Webservice.
==== MagisterUrl = [tekenreeks] Deze verplichte parameter bevat de URL voor toegang tot de Medius Webservice.
IMPORTANT: De parameters MagisterUser, MagisterPassword en MagisterUrl zijn vereist om toegang te krijgen tot de Medius Webservices. De LAS-beheerder maakt een gebruiker aan in de Webservice gebruikerslijst in Magister. De gebruikersnaam en wachtwoord moeten worden gegeven in MagisterUser
en MagisterPassword
. Deze gebruiker heeft toegangsrechten nodig tot de ADfuncties in de Medius Webservices. De MagisterUrl is de URL waar de webservices worden aangeboden. Dit bestaat uit de schoolspecifieke URL voor Schoolwerkplek met daarachter de poort en het pad , welke meestal :8800/doc is. De produktieomgeving is benaderbaar op poort 8800, de testomgeving op poort 8801 en de beta omgeving op poort 8802. De hele URL ziet er uit als https://schooldomein.swp.nl:8800/doc
.
==== Teamid_prefix = [tekenreeks] Deze parameter is verplicht. Deze tekst wordt toegevoegd aan het begin van de ID van team. Dit wordt deel van de unieke ID die elk team uniek identificeert in Microsoft 365. Een nuttige prefix identificeert zowel de school als het schooljaar en is bijvoorbeeld "JPT 1920". Spaties in de naam worden omgezet in underscores ten behoeve van het bepalen van de ObjectID.
==== Teamnaam_prefix = [tekenreeks] Deze tekst wordt toegevoegd aan het begin van de weergavenaam van elk team en wordt zichtbaar in de teamlijst van alle deelnemers.
==== Teamnaam_suffix = [tekenreeks] Deze tekst wordt toegevoegd aan het eind van de weergavenaam van elk team en wordt zichtbaar in de teamlijst van alle deelnemers.
==== Importfiltermap = [tekenreeks]
Dit specifieert de naam van de Importfiltermap, relatief ten opzichte van de locatie van het script. Bij verstek is de naam ImportFilter
.
==== Importkladmap = [tekenreeks]
Dit specificeert de mapnaam van de Importkladmap relatief ten opzichte van de locatie van het script. Bij verstek is de naam ImportKlad
.
==== Importdatamap = [tekenreeks]
Dit specificeert de mapnaam van de Importdatamap relatief ten opzichte van de locatie van het script. Bij verstek is de naam ImportData
.
==== Exportfiltermap = [tekenreeks]
Dit specifieert de naam van de Exportfiltermap, relatief ten opzichte van de locatie van het script. Bij verstek is de naam ExportFilter
.
==== Exportkladmap = [tekenreeks]
Dit specificeert de mapnaam van de Exportkladmap relatief ten opzichte van de locatie van het script. Bij verstek is de naam ExportKlad
.
==== Exportdatamap = [tekenreeks]
Dit specificeert de mapnaam van de Exportdatamap relatief ten opzichte van de locatie van het script. Bij verstek is de naam ExportData
.
==== Exportverzamelmap = [tekenreeks]
Dit specificeert de mapnaam van de Exportverzamelmap relatief ten opzichte van de locatie van het script. Bij verstek is de naam ExportVerzameld
.
==== handhaafJPTMedewerkerCodeIsLogin = {'0'|'1'}
Gebruik handhaafJPTMedewerkerCodeIsLogin=1
. Bij verstek geldt handhaafJPTMedewerkerCodeIsLogin=0
. Deze instelling dient om uitsluitend medewerkers te verwerken waarbij Magister->Code gelijk is aan Magister->loginaccount.naam. Dit filter wordt in een speciaal geval voor JPT toegepast om dubbele identiteiten weg te filteren.
==== medewerker_id = {'code'|'loginaccount'|'ad_upn'|'csv_upn'}
Deze parameter duidt aan hoe identiteiten van medewerkers in Azure AD worden gekoppeld aan Magister. Deze parameter is verplicht. Toegestane waarden zijn
code
, loginaccount
, ad_upn
, csv_upn
. Zie <
==== leerling_id = { loginaccount'|'email'}
Deze parameter duidt aan hoe identiteiten van leerlingen in Azure AD worden gekoppeld aan Magister. Deze parameter is verplicht. Toegestane waarden zijn
loginaccount
, email
. Zie <
=== bon_match_docentlesgroep_aan_leerlingklas = {'0'|'1'}
Deze parameter is een schakelaar die uit staat met 0
of aan staat met de waarde 1
. Wanneer 1
dan worden extra teams aangemaakt, waarvan de naam wordt opgebouwd uit het deel van de klasnaam na de punt in de docent-groepvakken, gevolgd door een vaknaam. Bij verstek is de waarde 0
. Deze parameter zorgt ervoor dat het aantal actieve teams in de onderbouw van Bonhoeffercollege wordt verhoogd met teams voor docentgroepvakken voor lesgroepen met namen als "B.B2" en "M2.M2a", waarvan alleen het deel achter de punt wordt gebruikt om te kunnen koppelen aan leerlingklassen.
Vanaf versie 20220718 heeft deze parameter geen functie meer.
=== docenten_per_team_limiet = [getal]
Deze parameter bevat een getal dat wordt vergeleken met het aantal docenten in elke kandidaatteam. Indien het aantal docenten hoger is dan gegeven door deze parameter, dan wordt het team overgeslagen bij het identificeren van actieve teams. Wanneer deze parameter 0
is, dan wordt deze controle op het aantal docenten niet uitgevoerd. Bij verstek is de waarde 0
.
=== employeeid_prefix Deze parameter heeft betekenis bij het opzoeken van de UserPrincipalName van een medewerker uit een CSV tabel. Het importscript zoekt een employeeid die gelijk is aan de employeeid_prefix + Magister-stamnummer. Indien gevonden, dan wordt de bijbehorende UserPrincipalName gebruikt als de unieke id van de docent in de uitvoer voor School Data Sync.
Voorbeeld: De employeeid_prefix bevat normaliter een waarde uniek voor een Magisterinstantie. In Stichting Voortgezet Onderwijs Kaagland worden alle medewerkers in Entra ID door een IAM applicatie gesynchroniseerd, waarbij het employeeId-veld wordt gevuld met een drielettercode voor de Magisterinstantie "JPT", "KEN" of "BON" gevolgd door het Magister-stamnummer. Het Importscript vindt de juiste UserPrincipalName terug door te zoeken naar de employeeid gelijk aan de employeeid_prefix "JPT" voor Jan Peter Thieme College, "KEN" voor Kaagland College en "BON" voor Bonifaciuscollege, gevolgd door het Magister-stamnummer.
=== samenvoegen = {'0'|'1'}
Deze parameter is een schakelaar met de waarde 0
of 1
die bepaalt of de uitvoer moet worden toegevoegd aan de bestanden in de verzamelmap. Door dit de waarde 0
te geven, is het mogelijk om de uitvoer in het huidige profiel te beoordelen, alvorens deze te uploaden naar School Data Sync. Wanneer de uitvoer naar wens is, kan door dit waarde 1
te geven, de uitvoer worden samengevoegd met de bestanden in de verzamelmap om aan te bieden aan School Data Sync.
== Commandoregelparameters
=== Inifile
Met de commandoregelparameter -Inifile
wordt de naam van een alternatief <
Een voorbeeld :