Solution Makers Kompetence System

Størrelse: px
Starte visningen fra side:

Download "Solution Makers Kompetence System"

Transkript

1 Forår 08 Solution Makers Kompetence System Construction Udarbejdet af Dan Buhr, Nicolaj Roos, Nick Niebling, Casper Cederberg og Jacob Hostrup Henriksen NORD, 2. semester Datamatiker, klasse tr07dat2, 26. maj 2008

2 Indholdsfortegnelse Arbejdsprocessen...4 Præ Inception Kravspecifikation...5 Produktet Brugsvejledning Refleksion over brug af Tortoise SVN Den fjerde iteration : Find flaskehalse Principskema Find flaskehalse Tests Blackbox tests Sammendrag af brugertest Brugertest Opret projekt TESTCASE 1 : BEMAND PROJEKT TESTCASE 2 : REDIGER BEMANDING TESTCASE 3 : REDIGER PROJEKT White box test setkompetencebehov(kompetence, int, Integer) addmedarbejdertilknytning(medarbejder, Kompetence, int) removemedarbejdertilknytning(medarbejdertilknytning) removekompetencebehov(kompetencebehov) getkompetencebehov(ifkompetence) addkompetencebehov(kompetencebehov) getkompetencebehovliste(boolean) hasifkompetencebehov(ifkompetence) Screendump fra test Java koden GUIFrame FacadeDomain KontrolProjekt KontrolKunde KontrolKompetence KontrolMedarbejder IFProjekt Projekt IFKompetenceBehov KompetenceBehov IFKompetence Kompetence IFMedarbejder Medarbejder IFMedarbejderTilknytning MedarbejderTilknytning IFMedarbejderKompetence MedarbejderKompetence IFKunde Kunde PostnrBy FacadeDatasource KontrolDatasource

3 mapperprojekt mapperkompetencebehov mappermedarbejdertilknytning mapperkompetence mappermedarbejder mappermedarbejderkompetence mapperkunde MapperPostnrBy Databasen Relationer, feltnavne og constraints Relation: PostnrBy Relation: Kunde Relation: Medarbejder Relation: Projekt Relation: Kompetence Relation: MedarbejderKompetencer Relation: ProjektKompetencer Relation: ProjektMedarbejdere Opret tabeller Script Indsæt data Script /201

4 Arbejdsprocessen Beslutninger, overvejelser og arbejdsfordeling 4/201

5 Præ Inception Kravspecifikation KA2 Kravspecifikation Tirsdag d. 26. februar 2008 tr07dat2 2. semester Jacob Henriksen, Dan Buhr Larsen, Nick Niebling, Nicolaj Roos og Casper Cederberg 5/201

6 Indledning: Kendte fejl og mangler: Vi ved der mangler elementer på vores udarbejdede slides, heriblandt har vi brugt ordet 'ressource' ofte, i stedet for 'kompetence'. Dette ønskes udbedret i det videre forløb. Elementer der mangler i modellerne er bl.a. selve opgaven som er implicit, tilbagemelding til kunden om mulig udførelse af opgaven, udarbejdelse af kontrakt m.m. Antagelser: Vi antager at kompetencer kan måles med point, 1 5 pr kompetence. Definition af kundestørrelse kontra opgavestørrelse. Formål: Udnytte medarbejder resourcer optimalt. Optimere læring/udvikling/kompetencer. Prioritering af kunder. Mål: Brug af systemet skal sikre at en gennemsnitlig medarbejder arbejder som assistent 30 % af hvert år. Brug af systemet skal fastholde en minimumsvækst årligt på 20 %. Brug af systemet skal sikre en fordeling af kundesegmenterne på 10% små kunder, 45% mellemstore kunder og 45% store kunder. Krav: Systemet skal kunne registrere og opdaterer kompetence og udviklingsprofiler for alle konsulenter. Systemet skal kunne levere oplysninger om knappe kompetencer (potentielle flaskehalse). Systemet skal kunne generere statistikker om anvendelse af kompentecer. Systemet skal foreslå en liste af relevante projektledere. Systemet skal kunne foreslå medarbejdere til en given opgave ud fra kompetencer. Systemet skal kunne tilgodese storkunder, på baggrund af sælgerens vurdering af hvem der er potentielle storkunder. (hører sammen med næste krav) Systemet skal kunne hjælpe til styrring af forholdet mellem assistenter og konsulenter i et givent projekt, i forhold til de tre kundesegmenter. Systemet skal kunne beregne om man har ledige mandetimer i ordrebogen og kompentecer til at tage et givent projekt ind. 6/201

7 Formål mål krav Use Case Formål: Mål: Krav: Use cases('as-is'): Udnytte medarbejderresourcer optimalt. Optimere læring/udvikling/kom petencer Prioritering af kunder. Assistent 30% pa. Vækst 20% 10%/45%/45% Kompetence- & udviklingsprofiler Informerer om flaskehalse Statistik om anvendelse af kompetencer foreslå relevante projektledere foreslå medarbejdere ud for kompetencer Kunde stiller opgave Sælger vurderer kunde Udpegelse af projektleder Udvælgelse af projektmedarbejder Udførelse af opgaven Evaluering af projektgruppen tilgodeseelse af storkunder/forhold mellem assistenter og konsulenter Kåring af årets medarbejder Beregne om der er tid til at tage opgave ind 7/201

8 Solution Makers A/S Business Use Case 'as-is' stil opgave Kunde Sælger vurder kunde Vælg projektleder Projektchef vælg projektmedarbejder(e) Projektleder udfør opgave Projektmedarbejder evaluer projektgruppe Kår årets medarbejder 8/201

9 Solution Makers A/S Business Use Case To Be Stil opgave vurder kunde Kunde System opret kunde Sælger Nyt projekt Opret projekt Udpegelse af projektleder Projektchef Udvælg resourcer Alloker resourcer Proejktleder Evaluering af projektgruppe Projektmedarbejder Kåring af årets medarbejder 9/201

10 Solution Makers A/S Swimlane diagrammer Ordremodtagelse Kunde Sælger System Projektchef Projktleder Stil opgave Opgav Vurdér kunde Verificér kunde Opgav Opret opgave Verificér ressource Foreslå projektleder Vælg projektleder Modtag opgave 10/201

11 Projektforløb Projektleder Projektmedarbejder System Vælg ressource Allokér ressource Modtag opgave Udfør opgave Afslut opgave Status Evaluér projekt Registrér evaluering Aflevering 11/201

12 Produktet Solution Makers A/S, Kompetencesystem 12/201

13 Brugsvejledning Oversigt over afsnit: System og software krav Brugerkrav Hurtig start Installation af programmet Brug af programmet Beskrivelse af fanebladet Opret/rediger projekt Beskrivelse af fanebladet Bemand projekt Opret projekt System og software krav Windows XP/Vista, Mac OS X, Linux, Solaris eller HP UX. Internet forbindelse jdeveloper version 11g med opdateret JDBC Oracle driver version 6 Brugerkrav Grundlæggende kendskab til navigering under windows, derunder kopiering og overførsel af filer. Grundlæggende kendskab til java. Tegnforklaring: I denne installations og brugsvejledning, bruges < vinkelparentes start og > vinkelparentes slut, til at angive et tastaturtryk, eksempelvis <CTRL>, eller handling. Da forskellige maskiner i dag har forskellige drevbogstaver, angives denne variabel som type og/eller drev, eksempelvis C:\. 13/201

14 Hurtig start På den vedlagte DVD vælges mappen <Dvd-drev>:\Program\. I mappen forefindes filen SolutionMakersStandAlone.jar. Ved dobbeltklik på denne, afvikles programmet, og gøres klar til brug. Obs! Indlæsningstiden kan variere, og ved brug af ældre maskiner, anbefales det at kopiere SolutionMakersStandAlone.jar over på den lokale harddisk. Efter endt indlæsning er programmet klar til brug. Installation af programmet Obs! Denne installation kræver jdeveloper 11g, installeret og opdateret med Oracle JDBC driver version 6. Ved brug af ældre versioner af jdeveloper, kan der forekomme tab af funktionalitet. Da kildekoden ligger på en DVD, vil der blive vist en advarsel under indlæsning af koden. Dette da jdeveloper ikke kan gemme ændringer i koden. Ønskes et nærmere kik på programmet og dets kode, kan man vælge følgende fremgangsmåde: På den vedlagte DVD vælges mappen <Dvd-drev>:\Kildekode\. I mappen forefindes filen SolutionMakers.jpr. Ved dobbeltklik på denne, åbnes programmet jdeveloper 11g, samt en oversigt over de filer der indgår i kildekoden. Ved flere versioner af jdeveloper på den maskine der bruges, kan det forekomme at filen som udgangspunkt er sat til at blive åbnet med en ældre version. I det tilfælde er fremgangs måden som følger: 14/201

15 1. Åbn den version af jdeveloper som ønskes brugt til at åbne kildekoden med. 2. Vælg File Open, fra menuen i øverste venstre hjørne. 3. I vinduet der vises, navigeres til mappen <Dvd-drev>:\Kildekode\. 4. I denne mappe vælges enten SolutionMakers.jpr eller SolutionMakersApplikation.jws, og den valgte fil åbnes. Koden indlæses og kan gennemgås i nærmere detaljer. Som under Hurtig start kan programmet afvikles, dog ved at højreklikke på klassen GUIApp.java, og vælge <Run> fra menuen. Som tillæg til kildekoden, findes en oversigt over programmets struktur, ved at vælge mappen <Dvd-drev>:\JavaDoc\. I denne mappe dobbeltklikkes på filen Index.html. Herved åbnes den lokale browser, og en oversigt over kildekoden vises. Brug af programmet Før programmet tages i brug, er det væsentligt at gøre sig bekendt med følgende: Mandeår et helt arbejdsår opdeles i 1/8 (ottende dele). Dvs at en medarbejder kan deltage i udførelsen af et projekt med op til 8/8, altså et helt år. Ud for hver medarbejder der er relevant for et givent projekt (Se afsnittet Bemand projekt, punkt 2), er der angivet den pågældende medarbejders ledige tid. Når der skal tilknyttes en medarbejder til et projekt, angives den tid medarbejderen bidrager med i ottende dele, i feltet Tid (Se afsnittet Bemand projekt, punkt 5). Niveau for en medarbejders kompetence, altså dennes evner for eks. Java programmering, angives som point ud af 10 mulige. Eksempelvis vil en medarbejders kompetence for java, være repræsenteret af 5/10. En medarbejder opnår konsulentstatus, når denne har minimum 7/10, og vil derefter blive regnet som konsulent, når medarbejderen tilknyttes et projekt, med java programmering. For at tydelig gøre dette under bemanding af et projekt, vil der ved tilknytning og herunder kompetencevalg, vises niveau samt status (a), hvis den pågældende medarbejder tilknyttes som assistent. Designet af brugerfladen er IKKE endeligt og der kan derfor være placeringer af bl.a. knapper som ikke er intuitive. Vær opmærksom på knapperne <Tilknyt medarbejder>, <Fjern medarbejder> og <Gem projekt>, under fanen Bemand projekt. 15/201

16 Under fanebladet Opret/rediger projekt findes følgende funktionalitet: 1. Faneblade 2. Filter 3. Oversigtsvindue 4. Stamdata 5. Kompetencebehov 6. Valg af projektleder 7. Note og nulstil/gem Er du i tvivl om nogen af felterne i den højre halvdel af vinduet (4,5,6), kan du lade musemarkøren bevæge sig hen over teksten ud for feltet. Du vil herefter få en forklarende tekst vist i bunden af vinduet Programmet består af to faneblade med forskellige funktioner. Disse er placeret i øverste venstre hjørne. 16/201

17 2. Filter: Dette filter lader brugeren sortere projekter, sådan at kun de der opfylder de valgte betingelser, vises. 3. Oversigtsvindue: I dette vindue vises ved opstart af programmet, alle eksisterende projekter. 4. Stamdata: I det første felt angives et projektnavn. I de næste tre menuer, vælges henholdsvis projektstatus, årstal og kunde. De næste 2 felter er valgfri, men hvis brugeren ønsker det, kan der evt. anføres en kontaktperson og dennes tlfnr. 5. Kompetencebehov: I den næste menu, vælges en given kompetence, et behov anføres i ottende dele mandeår, i feltet nedenunder, og der kan derefter trykkes på knappen <Tilføj kompetence>, for at tilføje den valgte kompetence til projektets kompetencebehov. Ligeledes kan man vælge en af de, i listen præsenterede kompetencebehov, og fjerne denne, ved tryk på <Fjern kompetence>. 17/201

