gip eindwerk

100
Geïntegreerde Proef informaticabeheer Sintjozefsinstituut Handel en Toerisme 2010 - 2011 Paul Hurlebusch 6IB 3

Upload: paul-hurlebusch

Post on 07-Mar-2016

253 views

Category:

Documents


0 download

DESCRIPTION

Eindwerk 2010 - 2011

TRANSCRIPT

Page 1: GIP eindwerk

Geïntegreerde Proef

informaticabeheer

Sintjozefsinstituut Handel en Toerisme

2010 - 2011

Paul Hurlebusch 6IB 3

Page 2: GIP eindwerk
Page 3: GIP eindwerk

3

Woord vooraf

De GIP (Geïntegreerde proef) taak is een verplicht onderdeel in het 6de jaar Informaticabeheer. Er

wordt getoetst naar de algemene kennis die de leerling heeft opgedaan in de derde graad. Het omvat

een automatiseringsproject en een website. Verder wordt de leerling getest op het gebied van talen,

en zijn kennis van bedrijfseconomische aspecten. Er werd ook een stage van twee weken voorzien.

Mijn dank gaat vooral naar mijn stagementor Jeroen De Block. Verder wil ik mijn vakleerkrachten

meneer Beerens, meneer Devriendt, mevrouw De Smet en mevrouw De Meulder bedanken voor de

goede samenwerking en het helpen bij problemen.

Page 4: GIP eindwerk

4

Page 5: GIP eindwerk

5

Inhoudstabel Woord vooraf ............................................................................................................................... 3

Inleiding ...................................................................................................................................... 7

1 Bedrijfseconomische aspecten ........................................................................................... 8

1.1 Eenmanszaak of vennootschap ............................................................................................... 8

1.1.1 Eenmanszaak .......................................................................................................................................... 8

1.1.2 Vennootschap ........................................................................................................................................ 8

1.2 Indeling volgens activiteit, bedrijfsgrootte en juridische vorm ............................................... 9

1.2.1 Sectoren: ................................................................................................................................................ 9

1.2.2 Bedrijfsgrootte ..................................................................................................................................... 10

1.2.3 Juridische vorm .................................................................................................................................... 10

1.3 E-business .............................................................................................................................. 11

1.3.1 Q2C ....................................................................................................................................................... 11

1.3.2 Microsoft Lync ...................................................................................................................................... 12

1.3.3 Outlook ................................................................................................................................................. 12

1.4 Contracten ............................................................................................................................. 13

1.4.1 Bestelbon ............................................................................................................................................. 13

1.4.2 Leveringsbon ........................................................................................................................................ 14

1.4.3 Factuur ................................................................................................................................................. 15

1.4.4 Creditnota ............................................................................................................................................ 16

1.5 Bronnen.................................................................................................................................. 16

2 Stage............................................................................................................................... 17

2.1 Aanvraag stageplaats + curriculum vitae ............................................................................... 17

2.1.1 Aanvraag stageplaats ........................................................................................................................... 17

2.1.2 Curriculum Vitae .................................................................................................................................. 18

2.2 Verslag.................................................................................................................................... 20

2.2.1 Algemeen stageverslag ........................................................................................................................ 20

2.3 Voorstelling van de stage ....................................................................................................... 21

2.3.1 Voorstelling .......................................................................................................................................... 21

2.3.2 Organogram ......................................................................................................................................... 21

2.3.3 Interview met stagementor ................................................................................................................. 22

2.4 Sollicitatiebrief ....................................................................................................................... 23

2.5 Beschrijving van de werking in het bedrijf ............................................................................. 24

2.6 Dagelijkse Stageverslagen ...................................................................................................... 25

2.6.1 Dag 1 .................................................................................................................................................... 25

2.6.2 Dag 2 .................................................................................................................................................... 26

2.6.3 Dag 3 .................................................................................................................................................... 27

2.6.4 Dag 4 .................................................................................................................................................... 28

2.6.5 Dag 5 .................................................................................................................................................... 29

2.6.6 Dag 6 .................................................................................................................................................... 30

2.6.7 Dag 7 .................................................................................................................................................... 31

2.6.8 Dag 8 .................................................................................................................................................... 32

2.6.9 Dag 9 .................................................................................................................................................... 33

2.6.10 Dag 10 .................................................................................................................................................. 34

3 Het bouwen van een statische website ............................................................................ 35

Page 6: GIP eindwerk

6

3.1 Inleiding .................................................................................................................................. 35

3.2 Index....................................................................................................................................... 35

3.3 Verhuur .................................................................................................................................. 36

3.4 Verkoop .................................................................................................................................. 36

3.5 Herstellingen .......................................................................................................................... 37

3.6 Over Ons ................................................................................................................................ 37

4 Informaticaproject .......................................................................................................... 38

4.1 Probleemstelling .................................................................................................................... 38

4.1.1 Probleemstelling .................................................................................................................................. 38

4.1.2 Vragen en antwoorden ........................................................................................................................ 38

4.2 Aanmelden ............................................................................................................................. 39

4.2.1 Screenshot............................................................................................................................................ 39

4.2.2 Besturingselementen ........................................................................................................................... 39

4.2.3 Procedure ............................................................................................................................................. 39

4.2.4 Code ..................................................................................................................................................... 40

4.2.5 Opmaakcode ........................................................................................................................................ 41

4.2.6 Web.config ........................................................................................................................................... 42

4.3 Beheerder .............................................................................................................................. 43

4.3.1 Default .................................................................................................................................................. 43

4.3.2 Brandweerman ..................................................................................................................................... 44

4.3.3 Oefenkaart ........................................................................................................................................... 51

4.3.4 Print Oefenkaart ................................................................................................................................... 58

4.3.5 Oefening ............................................................................................................................................... 60

4.3.6 Opvragingen ......................................................................................................................................... 71

4.3.7 Help ...................................................................................................................................................... 72

4.3.8 Web.config ........................................................................................................................................... 78

4.4 Gebruiker ............................................................................................................................... 79

4.4.1 Default .................................................................................................................................................. 79

4.4.2 Brandweerman ..................................................................................................................................... 80

4.4.3 Oefenkaart ........................................................................................................................................... 86

4.4.4 Web.config ........................................................................................................................................... 92

5 Engels ............................................................................................................................. 93

5.1 List of 10 suppliers ................................................................................................................. 93

5.2 Letter of enquiry .................................................................................................................... 94

5.2.1 Sony ...................................................................................................................................................... 94

5.2.2 Hewlett-Packard ................................................................................................................................... 95

5.3 SME ........................................................................................................................................ 96

5.3.1 text ....................................................................................................................................................... 96

5.3.2 Powerpoint ........................................................................................................................................... 97

Besluit ................................................................................................................................... 100

Page 7: GIP eindwerk

7

Inleiding

De hoofdopdracht van de GIP bestond erin om een automatiseringsproject te maken voor de

brandweer. Ik heb hiervoor samen gewerkt met Florian Dieleman en Brecht Timmerman. De

opdracht was een programma te maken waar men de gegevens over de brandweermannen

(bijvoorbeeld naam, specialisatie…) en de oefenkaarten en de criteria per oefenkaart kon bijhouden.

Verder moeten de brandweermannen aan oefeningen kunnen deelnemen, waarvoor ze per criteria

kunnen slagen of niet.

Voor het onderdeel bedrijfsgericht programmeren kregen we de opdracht een website te maken. We

mochten zelf het onderwerp en de lay-out kiezen. Ik heb gekozen om een website te maken voor de

handelszaak fietsen André waar ik een vakantiejob had gedaan.

Verder werd onze kennis in de talen Engels en Nederlands en onze kennis in bedrijfseconomie getest

via een reeks van opdrachten.

Page 8: GIP eindwerk

8

1 Bedrijfseconomische aspecten

In het 6de

jaar informaticabeheer kwamen we in contact met een bedrijf via de stage die we er liepen.

Bedrijven kun je volgens verschillende criteria opdelen, voor elk criterium zijn er andere regels.

1.1 Eenmanszaak of vennootschap

Als beginnende zelfstandige kun je kiezen om ofwel een eenmanszaak of een vennootschap op te

richten. Aan allebei zijn er zowel voordelen als nadelen, hieronder staan ze allemaal op een rij.

1.1.1 Eenmanszaak

DEFINITIE

Juridische vorm om het eigendom te regelen in een bedrijf waar één persoon de zeggenschap heeft.

Hij mag zoveel werknemers hebben als hij wil, zolang alleen hij het vermogen van de onderneming

beheert.

VOORDELEN

• Lage oprichtingskosten, geen minimumkapitaal vereist.

• Weinig formaliteiten.

• Beslissingsmacht en werking in handen van één persoon.

• De totale opbrengst is voor één persoon.

NADELEN

• Geen scheiding tussen het privévermogen en het bedrijfsvermogen.

• Ziekte of ongeval van de handelaar kunnen voor het bedrijf nefast zijn. De personenbelasting

kent doorgaans hogere tarieven dan de vennootschapsbelasting.

1.1.2 Vennootschap

DEFINITIE

Bedrijf dat is opgericht met kapitaal van mensen die daarvoor in ruil aandelen in het bedrijf krijgen.

VOORDELEN

• Er zijn (in principe) meer personen om de nodige financiële middelen bij mekaar te brengen.

• De vennoten zijn slechts aansprakelijk voor hun inbreng.

• Faillissement van de vennootschap betekent niet automatisch faillissement van de vennoten.

• Het wegvallen door overlijden van één van de vennoten leidt niet tot het einde van de

vennootschap.

• Een voordeliger belastingstelsel.

NADELEN

• Er is in ieder geval een minimum kapitaal vereist.

• Er zijn meer formaliteiten te volbrengen waardoor men een minder soepele werking krijgt.

• De verplichtingen inzake boekhouding zijn veel strenger.

Page 9: GIP eindwerk

9

1.2 Indeling volgens activiteit, bedrijfsgrootte en juridische vorm

Er zijn verschillende manieren om een bedrijf in te delen. Je kunt het indelen volgens sector,

bedrijfsgrootte en juridische vorm. Hieronder worden al deze indelingen uitvoerig besproken.

1.2.1 Sectoren:

De eerste manier van indelen is het indelen in sectoren. In het bedrijfsleven heb je 3 sectoren, je

hebt nog een 4de

sector, maar die is niet commercieel. De sectoren geven aan in welke fase de

productie van een eindproduct is.

Sector Primair Secundair Tertiair Quartaire

Omschrijving Sector die

voedsel of

grondstoffen

levert. Er

gebeurt nog

geen

verwerking van

de verworven

goederen.

De sector met alle

bedrijven en

activiteiten die de

producten uit de

primaire sector

verwerken. De

verkoop aan de

consument gebeurt

doorgaans in de

tertiaire sector

Sector waarin

bedrijven met

de verkoop van

hun producten

of diensten

winst willen

maken.

de quartaire sector

is de sector van de

niet-commerciële

gesubsieerde en of

collectief

gefinancierde

dienstverlening.

Sector zonder oog

op winst.

Behandelde

sectoren

Landbouw,

jacht, veeteelt,

visserij en

delfstofwinning.

Enorm veel,

bijvoorbeeld:

staalproductie,

bierbrouwerij,

autofabrieken...

Enorm veel,

Bijvoorbeeld:

winkels, horeca,

theaters, ICT

bedrijven,

zakelijke

dienstverleners,

advocaten…

Onderwijs, Politie,

gezondheids-zorg…

Mijn bedrijf is gesitueerd in de tertiaire sector. Het biedt diensten aan in de informatica, en verkoopt

hardware en software.

Page 10: GIP eindwerk

10

1.2.2 Bedrijfsgrootte

Je kunt bedrijven ook indelen volgens juridische grote. Je hebt zeer kleine, kleine en grote

ondernemingen. Hieronder is een schema met de verschillende kenmerken per bedrijfsgrootte.

Volgens deze indeling hoort mijn stagebedrijf bij de zeer kleine onderneming.

Onderneming Zeer kleine onderneming Kleine onderneming Grote onderneming

Kenmerken Koper moet een natuurlijk

persoon of een vennootschap

zijn.

Jaaromzet

<= €500 000

In het laaste afgesloten

boekjaar niet meer dan

100 personen

tewerkstellen.

Jaargemiddelde

personeelsbestand: 50

tewerkgestelden.

Jaarlijks Bruttoloon (excl

BTW)

<=€7 300 000

Balanstotaal

<=€ 3 650 000

Alle andere

ondernemingen.

Soort

boekhouding

Keuze tussen enkelvoudige of

dubbele boekhouding. Voor

vennootschappen is wel een

dubbele boekhouding

verplicht.

Dubbele boekhouding Dubbele

boekhouding

1.2.3 Juridische vorm

Bij het oprichten van een bedrijf kun je kiezen om ofwel een eenmanszaak of een vennootschap op

te richten. De kenmerken van een eenmanszaak zijn voornamelijk dat één natuurlijk persoon het

kapitaal van de onderneming beheert. Er is geen verschil tussen het kapitaal van de onderneming en

het kapitaal van de oprichter, dit betekend dus dat wanneer er een financieel probleem is in je

onderneming, dat de overheid je persoonlijke goederen in beslag mag nemen. Een vennootschap

wordt opgericht met het kapitaal van meerdere mensen. Bij een faillissement kan er geen aanspraak

worden gemaakt op persoonlijke goederen.

Mijn bedrijf is een eenmanszaak. De eindverantwoordelijke is Jeroen De Block die ook mijn

stagebegeleider was. Hij heeft deze vorm gekozen omdat hij altijd al moeite had om gezag te

aanvaarden, en dus wou hij zijn eigen baas zijn.

Zijn kinderen hebben allemaal niets te maken met informatica, dus waarschijnlijk zullen ze zijn zaak

verkopen als hij sterft. Het geld dat hij nodig had om de zaak op te richten kwam voornamelijk van

Page 11: GIP eindwerk

11

zijn ouders. Hij heeft niet gestudeerd, daarom was het moeilijk om een lening aan te gaan bij de

bank. Hij is blij met wat hij nu heeft, en zal waarschijnlijk niet meer uitbreiden in de toekomst.

1.3 E-business

Tijdens mijn stage kreeg ik te maken met verschillende informaticatoepassingen. Hieronder zijn er

een paar die ik bijna dagelijks moest gebruiken.

1.3.1 Q2C

Bij mijn stagebedrijf maken ze voornamelijk

gebruik van Q2C. Dit is een software programma

dat een zusterbedrijf waarmee ze samenwerken

heeft gemaakt. Het bevat alle belangrijke

onderdelen die ze nodig hebben. Je kan er

facturen mee maken, en bijhouden welke

computers nog moeten hersteld worden tegen

welke datum. Je kan er ook je aankopen en

verkopen in opnemen, en er zit een agenda in

waarmee je je afspraken met je klanten kan

beheren.

Het programma Q2C is geïnstalleerd op een

cloudserver. Dit betekent dat ze vanop elke

computer met internettoegang aan het

programma kunnen. Dit is zeer handig als je

bijvoorbeeld bij een klant iets moet uitvoeren en

een paswoord nodig hebt.

Page 12: GIP eindwerk

12

1.3.2 Microsoft Lync

Om hun telefooncentrale te beheren gebruiken

ze nu een Microsoft Lync 2010 Server die ik heb

geïnstalleerd. Hiermee kunnen ze bijvoorbeeld

een telefoon doorverwijzen naar hun gsm als er

niemand opneemt op de werkplaats. Je kunt er

ook snel berichten mee sturen naar collega’s.

Omdat er namen van hun klanten in de lijst met

contacten stonden, staat hiernaast het

programma zoals men deze kan terugvinden op

het internet.

1.3.3 Outlook

Om hun mails te beheren en te schrijven

gebruikt mijn stagebedrijf Microsoft

Outlook. Ze controleren hun e-mails

meerdere keren per dag want de servers

van klanten sturen fouten door per e-

mail. Het progamma staat geïnstalleerd

op een Cloudserver. Dit wil zeggen dat

ze het programma kunnen openen op

elke computer met internettoegang. Dit

is zeer handig als je aan het werken bent

bij een klant, en je hebt bepaalde

informatie nodig van een e-mail.

Page 13: GIP eindwerk

13

1.4 Contracten

In het bedrijfsleven zijn er bepaalde documenten die nodig zijn voor de aankoop en verkoop. We

kregen de opdracht om een bestelbon, leveringsbon, factuur en creditnota te maken.

1.4.1 Bestelbon

Page 14: GIP eindwerk

14

1.4.2 Leveringsbon

Page 15: GIP eindwerk

15

1.4.3 Factuur

Page 16: GIP eindwerk

16

1.4.4 Creditnota

1.5 Bronnen

http://nl.wikipedia.org/wiki/Primaire_sector

http://nl.wikipedia.org/wiki/Secundaire_sector

http://nl.wikipedia.org/wiki/Tertiaire_sector

http://nl.wikipedia.org/wiki/Quartaire_sector

http://www.optimumsite.be/assets/optimum/leerkrachten/thema%201.pdf

