Wijzigingen /commits gesorteerd van oud naar nieuw
-
nieuwe parameters in teamsync.ini : maakklassenteams, maaklesgroepenteams, maakvakkenteams
-
rare voorwaarde docenten klas > "4" verwijderd
-
nieuwe filters voor excl_klas, excl_docent
-
betere detectie voor actieve teams, actieve docenten
-
schermuitvoer verfraaid
-
variabele 'vaktotaal' hernoemd naar 'ruwegroepen'
-
Herschreven en opgesplitst in drie modules (ophalen, transformeren, wegschrijven) in twee afzonderlijke scripts:
-
Ophalen-MagisterData.ps1
: ophalen -
Transformeren-Naar-SchoolDataSync.ps1
: transformeren, wegschrijven
-
-
Progressiebalken lagere updatefrequentie,
-
Uitvoerlijsten worden gesorteerd.
-
Dubbele docenten in teams worden voorkomen.
-
Bestandsnaam van INI-file kan op commandoregel worden gespecifieerd met parameter -inifile <filename>, bij verstek 'teamsync.ini'.
-
datamappen kunnen worden gespecificeerd in Ini-bestand
-
Pad naar leerling.csv ontbrak
-
Scriptnaam in venstertitel
-
Volledige vakomschrijving toegevoegd aan teamnaam
-
Alle schermuitvoer wordt gelogd.
-
Vakomschrijvingen worden gekapitaliseerd.
-
Vakomschrijvingen toegevoegd aan teamnaam waar dit herkend wordt in lesgroep of klas-vak-groep.
-
Mogelijkheid voor insluitend filteren op locatie toegevoegd
-
Ondersteuning voor gevallen waar Magister login afwijkend is van Microsoft 365 / Azure AD identiteit. Als schakelaar UseEmail=1, dan wordt voor docenten het veld "Id" gevuld uit het overeenkomstig AD-userobject attribuut UserPrincipalName in Active Directory, door AD user-attribuut employeeId te matchen aan Magister stamnummer. Als schakelaar UseEmail=1, dan wordt voor leerlingen het Magister email-veld gebruikt voor de Id.
-
toegevoegd: insluitend filter voor leerlingen op basis van locatie (Magister veld 'Administratieveeenheid.Omschrijving')
-
useemail=1 : docenten zonder overeenkomstig emailadres worden eruit gefilterd.
-
fout hersteld:
personeelemail.clixml
werd opgeslagen in '.\data_temp\' in plaats van datakladmap.
-
(Ophalen-Magisterdata.ps1) onderdelen geherstructureerd
-
(Ophalen-Magisterdata.ps1) configvariable "handhaafJPTMedewerkerCodeIsLogin" toegevoegd. Gebruik
handhaafJPTMedewerkerCodeIsLogin=1
. Bij verstek geldthandhaafJPTMedewerkerCodeIsLogin=0
. Deze instelling dient om uitsluitend medewerkers te verwerken waarbij Magister→Code gelijk is aan Magister→loginaccount.naam. Dit wordt in een speciaal geval voor JPT gedaan om dubbele identiteiten weg te filteren. -
bugfix: In sommige gevallen werden teveel medewerkers afgekeurd voor verdere verwerking wanneer code of loginaccount.name niet gelijk of ingevuld waren. Config
handhaafJPTMedewerkerCodeIsLogin=0
verhelpt dat.
-
wijziging: excl_docent en incl_docent filters filteren niet op Code, maar op Id.
-
wijziging: duidelijkere logging, maakt geen gebruik van PowerShell transcripts, maar dupliceert alleen consoleuitvoer naar log.
-
documentatie over regex uitgebreid met escape karakter, link naar documentatie, voorbeeld.
-
wijziging: configvariabelen 'teamid_prefix' en 'teamnaam_suffix' toegevoegd
-
(Transformeren-Naar-SchoolDataSync.ps1) geoptimaliseerd : ~~25% snelheidswinst
-
Exceptions worden ook gelogd naar het logbestand
-
Preciezere definitie van methoden voor het koppelen van identiteiten. Configuratievariabelen:
-
leerling_id = login
-
leerling_id = email
-
medewerker_id = login
-
medewerker_id = code
-
medewerker_id = csv_upn
-
-
De configuratievariabelen
useemail
,ADsearchscope
,ADserver
en het opzoeken van UserPrincipalName in Active Directory worden niet meer ondersteund! Gebruik in plaats hiervan een CSV-opzoektabel (ziecsv_upn
). -
resultaat 1 bij fout.
-
configvariabelen gecreeerd in globale scope.
-
schonere uitvoer en voortgang.
-
beknoptere foutmeldingen.
-
fout in documentatie hersteld omtrent configuratiebestand-parameter. Aliassen toegevoegd.
-
Herindeling Ophalen-MagisterData.ps1.
-
fouten in docs hersteld.
-
teamsync-voorbeeld.ini bijgewerkt.
-
voorbeeld Ophalen-ADMedewerkerUPN.ps1 toegevoegd.
-
voorbeeld teamsync.cmd toegevoegd.
-
README herschreven.
-
fout hersteld in documentatie bij koppelmethode medewerker_id=csv_upn
-
in CSV invoerbestand: veldnaam "employeeId"
-
configuratieparameter "csv_upn"
-
-
Naamswijziging van de scripts geeft de functie beter weer:
-
Ophalen-MagisterData.ps1 heet nu:
Import-Magister.ps1
-
Transformeren-naar-SchoolDataSync.ps1 heet nu:
Export-SchoolDataSync.ps1
-
-
De logbestanden worden geroteerd ; de oudste wordt verwijderd, de laatste 7 blijven bewaard. Documentatie is bijgewerkt.
-
De import- en exportscript hebben nu eigen mappen voor filters, klad en data. Deze opzet maakt het makkelijker om te werken in een scenario waar één Magister wordt gebruikt voor verscheidene scholen. De configuratievariabelen hebben een naam die duidelijk maakt door welk script deze worden gebruikt.
-
Importscript gebruikt: ImportFiltermap, ImportKladmap en ImportDatamap;
-
Exportscript gebruikt: ImportDatamap, ExportFiltermap, ExportKladmap en ExportDatamap.
-
-
Importscript heeft een eigen configuratiebestand, bij verstek
Import-Magister.ini
, wijzigbaar met een commandoregelparameter. -
Exportscript heeft een eigen configuratiebestand, bij verstek
Export-SchoolDataSync.ini
, wijzigbaar met een commandoregelparameter. -
LeerlingID’s en docentID’s worden altijd geconverteerd naar onderkast. School Data Sync verwerkt "SIS ID" hoofdlettergevoelig, en zo hebben wijzigingen in hoofdlettergebruik in Magister geen verlies van synchronisatie meer tot gevolg.
-
Maximum aantal logbestanden is instelbaar in het script.
-
-
Automatische logrotatie: huidig logbestand is "{scriptnaam}.log". Een instelbaar aantal backups worden bewaard met de naam "{scriptnaam}.01.log".
-
Export-SchoolDataSync : toegevoegd mogelijkheid tot filteren op teamnaam
-
Verwijderd code voor aanmaak van lijsten met niet-actieve teams.
-
Importscript: code cleanup, progressiebalktekst
-
Alle logbestanden komen in een submap "Log".
-
Importscript: Excepties in Invoke-WebClient worden nu gelogd in het logbestand.
-
Exportscript: active-teamslijst: direct importeerbaar in Excel; duidelijkere kolomnamen.
-
Exportscript: verbeterde bepaling van actieve teams,
-
Exportscript: toevoeging configuratieparameter bon_match_docentlesgroep_aan_leerlingklas ,
-
Exportscript: toevoeging configuratieparameter docenten_per_team_limiet,
-
documentatie bijgewerkt.
-
Exportscript: verbeterde bepaling van actieve teams,
-
Exportscript: Toegevoegd een speciaal geval voor Bonhoeffercollege, waar team wordt gekoppeld tussen leerling-klas en het tweede deel van docentlesgroep wanneer gesplitst op de punt ("H2.H2a" → "H2a"). Dit geeft teams voor elke combinatie van klas en vak in onderbouw. Toevoeging configuratieparameter bon_match_docentlesgroep_aan_leerlingklas voor het inschakelen van deze functionaliteit.
-
Export
-
Exportscript: toegevoegd functionaliteit om actieve teams met meer dan een opgegeven aantal docentern eruit te filteren. toevoeging configuratieparameter docenten_per_team_limiet.
-
documentatie bijgewerkt.
-
fout hersteld waardoor exceptions niet werden gelogd in het logbestand
-
Exportscript: fixed typo in test of groepvak-team bestaat. Deze bug bestond vanaf versie 20210825, veroorzaakte een afwijkende aantal teams. Commits 20210827 en 20210825 zijn teruggedraaid.
-
Importscript: TeamSync gebruikt beveiligingsprotocol TLS versie 1.2, in overeenstemming met het stoppen van ondersteuning van oudere onveilige beveiligingsprotocollen TLS 1.1 of ouder in Magister SOAP Webservices vanaf 18 okt 2021.
-
Documentatie vermeld in bekende tekortkomingen een geval waarin de onjuiste vakomschrijving in de team-weergavenaam wordt geplaatst en een workaround.
-
Foute HelpMessage gecorrigeerd
-
Exportscript: cosmetische verbetering; voorkom dubbele woorden in teamnaam, wanneer vakcode gelijk is aan vakomschrijving
-
Toegevoegd in handleiding: vereiste Windows PowerShell 5
-
Toegevoegd in handleiding: Tips en trucs: SDS Flow Connector en CSV file synchronisatie automatiseren
-
Export-SchoolDataSync.ps1: snelheidsverhoging door gebruik van arraylists. Typische uitvoertijd is nu 30 seconden.
-
Export-SchoolDataSync.ps1: teams bepaald door harde match van docentgroepvak met leerling-lesgroep/klas. Dit werkt eenvoudiger, betrouwbaarder en sneller.
-
Export-SchoolDataSync.ps1: configuratieparameter bon_match_docentlesgroep_aan_leerlingklas is overbodig geworden.
-
Export-SchoolDataSync.ps1: bugfix: uitvoer leeg, want vergat tabel teamactief aan te maken.
-
Import-Magister.ps1:
-
Leerling-CSV bevat ook groepen en vakken.
-
Docenten-CSV bevat ook groepvakken, klasvakken en docentvakken.
-
-
Export-SchoolDataSync.ps1:
-
Test op lege records die uit docenten-CliXML worden gelezen.
-
Console boodschappen
-
-
Export-SchoolDataSync.ps1:
-
wijziging: configuratievariabele 'brin' heet nu 'schoolid'
-
toevoeging: voorbeeldscript voor ophalen medewerker UPN m.b.v. Microsoft Graph PowerShell SDK.
-
-
Export-SchoolDataSync.ps1:
-
toegevoegd ondersteuning voor verscheidene scholen aan SDS v2.
-
toegevoegd configuratievariabele 'exportverzamelmap' voor toevoegen
-
-
documentatie bijgewerkt
-
hersteld typefout in changes.adoc
-
Import-Magister.ps1:
-
bij koppelmethode CSVUPN worden medewerkers in de tabel gezocht op employeeid, in plaats van stamnummer.
-
toegevoegd configuratievariabele 'employeeid_prefix'
-
-
Export-SchoolDataSync: toegevoegd configuratievariabele 'samenvoegen' = {0|1} , bepaalt of uitvoer wel/niet wordt toegevoegd in de verzamelmap.
-
README: 20% verbeterd.
-
Codeoptimalisaties: gebruikt generic lists waar mogelijk; null-toekenningen verwijderd; regions toegevoegd.
-
versie in variabele
-
Export-SchoolDataSync:
-
voert ongefilterde lijst met teams uit ter inspectie.
-
Toevoegen 'First Name' en 'Last Name' velden aan SDS CSV v1 student.csv voor hopelijk fixen van rare bug in SDS.
-
-
Export-SchoolDataSync:
-
bug verholpen waardoor de werkelijke id van studenten en teachers werd vervangen door SIS ID.
-
code: padnamen gebruiken pathsep variabele waardoor script compatibel is met andere OS’en dan Windows.
-
bug opgelost waardoor padoplossing uitgaat van huidige directory i.p.v. scriptdirectory.
-
Dit zijn geplande wijzigingen zonder een vastgesteld tijdpad (krabbels van de auteur).
-
SDS CSV V2.1 format
-
ondersteuning voor synchronisereren van verscheidene scholen naar één profiel in School Data Sync v2.
-
parameter viewonly toont resultaat.
-
controleer omgang met ongeldige tekens, https://support.microsoft.com/en-us/office/invalid-file-names-and-file-types-in-onedrive-and-sharepoint-64883a5d-228e-48f5-b3d2-eb39e07630fa?ui=en-us&rs=en-us&ad=us#invalidcharacters
-
configuratievariabele toevoegen om het toevoegen van de vakomschrijving aan de teamnaam facultatief te maken.
-
configuratievariabelen moeten in een eigen structuur worden bewaard.
-
verwijder of vervang komma’s uit teamnamen voor een betere verwerking tijdens group cleanup.