18 6. Vælg projektleder: Af de medarbejdere der er kvalificerede til at være projektledere, kan man i denne menu vælge hvem der skal være projektleder for netop det projekt der i øjeblikket oprettes/redigeres. 7. ProjektNote samt knapperne <Nulstil felter> og <Gem projekt>: ProjektNote giver brugeren mulighed for at skrive en kort tekst, eksempelvis uddybende supplement til de øvrige stamdata. Ved brug af <Nulstil felter>, ryddes alle felter og menuvalg nulstilles. Ved brug af <Gem projekt>, gemmes det projekt man har oprettet/redigeret. Under fanebladet Bemand projekt findes følgende funktionalitet: 1. Vælg projektet 18/201

19 2. Mulige medarbejdere 3. Tilføj/fjern 4. Tilknyttede medarbejdere 5. Kompetencevalg 6. Gem projekt 7. Medarbejderdækning Vælg projekt: Her vælges det projekt brugeren ønsker at behandle. Som under fanen Opret/rediger projekt, kan her vælges en filtrering af projekter. 4. Mulige medarbejdere: I dette felt vises de medarbejdere der modsvarer det kompetencebehov et givent projekt har. 19/201

20 5. Knapperne <Fjern> og <Tilknyt>: Ved brug af disse knapper, kan medarbejdere fjernes og tilknyttes et projekt. 6. Tilknyttede medarbejdere: I dette felt vises de medarbejdere der allerede er tilknyttet et valgt projekt. 7. Kompetencevalg: Under dette punkt, kan brugeren vælge hvilken af en valgt medarbejders modsvarende kompetencer, der ønskes brugt, og i hvilken udstrækning. Hvis en medarebjders niveau, med en bestemt kompetence er under 7/10, vises (a), for at indikere at medarbejderen vil blive tilknyttet som assistent. Hvor meget en medarbejder skal bidrage projektet med, angives i heltal og fortolkes som ottende dele mandeår, i feltet Tid. 8. Knappen <Gem projekt>: Ved brug af denne knap, gemmes projektet med den nuværende bemanding. 20/201

21 9. Medarbejderdækning: I denne oversigt, kan ses hvordan behovet er dækket, hvor mange medarbejdere der deltager, samt hvilken fordeling af konsulenter og assistenter der bemander projektet. Opret projekt Ønskes et projekt oprettet og bemandet, gøres følgende (evt. med ovenstående gennemgang som støtte): 1. Start under fanen Opret/rediger projekt. 2. Kontrollér at alle felter er tomme og klar til nye værdier. 3. Er du i tvivl, trykkes på knappen <Nulstil felter>. 4. Herefter angives og vælges de stamdata der ønskes. Programmet giver tilbagemelding 21/201

22 hvis ikke alle krav til et projekt er angivet. 5. Vælg nu de kompetencer der skal til for at udføre projektet, altså projektets kompetencebehov. Hvis du fortryder kan værdierne fjernes eller overskrives. Overskrivelse af et behov, sker ved at vælge samme behov med en ny værdi, og vælge <Tilføj kompetence>. 6. Efterfølgende angives hvem du ønsker som projektleder. 7. Hvis du har behov for en beskrivelse eller note til projektet, udfyldes denne nu, og derefter trykkes på <gem projekt>. 8. Vælg nu fanen Bemand projekt. 9. Først vælger du dit projekt ved hjælp af menuen øverst til højre. 10. Herefter viser programmet hvilke medarbejdere der er relevante for projektet, samt hvilke der tilknyttet (ikke nogen endnu). 11. Vælg nu en medarbejder. 12. Når en medarbejder er markeret, vises hans navn i feltet nedenfor listen med mulige medarbejdere. 13. Du kan nu vælge hvilken kompetence han skal deltage med, og i hvor stor udstrækning. 14. Tryk på knappen <Tilknyt medarbejder>. Hvis du er i tvivl, kan du lade musemarkøren bevæge sig hen over de to knapper imellem medarbejderlisterne. En forklarende tekst vil blive vist. 15. Fortryder du en tilknytning af en medarbejder, kan denne fjernes ved at markere medarbejderen i listen af tilknyttede medarbejdere, og trykke på <Fjern medarbejder>. 22/201

23 16. Når projektet er som du ønsker det, trykkes på <Gem projekt>. God fornøjelse. Mvh Udviklerholdet. 23/201

24 Refleksion over brug af Tortoise SVN I starten af forløbet delte vi vores java kode via en Googlegruppe, hvor hvert enkelt gruppemedlem hentede koden, rettede i den og derefter uploadede den igen. Dette gav en del problemer, da det flere gange skete, at to gruppemedlemmer rettede i den samme kode samtidig. Da vi fra nogle elever på 4. semester hørte om SubVersion, vidste vi straks, at det var dét vi havde brug for. Det lykkedes os at få arrangeret en undervisningstime efter normal undervisningstid, hvor en elev fra 4. semester gav en introduktion til SubVersion til dem som måtte være interesserede. Det viste sig, at der var stor tilslutning til dette arrangement, da andre grupper havde siddet med de samme problemer som os. Subversion fungerer som et fælles lager, hvor man kan deponere sit projekt. Alle kan herefter hente projektet og arbejde i de forskellige filer m.m. Subversion hjælper med at tilføje rettelser fra hver enkelt bruger, til en 'fælles' udgave. Efter at have fået en introduktion til emnet fik vi oprettet et repository på en af skolens servere, og derefter gled vores arbejde meget lettere. Udover java koden flyttede vi også alle andre filer til vores repository, så hver enkelt gruppemedlem altid havde adgang til de seneste udgaver af alle dokumenter. Naturligvis skulle vi lige vænne os til at bruge det, men vi fik hurtigt indarbejdet nogle gode arbejdsrutiner med løbende at update og committe hver gang, vi havde skrevet noget. Brugen af SubVersion har hjulpet os meget, og vi har derfor foreslået vores uddannelsesleder, at fremtidige elever på 2. semester får en introduktion til dette, inden projektarbejdet starter. Ingen dans på roser, uden torne i fødderne, og vi har da også haft problemer med at skulle bruge et, for mange af os, nyt versionsstyringssystem. Vi oplevede en konflikt med java koden, hvor vi forsøgte flere (delvist uovervejede) forsøg på at få comittet en hel dags arbejde. Den tragiske afslutning på den historie, var at vi tabte en dags arbejde, p.g.a. fejlagtig brug. Derfra og frem, er der konsekvent blevet brugt en fremgangsmåde hvor man altid opdaterer før man comitter. Ved konflikter er det muligt at løse problemet. Subversion tilbyder brugeren mulighed for at vælge om konflikten skal løses med den lokale fil, eller den fælles på serveren ('mine' el. 'theirs'). Derudover kan man vælge at sammenflette to forskellige versioner, men denne mulighed har vi ikke haft udpræget behov for. Alt i alt har det været en stor succes at bruge Subversion, frem for at lægge en redigeret fil op, med nyt versionsnr i enden af filnavnet. Vi havde på et tidspunkt en pakket fil med vores kode i, som på lidt over en uge, endte med versionsnr 21. Med subversion er tallet større, men tingene tilføjes, fra brugerens synspunkt, en fællles fil, og derved ligger der ikke forskellige rettelser i flere forskellige filer. 24/201

25 Den fjerde iteration Vi var meget langt med den 4. Iteration, Use Casen Find flaskehalse, før vi valgte ikke at gennemfører den. Valget skyldes flere forhold. Dels skred tidsplanen for de første 3 iterationer og det kunne blive en kamp med tiden, at gennemføre denne sidste iteration samtidig med at vi skulle nå at samle dokumentationen til rapporten. Dels fandt vi ikke at denne funktionalitet, havde nogen relevans i forhold til de 3 øvrige funktioner der er implementeret i applikationen. Vi har valgt at medtage følgende overvejelser i bilaget, for at vise hvor langt vi reelt er nåede, uden dog at implementere. Reelt var vi nået frem til den konklusion, at langt den største del af implementeringen, lå i at udarbejde en forespørgsel til databasen, der udførte arbejdet for os og derefter præsentere resultatet i GUI. 4: Find flaskehalse Ordforklaring : 'Flaskehals' Kundernes efterspørgsel af en specifik kompetence, imødekommes ikke af medarbejdernes antal/kompetenceniveau. (Eksempel: Kundernes efterspørgsel på Java i 2007: 15 udviklere (x1) Firmaets antal af medarbejdere med Java kompetence i 2007: 20 udviklere (y1) Kundernes efterspørgsel på Java i 2008: 30 udviklere (x2) Firmaets antal af medarbejdere med Java kompetence i 2008: 25 udviklere (y2) 2007: x1/y1 = 15/20 = 0,75 = dækninsgrad 75% 2008: x2/y2 = 30/25 = 1,2 = dækningsgrad 120%) Virkefelt Solution Makers Kompetence System Niveau Brugerniveau Primær aktør Projektchef. Interessenter Firmaet: Ønsker at imødekomme fremtidige kompetencebehov. Projektchef: Ønsker estimat til vurdering af fremtidige ansættelser i virksomheden. Prækonditioner Der eksisterer projekter i systemet. Postkonditioner Der eksisterer et estimat på kommende behov for kompetencer. 25/201

26 Main Success Scenario: 8. Projektchef ankommer til terminal. 9. Projektchef vælger Estimér behov. 10. Systemet indlæser kompetencebehov for projekter. 11. Systemet indlæser det samlede antal kompetenceressourcer, for hver enkelt kompetencebehov indlæst under pkt Systemet beregner estimat der identificerer flaskehalse på baggrund af stigende efterspørgsel på kompetencer set i forhold til nuværende kompetencer i virksomheden. 13. Systemet præsenterer estimat. Extensions: 10. Systemet kan ikke indlæse projekter (dette punkt gælder også pkt. 4). a. Estimat kan ikke udføres, og brugeren modtager en fejlmelding. 26/201

27 Principskema Find flaskehalse 27/201

28 Tests Blackbox tests Sammendrag af brugertest I dette afsnit gives et udsnit af det feedback der blev givet fra brugerne, ved brug af applikationen. Obs! Enkelte kommentarer er modtaget efter koden er 'frosset'. Brugerfladen er jo den del af programmet som vores testpersoner oplever på tæt hold. Derfor er en stor del af de kommentarer der er indsamlet, baseret på oplevelsen af at skulle udføre opgaver ved hjælp af vores brugerflade. Til hver test er der udarbejdet en opgave, indeholdende flere mindre del opgaver, som testpersonen skal forsøge at udføre, uden hjælp. Disse opgaver er udformet, sådan at det svarer til at gennemgå en Use case. For en mere detaljeret gennemgang, se testcase 1, testcase 2 og testcase 3 senere i dette afsnit, samt Use cases I produktrapporten, Fully dressed system use cases på side 27. Intuitiv brug af programmet: Det er ikke logisk at navngivningen ikke er den samme som i opgaveformulering. En af vores opgaver lyder som følger: Kompetencebehovet Java programmering tilføjes med ny værdi 6/8. Brugeren oplever at der i opgaven står ordet kompetencebehov, men at på brugerfladen bruges ordet kompetence. Den forskelligartede formulering skaber tvivl om hvordan opgaven udføres. Er projektet gemt nu?. I vores program, er der ingen tilbagemelding/verificering af hvorvidt et projekt er blevet gemt, efter der trykkes på <Gem projekt>. Der gives en fejlmeddelelse hvis projektet IKKE gemmes, men den manglende tilbagemelding skaber forvirring. Brugeren udtrykker tvivl om hvorvidt projektet rent faktisk er gemt. Bliver medarbejderen tilknyttet som assistent?. Under bemanding af et projekt, vises tilknytningen af en medarbejder, som assistent eller konsulent, ved at den kompetence der vælges at tilknytte med, indeholder et (a) for enden af kompetencenavnet ( (a) for assistent). Det kræver en bedre instruktion af brugeren og kan gøres tydeligere hvilken rolle medarebjderen får på projektet. 28/201

29 Inddelingen af områder er ikke logisk. Under test gør brugeren opmærksom på at det ikke virker logisk at der under fanen 'Bemand projekt' skal vælges kompetencer nederst. Flere testpersoner har intuitivt trykket på knappen <Gem projekt>, da denne ligger lige under det område hvor kompetencen vælges. I stedet skal trykkes på <Tilknyt medarbejder>, som ligger øverst i midten, imellem to lister over medarbejdere. Da koden er frosset, må vi blot konstatere at en ændring af placeringen af komponenter, ville afhjælpe problemet. Fint med de to vinduer, hvor man ser de mulige medarbejdere og de tilknyttede medarbejdere. Det giver overblik at kunne se to lister, side om side, med alle medarbejdere som enten er tilknyttet projektet eller kan blive det. 29/201