http://www.netonline.be/ondernemen/detail.asp?id=776

http://www.startenbvba.be/accountancy/215-eenmanszaak-of-vennootschap-voordelen-en-

nadelen-en-vergelijking-.html

Page 17: GIP eindwerk

17

2 Stage

2.1 Aanvraag stageplaats + curriculum vitae

2.1.1 Aanvraag stageplaats

Paul Hurlebusch 2010-10-12

Koningin Astridlaan 66

8200 Brugge

De Computerkliniek

Nijverheidsstraat 100

8310 Assebroek

Aanvraag van een stageplaats

Geachte heer De Block,

Mijn naam is Paul Hurlebusch, en ik zit in mijn laatste jaar Informaticabeheer(TSO) aan het Sint-

jozefsinstituut. Op school hebben we dit jaar een geïntegreerde oefening, hierbij worden alle

kernvakken van de studierichting (tekstverwerking, toegepaste informatica, softwareontwikkeling… )

getest.

De reden waarom ik u contacteer, is omdat we in februari twee weken stage zullen lopen. Ik vroeg

me af of er bij u nog een plaats beschikbaar is. Uw stageplaats interesseert me door de veelzijdigheid

van het werk. Ik zou graag enige werkervaring opdoen op zo veel mogelijk vlakken.

Ik heb een goede kennis van het Nederlands, Frans, Engels en Duits. Verder heb ik over een

basiskennis netwerkbeheer en programmeren. Ik ben ook vertrouwd met MS-office(Word, Excel en

Acces). Deze kennis werd meestal theoretisch gegeven, mijn doel is om ze ook eens in praktijk toe te

passen.

Ik hoop dat het mogelijk is bij uw bedrijf een stageplaats te verkrijgen en ik ben altijd bereid om mijn

CV in een mondeling gesprek te komen toelichten.

Hoogachtend

Paul Hurlebusch

Bijlage: Curriculum Vitae

Page 18: GIP eindwerk

18

2.1.2 Curriculum Vitae

Personalia

Naam: Paul Hurlebusch

Adres: Koningin Astridlaan 66 8200 Brugge

Geboortedatum: 24-06-1993

Geboorteplaats: Wolfenbüttel

Geslacht: Man

Burgerlijke staat: Student

Opleidingen & Cursussen

2011 Opleiding: Informaticabeheer

Instituut: Sint-Jozefsintituut

Zilverstraat 26

8000 Brugge

Resultaat: Diploma secundair onderwijs

Werkervaring

2010 Bedrijf: Fietsen André

Leopoldlaan 9-11

8420 De Haan-Centrum

Functie: Verhuurder

2011 Bedrijf: Yuniit Solutions

Baron Ruzettelaan 240

8310 Assebroek

Functie: Stagair bij Hardware en Support

Talenkennis

• Nederlands: moedertaal

• Duits: goed • Engels: goed • Frans: redelijk

Computerkennis

• MS-office

• Basis netwerkbeheer

• Basis Visual Basic

Page 19: GIP eindwerk

19

In bezit van

• Rijbewijs A3

• Voorlopig rijbewijs B

• Brommer en Fiets

Hobby’s en interesses

• Computer

• Uitgaan

• Sociale netwerken

Referenties

• Ingrid Beirens

Fietsen André

Leopoldlaan 9-11

8420 De Haan-Centrum

• Jeroen De Block

Yuniit Solutions

Baron Ruzettelaan 240

8310 Assebroek

Page 20: GIP eindwerk

20

2.2 Verslag

2.2.1 Algemeen stageverslag

Ik heb mijn stage gelopen bij Yuniit Solutions, een klein computerbedrijf in Assebroek. Ze verkopen

hardware en geven andere bedrijven support voor, tijdens en na de installatie ervan.

Ik heb veel zelfstandig gewerkt, en op die manier heb ik veel bijgeleerd. Meestal heb ik voor

problemen een oplossing moeten zoeken via internet. Daarna probeerde ik ze uit met hulp van mijn

stagebegeleider.

De meeste support gebeurde vanop afstand. Dit kon via het programma LogMeIn. Af en toe moesten

we toch eens langs gaan bij een klant, zoals op 19 januari toen we een UPS (Uninterruptable power

supply) gingen installeren bij een klant. Ook hier heb ik eigenlijk alleen maar goede ervaringen

opgedaan. De meeste klanten zijn heel vriendelijk en meestal krijg je er nog iets te drinken.

Ze spraken allemaal Nederlands, dus ik heb geen andere taalkennis nodig gehad.

In Yuniit zelf was er een aangename atmosfeer. Iedereen was erg behulpzaam. Alles was redelijk

losjes, en je mocht een beetje kiezen hoe je je werk wou plannen.

Al bij al was het een onvergetelijke tijd, die me een goede indruk heeft gegeven over wat mijn

toekomstige job zal inhouden

Page 21: GIP eindwerk

21

2.3 Voorstelling van de stage

2.3.1 Voorstelling

Ik heb mijn stage gedaan bij Yuniit Solutions, een bedrijf in de Baron Ruzettelaan 240 te Assebroek.

Yuniit is gespecialiseerd in het installeren van hardware, en in de support voor tijdens en na de

verkoop. Ze doen ook aan programmeren, maar ik heb gewerkt in de hardware sector. Ik moest

voornamelijk nieuwe hardware klaarmaken en informatie opzoeken op internet.

In het bedrijf heerst een rustige sfeer, omdat de meeste klanten bij wie het syseem op een correcte

wijze is geïnstalleerd achteraf weinig support nodig hebben. De meeste klanten bij Yuniit Solutions

zijn kleine tot middelgrote bedrijven. Meestal zijn ze vriendelijk, maar soms komen er een paar

lastige die bijna elke dag eens bellen gewoon uit gemakzucht.

Om de support te vergemakkelijken werkt Yuniit Solutions met een remote support system. Dit is een

programma waarmee ze elke computer van hun klanten vanop afstand kunnen overnemen en

besturen. Hierdoor moeten ze niet bij elk probleem naar de klanten komen of uren bellen om uit te

leggen aan de klanten wat ze moeten doen. Bij sommige problemen volstaat dit echter niet, en is het

toch nodig om naar de klant te gaan.

Op de werkvloer heerst een rustige en toffe sfeer. Iedereen is vriendelijk, en je mag bij iedereen

terecht met vragen. Men werkt van 9.00u tot 12.00u en dan weer van 13.30 tot 17.00. Tussen de

middag gaat de baas naar de supermarkt om eten te kopen, en dan eet iedereen tezamen. ’s Avonds

mocht ik soms eerder naar huis als er geen dringende opdrachten meer waren.

2.3.2 Organogram

Mijn bedrijf heeft maar twee medewerkers. De baas is Jeroen De Block, maar ze werken al jaren

samen, en beslissen alles tezamen.

Jeroen De Block

Funcite:

• Hardware en support

• Nieuwe klanten zoeken

Christophe Duchaine

Functie:

• Hardware en support

• Op verplaatsing gaan naar klant.

Paul Hurlebusch

Functie: Stagair

Page 22: GIP eindwerk

22

2.3.3 Interview met stagementor

Ik heb mijn stage gedaan bij Yuniit Solutions. Mijn stagebegeleider Jeroen De Block, een vriendelijke

baas, was bereid was een paar vragen te beantwoorden.

Hij studeerde informatica in Gent. Hij behaalde eerst een praktische bachelor in de richting

Toegepaste Informatica. Daarna volgde hij een schakeljaar om zijn master te behalen. Omdat hij wat

moeilijkheden met wiskunde had, deed hij er drie jaar over. Hij beschreef zijn tijd als student als de

beste tijd van zijn leven.

In 2001 richtte hij samen met Christophe Duchaine en Yuri De Groote het bedrijf Yuniit Solutions op.

Hij kon nooit goed met kritiek omgaan en daarom besloot hij om zelfstandig te worden. Hij is blij met

zijn keuze en staat volledig achter zijn job.

Buiten Yuniit Solutions heeft hij ook nog een internetbedrijf dat Cloudcom heet. Hier verhuurt hij

serverruimte aan andere bedrijven om hun documenten en programma’s op elke computer met een

internetverbinding ter beschikking te stellen. Hij probeert om deze twee werken gescheiden te

houden, maar soms zorgt dit voor moeilijkheden in de organisatie.

In de nabije toekomst zou hij zeker niet willen veranderen van werk. Op lange termijn zou hij

misschien nog een paar lessen volgen om dan in de consulting te gaan werken. Maar hij zegt ook dat

dit er waarschijnlijk nooit van zal komen.

Page 23: GIP eindwerk

23

2.4 Sollicitatiebrief

Paul Hurlebusch 2011-02-08

Koningin Astridlaan 66

8200 Brugge

Yuniit Solutions

Baron Ruzettelaan 240

8310 Assebroek

Sollicitatie voor hardware en support medewerker

Geachte heer De Block,

Mijn naam is Paul Hurlebusch, en ik zit in mijn laatste jaar Informaticabeheer(TSO) aan het Sint-

Jozefsinstituut. In januari heb ik twee weken stage gevolgd bij jullie.

De reden waarom ik u contacteer, is omdat ik op zoek ben naar een vaste job. Ik heb gehoord dat er

een plaats vrijkomt bij hardware en support.

Ik heb over een goede kennis van het Nederlands, Frans, Engels en Duits. Verder heb ik een

basiskennis van netwerkbeheer en programmeren. Ik ben ook vertrouwd met MS-office(Word, Excel

en Access). Tijdens mijn stage heb ik bewezen dat ik ze ook kon toepassen in praktijk

Ik hoop dat het mogelijk is om bij uw bedrijf te mogen werken en ik ben altijd bereid om mijn CV in

een mondeling gesprek te komen toelichten.

Hoogachtend

Paul Hurlebusch

Bijlage: Curriculum Vitae

Page 24: GIP eindwerk

24

2.5 Beschrijving van de werking in het bedrijf

Op mijn stageplaats werkte iedereen met Windows 7. Ze hebben er ook servers die allemaal

Windows server 2008 gebruikten.

Ze hebben het complete office pakket geïnstalleerd op hun Cloud server. Dit betekent dat het

programma eigenlijk draait op de server, en het dus niet nodig is dat het geïnstalleerd is op de

computer van de gebruiker. Zo zijn je programma’s, documenten… op elke computer met

internettoegang beschikbaar, wat uiteraard zeer handig is als je bijvoorbeeld een paswoord van een

klant nodig hebt, terwijl je op verplaatsing bent.

Voor hun telefoon en fax gebruiken ze Microsoft Lync. Om te factureren en bij te houden welke

computers nog hersteld moeten worden, hebben ze hun eigen programma geschreven dat Q2C heet.

Elke dag wordt er een algemene back up genomen van alle bestanden. Voor de e-mails is iedereen

zelf verantwoordelijk. Iedereen krijgt een e-mailadres van het bedrijf, maar er worden geen back-ups

genomen.

Page 25: GIP eindwerk

Dagelijks stageverslag

P. VANDENEYNDE JEROEN DE BLOCK

Yuniit Solutions

Baron Rusettelaan 240

8310 Assebroek

050 35 29 99

[email protected] 25

2.6 Dagelijkse Stageverslagen

2.6.1 Dag 1

2.6.1.1 Activiteiten

9.00 - 9.30 Rondleiding

9.30 – 10.00 Installeren van een printer van op afstand

10.00 – 11.00 Herstellen van trage pc

11.00 – 12.00 Documentatie van de stock

12.00 – 13.30 Pauze

13.30 – 15.00 Repareren van computers

15.00 – 17.00 Herinstalleren van Windows 7 + recovery

data van oude Windows 7

2.6.1.2 Verslag

Vandaag heb ik kennisgemaakt met de medewerkers van Yuniit Solutions. Iedereen was vriendelijk

en er heerst een rustige sfeer. Tussen de middag eet iedereen samen.

Ik heb vooral virussen en spyware moeten verwijderen van binnengebrachte computers. Om bij te

houden welke computers moeten worden hersteld, hebben ze zelf een programma geschreven dat

Q2C heet.

Page 26: GIP eindwerk

Dagelijks stageverslag

P. VANDENEYNDE JEROEN DE BLOCK

Yuniit Solutions

Baron Rusettelaan 240

8310 Assebroek

050 35 29 99

[email protected] 26

2.6.2 Dag 2

2.6.2.1 Activiteiten

9.00 – 11.00 Herstellen van 3 pc’s

11.00 – 11.30 Tellen stock

10.30 – 12.30 Beginnen installeren van Microsoft Lync op

een Windows Server 2008.

12.30 – 13.30 Pauze

13.30 – 17.30 Herinstalleren van Windows Vista +

recovery data van oude Windows Vista

2.6.2.2 Verslag

Nadat ik samen met mijn stagebegeleider de binnengebrachte pc's gerepareerd had, kreeg ik de

opdracht om Lync te installeren op een Windows 2008 server. Er waren veel moeilijkheden, het

programma wilde bijvoorbeeld de gebruikers uit de Active Directory niet weergeven, waar ook mijn

stagebegeleider geen antwoord op wist. De rest van de dag heb ik me vooral beziggehouden met het

opzoeken van informatie om deze problemen op te lossen

Page 27: GIP eindwerk

Dagelijks stageverslag

P. VANDENEYNDE JEROEN DE BLOCK

Yuniit Solutions

Baron Rusettelaan 240

8310 Assebroek

050 35 29 99

[email protected] 27

2.6.3 Dag 3

2.6.3.1 Activiteiten

9.00 – 11.30 Installatie van een computer + verder

werken installatie van Microsoft Lync

11.30 – 12.30 UPS installeren bij klant

12.30 – 13.30 Pauze

13.30 – 17.30 Installatie + configuratie Microsoft Lync

2.6.3.2 Verslag

Vandaag heb ik me vooral beziggehouden met het opzoeken van informatie over het programma

Microsoft Lync. Bij de installatie traden er meerdere problemen op waarop ook mijn stagebegeleider

geen antwoord kon geven.Zo bijvoorbeeld accepteerde de server de certificaten van de Certified

Authority niet. Dit is nodig zodat de computer rechten krijgt om gebruikers uit de Active Directory op

te vragen.

We zijn ook een UPS (Uninterruptible power supply) gaan installeren bij een klant, maar in feite

waren dat gewoon een paar kabels die je er in moest steken. Het zorgt ervoor dat wanneer er een

stroompanne is, dat de server toch op een correcte manier kan afsluiten.

Page 28: GIP eindwerk

Dagelijks stageverslag

P. VANDENEYNDE JEROEN DE BLOCK

Yuniit Solutions

Baron Rusettelaan 240

8310 Assebroek

050 35 29 99

[email protected] 28

2.6.4 Dag 4

2.6.4.1 Activiteiten

9.00 – 12.30 Informatie zoeken en configureren van Lync

server en clients

11.30 – 12.30 Pauze

14.00 – 15.30 Informatie zoeken en configureren Lync

server en client

15.30 – 16.30 Informatie opzoeken over potentiële

klanten van Cloudcom

16.30 – 17.00 Configureren Lync server

2.6.4.2 Verslag

Vandaag heb ik me vooral beziggehouden met het opzoeken van informatie om Microsoft Lync te

installeren. Dit is een communicatieprogramma waarmee je bijvoorbeeld een telefooncentrale kan

configureren. Ik heb meestal alleen gewerkt, maar ik kon altijd bij mijn stagebegeleider terecht voor

vragen, bijvoorbeeld over hoe het netwerk was beveiligd. Daarna heb ik Lync op de clients

geïnstalleerd en manueel geconfigureerd. Omdat ze bijna allemaal domain administrators waren,

moest je ze toevoegen aan Lync door middel van een powershell commando.

Page 29: GIP eindwerk

Dagelijks stageverslag

P. VANDENEYNDE JEROEN DE BLOCK

Yuniit Solutions

Baron Rusettelaan 240

8310 Assebroek

050 35 29 99

[email protected] 29

2.6.5 Dag 5

2.6.5.1 Activiteiten

9.00 – 10.00 Laatste afstellingen Lync

10.00 – 12.30 Opzoeken waarom time synchronisatie niet

werkt

12.30 – 14.00 Pauze

14.00 – 17.20 Opzoeken waarom time synchronisatie niet

werkt + installeren Windows op nieuwe pc’s.

2.6.5.2 Verslag

Vandaag heb ik lync ongeveer afgewerkt. Daarna ben ik beginnen opzoeken waarom een bepaalde

server (Windows server 2008 R2) geen tijd synchronisatie met een internet ntp server deed. Dit is

een cruciale stap bij het encrypteren van wachtwoorden. We hebben nog geen oplossing gevonden.

Page 30: GIP eindwerk

Dagelijks stageverslag

P. VANDENEYNDE JEROEN DE BLOCK

Yuniit Solutions

Baron Rusettelaan 240

8310 Assebroek

050 35 29 99

[email protected] 30

2.6.6 Dag 6

2.6.6.1 Activiteiten

9.00 – 10.00 Herstellen van laptop

10.00 – 12.00 Installeren van laptop bij klant in Knokke

