Det er mulig dette er litt utenfor Interact, men forsøker meg likevel.
Vi har et skjema der elever kan klage på eksamenskarakterer. Informasjon som kommer inn via dette skjema skal behandles på hver elevs skole og for å få til dette, er vi avhengige av at informasjonen kommer inn i en liste SharePoint. Denne løsningen benyttet vi med suksess under avviklingen av fjorårets eksamen. Slik er løsningen satt opp:
Skjema er laget på vanlig måte og er satt opp med XML avlevering til et filområde. XML’en er definert i henhold til brukerveiledningen og inkluderer de opplysningene vi har behov for.
På SharePoint-server har vi laget et PowerShell skript som leser XML-filer og dytter innholdet inn i SharePoint. En forenklet versjon av skriptet følger:
xmlFilsti="<filsti til folder med XML-filer>"
$webUrl="<URL til der lista ligger>"
$listeNavn="<Navn på lista>"
$web = Get-SPWeb -Identity $webUrl
$liste = $web.Lists[$listeNavn]
$xmlFiler = Get-ChildItem $xmlFilsti -filter *.xml #leser inn XML-filer
foreach ($xmlFil in $xmlFiler) {
[xml]$xmlDok = $xmlFil | Get-Content -Encoding "UTF8"
$nyRad = $destinasjonsListe.AddItem() #oppretter en ny rad i lista
$nyRad['<attributt i lista>'] = $xmlFil.<node>
#slik mappes alle ønskede felt opp
$nyRad.Update() #lagrer raden
#deretter flytter vi XML-fila til en annen folder slik at denne ikke leses på nytt
}
Skriptet kjøres regelmessig for å fange opp nye XML-filer som kommer fra skjema. Hos oss er det lagt inn en del validering og logging av hendelsene for å fange opp og avverge feil.
Saksbehandlere på skolene kan deretter fullføre jobben vha SharePointlista.