30 Brugertest Opret projekt Denne opgave skal bringe brugeren igennem forløbet, beskrevet i Use Casen Opret projekt. Testen har 2 formål. Dels at teste funktionaliteten i applikationen, dvs. at projektet oprettes i databasen. Det er også vigtigt at få en tilbagemelding fra brugeren på anvendelsen af applikationen. Altså om brugerfladen er intuitiv i forhold til løsningen af opgaven. Opgave: En kunde har henvendt sig for at få løst en opgave, og der skal derfor oprettes et nyt projekt. Det er din opgave at oprette projektet. Om projektet kan oplyses følgende: Navn på projektet: Kunde: Kontaktperson: <<dit navn>> projekt Michaels Spøg og skæmt Hans Jensen Tlf. til kontaktperson: Krævede kompetencer: Java (22/8 mandeår), C++ (16/8 mandeår) Projektleder: Jacob Henriksen Testpersonens feedback: Brugerfladen er nem at forstå og opgaven var nem at løse. Undervejs opstod der en fejl, da der ikke var opgivet et projekt år og en status.. Der var ikke yderligere kommentarer. Det skal bemærkes at fejlmeldingen ved manglende angivelse af år og status er en fejl i brugerfladen og den er senere rettet. Udskrift fra DB efter test: 30/201

31 TESTCASE 1 : BEMAND PROJEKT Det forventes at opgaven, testskemaet samt screendumps nedenfor sammenholdes til en helhed. Prekonditioner: Programmet er opstartet og projektet " Kompetencesystem SolutionMakers" er oprettet. Opgave: Projektlederen ønsker at bemande projektet Kompetencesystem SolutionMakers, med følgende medarbejdere: Casper Cederberg tilknyttes med UML diagrammering (2/8 mandeår) Nicolaj Roos tilknyttes med UML diagrammering (2/8 mandeår) Projektet gemmes. Case Forventet Resultat 8. Projektlederen angiver at han ønsker at bemande et projekt (se fig.1 2) 9. Projektlederen angiver det ønskede projekt, Kompetencesystem SolutionMakers. (se fig.3 4). 10. Projektlederen vælger "Casper Cederberg", med kompetencen "UML diagrammering" og angiver tid: 2 (/8 mandeår) (se fig.5 8). Herefter vælges ">>" (tilknyt). 11. Punkt 3 gentages med "Nicolaj Roos". Fanebladet bemand projekt vises og der vises en oversigt med projekter, deriblandt Kompetencesystem SolutionMakers. Projektets data, samt relevante medarbejdere vises. Medarbejderen tilknyttes projektet med de valgte data. Medarbejderen tilknyttes projektet med de valgte data. OK dog vises projekter ikke i en oversigt, men i en dropdownmenu. OK OK men det vises først ved valg af kompetence, hvorvidt medarbejderens tilknytning er som konsulent eller assistent (a). OK men det vises først ved valg af kompetence, hvorvidt medarbejderens tilknytning er som konsulent eller assistent (a). 12. Projektlederen Projektet er gemt. OK ved kontrol af databasen, 31/201

32 gemmer projektet(se fig.9). dog gives ingen tilbagemelding til brugeren. Fig. 1 Fig. 2 32/201

33 Fig. 3 33/201

34 Fig. 4 34/201

35 Fig. 5 Fig. 6 35/201

36 Fig. 7 Fig. 8 36/201

37 Fig. 9 TESTCASE 2 : REDIGER BEMANDING Det forventes at opgaven, testskemaet samt screendumps nedenfor sammenholdes til en helhed. Prekonditioner: Programmet er opstartet og projektet " Kompetencesystem SolutionMakers" er oprettet og valgt, under fanen "Bemand projekt" (se fig. 1). Opgave: Projektlederen ønsker at ændre bemandingen af et projekt: Dan Buhr tages af projektet Nicolaj Roos tilknyttes med Java programmering (3/8 mandeår) Jacob Henriksen tilknyttes med Java programmering (1/8 mandeår) Projektet gemmes. Case Forventet Resultat 37/201

38 5. Projektlederen vælger den tilknyttede medarbejder "Dan Buhr", og vælger "<<" (fjern medarbejder) (se fig. 2) 6. Projektlederen vælger "Nicolaj Roos", med kompetencen "Java programmerin g" og angiver tid: 3 (/8 mandeår). Herefter vælges ">>" (tilknyt) (se fig. 3). 7. Punkt 2 gentages med "Jacob Henriksen", "Java programmerin g", og en tidsangivelse på 1 (/8 mandeår) (se fig. 3). 8. Projektlederen gemmer projektet. Den valgte medarbejder bliver fjernet fra projektet. Medarbejderen tilknyttes projektet med de valgte data. Medarbejderen tilknyttes projektet med de valgte data. Projektet er gemt. OK OK men det vises først ved valg af kompetence, hvorvidt medarbejderens tilknytning er som konsulent eller assistent (a). OK men det vises først ved valg af kompetence, hvorvidt medarbejderens tilknytning er som konsulent eller assistent (a). OK ved kontrol af databasen (se fig. 4 5), dog gives ingen tilbagemelding til brugeren. 38/201

39 Fig. 1 39/201

40 Fig. 2 40/201

41 Fig. 3 41/201

42 Fig. 4 Fig. 5 42/201

43 TESTCASE 3 : REDIGER PROJEKT Det forventes at opgaven, testskemaet samt screendumps nedenfor sammenholdes til en helhed. Prekonditioner: Programmet er opstartet og projektet " Kompetencesystem SolutionMakers" er oprettet og valgt, under fanen "Opret/rediger projekt". Opgave: Projektlederen ønsker at redigere projektet Kompetencesystem SolutionMakers, med følgende ændringer: Projektnavnet ændres til Kompetencesystem SolutionMakers 2. Kontakperson ændres til Klaus Petersen. Kontakpersonen's tlfnr. Ændres til Kompetencebehovet Java programmering tilføjes med ny værdi 6/8. Kompetencebehovet C++ programmering tilføjes med værdi 2/8. Projektleder Nick Niebling vælges som projektleder. Projektet gemmes. Case Forventet Resultat 9. Projektlederen angiver at han ønsker at redigere et projekt, ved at vælge fanen Opret/rediger. 10. Projektlederen angiver det ønskede projekt. 11. Projektlederen angiver nye data (se opgaveliste ovenfor), og vælger Gem projekt. Fanebladet opret/rediger projekt vises og der vises en oversigt med projekter, deriblandt Kompetencesystem SolutionMakers. Projektets data vises. Projektet gemmes med de valgte data. OK dog kan området hvor der angives kompetencebehov virke tvetydigt, da der bruges en tekst kompetencer i stedet for eksempelvis kompetencebehov. OK OK dog mangler en tydelig tilbagemelding om at projektet rent faktisk er blevet gemt. Brugertesten viser at brugerfladen ikke er intuitiv. Der mangler f.eks en tekst der viser hvad der er en oversigt, og hvad der er en menu, ved tilføjelse af et kompetencebehov. 43/201

44 Databasen før ændringer er gennemført: Ændringer der gennemføres: Ændringer i databasen efter projektet gemmes: 44/201

45 45/201

46 White box test Formålet med en white box test, er at undersøge en metode ud i alle de mulige kombinationer. Som et eksempel på en whitebox test, har vi valgt at vise en test af projekt klassen. Projekt klassen er et af de bærende objekter i applikationen, da den er databærende for alle informationer. For ikke at lave testen for omfattende, har vi fravalgt at teste alle ordinære set og get metoder, der ikke indeholder betingelser der er med til at bestemme output. Illustrationerne viser hvor mange alternativer der er og hvilke yderpunkter der er gennem forløbet. Igennem testen, vil vi vise at metoden kan følge vejen til et forventet resultat. Sidst i dette afsnit er der et screendump fra en testkørsel. setkompetencebehov(kompetence, int, Integer) Metode: setkompetencebehov(kompetence, int, Integer) Antal muligheder: 4 Navn på test Testet med værdi Sti Forventet resultat BehovUaendretFraDB Status = 0 True Status = 0 BehovKendtKompetence Status = 2 Behov =eksist. behov BehovStatus2 Status = 2 ikke eksisterende behov BehovStatus3 Status = 3 ikke eksisterende behov False true Status = 1 False false Status = 3 False false Status = 3 46/201

47 addmedarbejdertilknytning(medarbejder, Kompetence, int) Metode: addmedarbejdertilknytning(medarbejder, Kompetence, int) Antal muligheder: 4 Navn på test Testet med værdi Sti Forventet resultat NyMedarbTilknytning Ukendt kompetence False Status = 3 OpdateringFejlTid Kendt kompetence Kendt medarbejder samlet tid > 8 True true Null OpdateringStatus0 OpdateringStatus3 Kendt kompetence Kendt medarbejder Status = 0 Kendt kompetence Kendt medarbejder Status = 3 True false true Status = 1 True false false Status = 3 47/201

48 removemedarbejdertilknytning(medarbejdertilknytning) Metode: removemedarbejdertilknytning(medarbejdertilknytning) Antal muligheder: 2 Navn på test Testet med værdi Sti Forventet resultat MedarbTilknStatus3 Status = 3 true Objekt fjernet fra liste MedarbTilknStatus0 Status = 0 False Status = 2 removekompetencebehov(kompetencebehov) Metode: removekompetencebehov(kompetencebehov) Antal muligheder: 2 Navn på test Testet med værdi Sti Forventet resultat KompBehov3 Status = 3 true Objekt fjernet fra liste KompBehov0 Status = 0 False Status = 2 48/201

49 getkompetencebehov(ifkompetence) Metode: getkompetencebehov(ifkompetence) Antal muligheder: 2 Navn på test Testet med værdi Sti Forventet resultat KompBehovFound Eksisterende kompetence true Returnerer kompetencebehov KompBehovNotFound Ikke eksisterende kompetence False Null 49/201

50 addkompetencebehov(kompetencebehov) Metode: addkompetencebehov(kompetencebehov) Antal muligheder: 3 Navn på test Testet med værdi Sti Forventet resultat ExistKompBehovStatus3 Status = 3 eksisterende kompetence nyt behov NonExistKompBehovStatus3 Status = 3 Ikke eksisterende kompetence True true True false Opdateret behov KompetenceBehov tilføjet KompBehovStatus1 Status = 1 False KompetenceBehov tilføjet 50/201

51 getkompetencebehovliste(boolean) Metode: getkompetencebehovliste(boolean) Antal muligheder: 2 Navn på test Testet med værdi Sti Forventet resultat KompBehovListeAlle KompBehovListeSome Parameter = true 2 kompbehov med status 1 og 2 Parameter = false 2 kompbehov med status 1 og 2 True Listens længde = 2 False Listens længde = 1 51/201

52 hasifkompetencebehov(ifkompetence) Metode: hasifkompetencebehov(ifkompetence) Antal muligheder: 3 Navn på test Testet med værdi Sti Forventet resultat haskompbehov Eksisterende kompetence status 1 True True haskompbehovslettet Eksisterende kompetence status 2 False False hasnotkompbehov Ikke eksisterende kompetence False False Screendump fra test 52/201

53 Java koden GUIFrame package solutionmakers; import java.awt.color; import java.awt.dimension; import java.awt.font; import java.awt.rectangle; import java.awt.event.actionevent; import java.awt.event.actionlistener; import java.awt.event.mouseadapter; import java.awt.event.mouseevent; import java.util.arraylist; import javax.swing.; import javax.swing.jbutton; import javax.swing.jcombobox; import javax.swing.jformattedtextfield; import javax.swing.jlabel; import javax.swing.jlist; import javax.swing.jpanel; import javax.swing.jscrollpane; import javax.swing.jseparator; import javax.swing.jtextarea; import javax.swing.jtextfield; import javax.swing.event.; import solutionmakers.facadedomain.; public class GUIFrame extends JFrame // private FacadeDomain facade = FacadeDomain.getInstance(); private String fejlstreng; private JFrame popup; private IFProjekt loadedprojekt; private JTabbedPane jtabbedpane1 = new JTabbedPane(); //private ArrayList<IFKompetence> midlertidigekompetencer = //new ArrayList<IFKompetence>(); private ArrayList<IFKompetenceBehov> listeifkompetencebehov = new ArrayList<IFKompetenceBehov>(); //JPANELS START -- JPANELS START -- JPANELS START -- JPANELS START -- JPANELS START -- JPANELS START private JPanel ProjektFane = new JPanel(); 53/201