12.00 – 14.00 Pauze

14.00 – 16.00 Herstellen van computer + data recovery

16.00 – 17.30 Installatie 2 laptops

2.6.6.2 Verslag

Vandaag heb ik me vooral beziggehouden met het formatteren en herïnstalleren van computers.

Omdat ik dit al kon was het een nogal oninteressant werk. In de voormiddag zijn we een laptop gaan

installeren bij een klant in Knokke.

In de namiddag heb ik een computer hersteld nadat hij verkeerd was afgesloten na een update. Ik

heb ook twee computers klaargemaakt voor verkoop.

Page 31: GIP eindwerk

Dagelijks stageverslag

P. VANDENEYNDE JEROEN DE BLOCK

Yuniit Solutions

Baron Rusettelaan 240

8310 Assebroek

050 35 29 99

[email protected] 31

2.6.7 Dag 7

2.6.7.1 Activiteiten

9.00 – 11.30 Informatie zoeken over SQL server en

certificaten

11.30 – 12.30 Herstellen van laptop

12.30 – 14.00 Pauze

14.30 – 17.30 Informatie zoeken over SQL server en

certificaten

2.6.7.2 Verslag

Vandaag heb ik vooral informatie opgezocht over de SQL server van een klant en hoe je de servers

moet beveiligen door middel van certificaten.

Verder heb ik ook een laptop proberen te herstellen, maar dat lukte niet omdat de grafische kaart of

het moederbord kapot was. Dan heb ik een halfuur moeten bellen met Hewlett-Packard om ze te

overtuigen dat het binnen de garantie viel.

Page 32: GIP eindwerk

Dagelijks stageverslag

P. VANDENEYNDE JEROEN DE BLOCK

Yuniit Solutions

Baron Rusettelaan 240

8310 Assebroek

050 35 29 99

[email protected] 32

2.6.8 Dag 8

2.6.8.1 Activiteiten

9.00 – 12.30 Opzoeken over sql-database beveiligingen

12.30 – 14.30 Pauze

14.30 – 17.30 Opzoeken over sql-database beveiligingen

2.6.8.2 Verslag

Vandaag heb ik informatie opgezocht over sql-database beveiligingen. Ik heb ze nog niet kunnen

uitproberen omdat de server waar hun SQL database opstaat niet mocht crashen. Dit is een soort

databank die je met specifieke commando’s kan aanspreken.

Page 33: GIP eindwerk

Dagelijks stageverslag

P. VANDENEYNDE JEROEN DE BLOCK

Yuniit Solutions

Baron Rusettelaan 240

8310 Assebroek

050 35 29 99

[email protected] 33

2.6.9 Dag 9

2.6.9.1 Activiteiten

9.00 – 12.30 opzoeken info + beveiligen van sql server

12.30 – 14.00 Pauze

14.00 – 16.00 Proberen de SQL server te hacken

16.00 – 17.00 Proberen computer te herstellen en

bestanden over te zetten van een fat 16 hdd

2.6.9.2 Verslag

Vandaag heb ik nog een beetje informatie over het beveiligen van de sql-server van een klant

opgezocht. Dan hebben we hem beveiligd.

In de namiddag moest ik proberen de server te hacken, en de beveiliging indien nodig aan te passen.

Dit leek eerst een leuke opdracht, maar niets wat ik probeerde werkte.

Daarna hebben we geprobeerd data te recoveren van een FAT 16 (indelingstype van data) harde

schijf die kapot was. Het is ons nog niet gelukt.

Page 34: GIP eindwerk

Dagelijks stageverslag

P. VANDENEYNDE JEROEN DE BLOCK

Yuniit Solutions

Baron Rusettelaan 240

8310 Assebroek

050 35 29 99

[email protected] 34

2.6.10 Dag 10

2.6.10.1 Activiteiten

9.00 – 10.00 Herstellen van 2 laptops

10.00 – 12.30 Pauze

12.30 – 17.00 Proberen data van harde schijf terug te

recoveren

17.00 – 17.30 Afscheid nemen

2.6.10.2 Verslag

Vandaag hebben we ons vooral beziggehouden om een DOS-programma van een oude harde schijf

te halen. De harde schijf was corrupt en moest geformatteerd worden. Na het formatteren mijn

stagebegeleider en ik geprobeerd de data te recupereren via het data recovery programma Recover

My Files. Maar na het terughalen van het programma bleek dat het database bestandje was

verdwenen. Mijn stagebegeleider en ik hebben het nog niet teruggevonden.

Page 35: GIP eindwerk

35

3 Het bouwen van een statische website

3.1 Inleiding

Ik heb ervoor gekozen om een website te maken voor fietsen André, waar ik vroeger een vakantiejob

heb gedaan.

3.2 Index

Page 36: GIP eindwerk

36

3.3 Verhuur

3.4 Verkoop

Page 37: GIP eindwerk

37

3.5 Herstellingen

3.6 Over Ons

Page 38: GIP eindwerk

38

4 Informaticaproject

4.1 Probleemstelling

4.1.1 Probleemstelling

Onze opdracht bestaat eruit een programma voor de brandweer van Oostkamp te maken.

Dit programma bevat een database van ongeveer 60 vrijwilligers van wie we bepaalde

eigenschappen bijhouden zoals opleiding en gekende procedures.

Via het programma moeten gegevens uitgelezen, toegevoegd en veranderd kunnen worden. En dit

met een duidelijke en efficiënte gebruikersinterface.

Er moet ook een controle zijn op wie de data mag uitlezen, dit a.d.h.v. een inlogsysteem.

Vanuit het programma moeten ook op een simpele manier de gegevens kunnen worden afgedrukt.

4.1.2 Vragen en antwoorden

Voor we begonnen met programeren waren er natuurlijk een heleboel vragen. Hierbij mochten we

terecht bij onze informaticaleerkracht meneer Berens.

� Moeten de behaalde opleidingen van de brandweermannen en

procedures in een combobox (alfabetisch) verschijnen zodat de gebruiker deze

enkel heeft aan te klikken?

Hierbij eventueel de mogelijkheid om items toe te voegen aan de combobox.

Dit leek me gebruiksvriendelijker en efficiënter voor de gebruiker.

Dat is een goed idee.

� Als "beveiliging", is het voldoende de gebruikers en wachtwoorden op te

slaan in een database (echt veilig lijkt dit me niet)?

Ja je kunt de databank dan nog altijd beveiligen.

� Wie (gebruiker) mag de gegevens opvragen? Enkel de hoogste persoon in de

hiërarchie? Of mogen alle mensen gegevens opvragen (dit dan wel enkel van

personen die een lagere functie hebben dan de gebruiker zelf).

De officieren en opleidingsverantwoordelijken mogen alles bekijken enkel de

brandweermannen mogen enkel hun eigen dossier bekijken.

� Wat zijn al de mogelijke functies (bv.: officier, dienstchef) en deze dan

in hiërarchische volgorde?

dienstchef-kapitein

luitenant (officier)

adjudant

1e sergeant

sergeant

Page 39: GIP eindwerk

39

korporaal

brandweerman

� Moeten het programma uit 2 delen bestaan (één deel voor aanpassingen in de

database, en één deel waar enkel gegevens kunnen worden opgevraagd en afgeprint)

Ja dat mag.

� Zijn er voorkeuren voor de lay-out van zowel het programma als van wat

uitgeprint wordt (bv. logo van de brandweer, themakleuren...)?

Wat brandweerachtig is leuker dan gewoon grijs

� Wordt van elke persoon een tijdsverloop bijgehouden of worden de gegevens overschreven

zodat alleen de laatste gegevens zichtbaar zijn? Mogen gegevens na zoveel jaar zomaar

verwijderd worden?

Er moet een evolutie zichtbaar zijn maar de meest recente gegevens moeten direct

opvraagbaar zijn.Deze gegevens moeten altijd bijgehouden blijven.

4.2 Aanmelden

4.2.1 Screenshot

4.2.2 Besturingselementen

Object Eigenschap Waarde

txtGebruiker Tekst Gebruikersnaam intypen.

txtPaswoord Tekst Paswoord intypen.

lblFout Tekst Foutmelding bij verkeerd

paswoord.

4.2.3 Procedure

Object Gebeurtenis Waarde

btnLogin Click • Indien beheerder �

Page 40: GIP eindwerk

40

doorgaan naar beheerder

homepage

• Indien gebruiker �

doorgaan naar gebruikers

homepage

4.2.4 Code

Partial Class Account_Login Inherits System.Web.UI.Page

Protected Sub LoginButton_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles LoginButton.Click

'Declareren van de variabelen

Dim intGebruiker As Integer Dim strWachtwoord As String

'De datasources updaten met inhoud van tekstbox

dtsGebruiker.DataBind() dtsWachtwoord.DataBind()

'Gebruikersnaam (=ImmatriculatieNr) uit Database halen Dim gvGebruiker As New GridView

gvGebruiker.DataSource = dtsGebruiker

gvGebruiker.DataBind()

'Indien de gebruiker bestaat intGebruiker vullen

Try

intGebruiker = CInt(gvGebruiker.Rows(0).Cells(0).Text.ToString) Catch

End Try

'Wachtwoord uit Database halen

Dim gvWachtwoord As New GridView

gvWachtwoord.DataSource = dtsWachtwoord gvWachtwoord.DataBind()

'Indien wachtwoord bestaat strWachtwoord opvullen

Try strWachtwoord = gvWachtwoord.Rows(0).Cells(0).Text.ToString

Catch

End Try

'Indien de wachtwoorden en gebruikersnamen overeenkomen aanmelden, anders

foutmelding If txtGebruiker.Text = "Beheerder" And txtPasswoord.Text = "Eindwerk2011" Then

FormsAuthentication.RedirectFromLoginPage(txtGebruiker.Text, False)

Response.Redirect("Beheerder/Default.aspx")

ElseIf CInt(txtGebruiker.Text) = intGebruiker And txtPasswoord.Text = strWachtwoord Then

FormsAuthentication.RedirectFromLoginPage(CStr(txtGebruiker.Text), False)

Response.Redirect("Gebruiker/Default.aspx") Else

lblFout.Text = "Verkeerde Gebruikersnaam of Passwoord"

End If End Sub

Page 41: GIP eindwerk

41

End Class

4.2.5 Opmaakcode

<%@ Page Title="Log In" Language="VB" MasterPageFile="Sitemaster Login.master" AutoEventWireup="false"

CodeFile="Login.aspx.vb" Inherits="Account_Login" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> </asp:Content>

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">

<div class="accountInfo"> <fieldset class="login">

<legend>Account Informatie</legend>

<p> <asp:Label ID="lblGebruiker" runat="server"

Text="Gebruiker"></asp:Label>

<asp:TextBox ID="txtGebruiker" runat="server"

CssClass="textEntry"></asp:TextBox> </p>

<p>

<asp:Label ID="lblPasswoord" runat="server" Text="Wachtwoord"></asp:Label>

<asp:TextBox ID="txtPasswoord" runat="server"

CssClass="passwordEntry" TextMode="Password"></asp:TextBox>

</p>

</fieldset>

<p class="submitButton">

<asp:Button ID="LoginButton" runat="server" CommandName="Login"

Text="Log In" ValidationGroup="LoginUserValidationGroup"

style="width: 53px; "/>

</p> <asp:Label ID="lblFout" runat="server" ForeColor="Red"></asp:Label>

<asp:SqlDataSource ID="dtsGebruiker" runat="server"

ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>"

SelectCommand="SELECT [ImmatriculatieNr] FROM [BPFtblBrandweerman]

WHERE ([ImmatriculatieNr] = ?)">

<SelectParameters> <asp:ControlParameter ControlID="txtGebruiker"

Name="ImmatriculatieNr"

PropertyName="Text" Type="String" /> </SelectParameters>

</asp:SqlDataSource>

<asp:SqlDataSource ID="dtsWachtwoord" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>"

ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>"

SelectCommand="SELECT [Wachtwoord] FROM [BPFtblBrandweerman] WHERE

([Wachtwoord] = ?)"> <SelectParameters>

<asp:ControlParameter ControlID="txtPasswoord"

Name="Wachtwoord" PropertyName="Text" Type="String" />

</SelectParameters>

</asp:SqlDataSource> <br />

Page 42: GIP eindwerk

42

</div>

</asp:Content>

4.2.6 Web.config

<?xml version="1.0"?>

<!-- For more information on how to configure your ASP.NET application, please visit

http://go.microsoft.com/fwlink/?LinkId=169433

--> <configuration>

<connectionStrings> <add name="cnnBrandweer" connectionString="Provider=SQLOLEDB.1;Data

Source=www.sintjozefbrugge.be;Persist Security Info=True;Password=6ibbiSchool;User

ID=gebruiker" providerName="System.Data.OleDb" />

</connectionStrings>

<system.web>

<authentication mode="Forms" > <forms name=".ASPXAUTH" loginUrl="Login.aspx" />

</authentication>

<compilation debug="true" strict="false" explicit="true"

targetFramework="4.0"/>

</system.web> </configuration>

Page 43: GIP eindwerk

43

4.3 Beheerder

Gebruiker: Beheerder

Wachtwoord: Eindwerk2011

4.3.1 Default

4.3.1.1 Screenshot

4.3.1.2 Code

Partial Class _Default

Inherits System.Web.UI.Page

End Class

4.3.1.3 Opmaak code

<%@ Page Title="Home Page" Language="VB" MasterPageFile="Site.Master"

AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">

</asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">

<p>

Welkom op de administrator site,<br /> Hier kunt u gegevens toevoegen, aanpassen en verwijderen.</p>

</asp:Content>

Page 44: GIP eindwerk

44

4.3.2 Brandweerman

4.3.2.1 Screenshot

4.3.2.2 Besturingselementen

Object Eigenschap Waarde

cboItem Items Waarden waarop je kunt

zoeken

txtWaarde Tekst Waarde om te zoeken

gvBrandweerman Brandweermannen die voldoen

aan de zoekcriteria

dvBrandweerman Details over geselecteerde

brandweerman, mogelijkheid

om nieuwe toe te voegen

gvBrevetten Brevetten voor geselecteerde

brandweerman

gvSpecialisaties Specialisaties voor

geselecteerde branweerman

txtVoegToeBrev Tekst Naam van het toe te voegen

brevet

txtSpecialisatie Tekst Naam van de toe te voegen

specialisatie

dtsBrandweerman Select SQL Sql van de te selecteren

brandweermannen

dtsBrevetten Select SQL Sql van de brevetten van de

gekozen brandweerman

Page 45: GIP eindwerk

45

dtsSpecialisaties Select SQL Sql van de specialisaties van de

gekozen brandweerman

4.3.2.3 Procedure

Object Gebeurtenis Waarde

btnZoek Click Geef de brandweermannen

met de gevraagde waarde weer

btnVoegToeBrev Click Voeg het brevet toe met de

waarde van txtVoegToeBrev

btnVoegToeSpec Click Voeg de specialisatie toe met

waarde txtSpecialisatie

4.3.2.4 Code

Partial Class _Default

Inherits System.Web.UI.Page

Protected Sub btnZoek_Click(ByVal sender As Object, ByVal e As System.EventArgs)

Handles btnZoek.Click

'SQL commando en parameters toekennen Dim filterExpression As String = cboItem.SelectedValue + " LIKE '%" &

txtWaarde.Text & "%'"

Dim filterparameters As String = "txtWaarde.Text"

'Filter Toepassen

dtsBrandweerman.FilterParameters.Clear()

dtsBrandweerman.FilterExpression = filterExpression gvBrandweerman.DataBind()

'Indien geen resultaten -> waarschuwing in label If Me.gvBrandweerman.Rows.Count = 0 Then

lblGeenWaarde.Text = "Er zijn geen resultaten met opgegeven zoekwaarden"

End If

End Sub

Protected Sub dvBrandweerman_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles dvBrandweerman.PreRender

'Indien er geen entry's zijn in dvBrandweerman, modus veranderen in "insert"

If dvBrandweerman.DataItemCount = 0 Then dvBrandweerman.ChangeMode(FormViewMode.Insert)

End If

End Sub

Protected Sub gvBrandweerman_SelectedIndexChanged(ByVal sender As Object, ByVal e

As System.EventArgs) Handles gvBrandweerman.SelectedIndexChanged 'Declareren variabele

Dim strGeselecteerde As String

'Toekennen geselecteerde brandweerman aan variabele strGeselecteerde = "Geselecteerd: " &

gvBrandweerman.SelectedRow.Cells(2).Text.ToString & " " &

gvBrandweerman.SelectedRow.Cells(3).Text.ToString & "."

'ImmatriculatieNr in textbox zetten (als control te gebruiken bij WHERE (dts))

txtImmatriculatieNr.Text = gvBrandweerman.SelectedRow.Cells(1).Text

'Gepaste panels tonen/verbergen

Page 46: GIP eindwerk

46

pnlVoegBrevetToe.Visible = True

pnlVoegSpecToe.Visible = True

