Der er udviklet et testværktøj, til at trække data for samtlige SOR2 registre ud af KRS, og gemmer dem lokalt på disken i CVR format. Dette gør test på data i KRS lettere at kontrollere.
Værktøjet er sat op, så mindst mulig opsætning fra brugerens side er nødvendigt. Det kan startes uden at angive nogen parametre overhovedet, og den vil hente alt data fra samtlige registre.
Java er nødvendigt at have installeret og sat op på forhånd (https://www.java.com/en/download/). Værktøjet er udviklet til at blive brugt fra commandline (cmd, powershell, terminal, eller anden implementation af denne type interaktion), men kan også dobbelklikkes; hvis Java er sat op korrekt, så vil download af data starte som normalt, men man kan ikke tydeligt se hvor langt den er nået eller om den eventuelt er afsluttet.
Følgende er en liste over alle parametre værktøjet kan tage, deres beskrivelser, samt vigtige noter:
| Kort navn | Langt navn | Standard værdi | Beskrivelse |
|---|---|---|---|
-h | --help | Printer hjælpeteksten med kort opsummering af alle parametre, og stopper eksekveringen derefter | |
-s | --stsUrl | http://test1.ekstern-test.nspop.dk:8080/sts/services/NewSecurityTokenService | URL til STS for at hente en ny adgangstoken |
-n | --systemName | TE-STS | Navn på kaldeststemet, bruges i forbindelse med at hente adgangstoken |
-c | --companyName | CAPGEMINI SOGETI DANMARK A/S | Navn på virksomheden som henter adgangstoken |
-b | --companyCvr | 25606965 | CVR for virksomheden som henter adgangstoken |
-p | --vaultPath | Sti til certifikat container, bruges til autentificering mod både STS og KRS. Skal være i JKS format. Sættes ingen, benyttes et medfølgende certifikat fra Capgemini. Konverter fra PKCS12 til JKS format kan gøres ved brug af
| |
-w | --vaultPassword | Password for den angivne certifikat container | |
-a | --certName | Navnet på det certifikat der skal bruges | |
-q | --certPassword | Password for certifikatet der skal bruges | |
-u | --skrsUrl | http://test1-cnsp.ekstern-test.nspop.dk:8080/stamdata-batch-copy-ws/service/StamdataReplication | URL til KRS |
-o | --registerOffset | 0 | Offset værktøjet skal begynde at hente data fra, 0 angiver fra begyndelsen af (alt data). Parametren kan angives på to forskellige måder, UNIX timestamp i sekunder (UTC) eller i et format der matcher "yyyy-MM-dd[[' ']['T']HH[':'mm[':'ss]]][XXX]". Formatet lægger sig op af ISO-8601, men fuld forklaring på alt i formatet kan findes her: https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html |
-m | --registerMaxRecords | 1000 | Antallet af rækker der skal returneres fra KRS ved hvert kald |
-r | --registers | Hvilke registre som skal hentes fra KRS separeret med komma. Angives ingen, hentes data for alle registre. Tilgængelige registre: sorclassifications, eanlocationcode, eanlocationcodeeditype, geolocalisation, sorentity, sorshakmap, editypes | |
-d | --destination | Sti til hvor alle genererede filer skal skrives til disken, kan være relativ eller fuld sti. Sættes ingen, bruges nuværende lokation som destination. |
Eksempel på hvordan output kan set ud, hvis help teksten printes:
> java -jar skrsclient.jar -h
Usage: <main class> [-h] [-q[=<PASSWORD>]] [-w[=<PASSWORD>]] [-a=<NAME>]
[-b=<CVR>] [-c=<NAME>] [-d=PATH] [-m=<MAXRECORDS>]
[-n=<NAME>] [-o=<OFFSET>] [-p=<PATH>] [-s=<URL>] [-u=<URL>]
[-r=<REGISTER>[,<REGISTER>...]]...
-a, --certName=<NAME> Name the certificate to use is stored under
-b, --companyCvr=<CVR> Company CVR number, used when creating an ID card
for calling the STS
-c, --companyName=<NAME> Company name, used when creating an ID card for
calling the STS
-d, --destination=PATH Destination to print all generated files to, can
be a relative or full path
-h, --help Prints help and exits
-m, --registerMaxRecords=<MAXRECORDS>
Number of entries to fetch in each call to SKRS
Default: 1000
-n, --systemName=<NAME> System name, used when creating an ID card for
calling the STS
-o, --registerOffset=<OFFSET>
Date offset for when to fetch entries from, can be
a unix timestamp or a date of format "yyyy-MM-dd
[[' ']['T']HH[':'mm[':'ss]]][XXX]"
Default: 0
-p, --vaultPath=<PATH> Certificate vault to use, must be in JKS format,
uses a default Capgemini certificate if none is
provided
-q, --certPassword[=<PASSWORD>]
Password to unlock the certificate
-r, --registers=<REGISTER>[,<REGISTER>...]
List of registers separated by comma to pull data
from, default is all registers. Available
registers: sorclassifications, eanlocationcode,
eanlocationcodeeditype, geolocalisation,
sorentity, sorshakmap, editypes
-s, --stsUrl=<URL> URL to STS
Default: http://test1.ekstern-test.nspop.dk:
8080/sts/services/NewSecurityTokenService
-u, --skrsUrl=<URL> URL to SKRS
Default: http://test1-cnsp.ekstern-test.nspop.dk:
8080/stamdata-batch-copy-ws/service/StamdataRepli
cation
-w, --vaultPassword[=<PASSWORD>]
Password to unlock the certificate vault |
Det lange og det korte navn for hver parametre kan bruges uafhængigt af hvad der ellers bliver brugt.
Den simpleste usecase, er at hente alt data for samtlige registre i test1 miljøet. Dette gøres ved at køre følgende kommando:
java -jar skrsclient.jar
Det vil give et resultat der ligner dette:

Alternativt, hvis man gerne vil hente et delta udtræk fra en bestemt dato og til nu, kan det gøres på en af følgende måder:
java -jar skrsclient.jar -o 1587986772
eller
java -jar skrsclient.jar -o 2020-04-27T13:26:12+02:00
I et lidt mere kompliseret eksempel, således kan kommandoen se ud hvis et andet certifikat benyttes til udtrækkene:
java -jar skrsclient.jar -p vault.jks -w "password123" -a "foces"
JAR filen for klienten kan hentes her:
Koden til denne kan også findes på Subversion:
https://svn.nspop.dk/svn/capgemini/SORServices/NSP/skrsclient/trunk