54 private JPanel TilknytMedarbFane = new JPanel(); //JPANELS SLUT -- JPANELS SLUT -- JPANELS SLUT -- JPANELS SLUT -- JPANELS SLUT -- JPANELS SLUT // // //ERKL?RINGER - ERKL?RINGER - ERKL?RINGER - ERKL?RINGER - ERKL?RINGER - ERKL?RINGER // // FANE 1 - OPRET/REDIGER PROJEKT FANE 1 -OPRET/REDIGER PROJEKT FANE 1 -OPRET/REDIGER PROJEKT // // //JLABELS START (FANE 1) -- JLABELS START (FANE 1) -- JLABELS START (FANE 1)-- JLABELS START (FANE 1)-- JLABELS START (FANE 1) private JLabel jlabelopretredigerindlaesprojektvaelgfilter = new JLabel(); private JLabel jlabelopretredigerprojektnavn = new JLabel(); private JLabel jlabelopretredigerkunde = new JLabel(); private JLabel jlabelopretredigerprojektleder = new JLabel(); private JLabel jlabelopretredigerkompetencer = new JLabel(); private JLabel jlabelopretredigerkontaktperson = new JLabel(); private JLabel jlabelopretredigerprojektnote = new JLabel(); private JLabel jlabelopretredigerprojektstatus = new JLabel(); private JLabel jlabelopretredigerbehov = new JLabel(); private JLabel jlabelopretredigerkontaktpersontlf = new JLabel(); private JLabel jlabelopretredigerottendedele = new JLabel(); //JLABELS SLUT (FANE 1)-- JLABELS SLUT (FANE 1)-- JLABELS SLUT (FANE 1)-- JLABELS SLUT (FANE 1)-- JLABELS SLUT (FANE 1)-- JLABELS SLUT (FANE 1) //JBUTTONS START (FANE 1)-- JBUTTONS START (FANE 1)-- JBUTTONS START (FANE 1)-- JBUTTONS START (FANE 1)-- JBUTTONS START (FANE 1)-- JBUTTONS START (FANE 1) private JButton jbuttonopretredigergemprojekt = new JButton(); private JButton jbuttonopretredigernulstilfelter = new JButton(); private JButton jbuttonopretredigertilfoejkompetence = new JButton(); //JBUTTONS SLUT (FANE 1)-- JBUTTONS SLUT (FANE 1)-- JBUTTONS SLUT (FANE 1)-- JBUTTONS SLUT (FANE 1)-- JBUTTONS SLUT (FANE 1)-- JBUTTONS SLUT (FANE 1) //JTEXTFIELDS START (FANE 1)-- JTEXTFIELDS START (FANE 1)-- JTEXTFIELDS START (FANE 1)-- JTEXTFIELDS START (FANE 1)-- JTEXTFIELDS START (FANE 1) private JTextField jtextfieldopretredigerangivprojektnavn = new JTextField(); private JTextField jtextfieldopretredigerkontaktperson = new JTextField(); private JTextField jtextfieldopretredigertlftilkontakt = new JTextField(); private JTextField jtextfieldopretredigerbehov = new JTextField(); 54/201

55 //JTEXTFIELDS SLUT (FANE 1)-- JTEXTFIELDS SLUT (FANE 1)-- JTEXTFIELDS SLUT (FANE 1)-- JTEXTFIELDS SLUT (FANE 1)-- JTEXTFIELDS SLUT (FANE 1) //JTEXTAREA START (FANE 1) -- JTEXTAREA START (FANE 1) -- JTEXTAREA START (FANE 1) -- JTEXTAREA START (FANE 1) -- JTEXTAREA START (FANE 1) private JTextArea jtextareaopretredigernote = new JTextArea(); //JTEXTAREA SLUT (FANE 1) -- JTEXTAREA SLUT (FANE 1) -- JTEXTAREA SLUT (FANE 1) -- JTEXTAREA SLUT (FANE 1) -- JTEXTAREA SLUT (FANE 1) -- JTEXTAREA SLUT (FANE 1) //JLIST START (FANE 1) -- JLIST START (FANE 1) -- JLIST START (FANE 1) -- JLIST START (FANE 1) -- JLIST START (FANE 1) private JList jlistopretredigerprojektoversigt = new JList(); private JList jlistopretredigerkompetencebehov = new JList(); //JLIST SLUT (FANE 1) -- JLIST SLUT (FANE 1) -- JLIST SLUT (FANE 1) -- JLIST SLUT (FANE 1) -- JLIST SLUT (FANE 1) //JCOMBOBOX START (FANE 1) -- JCOMBOBOX START (FANE 1) -- JCOMBOBOX START (FANE 1) -- JCOMBOBOX START (FANE 1) -- JCOMBOBOX START (FANE 1) -- JCOMBOBOX START (FANE 1) private JComboBox jcomboopretredigervaelgkunde = new JComboBox(); private JComboBox jcomboopretredigervaelgprojektleder = new JComboBox(); private JComboBox jcomboopretredigerfilterprojektstatus = new JComboBox(); private JComboBox jcomboopretredigerfilteraarstal = new JComboBox(); private JComboBox jcomboopretredigervaelgaarstal = new JComboBox(); private JComboBox jcomboopretredigervaelgkompetence = new JComboBox(); private JComboBox jcomboopretredigervaelgprojektstatus = new JComboBox(); //JCOMBOBOX SLUT (FANE 1) -- JCOMBOBOX SLUT (FANE 1) -- JCOMBOBOX SLUT (FANE 1) -- JCOMBOBOX SLUT (FANE 1) -- JCOMBOBOX SLUT (FANE 1) -- JCOMBOBOX SLUT (FANE 1) //JSCROLLPANE START (FANE 1) -- JSCROLLPANE START (FANE 1) -- JSCROLLPANE START (FANE 1) -- JSCROLLPANE START (FANE 1) -- JSCROLLPANE START (FANE 1) private JScrollPane jscrollpane1 = new JScrollPane(); private JScrollPane jscrollpane3 = new JScrollPane(); private JScrollPane jscrollpane4 = new JScrollPane(); //JSCROLLPANE SLUT (FANE 1) -- JSCROLLPANE SLUT (FANE 1) -- JSCROLLPANE SLUT (FANE 1) -- JSCROLLPANE SLUT (FANE 1) -- JSCROLLPANE SLUT (FANE 1) // // //ERKL?RINGER - ERKL?RINGER - ERKL?RINGER - ERKL?RINGER - ERKL?RINGER - ERKL?RINGER // // FANE 2 - BEMAND PROJEKT FANE 2 - BEMAND PROJEKT FANE 2 - BEMAND PROJEKT FANE 2 - BEMAND PROJEKT // // 55/201

56 //JLABELS START (FANE 2) -- JLABELS START (FANE 2) -- JLABELS START (FANE 2) -- JLABELS START (FANE 2) -- JLABELS START (FANE 2) private JLabel jlabelbemandprojektmedarbejder1 = new JLabel(); private JLabel jlabelbemandprojektmedarbejder2 = new JLabel(); private JLabel jlabelbemandprojektkompetence = new JLabel(); private JLabel jlabelbemandprojekttid = new JLabel(); private JLabel jlabelbemandprojektbemandprojekt = new JLabel(); private JLabel jlabelbemandprojektvaelgprojekt = new JLabel(); private JLabel jlabelbemandprojektmuligemedarbejdere = new JLabel(); private JLabel jlabelbemandprojekttilknyttedemedarbejdere = new JLabel(); private JLabel jlabelopretredigerprojektaar = new JLabel(); private JLabel jlabelbemandprojektmedarbejderdaekning = new JLabel(); private JLabel jlabelbemandprojektmedarbejderdaekning = new JLabel(); //JLABELS SLUT (FANE 2) -- JLABELS SLUT (FANE 2) -- JLABELS SLUT (FANE 2) -- JLABELS SLUT (FANE 2) -- JLABELS SLUT (FANE 2) -- JLABELS SLUT (FANE 2) //JBUTTONS START (FANE 2) -- JBUTTONS START (FANE 2) -- JBUTTONS START (FANE 2) -- JBUTTONS START (FANE 2) -- JBUTTONS START (FANE 2) -- JBUTTONS START (FANE 2) private JButton jbuttonbemandprojekttilknytmedarbejder = new JButton(); private JButton jbuttonbemandprojektfjerntilknyttetmedarbejder = new JButton(); private JButton jbuttonbemandprojektgemprojekt = new JButton(); //JBUTTONS SLUT (FANE 2) -- JBUTTONS SLUT (FANE 2) -- JBUTTONS SLUT (FANE 2) -- JBUTTONS SLUT (FANE 2) -- JBUTTONS SLUT (FANE 2) -- JBUTTONS SLUT (FANE 2) //JTEXTFIELDS START (FANE 2)-- JTEXTFIELDS START (FANE 2)-- JTEXTFIELDS START (FANE 2)-- JTEXTFIELDS START (FANE 2)-- JTEXTFIELDS START (FANE 2) private JTextField jtextfieldbemandprojektmedarbejdernavn = new JTextField(); private JTextField jtextfieldbemandprojektangivtid = new JTextField(); //JTEXTFIELDS SLUT (FANE 2)-- JTEXTFIELDS SLUT (FANE 2)-- JTEXTFIELDS SLUT (FANE 2)-- JTEXTFIELDS SLUT (FANE 2)-- JTEXTFIELDS SLUT (FANE 2) //JTEXTAREA START (FANE 2) -- JTEXTAREA START (FANE 2) -- JTEXTAREA START (FANE 2) -- JTEXTAREA START (FANE 2) -- JTEXTAREA START (FANE 2) private JTextArea jtextareabemandprojektmedarbejderdaekning = new JTextArea(); //JTEXTAREA SLUT (FANE 2) -- JTEXTAREA SLUT (FANE 2) -- JTEXTAREA SLUT (FANE 2) -- JTEXTAREA SLUT (FANE 2) -- JTEXTAREA SLUT (FANE 2) -- JTEXTAREA SLUT (FANE 2) //JLIST START (FANE 2) -- JLIST START (FANE 2) -- JLIST START (FANE 2) -- JLIST START (FANE 2) -- JLIST START (FANE 2) private JList jlistbemandprojektmuligemedarbejdere = new JList(); private JList jlistbemandprojekttilknyttedemedarbejdere = new JList(); //JLIST SLUT (FANE 2) -- JLIST SLUT (FANE 2) -- JLIST SLUT (FANE 2) -- JLIST SLUT (FANE 2) -- JLIST SLUT (FANE 2) //JCOMBOBOX START (FANE 2) -- JCOMBOBOX START (FANE 2) -- JCOMBOBOX START (FANE 2) -- JCOMBOBOX START (FANE 2) -- JCOMBOBOX START (FANE 2) -- JCOMBOBOX START (FANE 2) private JComboBox jcombobemandprojektfilteraarstal = new JComboBox(); private JComboBox jcombobemandprojektfilterprojektstatus = new JComboBox(); private JComboBox jcombobemandprojektvaelgprojekt = new JComboBox(); private JComboBox jcombobemandprojektvaelgkompetence = new JComboBox(); 56/201

57 //JCOMBOBOX SLUT (FANE 2) -- JCOMBOBOX SLUT (FANE 2) -- JCOMBOBOX SLUT (FANE 2) -- JCOMBOBOX SLUT (FANE 2) -- JCOMBOBOX SLUT (FANE 2) -- JCOMBOBOX SLUT (FANE 2) //JSCROLLPANE START (FANE 2) -- JSCROLLPANE START (FANE 2) -- JSCROLLPANE START (FANE 2) -- JSCROLLPANE START (FANE 2) -- JSCROLLPANE START (FANE 2) private JScrollPane jscrollpane5 = new JScrollPane(); private JScrollPane jscrollpane6 = new JScrollPane(); private JScrollPane jscrollpane7 = new JScrollPane(); //JSCROLLPANE SLUT (FANE 2) -- JSCROLLPANE SLUT (FANE 2) -- JSCROLLPANE SLUT (FANE 2) -- JSCROLLPANE SLUT (FANE 2) -- JSCROLLPANE SLUT (FANE 2) private JListListener jl; //private JSeparator jseparator1 = new JSeparator(); private JLabel jlabelstatusbar = new JLabel(); private JPanel jpanelstatusbar = new JPanel(); private JButton jbuttonopretredigerfjernkompetence = new JButton(); private JLabel jlabel3 = new JLabel(); private JLabel jlabelkonsulent = new JLabel(); private JLabel jlabelkonsulentvalue = new JLabel(); private JLabel jlabelkonsulenttid = new JLabel(); private JLabel jlabelkonsulentmedarbejder = new JLabel(); private JLabel jlabelkonsulentmedarbejdervalue = new JLabel(); private JLabel jlabelassistent = new JLabel(); private JLabel jlabelassistentvalue = new JLabel(); private JLabel jlabelassistenttid = new JLabel(); private JLabel jlabelkonsulenttidvalue = new JLabel(); private JLabel jlabelassistenttidvalue = new JLabel(); private JLabel jlabelassistentmedarbejder = new JLabel(); private JLabel jlabelassistentmedarbejdervalue = new JLabel(); private JLabel jlabelassistentmax = new JLabel(); private JLabel jlabelassistentmaxvalue = new JLabel(); private JLabel jlabeldaekningtidtotal = new JLabel(); // public GUIFrame() try jbinit(); catch (Exception e) e.printstacktrace(); // private void jbinit() throws Exception 57/201