'Info aanpassen naar geselecteerde brandweerman (naam, voornaam) lblInfo.Text = strGeselecteerde.ToString

End Sub

Protected Sub btnVoegToeBrev_Click(ByVal sender As Object, ByVal e As

System.EventArgs) Handles btnVoegToeBrev.Click 'Declareren variabele

Dim strSQLINSERT As String

'SQL insert commando genereren

strSQLINSERT = "INSERT INTO BPFtblBrevetten(Id, Brevet) VALUES('" &

txtImmatriculatieNr.Text.ToString & "', '" & txtBrevet.Text.ToString & "')"

'Toekennen SQL commando en uitvoeren "INSERT"

dtsBrevetten.InsertCommand = strSQLINSERT

dtsBrevetten.Insert() End Sub

Protected Sub btnVoegToeSpec_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnVoegToeSpec.Click

'Declareren variabele

Dim strSQLINSERT As String

'SQL insert commando genereren

strSQLINSERT = "INSERT INTO BPFtblSpecialisatie(Id, Specialisatie) VALUES('" &

txtImmatriculatieNr.Text.ToString & "', '" & txtSpecialisatie.Text.ToString & "')"

'Toekennen SQL commando en uitvoeren "INSERT"

dtsSpecialisaties.InsertCommand = strSQLINSERT dtsSpecialisaties.Insert()

End Sub

End Class

Page 47: GIP eindwerk

47

4.3.2.5 Opmaakcode

<%@ Page Title="Brandweerman" Language="VB" MasterPageFile="~/Beheerder/Site.Master"

AutoEventWireup="false"

CodeFile="Brandweerman.aspx.vb" Inherits="_Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">

<style type="text/css">

.style2

{

height: 23px; width: 154px;

}

.style1

{ height: 23px;

}

.style4 {

width: 214px;

height: 346px; }

.style6

{ width: 193px;

height: 346px;

}

</style> </asp:Content>

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">

Brandweermannen<br />

<br />

<table style="width:43%;" border="solid 1px black" frame="box"> <tr>

<td class="style2">

<asp:DropDownList ID="cboItem" runat="server">

<asp:ListItem Value="ImmatriculatieNr">Immatriculatie Nr</asp:ListItem>

<asp:ListItem>Naam</asp:ListItem>

<asp:ListItem>Voornaam</asp:ListItem> <asp:ListItem Value="BehaaldBrevet">Behaald

Brevet</asp:ListItem>

<asp:ListItem>Functie</asp:ListItem> <asp:ListItem>Specialisatie</asp:ListItem>

</asp:DropDownList>

</td>

<td class="style1"> <asp:TextBox ID="txtWaarde" runat="server"

style="margin-left: 0px"></asp:TextBox>

&nbsp;<asp:Button ID="btnZoek" runat="server" Text="Zoek" />

</td>

</tr> </table>

<asp:Label ID="lblGeenWaarde" runat="server"></asp:Label>

<br /> <table style="width:100%;">

<tr>

<td class="style6" valign="top">

<asp:GridView ID="gvBrandweerman" runat="server"

Page 48: GIP eindwerk

48

AutoGenerateColumns="False" CellPadding="4" DataSourceID="dtsBrandweerman"

ForeColor="#333333" GridLines="None" AllowPaging="True">

<AlternatingRowStyle BackColor="White" />

<Columns> <asp:BoundField DataField="ImmatriculatieNr"

HeaderText="ImmatriculatieNr" SortExpression="ImmatriculatieNr" />

<asp:BoundField DataField="Naam" HeaderText="Naam" SortExpression="Naam" />

<asp:BoundField DataField="Voornaam"

HeaderText="Voornaam" SortExpression="Voornaam" /> <asp:BoundField DataField="Functie"

HeaderText="Functie" SortExpression="Functie" />

<asp:BoundField DataField="Wachtwoord" HeaderText="Wachtwoord"

SortExpression="Wachtwoord" />

</Columns>

<FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />

<HeaderStyle BackColor="#990000" Font-Bold="True"

ForeColor="White" /> <PagerStyle BackColor="#FFCC66" ForeColor="#333333"

HorizontalAlign="Center" />

<RowStyle BackColor="#FFFBD6" ForeColor="#333333" /> <SelectedRowStyle BackColor="#FFCC66" Font-Bold="True"

ForeColor="Navy" />

<SortedAscendingCellStyle BackColor="#FDF5AC" />

<SortedAscendingHeaderStyle BackColor="#4D0000" /> <SortedDescendingCellStyle BackColor="#FCF6C0" />

<SortedDescendingHeaderStyle BackColor="#820000" />

</asp:GridView> <asp:SqlDataSource ID="dtsBrandweerman" runat="server"

ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>"

ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT * FROM [BPFtblBrandweerman]"

OldValuesParameterFormatString="original_{0}">

</asp:SqlDataSource>

<br />

<asp:TextBox ID="txtImmatriculatieNr" runat="server"

Visible="False"></asp:TextBox>

<asp:DetailsView ID="dvBrandweerman" runat="server" AutoGenerateRows="False"

DataSourceID="dtsBrandweerman" Height="50px"

Width="125px"> <Fields>

<asp:BoundField DataField="ImmatriculatieNr"

HeaderText="ImmatriculatieNr" SortExpression="ImmatriculatieNr" />

<asp:BoundField DataField="Naam" HeaderText="Naam"

SortExpression="Naam" /> <asp:BoundField DataField="Voornaam" HeaderText="Voornaam"

SortExpression="Voornaam" />

Page 49: GIP eindwerk

49

<asp:BoundField DataField="Functie" HeaderText="Functie"

SortExpression="Functie" />

<asp:BoundField DataField="Wachtwoord"

HeaderText="Wachtwoord" SortExpression="Wachtwoord" />

</Fields>

</asp:DetailsView>

</td> <td class="style4" valign="top">

<asp:Label ID="lblInfo" runat="server" ForeColor="Red"

Text="Selecteer een brandweerman om de Brevetten en Specialisaties te zien."></asp:Label>

<br />

<asp:GridView ID="gvBrevetten" runat="server" AutoGenerateColumns="False"

CellPadding="4" DataSourceID="dtsBrevetten"

ForeColor="#333333" GridLines="None">

<AlternatingRowStyle BackColor="White" />

<Columns>

<asp:BoundField DataField="Brevet" HeaderText="Brevet"

SortExpression="Brevet" />

</Columns> <FooterStyle BackColor="#990000" Font-Bold="True"

ForeColor="White" />

<HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="#FFCC66"

ForeColor="#333333" HorizontalAlign="Center" /> <RowStyle BackColor="#FFFBD6" ForeColor="#333333"

/>

<SelectedRowStyle BackColor="#FFCC66" Font-

Bold="True" ForeColor="Navy" /> <SortedAscendingCellStyle BackColor="#FDF5AC" />

<SortedAscendingHeaderStyle BackColor="#4D0000" />

<SortedDescendingCellStyle BackColor="#FCF6C0" /> <SortedDescendingHeaderStyle BackColor="#820000"

/>

</asp:GridView> <asp:SqlDataSource ID="dtsBrevetten" runat="server"

ConnectionString="<%$

ConnectionStrings:cnnBrandweer %>"

ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>"

SelectCommand="SELECT [Id], [Brevet] FROM

[BPFtblBrevetten] WHERE ([Id] = ?)"> <SelectParameters>

<asp:ControlParameter

ControlID="txtImmatriculatieNr" Name="Id" PropertyName="Text" Type="String" />

</SelectParameters>

</asp:SqlDataSource> <br />

Page 50: GIP eindwerk

50

<asp:Panel ID="pnlVoegBrevetToe" runat="server"

Visible="False">

<asp:TextBox ID="txtBrevet"

runat="server"></asp:TextBox> <br />

<asp:Button ID="btnVoegToeBrev" runat="server"

Text="Voeg brevet toe" /> </asp:Panel>

<br />

<asp:GridView ID="gvSpecialisaties" runat="server" AutoGenerateColumns="False"

CellPadding="4" DataSourceID="dtsSpecialisaties"

ForeColor="#333333" GridLines="None">

<AlternatingRowStyle BackColor="White" />

<Columns>

<asp:BoundField DataField="Specialisatie" HeaderText="Specialisatie"

SortExpression="Specialisatie" />

</Columns> <FooterStyle BackColor="#990000" Font-Bold="True"

ForeColor="White" />

<HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="#FFCC66"

ForeColor="#333333" HorizontalAlign="Center" />

<RowStyle BackColor="#FFFBD6" ForeColor="#333333" />

<SelectedRowStyle BackColor="#FFCC66" Font-

Bold="True" ForeColor="Navy" /> <SortedAscendingCellStyle BackColor="#FDF5AC" />

<SortedAscendingHeaderStyle BackColor="#4D0000" />

<SortedDescendingCellStyle BackColor="#FCF6C0" /> <SortedDescendingHeaderStyle BackColor="#820000"

/>

</asp:GridView> <asp:SqlDataSource ID="dtsSpecialisaties"

runat="server"

ConnectionString="<%$

ConnectionStrings:cnnBrandweer %>" ProviderName="<%$

ConnectionStrings:cnnBrandweer.ProviderName %>"

SelectCommand="SELECT [Id], [Specialisatie] FROM [BPFtblSpecialisatie] WHERE ([Id] = ?)">

<SelectParameters>

<asp:ControlParameter ControlID="txtImmatriculatieNr" Name="Id"

PropertyName="Text" Type="String" />

</SelectParameters>

</asp:SqlDataSource> <br />

<asp:Panel ID="pnlVoegSpecToe" runat="server"

Visible="False"> <asp:TextBox ID="txtSpecialisatie"

runat="server"></asp:TextBox>

<br /> <asp:Button ID="btnVoegToeSpec" runat="server"

Text="Voeg specialisatie toe" />

</asp:Panel> <br />

<br />

Page 51: GIP eindwerk

51

</td>

</tr>

</table>

<br />

<br /> <br />

</asp:Content>

4.3.3 Oefenkaart

4.3.3.1 Screenshot

4.3.3.2 Besturingselementen

Object Eigenschap Waarde

dvOefenkaarten Oefenkaarten met de gezochte

criteria

gvCriteria Criteria voor oefenkaart uit

dvOefenkaarten

txtCriteria Tekst Naam van het nieuwe criterium

txtKaartNr Tekst Grootste kaartnummer

verkregen uit dtsGrootsteGetal

dtsGrootsteGetal Select SQL Grootste KaartNr uit

tblOefenkaarten

dtsOefenkaarten Select SQL Sql om alle oefenkaarten uit

tblOefenkaarten te halen

Page 52: GIP eindwerk

52

dtsCriteria Select SQL Bevat de Criteria van de

oefenkaart uit dvOefenkaarten

4.3.3.3 Procedure

Object Gebeurtenis Waarde

btnVoegToe Click Voeg de criteria toe met de

waarde txtCriteria

btnPrint Click Stuurt door naar de print

pagina

4.3.3.4 Code

Partial Class _Default

Inherits System.Web.UI.Page

Protected Sub dvOefenkaarten_DataBound(ByVal sender As Object, ByVal e As System.EventArgs) Handles dvOefenkaarten.DataBound

'txtKaartNr Opvullen indien er een entry is in dvOefenkaarten

Try txtKaartNr.Text = dvOefenkaarten.Rows(0).Cells(1).Text

dtsCriteria.DataBind()

gvCriteria.DataBind() Catch ex As Exception

End Try

End Sub

Protected Sub dvOefenkaarten_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles dvOefenkaarten.PreRender

'Als er geen items in de database zitten -> insert weergave

If dvOefenkaarten.DataItemCount = 0 Then dvOefenkaarten.ChangeMode(FormViewMode.Insert)

End If

End Sub

Protected Sub btnVoegToe_Click(ByVal sender As Object, ByVal e As

System.EventArgs) Handles btnVoegToe.Click 'CriteriaNr genereren adhv max (sql in dts)

Dim intGetal As Integer

intGetal = 0

Dim gv As New GridView

gv.DataSource = dtsGrootsteGetal gv.DataBind()

Try

intGetal = gv.Rows(0).Cells(0).Text

Catch ex As Exception

End Try

'SQL insert commando: genereren, toekennen en uitvoeren

Dim strInsert As String strInsert = "INSERT INTO BPFtblCriteria (CriteriaNr, Beschrijving, KaartNr)

