kurs - presentasjon - altinnett.brreg.no kurs - tjenesteutviklingsløsningen... · struktur...
TRANSCRIPT
Innhold
Oversikt og struktur
Aktører og prosess
Tilgang og innlogging
Lage tjeneste og utgave
Avansert skjemautvikling
Migrer utgave
Slette tjeneste og utgave
Administrere kodelister
Administrasjon av grupper, brukere og rettigheter
2
Oversikt
Tjenesteutviklingsløsningen er sammensatt av flere deler og standardprodukter:
SharePoint 2007
InfoPath 2007
Active Directory Users and Computers
Visual Studio 2008
Tilgangen til disse produktene vil avhenge av hvilken rolle tjenesteutvikler har
4
Struktur
5
Startside
Tjenesteeier Tjenesteeier Tjenesteeier
Tjeneste Tjeneste Tjeneste Tjeneste
Tjenesteutgave Tjenesteutgave Tjenesteutgave Tjenesteutgave
En tjenesteeier kan ha mange tjenester
En tjeneste kan kun tilhøre en tjenesteeier
En tjeneste kan ha mange tjenesteutgaver
En tjenesteutgave kan kun tilhøre en tjeneste
Versjon
Versjon
Struktur – tjeneste vs utgave vs versjon
I Sluttbrukerløsningen vil man aldri behandle tjenester, utenom i avansert søk. Man åpner utgaver.
En tjeneste kan ha flere utgaver gyldig og tilgjengelig samtidig. Fungerer som en paraply/container.
En utgave kan kun ha én gyldig versjon om gangen.
Når man endrer en utgave etter en migrering, lages en ny versjon ved neste migrering
6
Struktur – Status og ikoner brukt i TUL
For å vise status på elementer og hvorvidt ting er ferdig eller migrert, brukes ikoner:
Tom/Ny
Endret/Ikke komplett
Komplett
Ikke endret siden migrering
Disse ikonene brukes på arbeidsflater, for språk etc.
7
Struktur – Veiledningskomponent
For å hjelpe tjenesteutvikler i arbeidet,
finnes det en veiledningskomponent
på alle sider
Den inneholder relevant
informasjon om siden man er på
Bygget som et ”trekkspill”
Har lenke til Brukerveiledningen
8
Tjenesteeiers arbeidsflate
Etatens ”startside”
Liste over tjenester
Mulighet for å tilpasse arbeidsflaten
Adgang fra startsiden
9
Tjenesteeiers arbeidsflate
10
Låst seksjon
Frivillig seksjon
A
B
C D
E
Standard
meldingslisteListe over tj.eiers
tjenester Liste med lenker
Veilednings-
komponent
Standard kontaktliste
Tjenesteeiers arbeidsflate - tjenesteliste
11
C
Liste over tjenester
Sortering på alle kolonner
Filtrering på alle kolonner
Adgang til tjeneste
Tjenestearbeidsflate
Liste over tjenesteutgaver
Mulighet for å tilpasse arbeidsflaten
Adgang fra tjenesteeiers arbeidsflate
12
Tjenestearbeidsflate
13
A
B
C
Låst seksjon
Frivillig seksjon
C
D
Dokument bibliotek
for designdokumenter
Standard
meldingsliste Veilednings-
komponent
Tjenste-
spesifikasjon
Liste over
utgaver
Tjenestearbeidsflate - utgaveliste
14
Liste over tjenesteutgaver
Sortering på alle kolonner
Filtrering på alle kolonner
Adgang til tjenesteutgave
Tjenesteutgavearbeidsflate
15
Definering og utvikling av utgaven
Hovedarbeidsområde i TUL
Adgang fra tjenestearbeidsflaten
Tjenesteutgavearbeidsflate
16
A
Låst seksjon
Frivillig seksjon
B
C D
E
Utgavespesifikasjon
Veilednings-
komponent
Innholdsspesifikasjon
Migreringsseksjon
Språseksjon
Aktører
Tjenesteutviklingsløsningen brukes av mange forskjellige brukere med forskjellig bakgrunn og ekspertise. Alle aktørene tilhører en tjenesteeier.
Brukere kan deles inn grupper, også kalt aktører
Begrepene er abstrakte; en person kan være flere aktører
I TUL er det definert fem forskjellige aktører:
19
Aktører
FagpersonStørste brukergruppen. Vil typisk opprette tjenester og utgaver, designe, utvikle og
migrere.
OversetterVil oversette utgaver til flere språk. Kjerneområde vil være språkmodulen.
IKTVil inneha enkle utviklingskunnskaper og typisk utarbeide komplekse regler/kontroller.
Adekvat kjennskap til C# og Visual Studio
TekniskDypere utviklingsinnsikt en IKT med spesialisert kunnskap til verktøyene i Altinn.
LøsningsadministratorHar kunnskap om Active Directory (AD) og SharePoint rettighet-/brukeradministrasjon
20
Prosess
21
Opprette overordnet
design
Definere
Opprette detaljert
design
Utvikle
Enhetsteste
Migrere
TesteProduksjonssette
(applikasjonsforvalter)
(BaseFarm)
Citrix
Tilgang og innlogging
Tjenesteutviklingsløsningen kjører beskyttet og må aksesseres ved bruk av en fjernarbeidsløsning
Ett TUL-miljø vil kunne være knyttet mot flere sluttbrukerløsninger
24
TUL
SBL SBL SBL
Tilgang og innlogging
Citrix brukes som fjernarbeidsløsning for å gi brukere tilgang til TUL arbeidsflaten
Citrix krever en klient installert på maskinen:http://www.citrix.com/English/ss/downloads/details.asp?downloadId=1858087
25
Lage tjeneste og utgave, tjenestetyper
I versjon 1 behandles kun to tjenestetyper i TUL:
Innsendingstjenester
Meldingstjenester
Utgaver under samme tjeneste må være av samme tjenestetype
30
Normal rekkefølge
Ny tjeneste eller benytt eksisterende
Opprett ny utgave eller benytt eksisterende
Definèr utgave
Utvikle utgave
Oversett utgave
Migrer utgave
Test utgave
Produksjonssett
31
Ny tjeneste eller benytt eksisterende
Når man vil lage en ny utgave, kan man velge å putte denne under en eksisterende tjeneste eller lage en ny
32
Ny tjeneste eller benytt eksisterende
33
For å benytte eksisterende tjeneste velges denne fra tjenesteeierarbeidsflaten.
Normal rekkefølge
Ny tjeneste eller benytt eksisterende
Opprett ny utgave under valgt tjeneste
Definèr utgave
Utvikle utgave
Oversett utgave
Migrer utgave
Test utgave
Produksjonssett
35
Opprett ny, tom utgave
36
Utgave av type innsending
Utgave av type melding
Utgaveparametersiden vises. Utgaven opprettes når man klikker ”OK”. Merk at man
ikke trenger å angi alle felter for å opprette utgaven.
Man navigeres til arbeidsflate for utgave.
Opprett ny, basert på en eksisterende
37
Ved å opprette en ny utgave basert på en eksisterende vil all metadata og evt.
skjema bli kopiert fra den eksisterende til den nye utgaven.
Unntakene er:
• Utgavenavn
• Kortnavn
• Tjenesteutgavekode
• Migreringshistorikk
Normal rekkefølge
Ny tjeneste eller benytt eksisterende
Opprett ny utgave under valgt tjeneste
Definèr utgave
Utvikle utgave
Oversett utgave
Migrer utgave
Test utgave
Produksjonssett
38
Definèr utgave
Definèr utgave innebærer å spesifisere alle delere av utgaven som ikke er knyttet til evt. tjenesteinnhold. Tjenesteinnhold er eksempelvis skjema i InfoPath.
Definèring av en utgave kan deles i fire deler:
Tjenesteparametere
Utgaveparametere
Prosessflyt
Skjemasett
Hver av disse behandles på hver sin side i TUL39
Definèr utgave - tjenesteparametere
Få tjenesteparametere
Begrenset med informasjon SBL og SBS har bruk for
Brukes i hovedsak for brukervennlighet og struktur i TUL
Tjenesteparameterene vil være felles for alle utgaver under tjenesten
40
Definèr utgave - tjenesteparametere
Tjenestenavn brukes i SBL mtp avansert søk
Kortnavn brukes i TUL som site navn og i url
Ekstern tjenestekode brukes i SBL som unik id for en tjeneste mtp på portal og sluttbrukersystemer
Tjenestetype er ikke påkrevd for å opprette tjenesten, men må defineres før en utgave kan lages. Valg: Innsending eller melding.
Referanse er et fritekst felt som kan benyttes for sortering/filtrering 41
Definèr utgave - utgaveparametere
Mange utgaveparametere
Gruppert etter funksjonelt ”område”
De fleste parametere og felter sendes med til SBL
Brukes for å gi egenskaper til utgaven som vil styre oppførsel i SBL
Forskjellige utgaveparametere for innsending og melding, men også en del felles
42
Definèr utgave – utgaveparametereinnsendingsutgave
Identifikasjon av utgavenUtgavenavn brukes som beskrivende navn i SBL
Kortnavn brukes kun i TUL som sitenavn og i url
Tjenesteutgavekode brukes som unik del-identifikator i SBL og SBS
Hovedspråk angir hvilket språk som blir grunnspråket for utgaven
Gyldig fra- og til angir fra når og hvor lenge utgaven er gyldig i SBL
Kun underskjema angir om utgaven kun blir brukt som et underskjema. Dette medfører at prosessflyt, skjemasett og migrering blir utilgjengelig.
Sporing og loggingBenytt sporing og logging angir om det skal lagres ekstra informasjon i SBL mtp utfylling
SpesifikasjonSpesifikasjonsnummer angir identifikatoren for dataformatet (XSD) som benyttes i et evt InfoPath-skjema
Spesifikasjonskilde angir ”utsteder” av dataformatet. Valgene er OR, Seres og Altinn
Versjon av dataformat angir identifikatoren til versjon av dataformatet
ELMER-presentasjon av skjemaVis ELMER angir om SBL skal vise navigasjons-, topp- og hjelpemeny for utgaven
Fri eller styrt navigasjon angir om sluttbruker i SBL må navigere sekvensielt gjennom skjema eller ikke 44
Definèr utgave – utgaveparametereinnsendingsutgave
Funksjoner tilgjengelig for sluttbrukerTillat vedlegg angir om sluttbruker i SBL kan legge ved egne vedlegg under utfylling
Kryptèr binære filer angir om vedlegg lastet opp av sluttbruker skal krypteres
Lagre i arkiv angir om utgaven etter innsending av sluttbruker i SBL skal lagres i arkivet
Tillat instansiering fra arkiv angir om ”Lag ny kopi” knappen skal vises i SBL arkivet for en utgave
Gyldig fra- og til angir fra når og hvor lenge utgaven er gyldig i SBL
Kun underskjema angir om utgaven kun blir brukt som et underskjema. Dette medfører at prosessflyt, skjemasett og migrering blir utilgjengelig.
Alternativer for manuell utfyllingInnsending fra SBS angir om det skal kunne sendes inn skjema fra et sluttbrukersystem for
denne utgaven
Tillatt instansiering for sluttbrukere uten brukerprofil angir hvorvidt det skal være mulig å pre-instansiere utgaven for personer som ikke er registrert som Altinn-brukere
KvitteringstekstKvitteringstekst angir teksten som vil vises i SBL på kvitteringssiden
45
AvgivertypekravKrav til avgivertype brukes for å angi hvilke krav som stilles til oppretting av utgave i SBL.
Valgene er: Privatperson
Juridisk enhet (foretak)
Bedrift
Bedrift eller juridisk enhet
Konkursbo
SikkerhetskravSikkerhetsnivå angir hvilket nivå av sikkerhet utgaven i SBL krever for å åpnes
Hendelse viser en liste av de hendelsene man kan angi rettigheter for mtp SBL
Definèr utgave – utgaveparametereinnsendingsutgave
4646
Definèr utgave – utgaveparameteremeldingsutgave
Identifikasjon av utgavenUtgavenavn brukes som beskrivende navn i SBL
Kortnavn brukes kun i TUL som sitenavn og i url
Tjenesteutgavekode brukes som unik identifikator i SBL og SBS
Hovedspråk angir hvilken som blir grunnspråket for utgaven
Gyldig fra- og til angir fra når og hvor lenge utgaven er gyldig i SBL
SpesifikasjonSpesifikasjonsnummer angir identifikatoren for dataformatet (XSD) som benyttes i et evt InfoPath-skjema
Spesifikasjonskilde angir ”utsteder” av dataformatet. Valgene er OR, Seres og Altinn
Versjon av dataformat angir identifikatoren til versjon av dataformatet
MeldingsavsenderAvsender angir hvem som skal vises som avsender av meldingen i SBL
48
Definèr utgave – utgaveparameteremeldingsutgave
BekreftelseBekreftelse for mottatt angir om sluttbruker i SBL må bekrefte at han/hun har lest meldingen
SikkerhetskravSikkerhetsnivå angir hvilket nivå av sikkerhet utgaven i SBL krever for å kunne åpnes
Hendelse viser en liste av de hendelsene man kan angi rettigheter for mtp SBL
49
Hver rettighet vil ha en tooltip med beskrivelse av rettigheten.
Det vil være mulig å velge et ubegrenset antall rettigheter for hver hendelse
Definèr utgave – utgaveparameteremeldingsutgave
BekreftelseBekreftelse for mottatt angir om sluttbruker i SBL må bekrefte at han/hun har lest meldingen
SikkerhetskravSikkerhetsnivå angir hvilket nivå av sikkerhet utgaven i SBL krever for å åpnes
Hendelse viser en liste av de hendelsene man kan angi rettigheter for mtp SBL
Hver hendelse vil styre en gitt aktivitet i SBL. Disse er angitt i brukerdokumentasjonen
50
Hver rettighet vil ha en tooltip med beskrivelse av rettigheten.
Det vil være mulig å velge et ubegrenset antall rettigheter for hver hendelse
Definèr utgave – prosessflyt
Prosessflyt gjelder kun for innsendingstjenester
Angir hvilke steg utgaven skal igjennom i SBL
Gir mulighet til angi sikkerhetsnivå og rettigheter for hvert steg
Tre ulike stegtyper: Utfylling, Signering og Innsending
Gir også mulighet til andre tilleggsparametere og tekster
51
Definèr utgave – prosessflyt
Prosessflyt defineres ved bruk av maler
En mal vil inneholde et forhåndsbestemt sett av steg og egenskaper
To typer maler: Felles maler og tjenesteeiers
Felles maler er tomme, men tjenesteeiers maler kan ha ferdig utfylte ”default”-verdier
Nye maler må lages og lastes opp av løsningsadministrator
Rettighetene satt for hvert steg i prosessflyten vil settes på samme måte som for utgaveparametere.
52
Definèr utgave – prosessflyt
Figuren viser eksempel på en mal med to steg; Utfyllingog Signering.
53
Definèr utgave – skjemasett
Skjemasett kan kun defineres for innsendingstjenester
Angir hvilke *skjema* fra andre utgaver som skal inngå som underskjema
Gir mulighet til angi egenskaper for underskjema
Gir mulighet til generere felles datakilde for bruk av felter på tvers av skjema
54
Definèr utgave – skjemasett
Egenskaper for underskjemaLegg til angir om sluttbruker i SBL selv kan legge til underskjema av
denne typen
Kun èn angir om underskjema bare kan forekomme en gang i skjemasettet i SBL
Felles datakilde angir om underskjema skal inngå i felles datakilde
Hovedkilde angir om felles datakilde skal være tilgjengelig fra skjemaet
55
Definèr utgave – skjemasett
Felles datakildeGenerer felles datakilde legger til en ekstra datakilde i skjema, noe som gir lesetilgang til andre skjemas felter på tvers av skjemasettet. Dette muliggjør definisjon av verdioverføringer og kryssvalidering.
56
Normal rekkefølge
Ny tjeneste eller benytt eksisterende
Opprett ny utgave under valgt tjeneste
Definèr utgave
Utvikle utgave
Oversett utgave
Migrer utgave
Test utgave
Produksjonssett
57
Utvikle utgave - Innholdsspesifikasjon
InfoPath brukes for å designe skjemaer for visning og utfylling i SBL
TUL er avhengig av et InfoPath-skjema for å kunne tilgjengeliggjøre elementene i Innholdsspesifikasjon
Følgende metadataseksjoner finnes i innholdsspesifikasjon
Sideegenskaper
Sporvalg
Presentasjonsfelt
Preutfylling
Betalingsinfo
Hjelpetekster
58
Utvikle utgave - Innholdsspesifikasjon
Sideegenskaper brukes for å angi navn, sekvens og type side
59
Sidenavn på
utgavens
hovedspråk
Sidenavn
hentes fra
InfoPath Siderekkefølge
(Seksvens)
Visningstype
Sidenavn angitt i TUL (ikke InfoPath) vises i ELMER-
menyens venstre kolonne
Utvikle utgave - Innholdsspesifikasjon
Sporvalg brukes for kunne bestemme sidetilgang under skjemautfylling dynamisk
En utgave kan ha flere sporvalg
Sporvalg kan være på alle sider
Man angir felt man skal sjekke på, deretter hvordan man skal sammenligne feltet med en gitt verdi
Sammligning ved hjelp av en operator
Utvikle utgave - Innholdsspesifikasjon
Et sporvalg vil bestemme hvilke sider som skal være tilgjengelig, basert på hva som er gitt av skjemautfyller
Et sporvalg består av flere spor
Et spor er en kombinasjon av et felt, en operator og en verdi
Flere spor med samme felt på samme side danner et sporvalg
Utvikle utgave - Innholdsspesifikasjon
Sporvalg
62
Siden sporet
skal finnes på
Sider som skal
vises når sporet
treffer
VerdiSporvalgsfeltet
Operator
Definerte
sporvalg
Definerte spor
Utvikle utgave - Innholdsspesifikasjon
Presentasjonsfelt brukes for lettere å kunne skille flere innslag av samme tjeneste i arbeidslisten i SBL
Det er mulig med 6 presentasjonsfelter. Ved valg av
felt, vil en ny rad automatisk dukke opp
Valgte felter vil vises i gitt rekkefølge, kommaseparert,
i SBL
Utvikle utgave - Innholdsspesifikasjon
Preutfylling brukes for å automatisk fylle ut felt i skjemaet ved åpning i SBL
En utgave kan ha et uendelig antall preutfylte felter
Et felt kan preutfylles med verdier fra tre registre
Et felt kan preutfylles med verdi basert på en kontekst
Bør benyttes på felter bruker ikke kan redigere (låste felter)
Utvikle utgave - Innholdsspesifikasjon
Preutfylling
Registre
Benytte
nøkkel/verdi
preutfylling Side/felt
Kontekst
(enhet, privatperson etc)
Registerfelt
Utvikle utgave - Innholdsspesifikasjon
Betalingsinfo brukes for å kunne vise betalingsinformasjon til bruker etter endt utfylling
Betalingsinformasjonen basert på det bruker har fylt ut
Det velges betalingslogikk
Hvilke felter som kreves for den enkelte type betalingslogikk varierer
Utvikle utgave - Innholdsspesifikasjon
Hjelpetekster brukes for å gi skjemautfyller veiledning underveis i skjemautfyllingen
Knyttes til en knapp i skjema
Knappens navn må begynne med HelpText_
Vises i Elmer-menyens høyre side
Utvikle utgave - Språk
I TUL kan man pt. lage en utgave på fire språk
Bokmål
Nynorsk
Engelsk
Samisk
Man definerer alltid et hovedspråk for en utgave. Det er med dette språket man definerer metadata og skjema
Man oversetter utgaven til andre språk enn hovedspråket
70
Utvikle utgave - Språk
For å oversette en utgave til et nytt språk må man velge Ny i listen over språk og velger språk
71
Utvikle utgave - Språk
Man kan begynne med oversettelsen
Man velger språk man vil oversette fra og hva man vil oversette. Man kan velge mellom:
Parameter
Hjelpetekst
Skjemaelement
Valideringstekst
Alle
72
Utvikle utgave - Språk
Velg hva du vil oversette og fra hvilket språk
73
Hvilket element
man oversetter
Tekst på
språket man
oversetter fra
Mulighet til å
angi tekst på
språket man
oversetter til
Velg hva man
vil oversette
Språk man vil
oversette fra
Utvikle utgave - Språk
Man er ikke nødt til å definere alle fire språk
Man kan migrere språk som ikke er komplette. Da blir manglende tekster byttet ut med teksten fra hovedspråket
Man kan oversette fra et sekundærspråk til et annet.
74
Utvikle utgave - Skjema i InfoPath
Et InfoPath-skjema inneholder skjemaets brukergrensesnitt, samt valideringer og valideringstekster. Inneholder også kalkyler og egenutviklet C# kode.
InfoPath skjemaets brukergrensenitt vises i ELEMERS midtre del, mens valideringstekster vises i høyre kolonne
76
Utvikle utgave - InfoPath, oppgavepanel
Layout gir bruker
mulighet til å bruke
ferdigdefinerte
tabellvisninger
Layout gir også
mulighet til å endre i
allerede valgt
tabellvisning
Utvikle utgave - InfoPath, oppgavepanel
Controls gir bruker
mulighet til å legge til
ulike brukergrensesnitt-
elementer i skjemaet
Utvikle utgave - InfoPath, oppgavepanel
Text Box brukes for å gi bruker mulighet til angi
enkel tekst med enkel formatering
Rich Text Box brukes for å gi bruker mulighet til
angi tekst med full formatering
Drop-Down List Box gir en nedtrekksliste
List Box gir en liste med elementer. Enkelvalg
Date Picker gir en datovelger i form av kalender
Check Box gir en avkrysningsboks
Option button gir en radioknapp. En gruppe av
radioknapper angis ved å gi knappene samme
navn
Button gir en knapp
Section gir en usynlig gruppe, men fin å bruke
for å skjule/deaktivere en serie av elementer
Utvikle utgave - InfoPath, oppgavepanel
Optional section er i utgangspunktet skjult,
men kan ekspanderes av bruker.
Repeating section kan legges til flere ganger
av bruker utfyllingsmodus.
Repeating table er en tabell som kan legges til
flere ganger av bruker utfyllingsmodus.
Utvikle utgave - InfoPath, oppgavepanel
File attachment vil ikke brukes i TUL.
Hyperlink gir muligheten til å lenke til eksterne
ressurser.
Expression Box skal brukes for alle
ledetekster. Dette innebærer også at man bruker
én expression box pr tekstfelt, avkrysningsboks,
radioknapp etc. Dette for å kunne oversette
teksten i TUL. Løs tekst utenfor expression
boxes vil ikke kunne oversettes
Utvikle utgave - InfoPath, oppgavepanel
Data source viser
skjemaet datastruktur,
som er basert på benyttet
meldingsbeskrivelse
(XSD).
Utvikle utgave - InfoPath, oppgavepanel
Datastrukturen vises hierarkisk hvor hvert nivå
samsvarer med XSD’en brukt som datakilde.
Strukturen vil også vise hvordan XPath’en til et gitt felt
vil se ut.
Valgt felt i figuren til venstre vil gi XPath:/Skjema/Opplysninger-grp-5288/Kontaktperson-
grp-5292/KontaktpersonFornavn-datadef-18747
For å knytte et felt eller et nivå i datastrukturen til et
element i skjemaet, drar man feltet eller nivået ut fra
oppgavepanelet og til skjemaet.
I utgangspunktet vil de fleste felt i datastrukturen
automatisk knyttes til et tekstfelt, noe som kan endres
i ettertid ved å konvertere tekstfeltet til en annen type.
= Felt= Gruppe
Utvikle utgave - InfoPath, oppgavepanel
Listen viser sider uavhengig av rekkefølge og type.
Dette defineres i TUL, og ikke InfoPath.
Siden man klikker på vises i område for skjemaside.
Utvikle utgave - InfoPath, oppgavepanel
Design checker
muliggjør verifisering av
at skjema er
kompatibelt med
webvisning i SBL
Utvikle utgave - InfoPath, layout
InfoPath fungerer på mange måter som PowerPoint, hvor man drar rundt på objekter på samme måte
Eksempel på skjema
Knapp
Expressionbox
TekstfeltRadioknapp
Menylinjer
Utvikle utgave - InfoPath, validering av felt
Valideringer kan legges på alle felt i skjema ved å høyreklikke på
feltet og velge Data validation
Utvikle utgave - InfoPath, validering av felt
Feltnavn
Sammenligningsoperator
VerdiType må velges
førstHovedtekstVises i ELMERs høyre kolonne i
SBL i fete typer
UndertekstVises i ELMERs høyre kolonne i SBL i
normale typer etter hovedtekst
Lar bruker definere
sammensatte valideringer
Utvikle utgave - InfoPath, validering av felt
Sammensatte valideringer gjør at man kan lage en validering med
én valideringsmelding, hvor valideringen baseres på flere felt, eller
flere del-valideringer av samme felt.
Slår til på Ola Nordmann med
epostadresse som inneholder
@altinn.no eller @brreg.no
Slår til på at fornavn er Ola,
Arne eller Erik
Avansert skjemautvikling
InfoPath støtter også utvikling av mer komplekse skjemaer som inneholder egenutviklet C# kode og flere datakilder (tilgang til underskjema, web service oppslag)
C# kode skrives ved hjelp av Visual Studio Tools for Applications (VSTA)
Tilgang til felter i andre skjema skjer ved å generere en felles datakilde
96
Avansert skjemautvikling – C#
Mye av valideringer og kalkyler kan gjøres i InfoPath, men avanserte utregninger og valideringer kan med fordel kodes i C#
Gjøres i Visual Studio, og startes direkte fra InfoPath
Kan velge når koden skal kjøres:
Endring av innhold i skjemaelement
Validering av skjemaelement
Tilgang til andre felter og grupper i skjema fra kode
97
Avansert skjemautvikling – C#
Man legger enklest inn C# ved å høyre-klikke på et gitt skjemaelement og velge Programming
Avansert skjemautvikling – C#
Visual Studio Tools for Applications åpnes, og man blir tatt inn i hendelsen som lages (Validate / Changed)
Her har man tilgang til sider og felter i skjema, samt ny og gammel verdi av innholdet i feltet hendelsen er lagt på.
Alle felt referanser gis ved hjelp av XPath, altså adressen til feltet innad i datakilden
Avansert skjemautvikling – C#
Eksempel A I et skjema for landbruksetaten kan man taste inn diameter og
høyde på silokummen, og skjema skal regne ut volum ved trykk på en knapp.
Man velger da å legge koden til en knapp og legge kode på denne.
Det gjøres ved å velge egenskaper for knappen og endre kode.
Avansert skjemautvikling – C#
Eksempel A (dårlig eksempel, se neste slide)
public void MyButton_Clicked(object sender, ClickedEventArgs e)
{
//Lage navigator-objekt for tilgang til skjemaets kilde
XPathNavigator navigator = MainDataSource.CreateNavigator();
//Hente verdi fra feltet for diameter
double diameter =
navigator.SelectSingleNode("//my:diameter", NamespaceManager).ValueAsDouble;
//Hente verdi fra feltet for høyde
double hoyde =
navigator.SelectSingleNode("//my:hoyde", NamespaceManager).ValueAsDouble;
//Regne ut volum
double volum = Math.PI * (diameter/2) * (diameter/2) * hoyde;
//Vise resultat i feltet for volum
navigator.SelectSingleNode("//my:volum",
NamespaceManager).SetValue(Math.Round(volum,2).ToString());
}
Avansert skjemautvikling – C#
Eksempel B
Man ønsker å bruke verdier fra felter i underskjema, i hovedskjemaet.
Det gjøres ved å generere felles datakilde på skjemasettsiden, slik at man får tilgang til underskjemaenes datakilde.
Avansert skjemautvikling – C#
Eksempel B (dårlig eksempel, se neste slide)
public void MyButton_Clicked(object sender, ClickedEventArgs e)
{
//Lage navigator-objekt for tilgang til skjemaets hovedkilde
XPathNavigator mainDataSource = MainDataSource.CreateNavigator();
//Lage navigator-objekt for tilgang til skjemaets andre kilde
XPathNavigator secondaryDataSource = DataSources["SubFormX"].CreateNavigator();
//Hente verdi fra underskjema gjennom skjemaets andre kilde
string valueFromSubForm =
secondaryDataSource.SelectSingleNode("//my:belop”,
NamespaceManager).ToString();
//Vise verdi fra underskjema i hovedskjema
navigator.SelectSingleNode("//my:verdi", NamespaceManager).SetValue(valueFromSubForm);
}
Avansert skjemautvikling – C#
Eksempel B – Sett istedenfor default verdi direkte fra sekundær datakilde
Avansert skjemautvikling – C#
Moralen er med andre ord: Veldig ofte så behøver man ikke benytte C#, selv om det kanskje kan virke sånn ved første øyekast
Enhetsteste skjema
I InfoPath har man en funksjon for å imitere visningen slik den vil være i SBL
Muliggjør utfylling, men ikke funksjoner som er avhengig av Elmer, f.eks. Sidenavigering og hjelp
Man vil ikke kunne teste samspillet med underskjema
Man kan teste å hente verdier fra kodelister
Enhetsteste skjema
Her kan du fylle ut verdier i alle felter, og teste valideringer. C# kode vil også kjøre.
Migrer utgave
For å se at en utgave utviklet i TUL innehar ønsket oppførsel, må man migrere den over til et valgt test miljø for sluttbrukerløsningen
Hvis det allerede er laget en versjon kan denne migreres på nytt, f.eks. til andre SBL-miljø
114
Validere
utgave
Pakke versjon
av utgave
Sende versjon
Av utgave
Migrer utgave
Migreringssiden innehar flere egenskaper
116
MiljøHer velges miljø
man vil migrere tilVersjonHer velges versjon
man vil migrere
SpråkHer velges de språk man
vil migrere
DatoHer kan man overstyre
utgavens opprinnelig gyldig fra
dato
Migrer utgave
Miljø som det kan velges mellom vil være alle test og produksjonsmiljø
Versjon er det kan velges mellom er alle tidligere versjoner av utgaven, samt valget Nyeste som innebærer det man har på arbeidsflaten så fremt dette er endret siden sist migrering
Språk er alle språk som utgaven er definert for. Tilleggspråkene må ikke være komplette, da manglende tekster vil bli substituert med tekster fra hovedspråket
Dato vil gi mulighet for å overestyre en utgaves opprinnelige gyldig-fra dato
117
Migrer utgave
Etter initiert migrering vises siden for migreringsstatus
118
MeldingDer vises eventuelle
feilmeldinger, som forteller
hva som må gjøres
RapportExcel-rapport
for nylig
gjennomført
migrering
VersjonListe over
tidligere migrerte
versjoner
MiljøMiljøet versjonen er migrert til.
Lenke som tar bruker til InfoPortal i
gitt miljø for SBL.
RapportExcel-rapport for gitt migrering.
Rapporten viser et sammendrag av
migreringspakken
Test utgave
Etter en vellykket migrering, er utgaven å finne i sluttbrukerløsningen i valgt miljø
Avhengig av testmiljøet, vil man her kunne teste utgaven ende-til-ende
Man vil også kunne teste innsending fra et sluttbruker-system hvis utgaven er konfigurert for dette
Selv om man kan dele testmiljøer inn i systemtest og akseptansetest, skiller ikke TUL på disse
Produksjonssett
Produksjonsmiljøet skiller seg fra de andre miljøene
Det er ikke mulig å velge språk eller å overstyre dato når man migrerer til produksjon
Dette er et miljø hvor man fra TUL ikke kan utføre handlinger
Migrering til produksjonsmiljøet gjøres i TUL som for migrering til testmiljøer, men migreringen legges i ”bestilling”
Det betyr at driftsleverandør vil utføre selve migreringen av utgaven til produksjon.
Slette tjeneste og utgave
I utgangspuktet kan alle tjenester og utgaver slettes fra TUL
Slettingen er kun logisk. Det betyr at man ”gjemmer” tjenestene og utgavene.
Man vil kunne hente tilbake tjenester og utgaver slettet ved et uhell
Medfører at man ikke kan gjenbruke kortnavn og eksterne koder for tjeneste eller utgave som er slettet
Slette tjeneste
For at en tjeneste skal kunne slettes, må utgavene slettes først.
Gjøres i tjenestelisten fra arbeidsflate for tjenesteeier
Slette tjeneste
Er ikke utgavene til tjenesten slettet først vil følgende melding vises
Tjenesten har ingen utgaver og kan slettes
Slette utgave
For at en utgave kan slettes, må den deaktiveres fra alle testmiljø
Sletting gjøres fra arbeidsflate for tjeneste
Slette utgave
Liste over hvilke miljø utgaven finnes i, vises
Ved å klikke på ”Slett” sendes en beskjed til alle test-miljø om at utgaven skal ugyldiggjøres
Finnes utgaven i produksjon, blir det bestilt en deaktivering
Administrere kodelister
En kodeliste er en samling av data som normalt forandrer seg i ulik takt med utgaven den skal brukes i
En kodeliste kan f.eks. være alle Norges kommuner med tilhørende arbeidsgiveravgiftsoner
En kodeliste kobles til skjemaet i utgaven, og gjør at verdiene i listen kan vedlikeholdes separat
En kodeliste må være migrert til sluttbrukermiljøet man skal åpne utgaven i
Administrere kodelister
For å få tilgang til kodelisteadministrasjon må man være medlem av tjenesteeiers kodelistegruppe i Active Directory
Kodelistebiblioteket nåes fra startsiden
Administrere kodelister
Kodelistebiblioteket inneholder liste over alle kodelistene
Det er fra her man åpner, sletter og migrerer kodelister
NavnKodelistens navn
Endret (av)Når og av hvem
kodelisten sist ble
endret
StatusEn kodeliste er
enten endret eller
migrert
MigrerTar bruker til
migrering av
kodeliste
Vis migreringsloggTar bruker til
migreringsloggen for
kodelisten
SlettFor å slette en
kodeliste
Administrere kodelister
Alle kodelister har de samme kolonnene
En kodeliste gir muligheten til å definere tre verdier pr kode
Hver rad definerer en kode med verdier på ett språk
Administrere kodelister
For å migrere en kodeliste må man velge migrér fra kontekstmenyen til kodelisten man vil migrere
Administrere kodelister
For å migrere en kodeliste må man velge migrér fra kontekstmenyen til kodelisten man vil migrere
MiljøHer velger man hvilke(t)
miljø man vil migrere
kodelisten til
VersjonHer velger man versjonen man vil
migrere. Nyeste refererer til kodelisten
slik den er nå
Administrere kodelister
Etter migrering vil man få en status
MiljøHvilke miljø kodelisten
finnes i
Migrert avHvem som har migrert hvilken kodeliste
til hvilke miljøMigrert datoNår kodelisten har blitt migrert hvor
StatusHvorvidt migreringen var vellykket
eller ikke,
Administrere brukere, grupper og rettigheter
For å styre rettigheter i TUL, brukes Active Directory (AD)
Active Directory er Microsoft sitt brukerhåndteringssystem for autentisering og rettighetsstyring på tvers av servere
Man bruker AD til å administrere brukere og grupper, og SharePoint til å styre rettighetene disse brukerne eller gruppene skal ha
Administrere brukere, grupper og rettigheter
Active Directory nåes fra Citrix for de brukere som har tilgang
Administrere brukere, grupper og rettigheter
Active Directory nåes fra Citrix for de brukere som har tilgang
Organizational UnitBrukes for å gruppere
brukere og grupper per
tjenesteeier AD, samt
tillate vedlikehold av sine
egne brukere
Brukere og grupperHer vises brukere og
grupper som ligger under
valgt tjenesteeier
Administrere brukere, grupper og rettigheter
Ny bruker fra scratch
En god prasis er fornavn
<punktum> etternavn. Æ, ø og å
må ikke brukes.
Administrere brukere, grupper og rettigheter
Ny bruker basert på kopi av eksisterende bruker
En god prasis er fornavn
<punktum> etternavn. Æ, ø og å
må ikke brukes.
Merk at den nye brukeren vil bli medlem av
de samme gruppene som kilden.
Administrere brukere, grupper og rettigheter
Ny gruppe
Gruppenavn bør
følge standard
brukt for andre
grupper i AD
Administrere brukere, grupper og rettigheter
Legge til bruker eller gruppe i annen gruppe
Gruppenavn
Angi gruppenavn som allerede
finnes i AD. Klikk på Check Names
for å verifisere
Høyreklikk på bruker eller gruppe du
vil legge til i en annen gruppe
Administrere brukere, grupper og rettigheter
Redigere gruppetilhørighet
Legge til bruker
eller gruppe
Liste over grupper
som bruker eller
gruppen er medlem
av
Fjerne bruker eller
gruppe
Administrere brukere, grupper og rettigheter
Resette passord
Hvis brukeren er låst,
må man huke av
denne for å låse opp