58 // // //INITIALISERINGER - INITIALISERINGER - INITIALISERINGER - INITIALISERINGER - INITIALISERINGER // // FANE 1 - OPRET/REDIGER PROJEKT FANE 1 -OPRET/REDIGER PROJEKT FANE 1 -OPRET/REDIGER PROJEKT // // //JLABELS START (FANE 1) -- JLABELS START (FANE 1) -- JLABELS START (FANE 1)-- JLABELS START (FANE 1)-- JLABELS START (FANE 1) jlabelopretredigerprojektnavn.settext("projektnavn"); jlabelopretredigerprojektnavn.setbounds(new Rectangle(500, 70, 120, 20)); jlabelopretredigerkunde.settext("kunder"); jlabelopretredigerkunde.settext("kunde"); jlabelopretredigerkunde.setbounds(new Rectangle(500, 180, 120, 20)); jlabelopretredigerkontaktperson.settext("kontaktperson"); jlabelopretredigerkontaktperson.setbounds(new Rectangle(500, 210, 120, 20)); jlabelopretredigerkontaktpersontlf.settext("tlf. til kontakt"); jlabelopretredigerkontaktpersontlf.setbounds(new Rectangle(500, 250, 120, 20)); jlabelopretredigerprojektnote.settext("projektnote"); jlabelopretredigerprojektnote.setbounds(new Rectangle(500, 510, 120, 20)); jlabelopretredigerprojektleder.settext("projektleder:"); jlabelopretredigerprojektleder.setbounds(new Rectangle(10, 370, 190, 20)); jlabelopretredigerbehov.settext("behov:"); jlabelopretredigerbehov.setbounds(new Rectangle(230, 220, 90, 20)); jlabelopretredigerindlaesprojektvaelgfilter.settext("indl\u00e6s projekt - v\u00e6lg filter:"); jlabelopretredigerindlaesprojektvaelgfilter.setbounds(new Rectangle(430, 10, 195, 20)); jlabelopretredigerprojektleder.settext("projektleder:"); jlabelopretredigerprojektleder.setbounds(new Rectangle(500, 480, 190, 20)); jlabelopretredigerbehov.settext("behov:"); jlabelopretredigerbehov.setbounds(new Rectangle(710, 320, 90, 20)); jlabelopretredigerindlaesprojektvaelgfilter.settext("indlæs projekt"); jlabelopretredigerindlaesprojektvaelgfilter.setbounds(new Rectangle(20, 10, 195, 20)); 58/201

59 jlabelopretredigerkompetencer.settext("kompetencer"); jlabelopretredigerkompetencer.setbounds(new Rectangle(500, 290, 140, 20)); jlabelopretredigerottendedele.settext("/8"); jlabelopretredigerottendedele.setbounds(new Rectangle(890, 320, 20, 20)); jlabelopretredigerprojektaar.settext("projekt\u00e5r"); jlabelopretredigerprojektaar.setbounds(new Rectangle(500, 150, 120, 20)); jlabelopretredigerprojektaar.setsize(new Dimension(120, 20)); jlabelopretredigerprojektnavn.addmouselistener(new MouseAdapter() public void mouseentered(mouseevent e) Statusbar_mouseEntered(e, "Indtast projektets navn."); public void mouseexited(mouseevent e) Statusbar_mouseExited(e); ); jlabelopretredigerprojektaar.addmouselistener(new MouseAdapter() public void mouseentered(mouseevent e) Statusbar_mouseEntered(e, "V\u00E6lg \u00e5rstal for projektet."); public void mouseexited(mouseevent e) Statusbar_mouseExited(e); ); jlabelopretredigerkunde.addmouselistener(new MouseAdapter() public void mouseentered(mouseevent e) Statusbar_mouseEntered(e, "V\u00E6lg en kunde der skal tilknyttes projektet."); public void mouseexited(mouseevent e) Statusbar_mouseExited(e); ); jlabelopretredigerkontaktperson.addmouselistener(new MouseAdapter() public void mouseentered(mouseevent e) Statusbar_mouseEntered(e, "Indtast projektets kontaktperson."); 59/201

60 public void mouseexited(mouseevent e) Statusbar_mouseExited(e); ); jlabelopretredigerkontaktpersontlf.addmouselistener(new MouseAdapter() public void mouseentered(mouseevent e) Statusbar_mouseEntered(e, "Indtast kontaktpersonens telefonnummer."); public void mouseexited(mouseevent e) Statusbar_mouseExited(e); ); jlabelopretredigerkompetencer.addmouselistener(new MouseAdapter() public void mouseentered(mouseevent e) Statusbar_mouseEntered(e, "Tilf\u00D8j kompetencer."); public void mouseexited(mouseevent e) Statusbar_mouseExited(e); ); jlabelopretredigerkompetencer.addmouselistener(new MouseAdapter() public void mouseentered(mouseevent e) Statusbar_mouseEntered(e, "F\u00F8rst udv\u00e6lges en kompetence, derefter v\u00e6lges behovets st\u00f8rrelse i 1/8 \u00e5r."); public void mouseexited(mouseevent e) Statusbar_mouseExited(e); ); jlabelopretredigerprojektleder.addmouselistener(new MouseAdapter() public void mouseentered(mouseevent e) Statusbar_mouseEntered(e, "V\u00E6lg en projektleder."); public void mouseexited(mouseevent e) 60/201

61 ); Statusbar_mouseExited(e); jlabelopretredigerprojektnote.addmouselistener(new MouseAdapter() public void mouseentered(mouseevent e) Statusbar_mouseEntered(e, "Skriv evt. en note der skal tilknyttes projektet."); public void mouseexited(mouseevent e) Statusbar_mouseExited(e); ); jlabelopretredigerprojektstatus.settext("projektstatus"); jlabelopretredigerprojektstatus.setbounds(new Rectangle(500, 120, 120, 20)); jlabelopretredigerprojektstatus.setsize(new Dimension(120, 20)); jlabelopretredigerprojektstatus.addmouselistener(new MouseAdapter() public void mouseentered(mouseevent e) Statusbar_mouseEntered(e, "V\u00E6lg projektets status."); public void mouseexited(mouseevent e) Statusbar_mouseExited(e); ); //JLABELS SLUT (FANE 1)-- JLABELS SLUT (FANE 1)-- JLABELS SLUT (FANE 1)- - JLABELS SLUT (FANE 1)-- JLABELS SLUT (FANE 1)-- JLABELS SLUT (FANE 1) //JBUTTONS START (FANE 1)-- JBUTTONS START (FANE 1)-- JBUTTONS START (FANE 1)-- JBUTTONS START (FANE 1)-- JBUTTONS START (FANE 1)-- JBUTTONS START (FANE 1) jbuttonopretredigernulstilfelter.settext("nulstil felter"); jbuttonopretredigernulstilfelter.setbounds(new Rectangle(500, 630, 190, 20)); jbuttonopretredigergemprojekt.settext("gem projekt"); jbuttonopretredigergemprojekt.setbounds(new Rectangle(220, 520, 190, 20)); jbuttonopretredigertilfoejkompetence.settext("tilf\u00d8j kompetence"); jbuttonopretredigertilfoejkompetence.setbounds(new Rectangle(220, 250, 190, 20)); jbuttonopretredigernulstilfelter.addactionlistener(new ActionListener() public void actionperformed(actionevent e) jbuttonnulstilfelter_actionperformed(e); ); 61/201

62 jbuttonopretredigergemprojekt.settext("gem projekt"); jbuttonopretredigergemprojekt.setbounds(new Rectangle(710, 630, 190, 20)); jbuttonopretredigergemprojekt.addactionlistener(new ActionListener() public void actionperformed(actionevent e) jbuttonopretredigergemprojekt_actionperformed(e); ); jbuttonopretredigertilfoejkompetence.settext("tilf\u00f8j Kompetence"); jbuttonopretredigertilfoejkompetence.setbounds(new Rectangle(710, 350, 190, 20)); jbuttonopretredigertilfoejkompetence.addactionlistener(new ActionListener() public void actionperformed(actionevent e) tilfoejkompetencebutton_actionperformed(e); ); //JBUTTONS SLUT (FANE 1)-- JBUTTONS SLUT (FANE 1)-- JBUTTONS SLUT (FANE 1)-- JBUTTONS SLUT (FANE 1)-- JBUTTONS SLUT (FANE 1)-- JBUTTONS SLUT (FANE 1) //JTEXTFIELDS START (FANE 1)-- JTEXTFIELDS START (FANE 1)-- JTEXTFIELDS START (FANE 1)-- JTEXTFIELDS START (FANE 1)-- JTEXTFIELDS START (FANE 1) jtextfieldopretredigertlftilkontakt.setbounds(new Rectangle(220, 160, 190, 20)); jtextfieldopretredigerangivprojektnavn.setbounds(new Rectangle(710, 70, 190, 20)); jtextfieldopretredigerkontaktperson.setbounds(new Rectangle(710, 210, 190, 20)); jtextfieldopretredigertlftilkontakt.setbounds(new Rectangle(710, 250, 190, 20)); jtextfieldopretredigerbehov.setbounds(new Rectangle(350, 220, 45, 20)); jtextfieldopretredigerbehov.settext("1"); jtextfieldopretredigerbehov.sethorizontalalignment(jtextfield.right); jtextfieldopretredigerbehov.setbounds(new Rectangle(840, 320, 45, 20)); //JTEXTFIELDS SLUT (FANE 1)-- JTEXTFIELDS SLUT (FANE 1)-- JTEXTFIELDS SLUT (FANE 1)-- JTEXTFIELDS SLUT (FANE 1)-- JTEXTFIELDS SLUT (FANE 1) //JTEXTAREA START (FANE 1) -- JTEXTAREA START (FANE 1) -- JTEXTAREA START (FANE 1) -- JTEXTAREA START (FANE 1) -- JTEXTAREA START (FANE 1) jtextareaopretredigernote.setlinewrap(true); //JTEXTAREA SLUT (FANE 1) -- JTEXTAREA SLUT (FANE 1) -- JTEXTAREA SLUT (FANE 1) -- JTEXTAREA SLUT (FANE 1) -- JTEXTAREA SLUT (FANE 1) //JLIST START (FANE 1) -- JLIST START (FANE 1) -- JLIST START (FANE 1) - - JLIST START (FANE 1) -- JLIST START (FANE 1) jlistopretredigerprojektoversigt.setsize(new Dimension(396, 366)); 62/201

dpix til Word Indholdsfortegnelse

dpix til Word Indholdsfortegnelse dpix til Word Indholdsfortegnelse dpix til Word...1 Installation af Java...1 Klargøring af Word...1 Installation (opdatering) af dpix...2 Første start af Word med dpix...2 Udarbejdelse af et opgavesæt...4

Læs mere

I denne manual kan du finde en hurtig introduktion til hvordan du:

I denne manual kan du finde en hurtig introduktion til hvordan du: VORES NORDSJÆLLAND HURTIGT I GANG MANUAL 01: Bruger HVAD INDEHOLDER DENNE MANUAL? I denne manual kan du finde en hurtig introduktion til hvordan du: 1. Finder Vores Nordsjælland hjemmesiden 2. Opretter

Læs mere

Kursusgang 11. Oversigt: Sidste kursusgang Værktøjer til udvikling og implementering af HCI-design Oversigt over Java Swing

Kursusgang 11. Oversigt: Sidste kursusgang Værktøjer til udvikling og implementering af HCI-design Oversigt over Java Swing Kursusgang 11 Oversigt: Sidste kursusgang Værktøjer til udvikling og implementering af HCI-design Oversigt over Java Swing Design af brugerflader 11.1 Samme sted Forskellige steder Sidste kursusgang Samtidigt