VALUES ('" & intGetal + 1 & "', '" & TextBox1.Text.ToString & "', '" & txtKaartNr.Text

& "')"

dtsCriteria.InsertCommand = strInsert

Page 53: GIP eindwerk

53

dtsCriteria.Insert()

'Textbox leegmaken

TextBox1.Text = ""

End Sub

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

Handles Me.Load 'txtKaartnr opvullen indien er een entry is in dvOefenkaarten

Try

txtKaartNr.Text = dvOefenkaarten.Rows(0).Cells(1).Text Catch

End Try

End Sub

Protected Sub btnPrint_Click(ByVal sender As Object, ByVal e As System.EventArgs)

Handles btnPrint.Click 'Doorverwijzen naar Printen.aspx

Response.Redirect("..\Printen.aspx")

End Sub End Class

Page 54: GIP eindwerk

54

4.3.3.5 Opmaakcode

<%@ Page Title="Brandweerman" Language="VB" MasterPageFile="~/Beheerder/Site.Master"

AutoEventWireup="false"

CodeFile="Oefenkaarten.aspx.vb" Inherits="_Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">

<style type="text/css">

.style1 {

width: 339px;

} </style>

</asp:Content>

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">

Oefenkaarten

<br />

<asp:Panel ID="pnlBewerkenVerwijderen" runat="server">

<p>&nbsp;</p>

<table style="width:100%;"> <tr>

<td class="style1" valign="top">

Oefenkaart:<br /> <asp:DetailsView ID="dvOefenkaarten"

runat="server" AllowPaging="True"

AutoGenerateRows="False"

DataKeyNames="KaartNr" DataSourceID="dtsOefenkaarten" Height="50px" Width="125px">

<Fields>

<asp:BoundField DataField="KaartNr" HeaderText="KaartNr"

SortExpression="KaartNr"

ReadOnly="True" /> <asp:BoundField DataField="Onderwerp"

HeaderText="Onderwerp"

SortExpression="Onderwerp" />

<asp:CommandField ShowDeleteButton="True" ShowEditButton="True"

ShowInsertButton="True" />

</Fields> </asp:DetailsView>

<br />

<br /> <asp:SqlDataSource ID="dtsOefenkaarten"

runat="server"

ConflictDetection="CompareAllValues"

ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>"

DeleteCommand="DELETE FROM

[BPFtblOefenkaarten] WHERE [KaartNr] = ? AND (([CriteriaNr] = ?) OR ([CriteriaNr] IS NULL AND ? IS NULL)) AND (([Onderwerp] = ?) OR ([Onderwerp] IS NULL AND ? IS NULL))"

InsertCommand="INSERT INTO

[BPFtblOefenkaarten] ([KaartNr], [CriteriaNr], [Onderwerp]) VALUES (?, ?, ?)" OldValuesParameterFormatString="original_{0}"

ProviderName="<%$

ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT * FROM

[BPFtblOefenkaarten]"

Page 55: GIP eindwerk

55

UpdateCommand="UPDATE [BPFtblOefenkaarten] SET

[CriteriaNr] = ?, [Onderwerp] = ? WHERE [KaartNr] = ? AND (([CriteriaNr] = ?) OR

([CriteriaNr] IS NULL AND ? IS NULL)) AND (([Onderwerp] = ?) OR ([Onderwerp] IS NULL

AND ? IS NULL))"> <DeleteParameters>

<asp:Parameter Name="original_KaartNr"

Type="String" /> <asp:Parameter Name="original_CriteriaNr"

Type="Int32" />

<asp:Parameter Name="original_CriteriaNr" Type="Int32" />

<asp:Parameter Name="original_Onderwerp"

Type="String" /> <asp:Parameter Name="original_Onderwerp"

Type="String" />

</DeleteParameters>

<InsertParameters> <asp:Parameter Name="KaartNr"

Type="String" />

<asp:Parameter Name="CriteriaNr" Type="Int32" />

<asp:Parameter Name="Onderwerp"

Type="String" /> </InsertParameters>

<UpdateParameters>

<asp:Parameter Name="CriteriaNr"

Type="Int32" /> <asp:Parameter Name="Onderwerp"

Type="String" />

<asp:Parameter Name="original_KaartNr" Type="String" />

<asp:Parameter Name="original_CriteriaNr"

Type="Int32" /> <asp:Parameter Name="original_CriteriaNr"

Type="Int32" />

<asp:Parameter Name="original_Onderwerp" Type="String" />

<asp:Parameter Name="original_Onderwerp"

Type="String" />

</UpdateParameters> </asp:SqlDataSource>

</td>

<td style="text-align: left" valign="top"> <asp:GridView ID="gvCriteria" runat="server"

AutoGenerateColumns="False"

CellPadding="4" DataKeyNames="CriteriaNr" DataSourceID="dtsCriteria"

ForeColor="#333333" GridLines="None">

<AlternatingRowStyle BackColor="White" />

<Columns> <asp:BoundField DataField="Beschrijving"

HeaderText="Criteria"

SortExpression="Beschrijving" /> <asp:CommandField ShowDeleteButton="True"

ShowEditButton="True" />

</Columns> <FooterStyle BackColor="#990000" Font-

Bold="True" ForeColor="White" />

<HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />

Page 56: GIP eindwerk

56

<PagerStyle BackColor="#FFCC66"

ForeColor="#333333" HorizontalAlign="Center" />

<RowStyle BackColor="#FFFBD6"

ForeColor="#333333" /> <SelectedRowStyle BackColor="#FFCC66" Font-

Bold="True" ForeColor="Navy" />

<SortedAscendingCellStyle BackColor="#FDF5AC" />

<SortedAscendingHeaderStyle

BackColor="#4D0000" /> <SortedDescendingCellStyle BackColor="#FCF6C0"

/>

<SortedDescendingHeaderStyle BackColor="#820000" />

</asp:GridView>

<asp:SqlDataSource ID="dtsCriteria" runat="server"

ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>"

DeleteCommand="DELETE FROM [BPFtblCriteria]

WHERE [CriteriaNr] = ?" InsertCommand="INSERT INTO [BPFtblCriteria]

([CriteriaNr], [KaartNr], [Beschrijving]) VALUES (?, ?, ?)"

ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>"

SelectCommand="SELECT * FROM [BPFtblCriteria]

WHERE ([KaartNr] = ?)"

UpdateCommand="UPDATE [BPFtblCriteria] SET

[KaartNr] = ?, [Beschrijving] = ? WHERE [CriteriaNr] = ?">

<DeleteParameters> <asp:Parameter Name="CriteriaNr"

Type="Int32" />

</DeleteParameters> <InsertParameters>

<asp:Parameter Name="CriteriaNr"

Type="Int32" /> <asp:Parameter Name="KaartNr"

Type="String" />

<asp:Parameter Name="Beschrijving"

Type="String" /> </InsertParameters>

<SelectParameters>

<asp:ControlParameter ControlID="txtKaartNr" Name="KaartNr" PropertyName="Text"

Type="String" />

</SelectParameters> <UpdateParameters>

<asp:Parameter Name="KaartNr"

Type="String" />

<asp:Parameter Name="Beschrijving" Type="String" />

<asp:Parameter Name="CriteriaNr"

Type="Int32" /> </UpdateParameters>

</asp:SqlDataSource>

<br /> Een nieuw Criterium toevoegen<br />

<asp:TextBox ID="TextBox1"

runat="server"></asp:TextBox> <br />

<br />

Page 57: GIP eindwerk

57

<asp:Button ID="btnVoegToe" runat="server"

Text="Opslaan" />

<br />

<asp:TextBox ID="txtKaartNr" runat="server" Visible="False"></asp:TextBox>

<br />

</td>

</tr>

</table>

<br />

<asp:Button ID="btnPrint" runat="server" Text="Print Oefeningkaart" />

&nbsp;&nbsp;&nbsp;

<asp:SqlDataSource ID="dtsGrootsteGetal" runat="server"

ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$

ConnectionStrings:cnnBrandweer.ProviderName %>"

SelectCommand="SELECT MAX(CriteriaNr) FROM BPFtblCriteria;">

</asp:SqlDataSource>

<br /> </asp:Panel>

<br />

<br />

<br />

</asp:Content>

Page 58: GIP eindwerk

58

4.3.4 Print Oefenkaart

4.3.4.1 Screenshot

4.3.4.2 Besturingselementen

Object Eigenschap Waarde

cboKaart Items Alle oefenkaarten (naam)

dtsKaart Select SQL Sql om alle waarden uit

tblOefenkaarten te halen

lblKaart Text Geselecteerde kaartnummer

uit cboKaart

gvCriteria Alle Criteria per geselecteerde

oefenkaart (cboKaart)

dtsCriteria Select SQL Sql om alle Criteria voor de

geselecteerde oefenkaart uit

tblCriteria te halen

4.3.4.3 Procedure

Object Gebeurtenis Waarde

btnPrint Click Print de pagina

4.3.4.4 Code

Partial Class Printen Inherits System.Web.UI.Page

Protected Sub btnPrint_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnPrint.Click

'Alles verbergen wat niet afgedrukt moet worden

lblKaartNr.Text = "Kaart nr.: " & cboKaart.SelectedItem.Text

pnlWeg.Visible = False btnPrint.Visible = False

'Afdrukken Response.Write("<script language=javascript>window.print();</script>")

End Sub End Class

Page 59: GIP eindwerk

59

4.3.4.5 Opmaak Code

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Printen.aspx.vb"

Inherits="Printen" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server">

<title></title>

</head> <body>

<form id="form1" runat="server">

<div>

<asp:Panel ID="pnlWeg" runat="server"> <asp:DropDownList ID="cboKaart" runat="server"

DataSourceID="dtsKaart"

DataTextField="KaartNr" DataValueField="KaartNr"> </asp:DropDownList>

<asp:SqlDataSource ID="dtsKaart" runat="server"

ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>"

SelectCommand="SELECT DISTINCT [KaartNr] FROM [BPFtblCriteria]">

</asp:SqlDataSource> <br />

</asp:Panel>

<br /> <br />

<asp:Label ID="lblKaartNr" runat="server" Font-Size="Large" Font-

Bold="True"></asp:Label> <br />

<br />

<asp:Label ID="lblDatum" runat="server" Text="Datum: ........................."></asp:Label>

<br />

<br />

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="CriteriaNr" DataSourceID="dtsCriteria" Width="1187px">

<Columns>

<asp:BoundField DataField="Beschrijving" HeaderText="Criteria" SortExpression="Beschrijving" >

<HeaderStyle Height="200px" Width="150px" />

</asp:BoundField> <asp:TemplateField>

<ItemStyle Width="50px" />

</asp:TemplateField>

<asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField>

<asp:TemplateField></asp:TemplateField>

<asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField>

<asp:TemplateField></asp:TemplateField>

<asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField>

<asp:TemplateField></asp:TemplateField>

<asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField>

<asp:TemplateField></asp:TemplateField>

<asp:TemplateField></asp:TemplateField>

<asp:TemplateField></asp:TemplateField>

Page 60: GIP eindwerk

60

<asp:TemplateField></asp:TemplateField>

<asp:TemplateField></asp:TemplateField>

<asp:TemplateField></asp:TemplateField>

<asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField>

<asp:TemplateField></asp:TemplateField>

</Columns> </asp:GridView>

<asp:SqlDataSource ID="dtsCriteria" runat="server"

ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>"

SelectCommand="SELECT DISTINCT [Beschrijving], [KaartNr], [CriteriaNr]

FROM [BPFtblCriteria] WHERE ([KaartNr] = ?)"> <SelectParameters>

<asp:ControlParameter ControlID="cboKaart" Name="KaartNr"

PropertyName="SelectedValue" Type="String" />

</SelectParameters> </asp:SqlDataSource>

<br />

</div>

<asp:Button ID="btnPrint" runat="server" Text="Print" /> </form>

</body>

</html>

4.3.5 Oefening

4.3.5.1 Screenshot

4.3.5.2 Besturingselementen

Object Eigenschap Waarde

cldKalendar Selected date Te selecteren datum

txtDuur Tekst Duur van de oefening

Page 61: GIP eindwerk

61

lblOefenNr Tekst Max oefening nummer uit

tblOefeningen

dtsMaxOefNr Select SQL Sql om maximum oefening

nummer uit tblOefeningen te

halen

cboKaart Itmes Alle oefenkaarten (naam)

dtsKaart Select SQL Sql om alle oefenkaarten uit

tblOefenkaarten te halen

gvBrandweerman Alle brandweermannen

lstToegevoegdeBrandweer Items Toegevoegde

brandweermannen

dtsBrandweerman Select SQL Sql om brandweermannen uit

tblBrandweermannen te halen

dvBrandweerman Alle geselecteerde

brandweermannen weergeven

dtsGeselecteerde

Brandweermannen

Select SQL Sql om de geselecteerde

brandweermannen

fvGeslaagd Per criteria een tekstbox om

aan te duiden of de

brandweerman geslaagd is

dtsCriteria Select SQL Sql om criteria van de

geselecteerde oefenkaart in de

formview te steken

dtsOefening Insert SQL Sql om de oefening toe te

voegen

dtsMaxId Select SQL Sql om maximum Id van

tblOefeningen te krijgen

lblControleGetal Tekst Als de waarde ervan gelijk is

aan die van dtsAantalCriteria,

brandweerman toevoegen aan

tblBehaald

dtsAantalCriteria Selcect SQL Sql om de criteria te tellen

dtsBehaald Insert SQL Brandweerman toevoegen aan

tblBehaald indien hij geslaagd is

4.3.5.3 Procedure

Object Gebeurtenis Waarde

btnGa Click Ga door naar

pnlOefenkaartToevoegen, en

verberg de rest

btnVerwijder Click Verwijder de brandweerman

uit lstToegevoegdeBrandweer

Page 62: GIP eindwerk

62

btnGegevensInvullen Click Ga door naar

pnlGegevensInvullen, en

verberg de rest

btnOpslaan Click Sla de brandweerman op

4.3.5.4 Code

Partial Class _Default

Inherits System.Web.UI.Page

Protected Sub gvBranweerman_SelectedIndexChanged(ByVal sender As Object, ByVal e

As System.EventArgs) Handles gvBranweerman.SelectedIndexChanged

'Declareren variabele Dim strWaarde As String

'Gegevens brandweerman in string steken strWaarde = gvBranweerman.SelectedRow.Cells(1).Text & " " &

gvBranweerman.SelectedRow.Cells(2).Text & " " &

gvBranweerman.SelectedRow.Cells(3).Text

'Gegevens van de brandweerman in listbox toevoegen

lstToegevoegdeBrandweer.Items.Add(strWaarde)

lstToegevoegdeBrandweer.SelectedIndex = lstToegevoegdeBrandweer.Items.Count - 1

lstToegevoegdeBrandweer.SelectedItem.Value =

gvBranweerman.SelectedRow.Cells(1).Text

'Controleergetal op 0 zetten

lblControleGetal.Text = 0

End Sub

Protected Sub btnVerwijder_Click(ByVal sender As Object, ByVal e As

System.EventArgs) Handles btnVerwijder.Click

'Geselecteerde brandweerman (listitem) verwijderen lstToegevoegdeBrandweer.Items.Remove(lstToegevoegdeBrandweer.SelectedItem)

End Sub

Protected Sub btnGegevensInvullen_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnGegevensInvullen.Click

'Declareren variabelen

Dim strSELECTSQL As String

Dim strBrandweermannen As String Dim intTeller As Integer

Dim strDeelSQL As String

Dim strImmatriculatieNr As String

'Gepaste panels verbergen/tonen

pnlOefenkaartToevoegen.Visible = False pnlGegevensInvoeren.Visible = True

'Opstellen SQLcommand adhv waarden uit listbox

For intTeller = 0 To CInt(lstToegevoegdeBrandweer.Items.Count - 1) strImmatriculatieNr = lstToegevoegdeBrandweer.Items.Item(intTeller).Text

strImmatriculatieNr = Left(strImmatriculatieNr,

(strImmatriculatieNr.IndexOf(" ")))

strDeelSQL = " ImmatriculatieNr = '" & strImmatriculatieNr & "' OR"

Page 63: GIP eindwerk

63

strBrandweermannen &= strDeelSQL

Next

strBrandweermannen = Left(strBrandweermannen, strBrandweermannen.Length - 3)

'SQL selection command toekennen

strSELECTSQL = "SELECT ImmatriculatieNr, Naam, Voornaam FROM BPFtblBrandweerman WHERE" & strBrandweermannen & ""

dtsGeselecteerdeBrandweermannen.SelectCommand = strSELECTSQL

End Sub

Protected Sub btnOpslaan_Click(ByVal sender As Object, ByVal e As

System.EventArgs) Handles btnOpslaan.Click

'Declareren variabelen

Dim strINSERTSQL As String Dim intID As Integer

Dim strImmatriculatieNr As String

Dim strBehaald As String Dim strKaartNr As String

Dim strCriteriaNr As String

Dim strDuur As String Dim strDatum As String

'Toekennen waarde strID

intID = 0

Dim gv As New GridView gv.DataSource = dtsMaxId

gv.DataBind()

Try intID = gv.Rows(0).Cells(0).Text

Catch ex As Exception

End Try

intID += 1

'Toekennen waarde strImmatriculatieNr

strImmatriculatieNr = dvBrandweerman.Rows(0).Cells(1).Text

'Toekennen waarde strBehaald Dim chk As New CheckBox

chk = fvGeslaagd.FindControl("chkGeslaagd")

If chk.Checked = True Then

strBehaald = "True"

lblControleGetal.Text = CInt(lblControleGetal.Text) + 1 Else

strBehaald = "False"

End If

'Toekennen waarde strKaartNr

strKaartNr = cboKaart.SelectedValue.ToString

'Toekennen waarde strCriteriaNr

Dim lbl As New Label

lbl = fvGeslaagd.FindControl("lblCriteriaNr") strCriteriaNr = lbl.Text.ToString

'Toekennen waarde strDuur strDuur = lblDuur.Text

Page 64: GIP eindwerk

64

'Toekennen waarde strDatum

strDatum = cldKalender.SelectedDate.Date.ToShortDateString

'SQL insert command

strINSERTSQL = "INSERT INTO BPFtblOefeningen(ID, ImmatriculatieNr, Datum,

Behaald, KaartNr, OefeningNr, CriteriaNr, Duur) VALUES('" & CStr(intID) & "', '" & strImmatriculatieNr & "', '" & strDatum & "', '" & strBehaald & "', '" & strKaartNr &

"', '" & lblOefeningNr.Text & "', '" & strCriteriaNr & "', '" & strDuur & "')"

'SQL uitvoeren "INSERT"

dtsOefening.InsertCommand = strINSERTSQL

dtsOefening.Insert()

'Tellen van de Criteria

Dim intAantalCriteria As Integer

Dim strSQLCOUNT As String

strSQLCOUNT = "SELECT COUNT(CriteriaNr) FROM BPFtblCriteria WHERE KaartNr='" & cboKaart.SelectedValue.ToString & "'"

dtsAantalCriteria.SelectCommand = strSQLCOUNT

Dim gvAantalCriteria As New GridView

gvAantalCriteria.DataSource = dtsAantalCriteria

gvAantalCriteria.DataBind() intAantalCriteria = gvAantalCriteria.Rows(0).Cells(0).Text

If CInt(lblControleGetal.Text) = intAantalCriteria Then dtsBehaald.InsertCommand = "INSERT INTO BPFtblBehaald(ImmatriculatieNr,

OefeningNr, Naam, KaartNr) VALUES ('" & strImmatriculatieNr & "', '" &

lblOefeningNr.Text.ToString & "', '" & dvBrandweerman.Rows(1).Cells(1).Text & " " &

dvBrandweerman.Rows(2).Cells(1).Text & "', '" & strKaartNr & "')" dtsBehaald.Insert()

End If

End Sub

Protected Sub btnGa_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnGa.Click

Dim intOefeningNr As Integer

'declareren variabelen Dim strDatum As String

'strDatum toekennen strDatum = cldKalender.SelectedDate.Date.ToShortDateString.ToString

'Gepaste panels tonen/verbergen pnlDatum.Visible = False

pnlOefenkaartToevoegen.Visible = True

'Oefeningnr genereren adhv max Oefeningnr +1

Page 65: GIP eindwerk

65

Dim gv As New GridView

gv.DataSource = dtsMaxOefNr

gv.DataBind()

intOefeningNr = 0

'Indien er al oefeningnummers zijn intOefeningnummmer If gv.Rows.Count <> 0 Then

Try

intOefeningNr = gv.Rows(0).Cells(0).Text Catch ex As Exception

End Try

End If

intOefeningNr += 1

lblOefeningNr.Text = CStr(intOefeningNr)

End Sub

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

Handles Me.Load 'De huidige datum selecteren in de kalender

cldKalender.SelectedDate = Now.Date

End Sub

End Class

Page 66: GIP eindwerk

66

4.3.5.5 Opmaakcode

<%@ Page Title="Home Page" Language="VB" MasterPageFile="Site.Master"

AutoEventWireup="false"

CodeFile="Oefening.aspx.vb" Inherits="_Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">

<style type="text/css">

.style1 {

width: 533px;

} .style2

{

height: 23px;

} </style>

</asp:Content>

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> <p>

</p>

<asp:Panel ID="pnlDatum" runat="server">

Datum:<asp:Calendar ID="cldKalender" runat="server" BackColor="#FFFFCC"

BorderColor="#FFCC66" BorderWidth="1px" DayNameFormat="Shortest" Font-Names="Verdana" Font-Size="8pt" ForeColor="#663399"

Height="200px"

ShowGridLines="True" Width="220px">

<DayHeaderStyle BackColor="#FFCC66" Font-Bold="True" Height="1px" /> <NextPrevStyle Font-Size="9pt" ForeColor="#FFFFCC" />

<OtherMonthDayStyle ForeColor="#CC9966" />

<SelectedDayStyle BackColor="#CCCCFF" Font-Bold="True" /> <SelectorStyle BackColor="#FFCC66" />

<TitleStyle BackColor="#990000" Font-Bold="True" Font-Size="9pt"

ForeColor="#FFFFCC" /> <TodayDayStyle BackColor="#FFCC66" ForeColor="White" />

</asp:Calendar>

<br />

Duur oefening (minuten):<br /> <asp:TextBox ID="lblDuur" runat="server" Height="22px"></asp:TextBox>

<br />

<asp:Label ID="lblOefeningNr" runat="server" Visible="False">1</asp:Label> <br />

<asp:Button ID="btnGa" runat="server" Text="Ga verder" />

<br /> <asp:SqlDataSource ID="dtsMaxOefNr" runat="server"

ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>"

ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>"

SelectCommand="SELECT MAX(OefeningNr) FROM BPFtblOefeningen;"> </asp:SqlDataSource>

</asp:Panel>

<asp:Panel ID="pnlOefenkaartToevoegen" runat="server" Visible="False"> <asp:DropDownList ID="cboKaart" runat="server" DataSourceID="dtsKaart"

DataTextField="KaartNr" DataValueField="KaartNr">

</asp:DropDownList> <asp:SqlDataSource ID="dtsKaart" runat="server"

ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>"

ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT DISTINCT [KaartNr] FROM [BPFtblOefenkaarten] ORDER

BY [KaartNr]">

</asp:SqlDataSource>

Page 67: GIP eindwerk

67

&nbsp;Brandweerman

toevoegen&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<table

style="width:100%;">

<tr> <td class="style1">

<asp:GridView ID="gvBranweerman" runat="server" AllowPaging="True"

AutoGenerateColumns="False" CellPadding="4" DataKeyNames="ImmatriculatieNr"

DataSourceID="dtsBrandweerman" ForeColor="#333333"

GridLines="None"> <AlternatingRowStyle BackColor="White" />

<Columns>

<asp:CommandField ShowSelectButton="True" /> <asp:BoundField DataField="ImmatriculatieNr"

HeaderText="ImmatriculatieNr"

ReadOnly="True" SortExpression="ImmatriculatieNr" />

<asp:BoundField DataField="Naam" HeaderText="Naam" SortExpression="Naam" />

<asp:BoundField DataField="Voornaam" HeaderText="Voornaam"

SortExpression="Voornaam" /> <asp:BoundField DataField="BehaaldBrevet"

HeaderText="BehaaldBrevet"

SortExpression="BehaaldBrevet" /> <asp:BoundField DataField="Functie" HeaderText="Functie"

SortExpression="Functie" />

<asp:BoundField DataField="Specialisatie"

HeaderText="Specialisatie" SortExpression="Specialisatie" />

</Columns>

<FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />

<HeaderStyle BackColor="#990000" Font-Bold="True"

ForeColor="White" /> <PagerStyle BackColor="#FFCC66" ForeColor="#333333"

HorizontalAlign="Center" />

<RowStyle BackColor="#FFFBD6" ForeColor="#333333" /> <SelectedRowStyle BackColor="#FFCC66" Font-Bold="True"

ForeColor="Navy" />

<SortedAscendingCellStyle BackColor="#FDF5AC" />

<SortedAscendingHeaderStyle BackColor="#4D0000" /> <SortedDescendingCellStyle BackColor="#FCF6C0" />

<SortedDescendingHeaderStyle BackColor="#820000" />

</asp:GridView> </td>

<td>

<asp:ListBox ID="lstToegevoegdeBrandweer" runat="server"></asp:ListBox>

<br />

<asp:Button ID="btnVerwijder" runat="server" Text="Verwijder" />

</td> <td>

&nbsp;</td>

</tr> <tr>

<td class="style1">

&nbsp;</td> <td>

&nbsp;</td>

<td> &nbsp;</td>

</tr>

Page 68: GIP eindwerk

68

<tr>

<td class="style1">

&nbsp;</td>

<td> &nbsp;</td>

<td>

&nbsp;</td> </tr>

</table>

<asp:SqlDataSource ID="dtsBrandweerman" runat="server"

ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>"

ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT [ImmatriculatieNr], [Naam], [Voornaam], [BehaaldBrevet],

[Functie], [Specialisatie] FROM [BPFtblBrandweerman]">

</asp:SqlDataSource>

<br /> <asp:Button ID="btnGegevensInvullen" runat="server" Text="Ga Verder" />

<br />

</asp:Panel> <br />

<asp:Panel ID="pnlGegevensInvoeren" runat="server" Visible="False">

<table style="width:100%;"> <tr>

<td>

Brandweerman<br />

<asp:DetailsView ID="dvBrandweerman" runat="server" AllowPaging="True"

AutoGenerateRows="False" DataKeyNames="ImmatriculatieNr"

DataSourceID="dtsGeselecteerdeBrandweermannen" Height="50px" Width="125px">

<Fields>

<asp:BoundField DataField="ImmatriculatieNr" HeaderText="ImmatriculatieNr"

ReadOnly="True" SortExpression="ImmatriculatieNr" />

<asp:BoundField DataField="Naam" HeaderText="Naam" SortExpression="Naam" />

<asp:BoundField DataField="Voornaam" HeaderText="Voornaam"

SortExpression="Voornaam" />

</Fields> </asp:DetailsView>

<asp:SqlDataSource ID="dtsGeselecteerdeBrandweermannen"

runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>"

ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName

%>" SelectCommand="SELECT [ImmatriculatieNr], [Naam], [Voornaam]

FROM [BPFtblBrandweerman]">

</asp:SqlDataSource>

</td> <td>

<asp:FormView ID="fvGeslaagd" runat="server" AllowPaging="True"

DataKeyNames="CriteriaNr" DataSourceID="dtsCriteria"> <EditItemTemplate>

CriteriaNr:

<asp:Label ID="CriteriaNrLabel1" runat="server" Text='<%# Eval("CriteriaNr") %>' />

<br />

KaartNr: <asp:TextBox ID="KaartNrTextBox" runat="server" Text='<%#

Bind("KaartNr") %>' />

Page 69: GIP eindwerk

69

<br />

Beschrijving:

<asp:TextBox ID="BeschrijvingTextBox" runat="server"

Text='<%# Bind("Beschrijving") %>' /> <br />

<asp:LinkButton ID="UpdateButton" runat="server"

CausesValidation="True" CommandName="Update" Text="Update" />

&nbsp;<asp:LinkButton ID="UpdateCancelButton"

runat="server" CausesValidation="False" CommandName="Cancel"

Text="Cancel" />

</EditItemTemplate> <InsertItemTemplate>

CriteriaNr:

<asp:TextBox ID="CriteriaNrTextBox" runat="server"

Text='<%# Bind("CriteriaNr") %>' /> <br />

KaartNr:

<asp:TextBox ID="KaartNrTextBox" runat="server" Text='<%# Bind("KaartNr") %>' />

<br />

Beschrijving: <asp:TextBox ID="BeschrijvingTextBox" runat="server"

Text='<%# Bind("Beschrijving") %>' />

<br />

<asp:LinkButton ID="InsertButton" runat="server" CausesValidation="True"

CommandName="Insert" Text="Insert" />

&nbsp;<asp:LinkButton ID="InsertCancelButton" runat="server"

CausesValidation="False" CommandName="Cancel"

Text="Cancel" /> </InsertItemTemplate>

<ItemTemplate>

Beschrijving: <asp:Label ID="lblBeschrijving" runat="server"

Text='<%# Bind("Beschrijving") %>' />

<br />

<asp:Label ID="lblCriteriaNr" runat="server" Text='<%# Bind("CriteriaNr") %>'

Visible="False" />

<br /> <asp:CheckBox ID="chkGeslaagd" runat="server"

Text="Geslaagd" />

<br /> </ItemTemplate>

</asp:FormView>

<asp:SqlDataSource ID="dtsCriteria" runat="server"

ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName

%>"

SelectCommand="SELECT [CriteriaNr], [KaartNr], [Beschrijving] FROM [BPFtblCriteria] WHERE ([KaartNr] = ?)">

<SelectParameters>

<asp:ControlParameter ControlID="cboKaart" Name="KaartNr" PropertyName="SelectedValue" Type="String" />

</SelectParameters>

</asp:SqlDataSource> <br />

<asp:Button ID="btnOpslaan" runat="server" Text="Opslaan" />

Page 70: GIP eindwerk

70

<asp:SqlDataSource ID="dtsOefening" runat="server"

ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>"

ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName

%>" SelectCommand="SELECT * FROM

[BPFtblOefeningen]"></asp:SqlDataSource>

<asp:SqlDataSource ID="dtsMaxId" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>"

ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName

%>" SelectCommand="SELECT MAX(ID) FROM

BPFtblOefeningen;"></asp:SqlDataSource>

<asp:Label ID="lblControleGetal" runat="server" Text="Label" Visible="False"></asp:Label>

<br />

</td>

<td> &nbsp;</td>

</tr>

<tr> <td class="style2">

</td>

<td class="style2"> <asp:SqlDataSource ID="dtsAantalCriteria" runat="server"

ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>"

ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName

%>" SelectCommand="SELECT [CriteriaNr], [KaartNr] FROM

[BPFtblCriteria]">

</asp:SqlDataSource> </td>

<td class="style2">

</td> </tr>

<tr>

<td> &nbsp;</td>

<td>

<asp:SqlDataSource ID="dtsBehaald" runat="server"

ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName

%>"

SelectCommand="SELECT [Naam], [OefeningNr] FROM [BPFtblBehaald]">

</asp:SqlDataSource>

</td> <td>

&nbsp;</td>

</tr>

</table> <br />

</asp:Panel>

<br /> <br />

</asp:Content>

Page 71: GIP eindwerk

71

4.3.6 Opvragingen

4.3.6.1 Screenshot

4.3.6.2 Besturingselementen

Object Eigenschap Waarde

cldDatumOefening Date Te selecteren datum

cboOefening Items Geeft alle oefeningen op de

geselecteerde datum weer

lblGeenWaarden Tekst Melding indien er geen

oefeningen zijn op de gekozen

datum

dtsOefening Select SQL Sql om oefeningen op te halen

uit tblOefeningen

dtsDezeOefening Select SQL Sql om de gekozen oefening op

te halen uit tblOefeningen

dtsAantalCriteria Select SQL Sql om de criteria te tellen

lblDatum Tekst Gekozen datum

lblDuur Tekst Gekozen Duur

lblKaartNr Tekst Nummer van de gekozen

oefenkaart

lblOefeningNr tekst Nummer van de Oefening

gvBrandweerman Brandweermannen die

geslaagd zijn

dtsGeslaagd Select SQL Sql om de geslaagde

brandweermannen op te halen

uit tblBehaald

Page 72: GIP eindwerk

72

4.3.6.3 Procedure

Object Gebeurtenis Waarde

cldDatumOefening Selected index changed Databind dtsOefening

btnGa Click Ga naar pnlPrinten en verberg

de rest

btnPrint Click Pagina afdrukken

4.3.7 Help

4.3.7.1 Screenshot

4.3.7.2 Code

Partial Class _Default

Inherits System.Web.UI.Page

Protected Sub btnBrandweermanToevoegen_Click(ByVal sender As Object, ByVal e As

System.EventArgs) Handles btnBrandweermanToevoegen.Click

'Panel met gewenste help weergeven pnlBrandweermanToevoegen.Visible = True

pnlBrandweermannenBewerken.Visible = False

pnlOefenakaartenVerwijderen.Visible = False pnlBrandweermanVerwijderen.Visible = False

PnlOefeningenToevoegen.Visible = False

pnlOefenkaartenBewerken.Visible = False pnlOefenkaartenToevoegen.Visible = False

End Sub

Page 73: GIP eindwerk

73

Protected Sub btnBrandweermanVerwijderen_Click(ByVal sender As Object, ByVal e As

System.EventArgs) Handles btnBrandweermanVerwijderen.Click

'Panel met gewenste help weergeven pnlBrandweermanToevoegen.Visible = False

pnlBrandweermannenBewerken.Visible = False

pnlOefenakaartenVerwijderen.Visible = True pnlBrandweermanVerwijderen.Visible = False

PnlOefeningenToevoegen.Visible = False

pnlOefenkaartenBewerken.Visible = False pnlOefenkaartenToevoegen.Visible = False

End Sub

Protected Sub btnBrandweermanBewerken_Click(ByVal sender As Object, ByVal e As

System.EventArgs) Handles btnBrandweermanBewerken.Click

'Panel met gewenste help weergeven

pnlBrandweermanToevoegen.Visible = False pnlBrandweermannenBewerken.Visible = True

pnlOefenakaartenVerwijderen.Visible = False

pnlBrandweermanVerwijderen.Visible = False PnlOefeningenToevoegen.Visible = False

pnlOefenkaartenBewerken.Visible = False

pnlOefenkaartenToevoegen.Visible = False End Sub

Protected Sub btnOefenkaartToevoegen_Click(ByVal sender As Object, ByVal e As

System.EventArgs) Handles btnOefenkaartToevoegen.Click 'Panel met gewenste help weergeven

pnlBrandweermanToevoegen.Visible = False

pnlBrandweermannenBewerken.Visible = False pnlOefenakaartenVerwijderen.Visible = False

pnlBrandweermanVerwijderen.Visible = False

PnlOefeningenToevoegen.Visible = False pnlOefenkaartenBewerken.Visible = False

pnlOefenkaartenToevoegen.Visible = True

End Sub

Protected Sub btnOefenkaartVerwijderen_Click(ByVal sender As Object, ByVal e As

System.EventArgs) Handles btnOefenkaartVerwijderen.Click

'Panel met gewenste help weergeven pnlBrandweermanToevoegen.Visible = False

pnlBrandweermannenBewerken.Visible = False

pnlOefenakaartenVerwijderen.Visible = True pnlBrandweermanVerwijderen.Visible = False

PnlOefeningenToevoegen.Visible = False

pnlOefenkaartenBewerken.Visible = False pnlOefenkaartenToevoegen.Visible = False

End Sub

Protected Sub btnOefenkaartBewerken_Click(ByVal sender As Object, ByVal e As

System.EventArgs) Handles btnOefenkaartBewerken.Click

'Panel met gewenste help weergeven pnlBrandweermanToevoegen.Visible = False

pnlBrandweermannenBewerken.Visible = False

pnlOefenakaartenVerwijderen.Visible = False pnlBrandweermanVerwijderen.Visible = False

PnlOefeningenToevoegen.Visible = False

pnlOefenkaartenBewerken.Visible = True pnlOefenkaartenToevoegen.Visible = False

End Sub

Page 74: GIP eindwerk

74

Protected Sub btnOefeningToevoegen_Click(ByVal sender As Object, ByVal e As

System.EventArgs) Handles btnOefeningToevoegen.Click

'Panel met gewenste help weergeven pnlBrandweermanToevoegen.Visible = False

pnlBrandweermannenBewerken.Visible = False

pnlOefenakaartenVerwijderen.Visible = False pnlBrandweermanVerwijderen.Visible = False

PnlOefeningenToevoegen.Visible = True

pnlOefenkaartenBewerken.Visible = False pnlOefenkaartenToevoegen.Visible = False

End Sub

End Class

4.3.7.3 Opmaak code

<%@ Page Title="Home Page" Language="VB" MasterPageFile="Site.Master"

AutoEventWireup="false"

CodeFile="Help.aspx.vb" Inherits="_Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">

<style type="text/css"> .style1

{

width: 607px; height: 386px;

}

.style2

{ width: 609px;

height: 413px;

} .style4

{

width: 962px; height: 254px;

}

.style5

{ width: 257px;

height: 184px;

} .style6

{

width: 573px; height: 253px;

}

.style7

{ width: 669px;

height: 196px;

} .style8

{

width: 622px; height: 259px;

}

.style9 {

width: 943px;

height: 294px;

}

Page 75: GIP eindwerk

75

.style10

{

width: 769px;

height: 221px; }

.style11

{ width: 468px;

height: 292px;

} .style12

{

width: 483px; height: 191px;

}

</style>

</asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">

<table style="width:100%;">

<tr> <td>

<asp:Button ID="btnBrandweermanToevoegen" runat="server" Text="Brandweerman Toevoegen" />

</td>

<tr>

<td>

<asp:Button ID="btnBrandweermanVerwijderen" runat="server"

Text="Brandweerman Verwijderen" height="26px" width="227px" />

</td>

<tr> <td>

<asp:Button ID="btnBrandweermanBewerken" runat="server"

Text="Brandweerman Bewerken" height="26px" width="227px" />

</td>

<tr>

<td>

<asp:Button ID="btnOefenkaartToevoegen" runat="server"

Text="Oefenkaart Toevoegen" height="26px" width="227px" />

</td>

<tr>

<td>

<asp:Button ID="btnOefenkaartVerwijderen" runat="server"

Text="Oefenkaart Verwijderen" height="26px" width="227px" />

</td>

<tr>

<td>

Page 76: GIP eindwerk

76

<asp:Button ID="btnOefenkaartBewerken" runat="server"

Text="Oefenkaart Bewerken" height="26px" width="227px" />

</td>

<tr> <td>

<asp:Button ID="btnOefeningToevoegen" runat="server" Text="Oefening Toevoegen" height="26px" width="227px" />

</td>

</table>

<br /> <asp:Panel ID="pnlBrandweermanToevoegen" runat="server" Visible="False">

Stap 1:<br /> U klikt in het menu op het item &quot;Brandweerman&quot;.<br />

Nu komt u terecht in de module om de brandweermannen te beheren.<br />

<br />

Stap 2:<br /> U klikt in het onderste veld op de knop &quot;Nieuw&quot;.<br /> <img alt="KnopNieuw" class="style1"

src="../ScreenShots/BrandweermanToevoegen1.JPG" />

<br />

<br /> Stap 3:<br /> U vult alle gegevens in van de toe te voegen brandweerman.<br />

<br />

Stap 4:<br /> U klikt op de knop &quot;Voeg toe&quot; om de brandweerman op te slaan.<br />

<img alt="VoegToe" class="style2"

src="../ScreenShots/BrandweermanToevoegen2.JPG" /> <br />

</asp:Panel>

<asp:Panel ID="pnlOefenkaartenToevoegen" runat="server" Visible="False"> Stap 1:<br /> U klikt in het menu op het item &quot;Oefenkaart&quot;.<br /> Nu

komt u

terecht in de module om de Oefenkaarten te beheren.<br />

<br /> Stap 2:<br /> Om een nieuwe oefenkaart toe te voegen, klikt u op Nieuw (rode

pijl).<br />

<img alt="" class="style4" src="../ScreenShots/Oefenkaarten%20Toevoegen.png" />

<br />

<br /> Stap 3:<br />Vervolgens klikt u op invoegen<br />

<br />

&nbsp;<img alt="" class="style5"

src="../ScreenShots/Oefenkaarten%20Toevoegen%202.jpg" /><br /> (Stap 4:<br /> Om een

criterium toe te voegen, tipt u de naam van het criterium in het tekstvak, en

klikt u op opslaan.)</asp:Panel>

<asp:Panel ID="pnlOefenkaartenBewerken" runat="server" Visible="False">

Stap 1:<br /> U klikt in het menu op het item &quot;Oefenkaart&quot;.<br /> Nu komt u

terecht in de module om de Oefenkaarten te beheren.<br />

<br /> Stap 2:<br /> Om een oefenkaart, of criterium te bewerken, klikt u op bewerken

(A

Page 77: GIP eindwerk

77

of B).<br />

<img alt="" class="style6"

src="../ScreenShots/Oefenkaarten%20Bewerken1.jpg" />

<br /> Stap 3:<br /> Vervolgens geeft u de gegevens in, en drukt u op

&quot;Bijwerken&quot;).<br />

