Den här webbplatsen använder kakor (cookies) för att spåra trafik som delas med Google Analytics och andra parter. Dessa parter kan kombinera denna information med den som de samlat in genom din användning av deras tjänster. Du samtycker till våra kakor genom att fortsätta använda denna webbplats.

Archives

v2.59

I denna omgång har det inte blivit så många förändringar. Ett förändrat sätt att arbeta med register som har hierarkiska formulär (parent/child) är kanske den mesta “synliga”. Numera visas “knappraden” längst ned i ett formulär alltid, det vill säga den rad som innehåller val av under­formulär och knappen “Lägg till”. I hopfällt läge så döljs dock “Spara”-knappen för att inte förvirra. Nytt är också att när man öppnar ett formulär så visas alla formulär hopfällda. Tidigare visades alltid det första utfällt. På så sätt blir det en bättre översikt och det går snabbare att lägga till ett underformulär. Nu är det endast ny huvudregistrering samt registreringar som inte kan ha underformlär som visas utfällda förvalt.

En kontroll av personnummer görs nu innan anrop till tjänsten för Mobilt BankID. Dessutom så formateras inmatat personnummer så att streck tas bort och sekel läggs till ifall de har, respektive inte har, skrivits in.

Fixar

Vid direktadressering av ett delformulär så öppnas nu detta. Tidigare så visades endast huvudformuläret.

Ibland så markerades inte rätt händelse i händelsepanelen efter ett formlär sparats. Detta är åtgärdat.

När HSAID hämtas upp (via CurrentHSAID) testas först om det finns ett certifikat sedan om det finns en cookie med sessions-id. Tidigare var det tvärtom. Dessutom så returneras en tom kontext om användarinformationen på serversidan saknas eller är felaktig. Tidigare så försökte HSAID hämtas via certifikat, vilket var ett direkt fel även om det är tveksamt att det skulle gett upphov till problem.

Registercentrum Västra Götaland

v2.58

Nytt stöd för inloggning via Mobilt BankID är på plats. Den gamla versionen som använde sig av BGCs egna tjänst, som mest var till för få till inloggning i äldre applikationer, där möjlighet att ändra i källkoden var begränsad. Nu går vi istället direkt mot Finansiell ID Teknik AB BID (förkortad BID i Stratum) och deras tjänst, där det går att implementera det hela utan att behöva omdirigera till BGCs webbplats. Det vill säga mer så som det fungerar på banker och (vissa) myndigheter. Avtalet med BGC är ännu inte klart så innan dess gåt det inte att använda tjänsten.

I samband med ovanstående arbete tillkom ett mer generiskt stöd för SOAP-tjänster som kan vara användbart om vi skall koppla upp oss mot fler tjänster framöver.

Registrerings-api:et har nu stöd för flera filter med OCH-villkor mellan (ELLER finns just nu inte). Dessa skrivs då på formen:

1
/api/registrations/form/1001?query=x eq 3,y eq 12

Den generiska widgeten för Registreringsöversikt har utökats med dels en “tidslinje” som ger möjlighet att filtrera i tid (utgår från ModifiedAt), dels en sammanställning av antal registreringar och rader i sidfoten på tabellen.

I widgets finns nu stöd för “mallsträngar”. Om man till exempel vill skicka med en parameter “profile” när man laddar in en widget, till exempel:

1
<script src="/widgets/rc/SubjectOverview?profile=ABC"></script>

så kan man “tagga” upp koden med {{profile}} och vid inladdning kommer denna “mallsträng” att ersättas med värdet (i detta exempel “ABC”). Detta är användbart om man till exempel vill kunna sätta initialvärden vid inladdning av en widget för att på så sätt förändra beteendet hos denna direkt vid start. Notera att något liknande också går att åstadkomma direkt i en widget genom att läsa av query-parametrar i url:en, dock är fördelen här att det görs då koden läses upp via en script-tagg.

Nu finns ett enkelt stöd att visa globala, såväl som registerspecifika systemmeddelanden. Typiskt användningsfall för de globala är vid servicehelg och andra planerade avbrott. Kanske borde vi också använda oss av dessa innan varje deploy för att informera våra användare om att en ny version av Stratum kommer att läggas ut? Snyggt vore också att länka till en informationssida som beskriver de ändringar som är förestående. Registerspecifika meddelanden kan till exempel användas till att informera om förestående variabelförändringar.

Fixar

I registrerings-api:ets filter-stöd kan man använda en “in”-operator som innehåller en uppräkning av literaler. Det räcker att ett värde matchas av någon av dessa literaler för att villkoret skall vara uppfyllt. I detta stöd fanns en bugg som gjorde att man endast kunde använda tal, då strängar inte blev innesluta i citationstecken. Detta är nu åtgärdat.

Då Stratums webbplats laddas in visas numera en “spinner” (roterande bild). Om kontakt med databasen saknas eller annat större fel inträffar så visas nu ett vettigt felmeddelande. Detta för att användaren skall vara lite mer orienterad i vad som händer.

En intern fix av PurgeOrphans som gjorde att vissa element inte togs bort på IE8 (frelu).

Registercentrum Västra Götaland

v2.56

Mesta tiden under veckan har handlat om vidareutveckling av R-servern och dess stöd i Stratum. Vi har intruducerat en pool av Rserve-instanser på RC-R och låter Stratum, som i detta fallet är klient, slumpa fram en instans och om den är ledig använda denna. Om den är upptagen (inte svarar på anrop inom 100 ms) så testas nästa instans. Om alla är upptagna så slumpas en fram och begäran läggs av systemet i kö för bearbetning. I dagsläget används fem instanser och vi kan skala upp till nio utan att allokera fler portar.