Læs mere

Delphi og Databaser for begyndere

Delphi og Databaser for begyndere Denne guide er oprindeligt udgivet på Eksperten.dk Delphi og Databaser for begyndere Denne artikel handler om hvordan man udnytter noget af det bedste i Delphi: Dets gode muligheder for integrering med

Læs mere

Sådan redigerer du en hjemmeside i Umbraco

Sådan redigerer du en hjemmeside i Umbraco Brugermanual til din boligafdelings hjemmeside Sådan redigerer du en hjemmeside i Umbraco Indhold Introduktion... 2 Log på Umbraco og redigér din hjemmeside... 3 Opret ny side... 7 Gem side uden at udgive/publicere

Læs mere

Vejledning. Vejledning til Trio Forvaltningsmodul

Vejledning. Vejledning til Trio Forvaltningsmodul Vejledning til Trio Forvaltningsmodul Indholdsfortegnelse Om Trio Forvaltning... 3 Download Trio... 3 Opstart af Trio Forvaltning... 3 Hvis du har Trio installeret i forvejen... 4 Hvis du IKKE har Trio

Læs mere

Manual Version 2. til oprettelse af hjemmesider for landsbyer i Rebild kommune

Manual Version 2. til oprettelse af hjemmesider for landsbyer i Rebild kommune Manual Version 2 til oprettelse af hjemmesider for landsbyer i Rebild kommune Oversigt: Login Hjemmeside...... side 3 Login Administrationsmodul... side 5 Kategorier.. side 6 Opret/rediger første side...

Læs mere

Serialization i Java

Serialization i Java Serialization i Java Tutorial lavet af Jákup W. Hansen TSU 2006 1.semester 06.novemter 2006 Hvad er Serialization? I vores tekstbog Objects First with Java bliver denne del af Java ikke gennemgået. Men

Læs mere

Brugerdefineret menuer i Access

Brugerdefineret menuer i Access Denne guide er oprindeligt udgivet på Eksperten.dk Brugerdefineret menuer i Access Denne artikel henvender sig primært til let øvede brugere af Access, der ønsker at komme i gang med at tilpasse egne menuer

Læs mere

Version 8 Outlookintegration

Version 8 Outlookintegration Version 8 Outlookintegration - Synkroniser din C&B Kalender med Outlook Med C&B Outlook-integration kan du få synkroniseret dine aftaler, så din C&B Kalender matcher din Outlook-kalender og omvendt. Integrationen

Læs mere

Indhold. Evalueringsvejledning. En undersøgelse fra start til slut involverer 4 programmer: - SurveyXact - Excel - E-learn - SiteCore

Indhold. Evalueringsvejledning. En undersøgelse fra start til slut involverer 4 programmer: - SurveyXact - Excel - E-learn - SiteCore Evalueringsvejledning En undersøgelse fra start til slut involverer 4 programmer: - SurveyXact - Excel - E-learn - SiteCore Indhold 1 - Respondentgruppe hentes... 2 2 Undersøgelsen oprettes i SX... 4 3.

Læs mere

Dual boot. af Windows 7 og Linux Mint. Af Thomas Bødtcher-Hansen

Dual boot. af Windows 7 og Linux Mint. Af Thomas Bødtcher-Hansen Dual boot af Windows 7 og Linux Mint Af Thomas Bødtcher-Hansen Dual boot af Windows 7 og Linux Mint "Dual boot af Windows 7 og Linux Mint" er en udvidelse af min IT guide "Linux Mint med fokus på privatliv

Læs mere

Daglig brug af Jit-klient

Daglig brug af Jit-klient Daglig brug af Jit-klient Indholdsfortegnelse Opret person...3 Alternativ oprettelse...3 Søgning af personer...4 Send besked...5 Vælg besked...6 Opret mappe...6 Opret skabelon...6 Slet mapper og skabeloner...6

Læs mere

09/03 2009 Version 1.4 Side 1 af 37

09/03 2009 Version 1.4 Side 1 af 37 Login til DJAS Gå ind på adressen http://www.djas.dk I feltet Brugernavn skrives den e-mail adresse som brugeren er registeret med i systemet. I feltet Password skrives brugerens adgangskode. Ved at sætte

Læs mere

Sikkerhedskopiering. Sikkerhedskopiering til harddisk.

Sikkerhedskopiering. Sikkerhedskopiering til harddisk. . Generelt I det følgende beskrives det, hvordan du sikkerhedskopierer dine kortdata. Sikkerhedskopifunktionen kopierer alle data i kortmodulet for alle høstår for den aktuelle database. Sikkerhedskopien

Læs mere

Udlæsning af stregkodefil til scanneren 1. Opret mappen pdt på C-drevet (c:\pdt).

Udlæsning af stregkodefil til scanneren 1. Opret mappen pdt på C-drevet (c:\pdt). Indholdsfortegnelse Introduktion... 2 Udlæsning af stregkodefil til scanneren... 3 Installation af scanneren... 5 Indlæsning af datafil i scanneren... 7 Brug af scanneren... 8 Sådan scanner du... 8 Sådan

Læs mere

Videregående programmering i Java

Videregående programmering i Java Videregående programmering i Java Dag 6 Komponenter (og lidt Swing og MVC) Læsning: VP 4, evt. VP 6 Dette materiale er under Åben Dokumentlicens, se http://www.sslug.dk/linuxbog/licens.html Grafiske komponenter

Læs mere

1.TILBUD NYT TILBUD 1.1 TRIN FORUDSÆTNINGER

1.TILBUD NYT TILBUD 1.1 TRIN FORUDSÆTNINGER 1.TILBUD Fanen Tilbud giver en oversigt over alle de tilbud, der ligger i din database. Det er også herfra, at du har mulighed for at oprette, kopiere eller redigere et eksisterende tilbud. Det følgende

Læs mere

Test af It-komponent

Test af It-komponent Test af It-komponent I programmeringssproget Java Programmet Login service Elev: Mads Funch Klasse 2.4 Mat, It, Programmering Skole: Roskilde Tekniske Gymnasium HTX Underviser: Karl Dato: 31-08-2016 Side

Læs mere

Guide til opdatering af Navision Stat med ny funktionalitet - nye objekter, datakonvertering, automatisk indlæsning af datafiler.

Guide til opdatering af Navision Stat med ny funktionalitet - nye objekter, datakonvertering, automatisk indlæsning af datafiler. Side 1 af 20 Navision Stat 7.0 ØSY/JACPM 15-05-2015 Vejledning til Lokal Versionsstyring (VMS) Overblik Guide til opdatering af Navision Stat med ny funktionalitet - nye objekter, datakonvertering, automatisk

Læs mere

Huskesedler. Design og automatisering af regneark. Microsoft Excel 2013

Huskesedler. Design og automatisering af regneark. Microsoft Excel 2013 Huskesedler Design og automatisering af regneark Microsoft Excel 2013 Januar 2017 Knord Side 2 Indholdsfortegnelse Ark... 4 Beskyttelse... 6 Diagram... 7 Eksport af data... 8 Fejlretning i formler... 9

Læs mere

IT opgave. Informationsteknologi B. Vejleder: Karl. Navn: Devran Kücükyildiz. Klasse: 2,4

IT opgave. Informationsteknologi B. Vejleder: Karl. Navn: Devran Kücükyildiz. Klasse: 2,4 IT opgave Informationsteknologi B Vejleder: Karl Navn: Devran Kücükyildiz Klasse: 2,4 Dato:03-03-2009 1 Indholdsfortegnelse 1. Indledning... 3 2. Planlægning... 3 Kommunikationsplanlægning... 3 Problemstillingen...

Læs mere

INSTALLATIONSGUIDE. Installationsguide. for Dynamics AX 4.0. til. dansk udgave. Frederiksberg, januar Docversion: 1.02.

INSTALLATIONSGUIDE. Installationsguide. for Dynamics AX 4.0. til. dansk udgave. Frederiksberg, januar Docversion: 1.02. INSTALLATIONSGUIDE, version 4.81 Frederiksberg, januar 2008 Installationsguide til for Dynamics AX 4.0 dansk udgave h Indhold 1 Indledning... 3 1.1 Systemkrav... 3 1.2 Kritik modtages gerne... 3 1.3 Yderligere

Læs mere

dpix til Writer Indholdsfortegnelse

dpix til Writer Indholdsfortegnelse dpix til Writer Indholdsfortegnelse dpix til Writer...1 Installation af dpix...2 Første start af Writer med dpix...2 Udarbejdelse af et opgavesæt...3 Bilag...5 Kontrol af brugte opgaver...6 Fejlrapportering...6

Læs mere

KMD Brugeradministration til Navision og LDV

KMD Brugeradministration til Navision og LDV KMD Brugeradministration til Navision og LDV Vejledning for Statens Administration og ØSC institutioner. Opdateret 09-09-2015 Indholdsfortegnelse 1 Kom godt i gang... 2 1.1 Login til KMD Brugeradministration...

Læs mere

Dynamic Order Kom godt i gang

Dynamic Order Kom godt i gang Dynamic Order Kom godt i gang Projektstyring Ressourcestyring Kompetencestyring - Timeregistrering Side 1 af 17 Indholdsfortegnelse Dynamic Order Kom godt i gang... 1 Indholdsfortegnelse... 2 Introduktion...

Læs mere

Manual til Kundekartotek

Manual til Kundekartotek 2016 Manual til Kundekartotek ShopPlanner Customers Med forklaring og eksempler på hvordan man håndterer kundeoplysninger www.obels.dk 1 Introduktion... 3 1.1 Formål... 3 1.2 Anvendelse... 3 2 Referencer...

Læs mere

INSTALLATIONSGUIDE. Installationsguide. for Dynamics AX 4.0. til. dansk udgave. Frederiksberg, maj Docversion: 1.01.

INSTALLATIONSGUIDE. Installationsguide. for Dynamics AX 4.0. til. dansk udgave. Frederiksberg, maj Docversion: 1.01. INSTALLATIONSGUIDE Frederiksberg, maj 2007 Installationsguide til for Dynamics AX 4.0 dansk udgave h Indhold 1 Indledning...3 1.1 Systemkrav...3 1.2 Kritik modtages gerne...3 1.3 Yderligere oplysninger...3

Læs mere

Vejledning i brug af dli dokumenthåndteringssystemet til virksomheder

Vejledning i brug af dli dokumenthåndteringssystemet til virksomheder Vejledning i brug af dli dokumenthåndteringssystemet til virksomheder Indhold Generelt... 1 Windows tidligere versioner... 1 Windows 10... 2 Apple Mac... 2 Log på... 2 Rediger dokumentet... 2 Tilføj et

Læs mere

ViKoSys. Virksomheds Kontakt System

ViKoSys. Virksomheds Kontakt System ViKoSys Virksomheds Kontakt System 1 Hvad er det? Virksomheds Kontakt System er udviklet som et hjælpeværkstøj til iværksættere og andre virksomheder som gerne vil have et værktøj hvor de kan finde og

Læs mere

Udlæsning af opslagsfil til scanneren 1. Opret mappen pdt på C-drevet (c:\pdt).

Udlæsning af opslagsfil til scanneren 1. Opret mappen pdt på C-drevet (c:\pdt). Indholdsfortegnelse Introduktion... 2 Udlæsning af opslagsfil til scanneren... 3 Installation af scanneren... 4 Indlæsning af datafil i scanneren... 6 Brug af scanneren... 7 Sådan scanner du... 7 Tømning

Læs mere

Installationsvejledning Alphacam 2017 R1

Installationsvejledning Alphacam 2017 R1 Installationsvejledning Alphacam 2017 R1 Indholds Fortegnelse Indledning - Generelt...3 Windows skal være 64 bit...3 Installation, HUSK at stille brugerrettigheder på din Computer...3 Installation, Skærmkort

Læs mere

7 Mamut Client Manager

7 Mamut Client Manager 7 Mamut Client Manager Tillægsproduktet Mamut Client Manager består af programmerne Mamut Client Start og Mamut Client Update. Ved hjælp af Mamut Client Manager kan du fra et vindue åbne, opdatere og administrere

Læs mere

Tutorial 2: Indlæsning af nye rapporter

Tutorial 2: Indlæsning af nye rapporter Tutorial 2: Indlæsning af nye rapporter Indledning Myndigheder og rådgivere som arbejder med den nationale grundvandskortlægning kan blive oprettet som bruger (redaktør) af rapportdatabasen. Herved får

Læs mere

Vejledning til Teknisk opsætning