<img alt="" class="style7" src="../ScreenShots/Oefenkaart%20Bewerken%202.jpg" />

<br />

<br /> Het is niet mogelijk om het KaartNr te veranderen, hiervoor moet u de

oefenkaart

verwijderen, en een nieuwe maken met het juiste nummer.<br /> </asp:Panel>

<asp:Panel ID="pnlOefenakaartenVerwijderen" runat="server" Visible="False">

Stap 1:<br /> U klikt in het menu op het item &quot;Oefenkaart&quot;.<br /> Nu

komt u terecht in de module om de Oefenkaarten te beheren.<br />

<br />

Stap 2:<br /> Om een oefenkaart of criterium te verwijderen, klikt u op &quot;Verwijderen&quot;.<br />

<img alt="" class="style8"

src="../ScreenShots/Oefenkaart%20Verwijderen%201.jpg" /> <br />

<asp:Panel ID="pnlBrandweermannenBewerken" runat="server" Visible="False">

Stap 1:<br /> U klikt in het menu op het item &quot;Brandweerman&quot;.<br

/> Nu komt u terecht in de module om de brandweermannen te beheren.<br />

<br />

Stap 2: <br />

Vervolgens klikt u op bewerken.<br />

<img alt="" class="style9" src="../ScreenShots/Brandweerman%20Bewerken%201.jpg" />