Ett annat intressant spår är att använda GPU för intensiva beräkningar men då behöver vi flytta RC-R till en annan värd (som har grafikkort). Ett annat spår är att använda SSD-disk till ofta efterfrågade filer, vilket i vårt fall skulle vara registrens datalager. En löpande dialog med ramna och kengu hålls.

Fixar

Det har funnits störningar i inloggningen på DEMO vilket beror på det stöd som tillkom i samband med inloggning via Mobilt BankID. Detta är nu åtgärdat. Vad vi vet har det inte gett problem på PROD.

Om en uppgift både var obligatorisk och hade gränsvärdesvarning fick man fel i registreringsapplikationen. Åtgärdat.

Ett generande fel, introducerat av undertecknad (tack brygu för upptäckt) i valideringen av e-postadresser är nu åtgärdad. Punkter och streck kunde inte användas i namndelen av e-postadressen.

Registercentrum Västra Götaland

v2.55

Buggen kring multipla gränsvärdesvarningar, som gjorde att registreringsapplikationen “hängde sig” efter första varningen, är nu åtgärdad. Numera används istället gul bakgrund med gul ram, liknande den för felmarkeringen, för att indikera varning, vilket blir tydligare.

Ny domän "E-post" (1025) har tillkommit. Validering görs automatiskt av Stratum nu, både på klient och server. Valideringen är något mer strikt än vad som anges i RFC822 på så sätt att svenska tecken inte tillåts samt att minustecken inte får inleda en e-postadress (vilket är tillåtet enligt standarden). Detta för att minska risken för felregistreringar.

Inloggning via Mobilt BankID är på plats men i dagsläget saknar vi avtal med Bankgirocentralen (BGC), så funktionen är tillfälligt urkopplad. Lösningen är inte optimal då vi är tvingade till att göra en omdirigering till BGCs egna sidor och sedan hoppa tillbaka till Stratum. Dock har de öppnat för en annan lösning - att gå direkt mot BankID:s api, vilket passar oss bra då vi (i dagsläget) bara är intresserade av Mobilt BankID och inte Telia e-legitimation, Nordea BankID, med flera.

Tekniskt support för elektroniska patientutdrag finns nu. Eftersom vi just nu inte kan autentisera patienter (vilket senare kan göras med Mobilt BankID), så är det ingen som kan komma åt dessa :-).

I variabelförteckningar finns nu även beskrivning av Landsting och Vårdnivå efter beskrivning av Vårdenhet. Sedan tidigare finns stöd för flera format för dessa förteckningar, bland annat HTML som är mer tillgängligt för användare i största allmänhet (se till exempel på BRIMPs variabelförteckning i HTML-format).

Om ett register inte har någon patientbunden data (QREGPV, NARA, SID), så inkluderas inte längre en rad för “SubjectKey” i variabelbeskrivningen.

Av mer teknisk karaktär …

Det finns en ny typ av Reader för Store, utöver “objecttoarray”. Denna heter “frequencyreader” och kan användas när man vill omvandla en vektor med antal till andelar. Användbart i diagramsammanhang (frelu).

Serialiseringen av Sexp från R-servern är omskriven för att bli mer generisk. Nu finns stöd för “list” såväl som “data.frame”, där till exempel en “list” kan ha olika dimensioner i sina respketive vektorer. Svårt att veta idag vad alla framtida behov kommer vara så vi behöver kunna ta emot olika slags respons från R-servern.

Exekvering av R-skript är nu underordnat Subversion och när skript skall exekveras hämtas det inte från Subversion utan från det Subversion repo som finns uppsatt på RC-R. På klienterna kan till exempel Tortoise användas (shell extension till utforskaren) för att jobba med skriptutveckling. Bland annat Henrik Fryk på Statistik arbetar på detta sätt med resultat till LVR (brygu).

I och med stödet för Mobilt BankID finns ett nytt api (/api/authenticate) med några funktioner som behövs för SAML-autentisering generellt. Jag kommer satsa på att beskriva våra api:er inom kort då det funnits visst intresse från externa brukare på sistone.

I Registration-api:et är stödet för filtrering omgjort. Nu går det att ha flera villkor (alltid AND emellan dessa, OR finns inte). För att minska attackytan, avseende injection-problem framför allt, så används en begränsad syntax för uttrycken. Frågan ställs också direkt mot databasen, vilket går snabbare. Tidigare så hämtades all data och filtrerades på serversidan. Exempel:

1
/api/registrations/form/1077?query=Indicator eq 1002,YearOfQuarter gt 2010

Testa

Registercentrum Västra Götaland

v2.54

Problem med att vissa BOA-användare endast kan utföra initial registrering löst. Innebär att grön ruta om “Formuläret sparades” har tagits bort.

Exekvering av kontrollskript görs nu korrekt även då en variabel förekommer på mer än ett ställe (LVRs nya formulär).

Nedladdning av formulärdata inklusive underregistreringar finns nu. Lägg till deep=true.

Support för 2-dimensionella data från R-server. Ny JSONReader för att enklare arbeta med dessa data i Stores (gäller även aggregat).

Domän Tid nu begränsad till endast HH:MM (lagras internt med sekunder). Bugg fixad när registrering visas direkt efter spara och värde formaterades fel.

Bugg i månadsstatistik (Översikts-api) upptäckt och fixad.

Registercentrum Västra Götaland