Vejledning til Teknisk opsætning Vejledning til Teknisk opsætning v. 1.0 Adm4you, 2010. Indhold Kort om denne vejledning... 3 Generelt om easyourtime... 3 Installation af databasen... 3 Sikkerhed og rettigheder... 4 SQL Login... 4 Rettigheder

Læs mere

Vejledning til KOMBIT KLIK

Vejledning til KOMBIT KLIK Vejledning til KOMBIT KLIK KOMBIT A/S Halfdansgade 8 2300 København S Tlf 3334 9400 www.kombit.dk kombit@kombit.dk CVR 19 43 50 75 0 Version Bemærkning til ændringer/justeringer Dato Ansvarlig 1.0 Første

Læs mere

Navision Stat 7.0. Kvikguide om tilpasning af rollecenteret. Overblik. Side 1 af 29. ØSY/STO 18. maj 2015

Navision Stat 7.0. Kvikguide om tilpasning af rollecenteret. Overblik. Side 1 af 29. ØSY/STO 18. maj 2015 Side 1 af 29 Navision Stat 7.0 ØSY/STO 18. maj 2015 Kvikguide om tilpasning af rollecenteret Overblik Formål Denne kvikguide omhandler de tilpasninger som du kan foretage i Handlingsbåndet, Navigationsmenuen

Læs mere

Installationsvejledning Alphacam 2018 R1

Installationsvejledning Alphacam 2018 R1 Installationsvejledning Alphacam 2018 R1 Indholds Fortegnelse Indledning - Generelt...3 Understøttede Windows Versioner...3 Understøttede låstyper i fremtidige versioner...3 Netværks Drivere skal opdateres

Læs mere

Easy Guide i GallupPC

Easy Guide i GallupPC Easy Guide i GallupPC Version. 6.00.00 Gallup A/S Masnedøgade 22-26 DK 2100 København Ø Telefon 39 27 27 27 Fax 39 27 50 80 Indhold SÅDAN KOMMER DU I GANG MED AT ANVENDE GALLUPPC... 2 TILFØJELSE AF UNDERSØGELSER

Læs mere

idata Side 1/6 Indholdsfortegnelse

idata Side 1/6 Indholdsfortegnelse idata Side 1/6 Indholdsfortegnelse Brugerflade side 2 Indlæsning af tappekort side 2 Transaktioner side 3 Udtræk side 4 Kortspærring side 5 Setup side 6 Hassellunden 4A, 2765 Smørum 44 91 34 51 44 91 34

Læs mere

Annemette Søgaard Hansen/www.dinwebvejleder.dk

Annemette Søgaard Hansen/www.dinwebvejleder.dk Google Docs Dokumenter Indholdsfortegnelse Værktøjer... Side 3 Menuer... Side 5 Opgave... Side 8 Få adgang til filerne fra din computer... Side 16 Vejledende løsning... Side 17 GoogleDocs Dokumenter 2

Læs mere

Sektornet VPN Installationsvejledning Windows Vista/7

Sektornet VPN Installationsvejledning Windows Vista/7 Sektornet VPN Installationsvejledning Windows Vista/7 Version 5.0 Af Jesper Skou Jensen og Mads Udengaard Sørensen 1 Start installationen 1 1 Indledning Denne vejledning gennemgår opsætning af Sektornet

Læs mere

Arkiv i SIMU World. Arkivet ligger i SIMU World, og gør det muligt at arkivere jeres sager direkte i SIMU World.

Arkiv i SIMU World. Arkivet ligger i SIMU World, og gør det muligt at arkivere jeres sager direkte i SIMU World. Indhold Hvad er Arkivet?... 2 Arkiv er elektronisk, og ligger nederst i hver menu... 3 Arkivgrupper... 3 Oprette hovedmapper under de enkelte faner... 5 Oprette sagsmapper under hovedmapper... 6 Arkivering

Læs mere

Kom godt i gang med DLBR Mark Online

Kom godt i gang med DLBR Mark Online Kom godt i gang med DLBR Mark Online DLBR Mark Online indeholder Markplan og Dyrkningsjournal. Markplan bruger du til at du oprette og redigere i bedriftens markplan, mens du bruger dyrkningsjournalen

Læs mere

Indledning. Hvorfor det forholder sig sådan har jeg en masse idéer om, men det bliver for meget at komme ind på her. God fornøjelse med læsningen.

Indledning. Hvorfor det forholder sig sådan har jeg en masse idéer om, men det bliver for meget at komme ind på her. God fornøjelse med læsningen. Indledning...2 Variabler...13 Eksempel: 1...13 Eksempel 2:...13 Eksempel 3:...15 Eksempel 4:...16 Metoder...17 Metode (intet ind og intet ud)...17 Metode (tekst ind)...18 Metode (tekst ind og tekst ud)...19

Læs mere

I tolkeportalen har alle brugere en rolle. Rollen bestemmer hvad man som bruger har adgang til.

I tolkeportalen har alle brugere en rolle. Rollen bestemmer hvad man som bruger har adgang til. Tolkeportalen Brugervejledning til brug af tolkeportalens administrationssider Brugerroller I tolkeportalen har alle brugere en rolle. Rollen bestemmer hvad man som bruger har adgang til. Der findes i

Læs mere

Vejledning til brugeradministrator EDI systemet for FP attester og journaloplysninger

Vejledning til brugeradministrator EDI systemet for FP attester og journaloplysninger Vejledning til brugeradministrator EDI systemet for FP attester og journaloplysninger 18. maj 2018 Vejledning til brugeradministrator oprettelse af afdelinger og brugere til EDI FP attester Denne vejledning

Læs mere

Smart-ebizz Manual til Bookinsystem Indholdsfortegnelse Kom hurtigt i gang med dit booking system:... 3 Overblikket over dit bookingsystem... 4 Hovedside... 4 Kunder... 4 Opret ny Kunde... 4 Vagtplaner...

Læs mere

Tabulex TEA-Privat Venteliste

Tabulex TEA-Privat Venteliste Tabulex TEA-Privat Venteliste Introduktion På ventelisten har du et overblik over potentielle, kommende elever. Med få tast er eleven på ventelisten til det ønskede skoleår med egne oplysninger samt forældreoplysninger.

Læs mere

Elaboration fase 2. semester projekt 2008-04-11. Gruppe 4

Elaboration fase 2. semester projekt 2008-04-11. Gruppe 4 Indholdsfortegnelse Analysemodeller... 4 Domænemodel... 4 ER-model... 5 Designmodeller... 7 Designklassediagram... 7 Sekvensdiagram... 9 Relationel model... 10 Diskussion af datastrukturer, algoritmer

Læs mere

Indholdsfortegnelse. Indholdsfortegnelse.. side 2. Adgang til webgraf 3. Opslag adresse... 4. Styring af layout.. 5. Zoom funktioner..

Indholdsfortegnelse. Indholdsfortegnelse.. side 2. Adgang til webgraf 3. Opslag adresse... 4. Styring af layout.. 5. Zoom funktioner.. Indholdsfortegnelse Indholdsfortegnelse.. side 2 Adgang til webgraf 3 Opslag adresse... 4 Styring af layout.. 5 Zoom funktioner.. 6 Panorere på skærmen. 7 Information om grafikken.... 8-10 Print et udsnit.....

Læs mere

Download, installation og ibrugtagning af CQ

Download, installation og ibrugtagning af CQ Download, installation og ibrugtagning af CQ 1. Download og installation 2. Grundlæggende opsætning af CQ 3. Opdatering af CQ herunder registrering af CQ og licenser (3.12) 4. Opsætning af CQ til netværk.

Læs mere

Assignment #5 Toolbox Contract

Assignment #5 Toolbox Contract Assignment #5 Toolbox Contract Created by: René Kragh Trine Randløv E mail address cph rk70@cphbusiness.dk 23 11 2014 1 Introduktion Dette dokument indeholder en vertikal kontrakt for et system som skal

Læs mere

Daglig brug af JitBesked 2.0

Daglig brug af JitBesked 2.0 Daglig brug af JitBesked 2.0 Indholdsfortegnelse Oprettelse af personer (modtagere)...3 Afsendelse af besked...4 Valg af flere modtagere...5 Valg af flere personer der ligger i rækkefølge...5 Valg af flere

Læs mere

Hvordan opretter jeg MultiUser med en access-database?

Hvordan opretter jeg MultiUser med en access-database? Hvordan opretter jeg MultiUser med en access-database? Hvis du vil starte MultiUser med en access-database, skal du som det første downloade en access-database og placere den på et fælles drev. Du kan

Læs mere

Installationsguide. Integration af erhvervsdata fra NN Markedsdata til Microsoft Dynamics NAV 2015

Installationsguide. Integration af erhvervsdata fra NN Markedsdata til Microsoft Dynamics NAV 2015 Installationsguide Integration af erhvervsdata fra NN Markedsdata til Microsoft Dynamics NAV 2015 Indledning Dette dokument indeholder vejledning til installation af modulet NN Markedsdata i Dynamics NAV

Læs mere

Kom i gang med DANBRO

Kom i gang med DANBRO 1 Indhold... 1 Generelt...2 DANBRO...2 Forkundskaber for at anvende DANBRO...2 Krav til pc...2 Starte DANBRO...2 Installation...3 DANBRO-Manualer...4 Manualer...4 DANBROs Brugergrænseflade...5 Valg af

Læs mere

Grundlæggende Programmering ITU, Efterår 1999. Skriftlig eksamen i Grundlæggende Programmering

Grundlæggende Programmering ITU, Efterår 1999. Skriftlig eksamen i Grundlæggende Programmering Skriftlig eksamen i Grundlæggende Programmering ITU, 20. januar 2000 Alle hjælpemidler tilladt, dog ikke datamat. Eksamen er skriftlig, fire timer, og bedømmes efter 13-skalaen. Opgavesættet består af

Læs mere

DOKUMENTATION OG VEJLEDNING

DOKUMENTATION OG VEJLEDNING DOKUMENTATION OG VEJLEDNING VERSION 2 Registrering af oplysninger på personalet Denne vejledning beskriver, hvordan der registreres oplysninger om personalet. Vejledningen er delt op i 2 dele. - Opdatering

Læs mere

MailMax / Web v4.1. Brugsvejledning til webmail. Copyright 2003 Gullestrup.net

MailMax / Web v4.1. Brugsvejledning til webmail. Copyright 2003 Gullestrup.net MailMax / Web v4.1 Copyright 2003 Gullestrup.net Log ind på webmailen Start med at gå ind på http://webmail.gullestrup.net i din browser. Indtast din Email-adresse samt Adgangskode, som hører til din konto.

Læs mere

18/11 2010 Version 2.0 Side 1 af 36

18/11 2010 Version 2.0 Side 1 af 36 Login til DJAS Gå ind på adressen http://www.djas.dk I feltet Brugernavn skrives den e-mail adresse som brugeren er registeret med i systemet. I feltet Password skrives brugerens adgangskode. Ved at sætte

Læs mere

02101 Indledende Programmering Introduktion til Eclipse

02101 Indledende Programmering Introduktion til Eclipse 02101 Indledende Programmering Introduktion til Eclipse Version 2018 1 Introduktion I dette kursus lægger vi op til at man bruger det integrerede udviklingsmiljø Eclipse. Basalt set er et integreret udviklingsmiljø

Læs mere

Vejledning. Indlæsning af studerende til gruppedannelse i STADS. Indhold. Studie-IT Tlf.:

Vejledning. Indlæsning af studerende til gruppedannelse i STADS. Indhold. Studie-IT Tlf.: Studie-IT Tlf.: 9940 9720 Vejledning Indlæsning af studerende til gruppedannelse i STADS Indhold Indledning.... 2 Udvælgelse af data. i istads... 2 Generering af data... 5 Generering af data fra et excel-ark...

Læs mere

Brug af Discoverer. 1. Start Discoverer ved at klikke på knappen Discoverer på

Brug af Discoverer. 1. Start Discoverer ved at klikke på knappen Discoverer på Oprette projektark med simpel tabel Brug af Discoverer 1. Start Discoverer ved at klikke på knappen Discoverer på www.kirkeportal.dk 2. Angiv kontonummer, brugernavn og password. Det er det samme som anvendes

Læs mere

Annemette Søgaard Hansen/www.dinwebvejleder.dk

Annemette Søgaard Hansen/www.dinwebvejleder.dk Google Docs Regneark Indholdsfortegnelse Værktøjer... Side 3 Menuer... Side 6 Opgave... Side 13 Få adgang til filerne fra din computer... Side 19 Vejledende løsning... Side 20 GoogleDocs Regneark 2 Google

Læs mere

5. OPSÆTNING DOKUMENTSKABELONER 5.1 TRIN