<br />

Stap 3:<br /> Vul alle gegevens in, om op te slaan, klikt u op &quot;bijwerken&quot;.<br />

<img alt="" class="style10"

src="../ScreenShots/Brandweerman%20Bewerken%202.jpg" />

<br /> Stap 4:<br /> Om Specialisaties of Brevetten te veranderen, moet u eerst

een

brandweerman Selecteren.<br /> <img alt="" class="style11"

src="../ScreenShots/Brandweerman%20Selecteren.jpg" />

<br /> Stap 5:<br /> Vervolgens klikt u op Bewerken, vult u alle gegevens in, en

klikt

u op bijwerken. (Geen screenshots want primairy keys werkten niet)<br />

</asp:Panel> </asp:Panel>

<asp:Panel ID="pnlBrandweermanVerwijderen" runat="server" Visible="False">

Stap 1:<br /> U klikt in het menu op het item &quot;Brandweerman&quot;.<br /> Nu komt u

terecht in de module om de brandweermannen te beheren.<br />

<br /> Stap 2:<br /> U klikt op &quot;Verwijderen&quot;.<br />

<img alt="" class="style12"

src="../ScreenShots/Brandweerman%20Verwijderen.jpg" /> </asp:Panel>

<asp:Panel ID="PnlOefeningenToevoegen" runat="server" Visible="False">

Page 78: GIP eindwerk

78

Stap 1:<br /> U klikt in het menu op het item &quot;Oefening&quot;.<br /> Nu

komt u

terecht in de module om de Oefeningen te beheren.<br />

<br /> Stap 2:<br /> U Selecteert een Datum, en geeft een duur op van de oefening (in

minuten).<br />

<br /> Stap 3:<br /> Vervolgens klikt u op &quot;Ga Verder&quot;.<br />

<br />

Stap 4:<br /> Bovenaan kunt de oefenkaart uit een lijst selecteren. Vervolgens selecteerd u alle brandweermannen die meededen aan de oefening.<br /> Om

verder

te gaan klikt u op &quot;Ga Verder&quot;.<br /> <br />

Stap 5:<br /> Vervolgens ziet u links de Brandweerman, en rechts alle criteria

voor de van u gekozen Oefenkaart. U kunt nu telkens aangeven of de

brandweerman slaagde voor een bepaald criterium of niet. Om op te slaan klikt u op

&quot;Opslaan&quot;.<br />

Opgelet, als u niet op &quot;Opslaan&quot; klikt, worden de gegevens niet weggeschreven in

de databank.<br />

</asp:Panel> <br />

<br />

</asp:Content>

4.3.8 Web.config

<?xml version="1.0"?>

<configuration>

<system.web>

<authorization>

<allow users="Beheerder"/> <deny users="?"/>

<allow users ="*"/>

</authorization>

<compilation debug="true" strict="false" explicit="true" targetFramework="4.0"/>

</system.web> </configuration>

Page 79: GIP eindwerk

79

4.4 Gebruiker

4.4.1 Default

4.4.1.1 Screenshot

4.4.1.2 Code

Partial Class _Default

Inherits System.Web.UI.Page

End Class

4.4.1.3 Opmaak code

<%@ Page Title="Home Page" Language="VB" MasterPageFile="Site.Master"

AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> </asp:Content>

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">

<p> Welkom op de gebruiker site,<br />

Hier kunt u gegevens bekijken.</p>

</asp:Content>

Page 80: GIP eindwerk

80

4.4.2 Brandweerman

4.4.2.1 Screenshot

4.4.2.2 Besturingselementen

Object Eigenschap Waarde

gvBrandweerman Aangemelde brandweerman

tonen

gvBrevetten Brevetten voor aangemelde

brandweerman tonen

gvSpecialisaties Specialisaties voor aangemelde

brandweerman tonen

dtsBrandweerman Select SQL Sql om de aangemelde

brandweerman te tonen

4.4.2.3 Procedure

Object Gebeurtenis Waarde

Form Load Ken sql toe aan de datasources

4.4.2.4 Code

Partial Class _Default

Inherits System.Web.UI.Page

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

Handles Me.Load 'declareren van de variabelen

Dim strBrandweermanSELECTSQL As String

Dim strBrevettenSELECTSQL As String

Dim strSpecialisatieSELECTSQL As String

Page 81: GIP eindwerk

81

'alles tonen waarvan ImmatriculatieNr gelijk is aan de username

Try

strBrandweermanSELECTSQL = "SELECT * FROM [BPFtblBrandweerman] WHERE

ImmatriculatieNr = '" & Me.User.Identity.Name.ToString & "'" dtsBrandweerman.SelectCommand = strBrandweermanSELECTSQL

dtsBrandweerman.DataBind()

strBrevettenSELECTSQL = "SELECT * FROM [BPFtblBrevetten] WHERE Id = '" &

Me.User.Identity.Name.ToString & "'"

dtsBrevetten.SelectCommand = strBrevettenSELECTSQL dtsBrevetten.DataBind()

strSpecialisatieSELECTSQL = "SELECT * FROM [BPFtblSpecialisatie] WHERE Id = '" & Me.User.Identity.Name.ToString & "'"

dtsSpecialisaties.SelectCommand = strSpecialisatieSELECTSQL

dtsSpecialisaties.DataBind()

Catch End Try

End Sub

End Class

Page 82: GIP eindwerk

82

4.4.2.5 Opmaak code

<%@ Page Title="Brandweerman" Language="VB" MasterPageFile="~/Beheerder/Site.Master"

AutoEventWireup="false"

CodeFile="Brandweerman.aspx.vb" Inherits="_Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">

<style type="text/css">

.style4

{

width: 214px; height: 346px;

}

.style6

{ width: 193px;

height: 346px;

} </style>

</asp:Content>

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">

Brandweermannen<br />

<br /> <table style="width:100%;">

<tr>

<td class="style6" valign="top">

<asp:GridView ID="gvBrandweerman" runat="server" AutoGenerateColumns="False" CellPadding="4" DataSourceID="dtsBrandweerman"

ForeColor="#333333" GridLines="None" DataKeyNames="ImmatriculatieNr">

<AlternatingRowStyle BackColor="White" /> <Columns>

<asp:BoundField DataField="ImmatriculatieNr"

HeaderText="ImmatriculatieNr" SortExpression="ImmatriculatieNr" ReadOnly="True" />

<asp:BoundField DataField="Naam" HeaderText="Naam"

SortExpression="Naam" />

<asp:BoundField DataField="Voornaam" HeaderText="Voornaam" SortExpression="Voornaam" />

<asp:BoundField DataField="Functie"

HeaderText="Functie" SortExpression="Functie" /> </Columns>

<FooterStyle BackColor="#990000" Font-Bold="True"

ForeColor="White" /> <HeaderStyle BackColor="#990000" Font-Bold="True"

ForeColor="White" />

<PagerStyle BackColor="#FFCC66" ForeColor="#333333"

HorizontalAlign="Center" /> <RowStyle BackColor="#FFFBD6" ForeColor="#333333" />

<SelectedRowStyle BackColor="#FFCC66" Font-Bold="True"

ForeColor="Navy" /> <SortedAscendingCellStyle BackColor="#FDF5AC" />

<SortedAscendingHeaderStyle BackColor="#4D0000" />

<SortedDescendingCellStyle BackColor="#FCF6C0" /> <SortedDescendingHeaderStyle BackColor="#820000" />

</asp:GridView>

<asp:SqlDataSource ID="dtsBrandweerman" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>"

ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>"

SelectCommand="SELECT * FROM [BPFtblBrandweerman]"

ConflictDetection="CompareAllValues"

Page 83: GIP eindwerk

83

DeleteCommand="DELETE FROM [BPFtblBrandweerman] WHERE

[ImmatriculatieNr] = ? AND (([Naam] = ?) OR ([Naam] IS NULL AND ? IS NULL)) AND

(([Voornaam] = ?) OR ([Voornaam] IS NULL AND ? IS NULL)) AND (([BehaaldBrevet] = ?) OR

([BehaaldBrevet] IS NULL AND ? IS NULL)) AND (([Functie] = ?) OR ([Functie] IS NULL AND ? IS NULL)) AND (([Specialisatie] = ?) OR ([Specialisatie] IS NULL AND ? IS

NULL))"

InsertCommand="INSERT INTO [BPFtblBrandweerman] ([ImmatriculatieNr], [Naam], [Voornaam], [BehaaldBrevet], [Functie], [Specialisatie])

VALUES (?, ?, ?, ?, ?, ?)"

OldValuesParameterFormatString="original_{0}" UpdateCommand="UPDATE [BPFtblBrandweerman] SET [Naam] = ?,

[Voornaam] = ?, [BehaaldBrevet] = ?, [Functie] = ?, [Specialisatie] = ? WHERE

[ImmatriculatieNr] = ? AND (([Naam] = ?) OR ([Naam] IS NULL AND ? IS NULL)) AND (([Voornaam] = ?) OR ([Voornaam] IS NULL AND ? IS NULL)) AND (([BehaaldBrevet] = ?) OR

([BehaaldBrevet] IS NULL AND ? IS NULL)) AND (([Functie] = ?) OR ([Functie] IS NULL

AND ? IS NULL)) AND (([Specialisatie] = ?) OR ([Specialisatie] IS NULL AND ? IS

NULL))"> <DeleteParameters>

<asp:Parameter Name="original_ImmatriculatieNr"

Type="String" /> <asp:Parameter Name="original_Naam" Type="String" />

<asp:Parameter Name="original_Naam" Type="String" />

<asp:Parameter Name="original_Voornaam" Type="String" /> <asp:Parameter Name="original_Voornaam" Type="String" />

<asp:Parameter Name="original_BehaaldBrevet" Type="String"

/>

<asp:Parameter Name="original_BehaaldBrevet" Type="String" />

<asp:Parameter Name="original_Functie" Type="String" />

<asp:Parameter Name="original_Functie" Type="String" /> <asp:Parameter Name="original_Specialisatie" Type="String"

/>

<asp:Parameter Name="original_Specialisatie" Type="String" />

</DeleteParameters>

<InsertParameters> <asp:Parameter Name="ImmatriculatieNr" Type="String" />

<asp:Parameter Name="Naam" Type="String" />

<asp:Parameter Name="Voornaam" Type="String" />

<asp:Parameter Name="BehaaldBrevet" Type="String" /> <asp:Parameter Name="Functie" Type="String" />

<asp:Parameter Name="Specialisatie" Type="String" />

</InsertParameters> <UpdateParameters>

<asp:Parameter Name="Naam" Type="String" />

<asp:Parameter Name="Voornaam" Type="String" /> <asp:Parameter Name="BehaaldBrevet" Type="String" />

<asp:Parameter Name="Functie" Type="String" />

<asp:Parameter Name="Specialisatie" Type="String" />

<asp:Parameter Name="original_ImmatriculatieNr" Type="String" />

<asp:Parameter Name="original_Naam" Type="String" />

<asp:Parameter Name="original_Naam" Type="String" /> <asp:Parameter Name="original_Voornaam" Type="String" />

<asp:Parameter Name="original_Voornaam" Type="String" />

<asp:Parameter Name="original_BehaaldBrevet" Type="String" />

<asp:Parameter Name="original_BehaaldBrevet" Type="String"

/> <asp:Parameter Name="original_Functie" Type="String" />

<asp:Parameter Name="original_Functie" Type="String" />

Page 84: GIP eindwerk

84

<asp:Parameter Name="original_Specialisatie" Type="String"

/>

<asp:Parameter Name="original_Specialisatie" Type="String"

/> </UpdateParameters>

</asp:SqlDataSource>

<br />

</td>

<td class="style4" valign="top">

<asp:GridView ID="gvBrevetten" runat="server" AutoGenerateColumns="False"

CellPadding="4" DataSourceID="dtsBrevetten"

ForeColor="#333333" GridLines="None">

<AlternatingRowStyle BackColor="White" />

<Columns>

<asp:BoundField DataField="Brevet" HeaderText="Brevet"

SortExpression="Brevet" />

</Columns> <FooterStyle BackColor="#990000" Font-Bold="True"

ForeColor="White" />

<HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="#FFCC66"

ForeColor="#333333" HorizontalAlign="Center" /> <RowStyle BackColor="#FFFBD6" ForeColor="#333333"

/>

<SelectedRowStyle BackColor="#FFCC66" Font-

Bold="True" ForeColor="Navy" /> <SortedAscendingCellStyle BackColor="#FDF5AC" />

<SortedAscendingHeaderStyle BackColor="#4D0000" />

<SortedDescendingCellStyle BackColor="#FCF6C0" /> <SortedDescendingHeaderStyle BackColor="#820000"

/>

</asp:GridView> <asp:SqlDataSource ID="dtsBrevetten" runat="server"

ConnectionString="<%$

