bilag 5 dokumentation af kørende løsning...d +45 4348 6977 • m+45 2723 6977 • e...
TRANSCRIPT
D +45 4348 6977 • M+45 2723 6977 • E [email protected] • Bilag 5 Dokumentation af kørende løsning.docx
Grontmij A/S Granskoven 8 2600 Glostrup Danmark T +45 4348 6060 F +45 4396 4414 www.grontmij.dk CVR-nr. 48233511
Teknisk notat
Natur2000 plan DB Systembeskrivelse
3. december 2013 Projekt: 50.1819.28
Udarbejdet : Jørgen Brix, Kim Vagn Jacobsen, Kim Jacobsen
Kontrolleret : AHN
Vedlagt :
Kopi til :
Side 2
m:\naturplaner\data\datagruppen\natura2000 db\materiale offentliggørelse (til hjemmesiden)\kravspecifikation\bilag 5 dokumentation af kørende løsning.docx Grontmij A/S
1 INDHOLDSFORTEGNELSE
1 Indholdsfortegnelse 2
3 Indledning 3
4 Systemarkitektur 3
5 Natura2000 web applikationen 4
5.1 Eksterne referencer og afhængigheder 4
5.2 Applikation opbygning 4
5.3 Opbygning af aspx-sider 5
5.4 Udseende og styling 5
5.5 Clientside-kode / JavaScript 5
5.6 Serverside-kode / C# 5
6 Integrationer 6
6.1 AD – integration 6
7 Databasen 6
8 Revisionslog 6
Side 3
m:\naturplaner\data\datagruppen\natura2000 db\materiale offentliggørelse (til hjemmesiden)\kravspecifikation\bilag 5 dokumentation af kørende løsning.docx Grontmij A/S
3 INDLEDNING
Nærværende dokument giver en overordnet beskrivelse af systemets op-bygning.
4 SYSTEMARKITEKTUR
3. parts komponenter
DBAPI
Database
Brugergrænseflade
Klient (Browser)
DB-redigeringsmotor Rapport generering RettighedsstyringImport
NST - AD
Zed-GraphDeveloper Express
Import komponenten er defineret i namespacet ”Business.Import”. For hver type import, komponent der opfylder IImport interfacet. Dette interface inde-holder bla. en liste af IImportRow, der indeholder de data der indlæses fra import filen. DB-redigeringsmotoren er defineret i namespacet Business. Dette na-mespace indeholde klasser til redigering af alle tabeller i databasen, herun-der data for Natura 2000 områderne, samt lookup tabeller. Rapport generering er defineret i Business.RapportGenerering namespacet. Der findes følgende public funktioner, der kaldes fra brugergræmsefladen:
• GenererRapport.GenerateN2000Report: Generere en rapport for et natura 2000 område.
• FunktionRapport.GenerateFunktionReport: Generere en rapport, for én funktion, for alle natura 2000 områder.
Generering af grafer sker vha. open source komponenten Zed-graph. Generering af word dokumenter sker vha. en Developer Express (version 13.1) komponenten RichEditDocumentServer.
Side 4
m:\naturplaner\data\datagruppen\natura2000 db\materiale offentliggørelse (til hjemmesiden)\kravspecifikation\bilag 5 dokumentation af kørende løsning.docx Grontmij A/S
Rettigheds styringen ligger i namespacet Business.Sikkerhed, og består af en klasse til at koble til AD’et, samt en klasse til at hente brugerrettigheder.
5 NATURA2000 WEB APPLIKATIONEN
Natura2000 web applikationen er en standard klassisk ASP.NET web appli-kation. Applikationen bruges til at redigere og udtrække data fra Natura2000 databasen. Applikationen bruger C# som serverside sprog og JavaScript som clientside sprog. Applikationen er skrevet med Internet Explorer 9 som laveste fællenævner og vil ikke virke i ældre browserversioner. Om det virker i andre browserpro-dukter som Firefox, Safari eller Opera er en mulighed, men dette er ikke te-stet.
5.1 Eksterne referencer og afhængigheder
Natura2000 web applikationen bruger projektet ”Business” til al håndtering af data, der ikke har decideret noget med brugerfladen at gøre såsom data-basehåndtering og rapportgenerering. ”Business” projektet er et internt udviklet projekt skrevet udelukkende til Na-tura2000 applikationen. ”Business” projektet er ligeledes skrevet i C#. ”Business” projektet benytter sig af Grontmijs generiske databasehåndte-ringsværktøj ”CB”.
5.2 Applikation opbygning
Natura2000 web applikationen er en klassisk ASP.NET applikation, der er opbygget med en enkelt masterpage og nogle nedarvede aspx-sider. Siderne i applikationen kan inddeles således:
Side 5
m:\naturplaner\data\datagruppen\natura2000 db\materiale offentliggørelse (til hjemmesiden)\kravspecifikation\bilag 5 dokumentation af kørende løsning.docx Grontmij A/S
5.3 Opbygning af aspx-sider
Mange af hovedsiderne i applikationen er opbygget af underkomponenter. Disse komponenter er i virkeligheden også bare en standard aspx-side, men de loades clientside vha. teknikker i jQuery, så brugeren ikke opdager dette. For nemheds skyld refereres disse derfor som ”komponenter”.
5.4 Udseende og styling
Natura2000 web applikationen er forsøgt holdt i et simpelt udseende uden for mange dikkedarer. Farveskemaet er holdt i grå nuancer med grønne highlight farver på knapper og der, hvor brugeren har gjort et aktivt valg. Det-te er styret af grundlæggende style sheets (css filer). Alle dialogbokse, tabpanels og togglepanels er baseret på jQuery-UI kompo-nenter, og der er som sådan ikke ændret udseende på disse. Alle tabeller er baseret på jQuery.datatables, og der er som sådan ikke æn-dret på standard udseendet for disse. Stylesheets (css-filer) er opbygget hierakisk, og de er alle inkluderet som det første i masterpagen.
5.5 Clientside-kode / JavaScript
Alle sider holder på et eller flere JavaScript moduler, som er skrevet specifikt til de enkelte sider. Derudover er der skrevet nogle generiske moduler, og der inkluderes også de obligatoriske moduler med jQuery og tinymce. I projektet er inkluderet følgende open source JavaScript moduler, som ikke er skrevet in-house: • jQuery 2.0.2 • jQuery-UI 1.10.3 • jQuery.dataTables • jQuery.togglepanel • jQuery.slimscroll (bruges ikke pt) • spin.min • tinymce Derudover bruges standard PageMethods til at kalde backendkode fra Java-Script.
5.6 Serverside-kode / C#
Serverside-kode til alle sider er skrevet i C#. Generelt er der ikke ret meget klassisk ASP.NET kode serverside. Koden består mest af specialkode for rettigheder, udfyldning af dropdown bokse og kald til initialisering af Java-Script. Der er så til gengæld en masse WebMethods på hver side, der kan kaldes fra JavaScript modulerne. Bemærk at WebMethods desværre ikke kan defi-neres generelt i masterpagen, men skal defineres i alle aspx-siderne. Serverside koden benytter sig af Session variable til at huske alle de forskel-lige states, der er valgt af brugeren. Koden til alle session variable er pakket ind i objekter, der passer specifikt til hver side.
Side 6
m:\naturplaner\data\datagruppen\natura2000 db\materiale offentliggørelse (til hjemmesiden)\kravspecifikation\bilag 5 dokumentation af kørende løsning.docx Grontmij A/S
6 INTEGRATIONER
6.1 AD – integration
Brugerens login hentes fra AD’et, ved at læse LOGON_USER fra de server variable der sendes sammen med http requested.Hvilke server variable der modtages kan på siden ”sys/ServerVars.aspx” Hvis login’et ikke allerede findes i tabellen Bruger, oprettes det i tabellen med BrugerRolleId=1 (ReadOnly). Der findes følgende brugerroller (defineret i tabellen BrugerRolle): 0: IngenAdgang 1: ReadOnly 2: Redaktør 3: Admin Når en ny bruger skal tilkobles systemet, skal der ske følgende:
1. Brugeren går ind på hjemmesiden, der automatisk tilføjet brugeren i tabellen Bruger
2. Hvis brugeren skal have andet end læserettigheder, skal en database ansvarlig tilrette BrugerRolleId i tabellen Bruger (efter listen ovenfor).
7 DATABASEN
Databasen er udviklet og implementeret i SQLServer 2008. Datamodellen kan ses i bilag: ”Datamodel.rtf”
8 REVISIONSLOG
Dato Version Beskrivelse Initialer 3/13/2013 1.0 Overordnet systembeskrivelse udarbejdet
med beskrivelse af sammenhænge, over-ordnede komponenter og integrationer
KIJ
D +45 4348 6977 • M+45 2723 6977 • E [email protected] • Bilag 5 Dokumentation af kørende løsning.docx
Grontmij A/S Granskoven 8 2600 Glostrup Danmark T +45 4348 6060 F +45 4396 4414 www.grontmij.dk CVR-nr. 48233511
DATAMODEL
Side 8
m:\naturplaner\data\datagruppen\natura2000 db\materiale offentliggørelse (til hjemmesiden)\kravspecifikation\bilag 5 dokumentation af kørende løsning.docx Grontmij A/S
Natura2000O + Naturbeskyttelse
Natura2000Omraade
Natura2000OmraadeIdOmraadeNrNavn
intintvarchar(255)
<pk> identitynot nullnot null
Natura2000Planperiode
Natura2000PlanperiodeIdPlanperiodeIdNatura2000OmraadeIdArealBemaerkningNatura2000StatusId
intintintintntextint
<pk><fk1><fk2>
<fk3>
identitynot nullnot nullnullnullnot null
Natura2000Status
Natura2000StatusIdNavn
intvarchar(255)
<pk> identitynot null
Planperiode
PlanperiodeIdStartAarSlutAarLaast
intintintbit
<pk> identitynot nullnot nullnot null
NaturbeskyttelsesOmraade
NaturbeskyttelsesOmraadeIdNaturbeskyttelsesOmraadeTypeIdOmraadeNrNavn
intintintvarchar(255)
<pk><fk>
identitynot nullnot nullnot null
NaturbeskyttelsesOmraadeType
NaturbeskyttelsesOmraadeTypeIdNavn
intvarchar(255)
<pk> identitynull
NaturbeskyttelsesOmraadeNatura2000
NaturbeskyttelsesOmraadeNatura2000IdNatura2000PlanperiodeIdNaturbeskyttelsesOmraadeIdAreal
intintintint
<pk><fk1><fk2>
identitynot nullnot nullnull
Side 9
m:\naturplaner\data\datagruppen\natura2000 db\materiale offentliggørelse (til hjemmesiden)\kravspecifikation\bilag 5 dokumentation af kørende løsning.docx Grontmij A/S
Udpegningsgrundlag
Trusel + Indsats + Virkemiddel
Udpegningsgrundlag
UdpegningsgrundlagIdNaturbeskyttelsesOmraadeNatura2000IdHabitatNaturTypeIdArtIdFugleartIdBevaringsstatusIdArtikel4IdYnglendeIdTraekkendeIdArealArealFredskovKonkretMaalPrioriteretAreal
intintintintintintintintintdecimal(18,2)decimal(18,2)varchar(1024)decimal(18,2)
<pk><fk8><fk1><fk2><fk3><fk4><fk5><fk6><fk7>
identitynot nullnullnullnullnullnullnullnullnullnullnullnull
HabitatNaturType
HabitatNaturTypeIdHabitatKategoriIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
HabitatKategori
HabitatKategoriIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
Fugleart
FugleartIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
Art
ArtIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
Bevaringsstatus
BevaringsstatusIdPlanperiodeIdKodeNavnLangsigtetMaal
intintvarchar(100)varchar(255)varchar(255)
<pk><fk>
identitynot nullnullnullnull
Artikel4
Artikel4IdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
Kriterie
KriterieIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
Ynglende
YnglendeIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
Traekkende
TraekkendeIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
Planperiode
PlanperiodeIdStartAarSlutAarLaast
intintintbit
<pk> identitynot nullnot nullnot null
NaturbeskyttelsesOmraadeNatura2000
NaturbeskyttelsesOmraadeNatura2000IdNatura2000PlanperiodeIdNaturbeskyttelsesOmraadeIdAreal
intintintint
<pk><fk1><fk2>
identitynot nullnot nullnull
UdpegningsgrundlagKriterie
UdpegningsgrundlagKriterieIdUdpegningsgrundlagIdKriterieTypeIdKriterieId
intintintint
<pk><fk1><fk2><fk3>
identitynot nullnot nullnot null
KriterieType
KriterieTypeIdKodeNavn
intvarchar(100)carchar(255)
<pk> identitynullnull
Side 10
m:\naturplaner\data\datagruppen\natura2000 db\materiale offentliggørelse (til hjemmesiden)\kravspecifikation\bilag 5 dokumentation af kørende løsning.docx Grontmij A/S
Udpegningsgrundlag
UdpegningsgrundlagIdNaturbeskyttelsesOmraadeNatura2000IdHabitatNaturTypeIdArtIdFugleartIdBevaringsstatusIdArtikel4IdYnglendeIdTraekkendeIdArealArealFredskovKonkretMaalPrioriteretAreal
intintintintintintintintintdecimal(18,2)decimal(18,2)varchar(1024)decimal(18,2)
<pk><fk8><fk1><fk2><fk3><fk4><fk5><fk6><fk7>
identitynot nullnullnullnullnullnullnullnullnullnullnullnull
Trussel
TrusselIdUdpegningsgrundlagIdTrusselTypeIdBemaerkning
intintintntext
<pk><fk2><fk1>
identitynot nullnullnull
TrusselKategori
TrusselKategoriIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
TrusselType
TrusselTypeIdTrusselKategoriIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
Indsats
IndsatsIdTrusselIdIndsatsTypeIdSigtelinieId
intintintint
<pk><fk1><fk2><fk3>
identitynot nullnullnull
IndsatsType
IndsatsTypeIdTrusselTypeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
Sigtelinie
SigtelinieIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
Virkemiddel
VirkemiddelIdIndsatsIdVirkemiddelTypeIdAntalEnhedPris
intintintintint
<pk><fk1><fk2>
identitynot nullnullnullnull
Planperiode
PlanperiodeIdStartAarSlutAarLaast
intintintbit
<pk> identitynot nullnot nullnot null
VirkemiddelType
VirkemiddelTypeIdIndsatsTypeIdEnhedIdKodeNavnLoesesAfEnhedPris
intintintvarchar(100)varchar(255)varchar(255)int
<pk><fk1><fk2>
identitynot nullnullnullnullnullnull
Enhed
EnhedIdNavn
intvarchar(100)
<pk> identitynull
Side 11
m:\naturplaner\data\datagruppen\natura2000 db\materiale offentliggørelse (til hjemmesiden)\kravspecifikation\bilag 5 dokumentation af kørende løsning.docx Grontmij A/S
Forekomster
Udpegningsgrundlag
UdpegningsgrundlagIdNaturbeskyttelsesOmraadeNatura2000IdHabitatNaturTypeIdArtIdFugleartIdBevaringsstatusIdArtikel4IdYnglendeIdTraekkendeIdArealArealFredskovKonkretMaalPrioriteretAreal
intintintintintintintintintdecimal(18,2)decimal(18,2)varchar(1024)decimal(18,2)
<pk><fk8><fk1><fk2><fk3><fk4><fk5><fk6><fk7>
HabitatNaturtypeForekomst
HabitatNaturtypeForekomstIdUdpegningsgrundlagIdBiogeografiskRegionIdKortlaegningsperiodeStrukturKlasseArtsKlasseNaturtilstandSkovtilstandArealTilgroningMedMiddelhoejeUrterTilgroningMedHoejeUrterTilgroningMedVedplanterInvasiveArterUhensigtsmaessigHydrologiGraesning_hoeslet_slaaningDirektePaavirkning
intintintvarchar(255)varchar(255)varchar(255)varchar(255)decimal(18,2)varchar(255)varchar(255)varchar(255)varchar(255)varchar(255)varchar(255)varchar(255)
<pk><fk1><fk2>
ArtForekomst
ArtForekomstIdUdpegningsgrundlagIdStednavnUTM_XUTM_YForekomst
intintvarchar(255)varchar(255)varchar(255)varchar(255)
<pk><fk>
FugleartForekomst
FugleartForekomstIdUdpegningsgrundlagIdStednavnUTM_XUTM_YForekomst
intintvarchar(255)varchar(255)varchar(255)varchar(255)
<pk><fk>
HabitatNaturType
HabitatNaturTypeIdHabitatKategoriIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
HabitatKategori
HabitatKategoriIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
BiogeografiskRegion
BiogeografiskRegionIdKodeNavn
intvarchar(100)varchar(255)
<pk>
Art
ArtIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
Fugleart
FugleartIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
Ynglefugle
YnglefugleIdUdpegningsgrundlagIdAarstalAntal
intintint<Undefined>
<pk><fk>
Traekfugle
TraekfugleIdUdpegningsgrundlagIdAarstalAntal
intintint<Undefined>
<pk><fk>
HabitatnaturtypePerioder
HabitatnaturtypePerioderIdUdpegningsgrundlagIdPeriodeArealNaturtilstandsklasse
numericintvarchar(255)decimal(18,2)varchar(255)
<pk><fk>
Side 12
m:\naturplaner\data\datagruppen\natura2000 db\materiale offentliggørelse (til hjemmesiden)\kravspecifikation\bilag 5 dokumentation af kørende løsning.docx Grontmij A/S
Prioritering
Planperiode
PlanperiodeIdStartAarSlutAarLaast
intintintbit
<pk> identitynot nullnot nullnot null
PrioriteringArt
PrioriteringArtIdArtIdPrioritetIdBiogeografiskRegionId
intintintint
<pk><fk1><fk2><fk3>
identitynot nullnot nullnot null
PrioriteringFugleart
PrioriteringFugleartIdFugleartIdPrioritetIdBiogeografiskRegionId
intintintint
<pk><fk1><fk2><fk3>
identitynot nullnot nullnot null
PrioriteringHabitatNaturType
PrioriteringHabitatNaturTypeIdHabitatNaturTypeIdPrioritetIdBiogeografiskRegionId
intintintint
<pk><fk1><fk2><fk3>
identitynot nullnot nullnot null
Prioritet
PrioritetIdPlanperiodeIdKodeNavnIndeks
intintvarchar(100)varchar(255)int
<pk><fk>
identitynot nullnullnullnull
BiogeografiskRegion
BiogeografiskRegionIdKodeNavn
intvarchar(100)varchar(255)
<pk> identitynullnull
Fugleart
FugleartIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
HabitatNaturType
HabitatNaturTypeIdHabitatKategoriIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
HabitatKategori
HabitatKategoriIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
Art
ArtIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
identitynot nullnullnull
Side 13
m:\naturplaner\data\datagruppen\natura2000 db\materiale offentliggørelse (til hjemmesiden)\kravspecifikation\bilag 5 dokumentation af kørende løsning.docx Grontmij A/S
Tekst + billede
Planperiode
PlanperiodeIdStartAarSlutAarLaast
intintintbit
<pk>
RapportType
RapportTypeIdNavn
intvarchar(250)
<pk>
Funktion
FunktionIdFunktionTypeIdFunktionGruppeIdKodeNavn
intintintvarchar(10)varchar(250)
<pk><fk1><fk2>
FunktionType
FunktionTypeIdNavn
intvarchar(100)
<pk>
FunktionGruppe
FunktionGruppeIdNavn
intvarchar(100)
<pk>
TekstType
TekstTypeIdNavn
intvarchar(250)
<pk>
FunktionTekst
FunktionTekstIdRapportTypeIdFunktionIdTekstTypeIdTekst
intintintintntext
<pk><fk2><fk1><fk3>
FunktionBillede
FunktionBilledeIdFunktionIdRapportTypeIdFilnavnTekst
intintintvarchar(255)varchar(255)
<pk><fk1><fk2>
TekstPlanperiode
TekstPlanperiodeIdFunktionTekstIdPlanperiodeId
intintint
<pk><fk1><fk2>
BilledePlanperiode
BilledePlanperiodeIdFunktionBilledeIdPlanperiodeId
intintint
<pk><fk1><fk2>
TekstNatura2000
TekstNatura2000IdFunktionTekstIdNatura2000PlanperiodeId
intintint
<pk><fk1><fk2>
Natura2000Planperiode
Natura2000PlanperiodeIdPlanperiodeIdNatura2000OmraadeIdArealBemaerkningNatura2000StatusId
intintintintntextint
<pk><fk1><fk2>
<fk3>BilledeNatura2000
BilledeNatura2000IdFunktionBilledeIdNatura2000PlanperiodeId
intintint
<pk><fk1><fk2>
TekstUdpegningsgrundlag
TekstUdpegningsgrundlagIdFunktionTekstIdUdpegningsgrundlagId
intintint
<pk><fk1><fk2>
BilledeUdpegningsgrundlag
FunktionBilledeIdUdpegningsgrundlagIdBilledeUdpegningsgrundlagId
intintint
<fk1><fk2>
Udpegningsgrundlag
UdpegningsgrundlagIdNaturbeskyttelsesOmraadeNatura2000IdHabitatNaturTypeIdArtIdFugleartIdBevaringsstatusIdArtikel4IdYnglendeIdTraekkendeIdArealArealFredskovKonkretMaalPrioriteretAreal
intintintintintintintintintdecimal(18,2)decimal(18,2)varchar(1024)decimal(18,2)
<pk><fk8><fk1><fk2><fk3><fk4><fk5><fk6><fk7>
TekstArtNatur
TekstArtNaturIdFunktionTekstIdHabitatNaturTypeIdArtIdFugleartId
numericintintintint
<pk><fk1><fk2><fk3><fk4>
BilledeArtNatur
BilledeArtNaturIdFunktionBilledeIdHabitatNaturTypeIdArtIdFugleartId
intintintintint
<pk><fk1><fk2><fk3><fk4>
Art
ArtIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
HabitatNaturType
HabitatNaturTypeIdHabitatKategoriIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
Fugleart
FugleartIdPlanperiodeIdKodeNavn
intintvarchar(100)varchar(255)
<pk><fk>
Side 14
m:\naturplaner\data\datagruppen\natura2000 db\materiale offentliggørelse (til hjemmesiden)\kravspecifikation\bilag 5 dokumentation af kørende løsning.docx Grontmij A/S
Rapportgenerering
Funktion
FunktionIdFunktionTypeIdFunktionGruppeIdKodeNavn
intintintvarchar(10)varchar(250)
<pk><fk1><fk2>RapportType
RapportTypeIdNavn
intvarchar(250)
<pk>
RapportGenerering
RapportGenereringIdFunktionIdRapportTypeIdSorteringHeaderNiveau
intintintintint
<pk><fk1><fk2>