5. OPSÆTNING DOKUMENTSKABELONER 5.1 TRIN 5. OPSÆTNING DOKUMENTSKABELONER Under fanen Dok. skabeloner kan du arbejde med de skabeloner som du har i systemet, eller du kan oprette nye. I denne vejledning kigger vi på hvordan du kan tilrette selve

Læs mere

Opdatering af ISOWARE til version 6.1.0

Opdatering af ISOWARE til version 6.1.0 Opdatering af ISOWARE til version 6.1.0 September 2015 Indhold Kontaktoplysninger... 1 VIGTIGT... 2 Opdatering af trejdepartssoftware... 2 Opdatering til version 6.1.0.... 2 1. Backup af databasen... 3

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 13. marts, 2018 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

MANUAL. Præsentation af Temperaturloggerdata. Version 2.0

MANUAL. Præsentation af Temperaturloggerdata. Version 2.0 MANUAL Præsentation af Temperaturloggerdata Version 2.0 Indholdsfortegnelse FORORD...3 INTRODUKTION...3 KRAV OG FORUDSÆTNINGER...3 INSTALLATION...4 OPSÆTNING...8 PROGRAMOVERBLIK...10 PROGRAMKØRSEL...11

Læs mere

Udarbejdelse af fælles opsætninger

Udarbejdelse af fælles opsætninger VIGTIGT Denne vejledning er KUN aktuel for den bruger, som er ansvarlig superbruger på Næsgaard Markkort ADVICER. Vejledningen omhandler funktionerne til anvendelse af fælles opsætninger for alle brugere

Læs mere

RaaSikkerV3 BRUGERMANUAL

RaaSikkerV3 BRUGERMANUAL RaaSikkerV3 BRUGERMANUAL I GIS 2008 RaaSikker BRUGERMANUAL Udarbejdet for: Titel: Dokumenttype: I GIS ApS RaaSikkerV3 Brugermanual Software manual Udgave: 3.1 Dato: 23-06-08 Udarbejdet af: ASW/NPJ I GIS

Læs mere

KMD Brugeradministration til Navision og LDV

KMD Brugeradministration til Navision og LDV KMD Brugeradministration til Navision og LDV Vejledning for selvejere. Opdateret 09-09-2015 Indholdsfortegnelse 1 Overordnet liste af funktoner... 2 2 Vejledning... 3 2.1 Login til KMD Brugeradministration...

Læs mere

Vejledning til brugeradministrator. EDI systemet for FP attester og journaloplysninger

Vejledning til brugeradministrator. EDI systemet for FP attester og journaloplysninger Vejledning til brugeradministrator EDI systemet for FP attester og journaloplysninger 1. april 2019 Vejledning til brugeradministrator oprettelse af afdelinger og brugere til EDI FP attester Denne vejledning

Læs mere

Statistikmodul i WinPLC

Statistikmodul i WinPLC Juni 2018 Statistikmodul i WinPLC Indlæs patientfortegnelse fra sundhed.dk Inden du benytter statistikmodulet i WinPLC, er det en god ide at indlæse en opdateret patientfortegnelse fra sundhed.dk. Denne

Læs mere

Brugermanual til MOBI:DO Make på Android

Brugermanual til MOBI:DO Make på Android Brugermanual til MOBI:DO Make på Android Introduktion Med MOBI:DO Make kan du oprette guides, som kan ses i MOBI:DO. En guide virker som en guide der fører brugeren hele vejen igennem en arbejdsopgave.

Læs mere

TILLÆG TIL MANUAL Excel-indlæsning i Vvskatalogets administrationssystem

TILLÆG TIL MANUAL Excel-indlæsning i Vvskatalogets administrationssystem 3456.78 123456 TILLÆG TIL MANUAL Excel-indlæsning i Vvskatalogets administrationssystem 30. juli 2015 Indhold Indledning Side 3 Sådan kommer du i gang Side 4 Oprette nye varer Side 5 Ændre eksisterende

Læs mere

BRUGER KURSUS RAMBØLL HJEMMESIDE

BRUGER KURSUS RAMBØLL HJEMMESIDE Til Forsyningsvirksomheder i Danmark Dokumenttype Brugervejledning Rambøll Hjemmeside Full Responsive Dato Oktober 2017 BRUGER KURSUS RAMBØLL HJEMMESIDE BRUGER KURSUS RAMBØLL HJEMMESIDE Revision 01 Dato

Læs mere

OrCAD Capture TCL IDE med Eclipse

OrCAD Capture TCL IDE med Eclipse OrCAD Capture TCL IDE med Eclipse OrCAD Capture TCL er et script sprog til at lave applikationer til OrCAD Capture. Eclipse er et gratis udviklingsmiljø med debug muligheder. Denne guide hjælper med at

Læs mere

Vejledning. Opsætning af Trio Web Vers 2.0 feb. 2010

Vejledning. Opsætning af Trio Web Vers 2.0 feb. 2010 Opsætning af Trio Web Vers 2.0 feb. 2010 Indholdsfortegnelse Opsætning af Trio Web... 3 Generel opsætning af Trio Web... 3 Databaseopsætning... 3 DB... 3 Aar... 4 Login... 4 Internet... 4 Port... 4 Registreringsnøgle...

Læs mere

IT Support Guide. Installation af netværksprinter (direkte IP print)

IT Support Guide. Installation af netværksprinter (direkte IP print) IT Support Guide Denne guide er hentet på www.spelling.dk Program: Microsoft Windows Vista Program sprog version: ENG (US) Guide emne: Installation af netværksprinter (direkte IP print) Publikationsnr.:

Læs mere

Mobile Arbejdssedler. Mobile TID. Mobile Observationer

Mobile Arbejdssedler. Mobile TID. Mobile Observationer Næsgaard MOBILE Generelt Flere vejledninger Næsgaard MOBILE kan anvendes til markregistrering og/eller til tidsregistrering. Har du adgang till både Mark og TID i PC program kan du som administrator bestemme

Læs mere

Opret CFU-kursusevaluering i Survey Xact

Opret CFU-kursusevaluering i Survey Xact Printvenlig side for Forsidetekst Opret CFU-kursusevaluering i Survey Xact www.survey-xact.dk Oprettelsen af en kursusevaluering består af flg. trin: 1. Oprettelse af spørgeskema ud fra en skabelon 2.

Læs mere

Brugermanual. - For intern entreprenør

Brugermanual. - For intern entreprenør Brugermanual - For intern entreprenør Version 1.0 2014 Brugermanual - For Intern Entreprenør Velkommen som bruger på Smartbyg.com. Denne manual vil tage dig igennem de funktioner der er tilgængelig for

Læs mere

KL S EFFEKTMÅLINGS- REDSKAB TIL KONTROLOMRÅDET

KL S EFFEKTMÅLINGS- REDSKAB TIL KONTROLOMRÅDET KL FEBRUAR 2019 TEKNISK VEJLEDNING KL S EFFEKTMÅLINGS- REDSKAB TIL KONTROLOMRÅDET OFFICE VERSION 2010 OG 2013 2 INDHOLD INDHOLD INDLEDNING A. TEKNISKE KRAV SIDE 3 SIDE 4 B. HVORDAN GØRES ALLE VÆRKTØJETS

Læs mere

VA-banken. Vejledning til Brugere og Rettighedsgrupper. Implementeret med VA-banken version Sidst redigeret 14/6-2019

VA-banken. Vejledning til Brugere og Rettighedsgrupper. Implementeret med VA-banken version Sidst redigeret 14/6-2019 VA-banken Implementeret med VA-banken version 2019.1 Sidst redigeret 14/6-2019 Side 1 af 25 Indhold Introduktion... 4 Funktioner i formularen Brugere og Rettighedsgrupper... 5 Formularen Brugere... 6 Opret

Læs mere

Vejledning til de bydende

Vejledning til de bydende Vejledning til de bydende Juni 2013/JET Indledning Indledning ibinder er et web-baseret program, til håndtering af byggeprojekter og ejendomsdrift på en hidtil uset brugervenlig og økonomisk måde. ibinder

Læs mere

UMS SharePoint Portal Opgaveafleveringsmodul

UMS SharePoint Portal Opgaveafleveringsmodul UMS SharePoint Portal Opgaveafleveringsmodul Version 1.0 Indhold UMS SharePoint Portal... 1 Ny opgave... 2 Rediger opgave... 4 Office dokumenter... 5 Kursisters besvarelser... 6 Sådan ser kursister opgaven...

Læs mere

Velkommen til Electro Energy s Prisprogram

Velkommen til Electro Energy s Prisprogram Velkommen til Electro Energy s Prisprogram Denne guide hjælper dig igennem installationen fra download via vores hjemmeside til du kan køre programmet og søge i vores varenumre. Programmet er designet

Læs mere

API-import af kundedata fra e-conomic

API-import af kundedata fra e-conomic API-import af kundedata fra e-conomic Herunder følger en beskrivelse af hvordan du opretter en forbindelse mellem e-conomic og, der tillader at kunder kan blive synkroniseret mellem de to systemer. Opsætning

Læs mere

Brug af Archive-funktion i SportIdent (baseret på version 10.3 af SI-programmerne)

Brug af Archive-funktion i SportIdent (baseret på version 10.3 af SI-programmerne) Brug af Archive-funktion i SportIdent (baseret på version 10.3 af SI-programmerne) Formål: Ved at anvende arkiv-funktionen kan arrangørerne ved et træningsløb uden tilmeldinger eller ved åbne baner hurtigt

Læs mere

Kom godt igang med Inventar registrering

Kom godt igang med Inventar registrering Kom godt igang med Inventar registrering (InventoryDB) (Med stregkodesupport) programmet fra PetriSoft Introduktion... 1 Inventar registrering... 2 Værktøjsudleje... 3 Service database til reperationer

Læs mere

Stifinder er et program til navigere rundt med i dine mapper (biblioteker) på din computers Harddisk.

Stifinder er et program til navigere rundt med i dine mapper (biblioteker) på din computers Harddisk. Stifinder Stifinder er et program til navigere rundt med i dine mapper (biblioteker) på din computers Harddisk. Den bruges også til at Oprette, Slette, Flytte og Omdøbe, samt sortere i dem. Den traditionelle

Læs mere

Filer og Mapper. Filer. Mapper

Filer og Mapper. Filer. Mapper Indhold Filer og Mapper... 3 Filer... 3 Mapper... 3 Stifinder... 4 Eksempler på stifinder... 5 Markering af drev, filer og mapper... 5 Vælg vilkårlige mapper/filer... 7 Selandias drev... 8 Opret ny mappe...

Læs mere

e-konto manual 01.08.2011 e-konto manual Side 1

e-konto manual 01.08.2011 e-konto manual Side 1 e-konto manual 01.08.2011 e-konto manual Side 1 Indhold 1. Overordnet beskrivelse... 3 2. Login... 3 3. Se og ret kundeoplysninger... 4 4. Rediger kontaktoplysninger... 6 5. Skift adgangskode... 7 6. BroBizz-oversigt...

Læs mere

AgroSoft A/S AgroSync

AgroSoft A/S AgroSync AgroSoft A/S AgroSync AgroSync er et AgroSoft A/S værktøj, der bliver brugt til filudveksling imellem WinSvin og PocketPigs. Fordele ved at bruge AgroSync: Brugeren bestemmer overførsels tidspunktet for

Læs mere

Hvordan bruges Avery Nordics Produkt Information System?

Hvordan bruges Avery Nordics Produkt Information System? Hvordan bruges Avery Nordics Produkt Information System? 1. Hvilke oplysninger kan du finde? Det er en portal til download af opdaterede produktdata og -billeder Avery-medarbejdere, partnere og kunder

Læs mere

LEJERBO.DK INDSÆT BILLEDER, GALLERI OG VIDEO

LEJERBO.DK INDSÆT BILLEDER, GALLERI OG VIDEO 1 Indsætte et billede på en side 1. LOG PÅ Log på Mit Lejerbo og gå ind på den lokale side, du skal redigere og klik derefter på Rediger øverst til højre. 2. FIND SIDEN DIT BILLEDE SKAL IND PÅ Klik dig

Læs mere

Indhold. 1. Adgang og afslutning

Indhold. 1. Adgang og afslutning 1 Indhold 1. Adgang og afslutning 2. Menupunkter 3. Tekst 4. Billeder 5. Video 6. Lyd 7. Bannere 8. Bokse 9. Dokumenter 10. Links 11. Iframe 12. Markedspladsen 13. Nyheder 14. Job 15. Kalender 16. Selvbetjeningsbjælken

Læs mere