ConnectionStrings:cnnBrandweer %>"

ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>"

SelectCommand="SELECT * FROM [BPFtblBrevetten]">

</asp:SqlDataSource> <br />

<br />

<asp:GridView ID="gvSpecialisaties" runat="server" AutoGenerateColumns="False"

CellPadding="4" DataSourceID="dtsSpecialisaties"

ForeColor="#333333" GridLines="None">

<AlternatingRowStyle BackColor="White" />

Page 85: GIP eindwerk

85

<Columns>

<asp:BoundField DataField="Specialisatie"

HeaderText="Specialisatie"

SortExpression="Specialisatie" /> </Columns>

<FooterStyle BackColor="#990000" Font-Bold="True"

ForeColor="White" /> <HeaderStyle BackColor="#990000" Font-Bold="True"

ForeColor="White" />

<PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" />

<RowStyle BackColor="#FFFBD6" ForeColor="#333333"

/> <SelectedRowStyle BackColor="#FFCC66" Font-

Bold="True" ForeColor="Navy" />

<SortedAscendingCellStyle BackColor="#FDF5AC" />

<SortedAscendingHeaderStyle BackColor="#4D0000" /> <SortedDescendingCellStyle BackColor="#FCF6C0" />

<SortedDescendingHeaderStyle BackColor="#820000"

/> </asp:GridView>

<asp:SqlDataSource ID="dtsSpecialisaties"

runat="server" ConnectionString="<%$

ConnectionStrings:cnnBrandweer %>"

ProviderName="<%$

ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT * FROM

[BPFtblSpecialisatie]">

</asp:SqlDataSource> <br />

<br />

<br /> </td>

</tr>

</table>

<br />

<br /> <br />

</asp:Content>

Page 86: GIP eindwerk

86

4.4.3 Oefenkaart

4.4.3.1 Screenshot

4.4.3.2 Besturingselementen

Object Eigenschap Waarde

dvOefenkaarten Oefenkaarten met de gezochte

criteria

gvCriteria Criteria voor oefenkaart uit

dvOefenkaarten

txtKaartNr Tekst Kaartnummer uit

dvOefenkaarten

dtsOefenkaarten Select SQL Sql om alle oefenkaarten uit

tblOefenakaarten te halen

dtsCriteria Select SQL Bevat de Criteria van de

oefenkaart uit dvOefenkaarten

4.4.3.3 Procedure

Object Gebeurtenis Waarde

Form Load Vul txtKaartNr

dvOefenkaarten Databound Vul txtKaartNr

4.4.3.4 Code

Partial Class _Default Inherits System.Web.UI.Page

Protected Sub dvOefenkaarten_DataBound(ByVal sender As Object, ByVal e As System.EventArgs) Handles dvOefenkaarten.DataBound

'txtKaartNr opvullen indien er oefenkaarten zijn

Page 87: GIP eindwerk

87

Try

txtKaartNr.Text = dvOefenkaarten.Rows(0).Cells(1).Text

dtsCriteria.DataBind()

gvCriteria.DataBind() Catch ex As Exception

End Try

End Sub

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

'txtKaartNr opvullen indien er oefenkaarten zijn

Try txtKaartNr.Text = dvOefenkaarten.Rows(0).Cells(1).Text

Catch

End Try

End Sub

End Class

Page 88: GIP eindwerk

88

4.4.3.5 Opmaak Code

<%@ Page Title="Brandweerman" Language="VB" MasterPageFile="Site.Master"

AutoEventWireup="false"

CodeFile="Oefenkaarten.aspx.vb" Inherits="_Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">

<style type="text/css">

.style1 {

width: 339px;

} </style>

</asp:Content>

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">

Oefenkaarten (met zoekfunctie)<br />

<br />

<asp:Panel ID="pnlBewerkenVerwijderen" runat="server">

<table style="width:100%;">

<tr> <td class="style1">

<br />

Oefenkaart:<br /> <asp:DetailsView ID="dvOefenkaarten"

runat="server" AllowPaging="True"

AutoGenerateRows="False"

DataKeyNames="KaartNr" DataSourceID="dtsOefenkaarten" Height="50px" Width="125px">

<Fields>

<asp:BoundField DataField="KaartNr" HeaderText="KaartNr"

SortExpression="KaartNr"

ReadOnly="True" /> <asp:BoundField DataField="Onderwerp"

HeaderText="Onderwerp"

SortExpression="Onderwerp" />

</Fields> </asp:DetailsView>

<br />

<br /> <br />

<asp:SqlDataSource ID="dtsOefenkaarten"

runat="server" ConflictDetection="CompareAllValues"

ConnectionString="<%$

ConnectionStrings:cnnBrandweer %>"

DeleteCommand="DELETE FROM [BPFtblOefenkaarten] WHERE [KaartNr] = ? AND (([CriteriaNr] = ?) OR ([CriteriaNr] IS

NULL AND ? IS NULL)) AND (([Onderwerp] = ?) OR ([Onderwerp] IS NULL AND ? IS NULL))"

InsertCommand="INSERT INTO [BPFtblOefenkaarten] ([KaartNr], [CriteriaNr], [Onderwerp]) VALUES (?, ?, ?)"

OldValuesParameterFormatString="original_{0}"

ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>"

SelectCommand="SELECT * FROM

[BPFtblOefenkaarten]"

UpdateCommand="UPDATE [BPFtblOefenkaarten] SET

[CriteriaNr] = ?, [Onderwerp] = ? WHERE [KaartNr] = ? AND (([CriteriaNr] = ?) OR

Page 89: GIP eindwerk

89

([CriteriaNr] IS NULL AND ? IS NULL)) AND (([Onderwerp] = ?) OR ([Onderwerp] IS NULL

AND ? IS NULL))">

<DeleteParameters>

<asp:Parameter Name="original_KaartNr" Type="String" />

<asp:Parameter Name="original_CriteriaNr"

Type="Int32" /> <asp:Parameter Name="original_CriteriaNr"

Type="Int32" />

<asp:Parameter Name="original_Onderwerp" Type="String" />

<asp:Parameter Name="original_Onderwerp"

Type="String" /> </DeleteParameters>

<InsertParameters>

<asp:Parameter Name="KaartNr"

Type="String" /> <asp:Parameter Name="CriteriaNr"

Type="Int32" />

<asp:Parameter Name="Onderwerp" Type="String" />

</InsertParameters>

<UpdateParameters> <asp:Parameter Name="CriteriaNr"

Type="Int32" />

<asp:Parameter Name="Onderwerp"

Type="String" /> <asp:Parameter Name="original_KaartNr"

Type="String" />

<asp:Parameter Name="original_CriteriaNr" Type="Int32" />

<asp:Parameter Name="original_CriteriaNr"

Type="Int32" /> <asp:Parameter Name="original_Onderwerp"

Type="String" />

<asp:Parameter Name="original_Onderwerp" Type="String" />

</UpdateParameters>

</asp:SqlDataSource>

</td> <td style="text-align: left">

<br />

<br /> <asp:TextBox ID="txtKaartNr" runat="server"

Visible="False"></asp:TextBox>

<br /> <br />

<asp:GridView ID="gvCriteria" runat="server"

AutoGenerateColumns="False"

CellPadding="4" DataKeyNames="CriteriaNr" DataSourceID="dtsCriteria"

ForeColor="#333333" GridLines="None">

<AlternatingRowStyle BackColor="White" /> <Columns>

<asp:BoundField DataField="Beschrijving"

HeaderText="Criteria" SortExpression="Beschrijving" />

</Columns>

<FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />

Page 90: GIP eindwerk

90

<HeaderStyle BackColor="#990000" Font-

Bold="True" ForeColor="White" />

<PagerStyle BackColor="#FFCC66"

ForeColor="#333333" HorizontalAlign="Center" /> <RowStyle BackColor="#FFFBD6"

ForeColor="#333333" />

<SelectedRowStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="Navy" />

<SortedAscendingCellStyle BackColor="#FDF5AC"

/> <SortedAscendingHeaderStyle

BackColor="#4D0000" />

<SortedDescendingCellStyle BackColor="#FCF6C0" />

<SortedDescendingHeaderStyle

BackColor="#820000" />

</asp:GridView> <asp:SqlDataSource ID="dtsCriteria" runat="server"

ConnectionString="<%$

ConnectionStrings:cnnBrandweer %>" DeleteCommand="DELETE FROM [BPFtblCriteria]

WHERE [CriteriaNr] = ?"

InsertCommand="INSERT INTO [BPFtblCriteria] ([CriteriaNr], [KaartNr], [Beschrijving]) VALUES (?, ?, ?)"

ProviderName="<%$

ConnectionStrings:cnnBrandweer.ProviderName %>"

SelectCommand="SELECT * FROM [BPFtblCriteria] WHERE ([KaartNr] = ?)"

UpdateCommand="UPDATE [BPFtblCriteria] SET

[KaartNr] = ?, [Beschrijving] = ? WHERE [CriteriaNr] = ?"> <DeleteParameters>

<asp:Parameter Name="CriteriaNr"

Type="Int32" /> </DeleteParameters>

<InsertParameters>

<asp:Parameter Name="CriteriaNr" Type="Int32" />

<asp:Parameter Name="KaartNr"

Type="String" />

<asp:Parameter Name="Beschrijving" Type="String" />

</InsertParameters>

<SelectParameters> <asp:ControlParameter

ControlID="txtKaartNr" Name="KaartNr" PropertyName="Text"

Type="String" /> </SelectParameters>

<UpdateParameters>

<asp:Parameter Name="KaartNr"

Type="String" /> <asp:Parameter Name="Beschrijving"

Type="String" />

<asp:Parameter Name="CriteriaNr" Type="Int32" />

</UpdateParameters>

</asp:SqlDataSource> <br />

<br />

<br /> <br />

<br />

Page 91: GIP eindwerk

91

</td>

</tr>

</table>

<br /> &nbsp;&nbsp;&nbsp;

<asp:SqlDataSource ID="dtsGrootsteGetal" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>"

ProviderName="<%$

ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT MAX(CriteriaNr) FROM

BPFtblCriteria;">

</asp:SqlDataSource> <br />

</asp:Panel>

<br />

<br /> <br />

</asp:Content>

Page 92: GIP eindwerk

92

4.4.4 Web.config

<?xml version="1.0"?> <configuration>

<system.web>

<authorization>

<allow users="Beheerder"/>

<deny users="?"/>

<allow users ="*"/> </authorization>

<compilation debug="true" strict="false" explicit="true" targetFramework="4.0"/> </system.web>

</configuration>

Page 93: GIP eindwerk

93

5 Engels

5.1 List of 10 suppliers

Supplier Website Contact

Dell www.dell.com • Phone: 0844 338 1080

• E-mail: [email protected]

Hewlett

-

Packard

www.hp.com • phone: 0800-266 7272

• http://www8.hp.com/nl/nl/contact-

hp/contact.html

On this website you can email them or chat

with them.

Acer www.acer.com • Phone : 0870 853 1005

• E-mail : [email protected]

Nvidea www.nvidia.co.uk/page/home.html • Phone: 0044 (118) 903 3000

AMD www.amd.com • Phone: 408-749-4000

• http://emailcustomercare.amd.com/ to e-

mail them

Adobe www.adobe.com • Phone: 0207 365 0735

Pixmani

a

www.pixmania.co.uk • Phone: 02 620 03 22

Sony www.sony.com • Phone: 239-768-7547

• E-mail:

https://esupport.sony.com/US/perl/contac

t-email.pl?

On this website you can email them if you

create an account first.

Microso

ft

www.microsoft.com • Phone: 020 - 500 1500

• http://support.microsoft.com/contactus/?

ws=mscom

On this website you can chat with them, or

email them.

Oracle www.oracle.com/global/uk/index.htm

l

• Phone: 08705 332200

• E-mail: [email protected]

Page 94: GIP eindwerk

94

5.2 Letter of enquiry

5.2.1 Sony

Yuniit 2011-11-08

Baron de Ruzettelaan 66

8310 Assebroek

[email protected]

Sony Belgium - Customer Information Center

Technologielaan 7

1840 Londerzeel

Letter of enquiry

Dear Sir or Madam

We have found your address on your website on our search for a software and hardware supplier.

Our company Yuniit has made good profits last year. Now we want to expand to the rest of the

world. Before we do that, we want to make sure we have a good communications system between

each department of our company.

In order to achieve that, we will need good servers, cables, switches …

We also need a good and easy-manageable operating system. In the future, we might also consider

to connect all our LANS in a WAN so the hardware has to be able to achieve that.

We have been looking up large hardware and software suppliers, eligible to supply us. Could you

please send us an quotation with your possible hardware, operating systems and prices?

We look forward to further corporation in the future.

Yours faithfully,

Paul Hurlebusch

Page 95: GIP eindwerk

95

5.2.2 Hewlett-Packard

Yuniit 2011-11-08

Baron de Ruzettelaan 66

8310 Assebroek

[email protected]

Hewlett-Packard Belgium

Hermeslaan 1A

1831 Diegem

[email protected]

Letter of enquiry

Dear Sir or Madam,

It has been a few years since we bought new computers for our staff. But with the emergence of

Windows 7 we thought it is time for a renewal of our system.

To do so we went to a lot of websites of hardware suppliers.

On your website the product HP Omni 100-5010uk Desktop PC has come to our attention. It has the

product-number XH893EAD.

We would love some extra information on this computer. Also we would like to know if you could

make us any special offer if we buy a hundred. If you have some other interesting deals, you can send

them to us.

We also want to know more about your support. Do you come and install the computers or do we

have to install them ourselves? And what happens if a pc crashes?

We look forward to a partnership in the future.

Yours faithfully,

Paul Hurlebusch

Page 96: GIP eindwerk

96

5.3 SME

5.3.1 text

We are going to give some information about the enterprise “SME Web Design”, which is a SME.

SME stands for Small Medium Enterprise. This enterprise is located in Great Britain.

Products

What they do is naturally more than just web design and web hosting, they have a team of several

persons who are specialized in their part of the job. The Graphic designs are made with Adobe

Photoshop, this program is well-known in the IT business, and it stands for quality and simplicity.

To save the information from the website they need a Database, therefore they use an SQL server

which we also use at school. The main parts of the websites are made in ASP.NET and JavaScript,

these are programming languages which are very popular.

Additionally they have a team which makes very attractive videos (for example as an intro to the

main page). They also make Virtual tour imagery, this term isn’t that know, it’s basically making an

image which you can turn around (360°) with your cursor, which is very interesting to show an object

on a 2D screen.

History

This company was established in 2000 by Geoff Johns who had experience for over 20 years in the IT

sector. He describes himself as a hands-on, get-involved, team-player, project manager who focuses

on getting the job done and delivering more than the expected. Geoff Johns works together with his

team, he’s specialised in databases.

Human Resources

The most important employees are David Abell and Geoff Johns (the founder of the SME). David is

specialised in Web design and Search engine optimisation, Geoff is specialised in SQL server,

Microsoft Access, ASP.NET and JavaScript.

Next to them they have a team of about 4 persons who work on the other parts of the website (They

are mentioned in the part about the Products)

Portfolio

In ten years they collected a portfolio which contains about 100 websites, maybe this doesn’t sound

a lot but they also have a lot of work with keeping the website up-to-date and still making them

better.

Some websites they made:

� Oodles Cover

� Love Us Or Leave Us

Page 97: GIP eindwerk

97

� SME Web Design (their own website)

Future

They are interested in extending the scope of their business by developing their websites with

professional graphic designers and web designers.

They also want to enlarge the amount of sites that they are currently keeping up-to-date. Maybe

they will take another employee, but that is not for the near future.

European Dimension

Because of the new technology, out SME is thinking about getting clients from other countries than

the UK. They want to bring their consulting to a new level, and to do so they would like to have live

video conferences with their clients. It’s however just an idea that they have, and they don’t know if

they are going to do it or not.

5.3.2 Powerpoint

Florian Dieleman

&

Paul Hurlebusch

Products ServicesServicesServicesServices • Web Development • Web Hosting StructureStructureStructureStructure • Graphic design • Databases • ASP/Javascript • Videos • Virtual tour imagery

Page 98: GIP eindwerk

98

History • Established in 2000 • Founded By Geoff Johns

Human Resources • Most important employees

David Abell

Geoff Johns

European Dimension • They think about expanding over the world • They would give support via live video conferences

Page 99: GIP eindwerk

99

The Future • Extend the scope • Work together with professionals • Extend the amount of websites to keep up-to-date

• Maybe take another employee

Portfolio • More then 100 sites in 10 years • Some examples

Page 100: GIP eindwerk

100

Besluit

De Geïntegreerde proef was een zeer leerrijke ervaring. Hoewel er soms problemen waren bij het

tijdig indienen van de opdrachten, hoop ik toch dit eindwerk tot een goed einde gebracht te hebben.

Ik heb in elk geval enorm veel bijgeleerd op het gebied van programmeren.

Het was een interessante uitdaging om alle kennis die we in de derde graad hebben opgedaan toe te

passen en uit te werken via deze GIP opgave.