Issuu on Google+

GeĂŻntegreerde proef Tom Vandegehuchte

Zilverstraat 26 • 8000 Brugge


Voorwoord Ik ben Tom Vandegehuchte, een student uit het Sint-Jozefsinstituut. Om het diploma secundair onderwijs te kunnen behalen op het einde van het jaar moeten wij een ge誰ntegreerde proef maken, kortweg GIP. Onze GIP omvat opdrachten van economie, Nederlands, programmeren en BPR. In het eerste hoofdstuk vindt u al de taken die ik heb moeten maken voor economie. Als tweede hoofdstuk kunt u alles te weten komen over de stage die ik heb gelopen bij Cl@ris te Blankenberge. Een zeer leerrijke periode die twee weken duurde. Daarnaast heb ik ook een statische website moeten maken. We mochten een vrij onderwerp kiezen en ik heb gekozen om een website te maken voor het Boldershof te Oostkamp. Samen met Jorne Van Landschoot en Axel Jonckhere heb ik de opdracht gekregen voor het vak programmeren om een website te maken in ASP voor de brandweer te Oostkamp om al oefeningen bij te houden. Dit komt grondig aan bod in het vierde hoofdstuk van mijn GIP. Voor het component van Engelse voor de GIP heb ik een SME moeten voorstellen die Avantage IT heet. Een bedrijf dat zich bezig houdt met alles dat met informatica te maken heeft en zeer veel te bieden heeft op dat vlak. Ik zou graag alle leerkrachten oprecht willen bedanken die mij te helpen bij het maken van deze GIP. Dankzij hen heb ik alle informatie kunnen bemachtigen en heb zo zeer veel kunnen bijleren. Graag zou ik meneer Berens, mevrouw De Meulder, mevrouw De Smet en meneer Devriendt nog eens extra willen bedanken om mij op weg te helpen en op mijn vragen te antwoorden die ik heb gehad tijdens het maken van deze bundel. Ook de mensen van Cl@ris ben ik zeer dankbaar dat ik daar heb mogen stage lopen. Het was een zeer leerrijke periode en heb veel zaken bijgeleerd over het bedrijfsleven.

Hoofdstuk: Voorwoord

Ik wens u alvast veel plezier met het inlezen van deze bundel!

3


4

Hoofdstuk: Voorwoord


Inhoud Voorwoord .............................................................................................................................................. 3 Inhoud

................................................................................................................................................. 5

1

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

1.1

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

1.2

Eenmanszaak ........................................................................................................................... 8

1.3

Vennootschap.......................................................................................................................... 8

1.4

Indeling volgens activiteiten, bedrijfsgrootte & juridische vorm ............................................ 9

1.5

E-business .............................................................................................................................. 10

1.6

Contracten ............................................................................................................................. 12

2

Stage ...................................................................................................................................... 16

2.1

Voorstelling van het stagebedrijf .......................................................................................... 16

2.2

Interview................................................................................................................................ 17

2.3

Sollicitatiebrief....................................................................................................................... 19

2.4

CV........................................................................................................................................... 20

2.5

Beschrijving van de werking in het stagebedrijf.................................................................... 21

2.6

Stageverslagen ...................................................................................................................... 22

3

Website 't Boldershof ............................................................................................................ 33

3.1

Index.html ............................................................................................................................. 33

3.2

Lunch.html ............................................................................................................................. 34

3.3

Uwfeest.html ......................................................................................................................... 35

3.4

Contact .................................................................................................................................. 36

3.5

Album.html ............................................................................................................................ 37

4

Informaticaproject ................................................................................................................. 38

4.1

Probleemstelling.................................................................................................................... 38

4.2

Indeling database .................................................................................................................. 44

4.3

Normalisatie .......................................................................................................................... 46

4.4

Procedures............................................................................................................................. 47

4.5

Code....................................................................................................................................... 48

4.6

HTML pagina's ....................................................................................................................... 81

4.7

Handleiding web applicatie voor gegevensbeheer Brandweer Oostkamp ........................... 85

5

English .................................................................................................................................... 92

5.1

Vantage IT .............................................................................................................................. 92

Hoofdstuk: Voorwoord

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

5


Range of products ................................................................................................................. 92

5.3

Marketing strategies ............................................................................................................. 92

5.4

European dimension ............................................................................................................. 93

5.5

Future .................................................................................................................................... 93

5.6

Sources .................................................................................................................................. 93

5.7

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

6

Conclusie ................................................................................................................................ 96

Hoofdstuk: Voorwoord

5.2

6


Inleiding Het doel van de GIP is om de leerlingen de stap te doen zetten van de theorie naar de praktijk. Het leert hen hun school kennis toe te passen in het bedrijfsleven. Hierdoor leert men zelfstandig werken en plannen. De GIP werd opgebouwd rond bedrijfseconomie, mijn stage, mijn website voor 't Boldershof, mijn informatica project en Engels. Er zijn natuurlijk zoals bij elke opgave een paar problemen opgedoken.

Hoofdstuk: Inleiding

Het programmeren in Excel was niet evident en er was veel opzoekwerk nodig. Dankzij het internet heb ik alle problemen kunnen verhelpen. In een GIP kruipt zeer veel werk, ook het stuk programmeren was soms niet simpel. Gelukkig werkte ik samen met een goed team en konden we alles op tijd af krijgen.

7


1

Bedrijfseconomische aspecten

1.1 Eenmanszaak of vennootschap Dit zal de eerste belangrijke keuze zijn die een starter van een onderneming zal moeten maken. Indien je voor een vennootschap zou kiezen moet je nog beslissen welke vennootschapsvorm je opteert. 1.2 Eenmanszaak Een eenmanszaak of 'handelszaak' is een term die, in tegenstelling tot de vennootschap, geen aparte rechtspersoonlijkheid bezit. Er zal dus geen splitsing zijn tussen het privévermogen van de zaakvoerder en het vermogen van de zaak 1.2.1 Voordelen  Beslissingen kunnen zeer snel en op een weinig formele manier genomen worden.  Alle winst van de eenmanszaak wordt belast in functie van de natuurlijke ondernemer. De ondernemer beslist dus zelf of en hoeveel je hiervan terug in de zaak investeert.  Boekhouding en administratieve verplichtingen zijn beperkter  Een ondernemer in een eenmanszaak zal dus ook veel meer vrijheid hebben in het ondernemen.

1.3 Vennootschap Eerst even de definitie van de vennootschap volgens het Wetboek van Vennootschappen: Een vennootschap wordt opgericht door een contract waarin twee of meer personen overeenkomen iets in gemeenschap te brengen met als doel één of meer nauwkeurig omschreven activiteiten uit te oefenen en met het oogmerk aan de vennoten een rechtstreeks of onrechtstreeks vermogensvoordeel te bezorgen. 1.3.1 Voordelen  De vennootschap zal eigen richten en plichten hebben.  Er zijn bepaalde vennootschapsvormen waarbij een beperkte aansprakelijkheid geldt.  Het belastbaar resultaat wordt belast in het stelsel van de vennootschapsbelasting. Het fiscaal voordeel ligt niet in de lagere tarieven maar wel in de mogelijkheid om te zorgen dat er een optimale inkomstenmix is. De inkomsten van de onderneming en van personen kunnen zodanig worden georganiseerd dat je in totaal zo weinig mogelijk belastingen moet betalen.  Alle afspraken die worden gemaakt binnenin de vennootschap staan op papier. 1.3.2 Nadelen  Er wordt een formele besluitvorming gebruikt.

Hoofdstuk: Bedrijfseconomische aspecten

1.2.2 Nadelen  Er is geen juridische structuur. De ondernemer is volledig aansprakelijk en de ondernemer staat met zijn persoonlijke bezittingen in voor de onderneming.  Een groot nadeel is voor de opvolging en overname van de zaak. Een opvolgingsregeling heeft het meeste kans op slagen als je onderneming de vennootschapsvorm heeft.  Een groter inkomstenbelasting. Alle inkomsten van de onderneming worden belast via de personenbelasting. Er is dus geen aparte fiscale aangifte en aanslag voor de eenmanszaak.

8


  

Er zijn meer juridische en administratieve verplichten, dit brengt dus meer kosten met zich mee. Door vele en diverse wettelijke verplichtingen zal het duurder zijn dan het starten van een eenmanszaak. Een vennootschap heeft bepaalde boekhoudkundige verplichtingen die een eenmanszaak niet heeft.

1.4 Indeling volgens activiteiten, bedrijfsgrootte & juridische vorm ECG is een eenmanszaak en bevindt zich in de tertiaire sector. Deze sector omvat de commerciële dienstverlening: bedrijven die met de verkoop van hun diensten winst willen maken. Tot de tertiaire sector rekent men onder andere winkels, horeca, theaters, kappers, groothandels. Het is een zeer klein bedrijf juist omdat het een eenmanszaak is. Een algemene indeling van de verschillende sectoren: Primaire sector

Secundaire sector

Tertiaire sector

Quartaire sector

Economische sector die grondstoffen en voedsel levert. De verwerking hiervan gebeurt in de secundaire sector. Enkele voorbeelden zijn landbouw, veeteelt, jacht en visserij. Economische sector die bekend staat als industrie. Deze omvat alle bedrijven en activiteiten die grondstoffen van de primaire sector verwerken. Deze producten worden dan in de tertiaire sector verkocht. Economische sector die de commerciële dienstverlening omvat. Dit zijn m.a.w. bedrijven die met de verkoop van hun producten of diensten winst willen maken. Enkele voorbeelden zijn winkels, horeca, transportbedrijven, advocaten,... Deze sector omvat de niet-commerciële dienstverlening, m.a.w. de enige economische sector die niet uit is op winst. Zoals overheidsdiensten, ziekenhuizen, brandweer en defensie.

Zeer kleine onderneming Jaaromzet < 500 000 EUR exclusief btw (625 000 EUR voor benzinestations)

Kleine onderneming Mogen niet meer dan één van volgende criteria overschrijden:  50 personeelsleden gemiddeld per jaar  7 300 000 EUR jaaromzet exclusief btw  3 650 000 EUR balanstotaal

Grote onderneming Geen zeer kleine of kleine onderneming

Enkelvoudige boukhouding

Dubbele boekhouding

Dubbele boekhouding

1.4.1 Bronnen http://www.securex.be/nl/starters/ http://www.unizo.be/starters/

Hoofdstuk: Bedrijfseconomische aspecten

Indeling volgens bedrijfsgrootte

9


http://economie.fgov.be/nl/ondernemingen/leven_onderneming/oprichting/Demarches_entrepren dre/statut_juridique/ Juridische vorm van mijn stagebedrijf Een eenmanszaak is een rechtsvorm van een onderneming. Het onderscheidt zich van bijvoorbeeld een maatschapij en een stichting. 

    

Bij een eenmanszaak drijft de ondernemer de onderneming alleen. Dat is het geval als de ondernemer een zelfstandig beroep uitoefent (bijvoorbeeld notaris of huisarts) of als de ondernemer de enige eigenaar van het bedrijf is. Als ondernemer kunt u dus ook een eenmanszaak hebben als u personeel in dienst heeft. Als de ondernemer aan de eisen voor het ondernemerschap voldoet, is de ondernemer voor de inkomstenbelasting voortaan ondernemer. De ondernemer kan dus gebruikmaken van de speciale regelingen voor zelfstandigen. Ook voor de btw bent u zelf ondernemer en zijn de btw-regels op u van toepassing. Als u personeel in dienst neemt, krijgt u te maken met loonheffingen.

De eenmanszaak is geen rechtspersoon. Als u een eenmanszaak heeft, bent u dus aansprakelijk voor de schulden van uw onderneming. 1.5 E-business ECG maakt niet echt gebruik van informatica-toepassingen die zijn taakbelasting verminderen, alles gebeurt via telefoon of via e-mail.

ECG gebruikt de toepassing VMWare-Server om de school draaiende te houden. Ze werken met terminals en deze toepassing zorgt ervoor dat alles goed functioneert.

Hoofdstuk: Bedrijfseconomische aspecten

1. VMWare-Server

10


2. Teamviewer

Het programma Teamviewer wordt op alle computers ge誰nstalleerd die de mensen binnen brengen en waarvan Steven weet dat ze er nog niet zo goed mee kunnen werken. Zo kan Steven, als er zich problemen voordoen van op afstand alles controleren en zo de fout zoeken.

Avast is de virusscanner die ECG altijd zal installeren bij computers die ze moeten formatteren.

Hoofdstuk: Bedrijfseconomische aspecten

3. Avast

11


Hoofdstuk: Bedrijfseconomische aspecten

1.6

Contracten

Bestelbon

12


Hoofdstuk: Bedrijfseconomische aspecten

Leveringsbon

13


Hoofdstuk: Bedrijfseconomische aspecten

Factuur

14


Hoofdstuk: Bedrijfseconomische aspecten

Creditnota

15


2

Stage

2.1

Voorstelling van het stagebedrijf

2.1.1 Historiek in 1997 werd het bedrijf ECG opgericht. Toen was de belangrijkste doelstelling zorgen voor een eenvoudige IT-infrastructuur die makkelijk te onderhouden is. Niet alle onderwijsinstellingen beschikken immers over de middelen om dit zelf te realiseren. Daarom kozen de oprichters voor het aanbieden van een totaalconcept. Bij hen koop je niet alleen hardware. Ze zetten je ook op weg om het computerpark zo onderhoudsvriendelijk mogelijk in te richten met oog voor het beschikbare budget. In 2006 opende ECG hun nieuw bedrijfsgebouw in Blankenberge. Dit gebouw herbergt naast een montageafdeling burelen en niet in het minst een opleidingscentrum. Het gaat ECG immers niet alleen om het verkopen van materiaal. Even belangrijk lijkt het hen om ervoor te zorgen dat het materiaal optimaal kan worden ingezet. In ditzelfde jaar lanceerde ECG een nieuwe merknaam: CL@RIS met een volledig gamma producten gericht op onderwijs. 2.1.2 Coรถrdinaten ECG is eenvoudig te vinden en ligt aan een grote baan, daardoor is het snel te bereiken. Het gebouw is gelegen op een industrieterrein en heeft het een grote parking. Stagebedrijf: ECG info@claris.be Hanzestraat 26 8370 Blankenberge 050 /42 95 98

2.1.3 Producten en diensten ECG biedt meerdere producten en diensten aan. Zijn grootste troef is het Cl@risbord: dat is een interactief schoolbord dat door middel van de computer bestuurd kan worden om zo les te geven. Er zijn veel verschillende soorten Cl@risborden zoals: multitouch, het vingergevoelige en het eenvoudige pen-bord. De dienst van Steven heeft toezicht op het netwerk in een aantal scholen, waar wij stage hebben gelopen. Het netwerk op peil houden, computers upgraden en vervangen, problemen oplossen, enz. het hoort er allemaal bij. Daarnaast is ECG ook een gewone hardware- en softwarewinkel. Een goede service aan zijn klanten staat centraal.

Hoofdstuk: Stage

Stagementor: Steven Clarissimo 0486/11.55.01

16


2.1.4 Organogram ECG is eigenlijk een eenmanszaak, maar Steven kreeg hulp van meerdere ICT-coรถrdinatoren in de verschillende scholen waar we gewerkt hebben.

Steven Clarissimo (stage-mentor) Baas

Pieter Werknemer

Simon Sanders stagair

Tom Vandegehuchte stagair

2.1.5 Stage in ECGPC We liepen meestal stage op plaatsen waar een bord moest gemonteerd worden of waar al een bord was dat we eens moesten nakijken. De problemen die we tegenkwamen waar zeer gevarieerd. 2.1.6 Taken & uurregeling De uren waren elke dag hetzelfde: van 8.30 u tot 17 u. Woensdag was het maar tot 12u. De taken werden via mail doorgestuurd zodat we ons konden voorbereiden: zoals materiaal meenemen of wat vroeger klaarstaan in Blankenberge om meteen te kunnen vertrekken. 2.2 Interview Op woensdag 17 maart 2010 ben ik richting Blankenberge vertrokken om mijn stagementor Steven Clarissimo te interviewen. Na een hartelijk ontvangst zijn we direct van wal gegaan.

Steven vertelde mij dat hij scholen verkiest als zijn specialisatie, bij particulieren moet je een te groot aanbod hebben. Hij is zelf ook onderwijzer van opleiding en daar heeft hij zelfs zijn idee van het Cl@ris bord vandaan gehaald. Dat is een soort schoolbord dat met de computer of een speciale pen bestuurd kan worden.

Hoofdstuk: Stage

Ik heb hem een tiental vragen gesteld waar hij zo eerlijk mogelijk op antwoordde. Hij vertelde me dat het niet moeilijk was om een bedrijf op te richten. Hij had al de nodige attesten en de boekhouder bracht al meteen alle administratie voor het bedrijf in orde. 25 jaar geleden toen Steven nog thuis woonde werd er een computer aangekocht in de familie. Hij vond het toen al leuk om die dingen uit elkaar te halen en volledig te onderzoeken. Steven vertelde mij dat hij nooit een vakantiejob heeft gedaan.

17


In zijn bedrijf zou hij niet direct werknemers aanwerven, zijn zaak is nu een zelfstandige zaak en hij werkt samen met andere zelfstandigen in plaats van werknemers. Een netwerk in een school aanleggen is een heel proces: eerst en vooral moet je alles goed plannen, daarna maak je de offerte op met de benodigdheden. Dan zoek je de nodige mensen (die freelance werken) en als laatste maak je de bestelling op om alles wat je nodig hebt zeker in voorraad te hebben. Bij de bestelling verkiest hij terminals want die zijn goedkoper dan een laptop of pc, zijn zeer zuinig met de stroom en zijn zeer onderhoudsvriendelijk. De drukste periodes zijn altijd het begin en het einde van het schooljaar, januari is ook een drukke periode omdat er een vakantie tussen zit met veel feestdagen en de computers die hij verkoopt worden dan wel eens als cadeau gegeven.

Hoofdstuk: Stage

Ten slotte vroeg ik hem wat hij vond van onze samenwerking en de stageperiode op zich. Hij lachte en zei: "Wees maar gerust, een stageperiode zou voor mijn part iets langer moeten duren om een volledig project te kunnen afronden en om beter op elkaar afgestemd te geraken." Ik bedankte hem en zei dat ik het heel leuk vond om met hem te mogen werken.

18


2.3 Sollicitatiebrief Tom Vandegehuchte Willem De Zwijgerstraat 8020 OOSTKAMP

2/05/2011

Steven Clarissimo Hanzesstraat 26 8370 Blankenberge

Sollicitatie

Geachte Steven Clarissimo

Graag zou ik me kandidaat willen stellen voor de vacature van arbeider in uw bedrijf.

Zoals u kunt lezen in mijn curriculum vitae heb ik veel ervaring in de informaticasector. Ik zit nu in het 6e jaar informatica beheer. Door mijn leerervaring in het Sint-Jozefsinstituut in Brugge heb ik een goede kennis van het informatica gebeuren, ook het inzicht in programmeren beheers ik. Bovendien heeft de opleiding die ik momenteel volg ook een goede basis aan talen zodat ik me goed kan uitdrukken in het Frans en het Engels. Momenteel ben ik op zoek naar een nieuwe uitdaging. In uw vacature spreekt vooral de klantvriendelijkheid mij enorm aan. Ik heb in het jaar 2011 stage gelopen bij u en deze uitdagingen spreken mij nog altijd ten zeerste aan. In afwachting op een positieve reactie, zou ik u graag ontmoeten om in een persoonlijk gesprek mijn motivatie en interesse verder toe te lichten.

Tom Vandegehuchte

Hoofdstuk: Stage

Hoogachtend

19


2.4 CV Persoonlijke gegevens Naam: Adres: tel: gsm: e-mail: Geboorteplaats: Geboortedatum: Burgerlijke staat:

Tom Vandegehuchte Willem De Zwijgerstraat, 8020 OOSTKAMP 050 82 75 60 0496075634 tomvandegehuchte@hotmail.com GENT 1991-06-27 Ongehuwd

Opleiding 2004 - 2005

Moderne Frères (Mariastraat 7 te Brugge)

2005 - 2006

Moderne Frères (Mariastraat 7 te Brugge)

2006 - 2008

Handel Sint-Jozefsinstituut Handel en Toerisme

2009 - 2010

IB Sint-Jozefsinstituut Handel en Toerisme

Talenkennis Nederlands: Frans: Engels:

spreken: schrijven: spreken: schrijven:

Moedertaal goed goed vlot zeer vlot

Administratieve vaardigheden Informaticakennis:

Handelscorrespondentie:

Word: Excel: Access:

zeer goed zeer goed zeer goed Nederlands/ Frans/ Engels

Ik heb vorig schooljaar (2009 - 2010) een stage gelopen in het AZ Sint-Jan te Brugge. Dit jaar heb ik ook een stage moeten lopen en die was in Cl@ris te Blankenberge.

Hoofdstuk: Stage

Ervaring

20


2.5 Beschrijving van de werking in het stagebedrijf In het bedrijf ECG hebben de nieuwste computers uiteraard al Windows 7, maar op de servers en computers waar wij gewerkt hebben staat Windows XP omdat Windows XP niet veel geheugen en prestaties vereist. Het is goedkoper en alle programma's werken er zeker op. De stagementor heeft wel gevraagd om Windows XP te voorzien van een Windows 7 uiterlijk, omdat ze mooier oogt. Daarnaast gebruiken de servers VMware (wordt gebruikt om de virtuele omgeving in orde te houden) om alle terminals te voorzien van een Windows XP zodat iedereen ermee kan werken. Ze gebruiken het programma Illusion om alle veranderingen terug te zetten. Om de terminals te besturen maakt ECG gebruik van een speciaal ontwikkeld programma dat in de server wordt ge誰nstalleerd. Er is overal internet voorzien. Alles wordt op externe harde schijven opgeslagen.

Hoofdstuk: Stage

Dankzij Illusion moet je maar 1 gebruiker aanmaken voor iedereen en de servers zijn zeer belangrijk voor de terminals die overal verspreid zijn. Daarbij zijn er ook nog overal netwerkprinters te vinden. Het ICT-team gebruikt TeamViewer om op afstand de servers te kunnen besturen en aan te passen, maar om herstellingen te doen blijkt het handiger om die server naar de werkplaats over te brengen omdat alle nodige apparatuur daar ligt. Een school heeft geen noodbatterijen, maar op diverse externe schijven zijn er back-ups van de verschillende virtuele machines waar iedereen mee werkt.

21


Stageverslagen

2.6.1

Maandag 17 januari

Hoofdstuk: Stage

2.6

22


Dinsdag 18 januari

Hoofdstuk: Stage

2.6.2

23


Woensdag 19 januari

Hoofdstuk: Stage

2.6.3

24


Donderdag 20 januari

Hoofdstuk: Stage

2.6.4

25


Vrijdag 21 januari

Hoofdstuk: Stage

2.6.5

26


Maandag 24 januari

Hoofdstuk: Stage

2.6.6

27


Dinsdag 25 januari

Hoofdstuk: Stage

2.6.7

28


Woensdag 26 januari

Hoofdstuk: Stage

2.6.8

29


Donderdag 27 januari

Hoofdstuk: Stage

2.6.9

30


Vrijdag 28 januari

Hoofdstuk: Stage

2.6.10

31


Algemeen stageverslag

Hoofdstuk: Stage

2.6.11

32


3

Website 't Boldershof

Voor de opdracht van BPR heb ik gekozen om een website te maken voor 't Boldershof te Oostkamp. Een feestzaal waar ik zelf ook af en toe een handje toesteek als ze een groot feest moeten verzorgen.

Hoofdstuk: Website 't Boldershof

3.1 Index.html Ik heb voor deze kleuren gekozen omdat ik vond dat die zeker bij het thema passen. Onderaan is er nog een bruine boord die uit dezelfde kleur bestaat als de menubar.

33


Hoofdstuk: Website 't Boldershof

3.2 Lunch.html Hier zullen later de menu's op komen. Ik heb nog geen menu's gekregen omdat de website pas volgend jaar op het internet geplaatst wordt.

34


Hoofdstuk: Website 't Boldershof

3.3 Uwfeest.html Deze pagina geeft de klant wat meer info over hoe de zaal eruit ziet en waarom hij/zij het feest in het Boldershof moet plannen.

35


Hoofdstuk: Website 't Boldershof

3.4 Contact De gegevens moeten nog worden doorgegeven, omdat de website pas volgend jaar in gebruik genomen wordt.

36


Hoofdstuk: Website 't Boldershof

3.5 Album.html Dit is een voorsmaakje van hoe mijn album er zal uitzien. Er zullen natuurlijk meer foto's volgen.

37


4

Informaticaproject

4.1 Probleemstelling Wij zullen een programma maken voor het brandweerkorps te Oostkamp. Hiermee kunnen de brandweermannen zien voor welke competenties ze zijn geslaagd en voor welke ze nog moeten slagen. Het programma zal worden gestart met een inlogscherm. Hiermee zullen we alle gegevens beschermen die in de database zitten. Zo wordt ook voorkomen dat gegevens kunnen worden aangepast door verkeerde mensen. Bepaald door hun rechten zullen ze kunnen informatie wijzigen, verwijderen of gewoon lezen. Er zal ĂŠĂŠn account zijn per officier, en die zullen het gebruiken om de competenties te beheren. Elke officier zal dus alles kunnen aanpassen en zaken kunnen bijvoegen, zoals een nieuw soort competentie, of zaken verwijderen. Via een ondervraging kunnen wij afleiden dat we de volgende zaken zullen moeten implementeren in het programma.

Hoofdstuk: Informaticaproject

Er moet een mogelijkheid zijn voor iedere brandweerman om te zien welke proeven hij nog moet inoefenen. Ook een uitbereiding op toekomstige proeven of nieuwe proeven moet mogelijk zijn. Een gebruiker mag zijn eigen gegevens niet aanpassen, deze regel geldt niet voor personen met een hogere rang (hierbij denken wij aan officieren). Wat de interface betreft hebben wij geleerd we control panels moeten voorzien om de proeven te kunnen beheren.

38


4.1.1

Besturingselementen

Object

Eigenschap

Waarde

lblUitleg

Text

Overzichten kaarten en criteria

grdKaarten

Backcolor Width DataKeyNames

Gray 500px KaartNr

dtsBrandweer

DataSourceID Width AllowPaging Connectionstring

dtsBrandweer 500px True Data Source=.\Provider=SQLOLEDB.1;Persist Security Info=False;User ID=gebruiker;Password=6ibbiSchool;Initial Catalog=jozefapp;Data Source=www.sintjozefbrugge.be

DataKeyNames DataSourceID Width AllowPaging ConnectionString

CombinatieNr dtsCriteria 500px True Data Source=.\Provider=SQLOLEDB.1;Persist Security Info=False;User ID=gebruiker;Password=6ibbiSchool;Initial Catalog=jozefapp;Data Source=www.sintjozefbrugge.be Knop Nieuwe kaarten invoegen

grdCriteria

dtsCriteria

pnlKaart pnlCriteria btnKaartToevoegen

CssClass Text

Hoofdstuk: Informaticaproject

4.1.1.1 Kaarten_Nieuw.aspx

39


Waarde Kaarten bijmaken 500px Gray Kaarten bijmaken 500px Gray Knop Vorige 26px 65px Kaart nummer: Volg nummer:

Hoofdstuk: Informaticaproject

4.1.1.2 KaartenToevoegen.aspx Object Eigenschap lblTitel1 Text Width Backcolor lblTitel2 Text Width Backcolor btnVorige CssClass Text Height Width lblNummer Text lblVolgNR Text

40


btnKaart

lblKaart lblCriteriaNr

Text CssClass Text Height Width CssClass Text Height Width Text Text

Titel: Knop Criteria 26px 65px Knop Kaart toevoegen 26px 160px Kaart Criteria nr. :

Hoofdstuk: Informaticaproject

lblTitel txtKaartNr txtVolgnr txtTitel btnCriteria

41


lblOmschrijving cboKaartNr

txtCriteria txtBeschrijving btnToevoegen

pnlKaarten pnlCriteria 4.1.1.3 Admin.aspx Object txtSpecialisatie btnSpecialisatie gdvSpecialisatie dtsSpecialisatie txtBrevet btnBrevet gdvBrevet gdvBrandweerman

Text DataSourceID DataTextField DataValueField Height Width CssClass Text Height Width -

Eigenschap Text Cssclass DataSourceID Text Cssclass DataSourceID DataSourceID Allowpaging AllowSorting

Omschrijving: dtsKaartNr KaartNr KaartNr 26px 136px Knop Criteria toevoegen 26px 160px -

Waarde opslaan knop dtsSpecialisatie Opslaan Knop dtsBrevet dtsBrandweerman True True

Hoofdstuk: Informaticaproject

dtsBrandweermannen

42


dtsOverzicht hplAfdrukken

pnlBehaald gdvTraining dtsTraining gdvBrevetBehaald dtsBrevetBehaald gdvBehaald dtsBehaald gdvSpecialisatie dtsSpecialisatie pnlNieuw txtImmatriculatie txtNaam txtVNaam chkblBrevetBehaald

cboBrevet

chkblSpecialisatie

Object chkblSpecialisatie dtsSpecialisatieLijst txtInlognaam txtWachtwoord cboNiveau dtsBrevet btnSpecialisatie

Eigenschap DataSourceID Allowpaging AllowSorting Cssclass NavigatieURL Target Text DataSourceID

Waarde dtsOverzicht True True Knop ~/Afdr_Brandweer.aspx _Blank Afdrukken dtsTraining

DataSourceID

dtsBrevetBehaald

DataSourceID

dtsBehaald

DataSourceID DataSourceID DataTextField DataValueField Repeatcolumns RepeatDirection RepeatLayout DataSourceID DataTextField DataValueField DataSourceID DataTextField DataValueField Repeatcolumns Eigenschap RepeatDirection RepeatLayout Text Cssclass

dtsSpecialisatie dtsBrevet Functie Functie 5 Horizontal Table dtsBrevet Functie Functie dtsSpecialisatieLijst Functie Functie 5 Waarde Horizontal Table Toevoegen knop

Hoofdstuk: Informaticaproject

4.1.1.4 BrandweerAlg.aspx Object gdvOverzicht

43


4.1.1.5 Training.aspx Object cldDatum lblUur txtAantaluur lblNaam txtNaamOefening dtsBrandweermannen lblLijst1 lstBrandweermannen

lblLijst2 lstAanwezig btnAanwezig btnOpslaan

Eigenschap Text Text Text DataSourceID DataTextField DataValueField Height Width Text Text Cssclass Text CssClass

Waarde Aantal uur: Naam Oefening Brandweermannen dtsBrandweermannen Naam ImmatriculatieNr 145px 198px Aanwezig Aanwezig Knop Opslaan Knop

4.1.1.6 Training_Overzicht.aspx Object Eigenschap ddlTraining Autopostback DataSourceID dtsTraining gdvGeslaagd DataSourceID dtsGeslaagd -

Indeling database

4.2.1.1 ATJtblAanwezig BWNaam

Char(50)

TrainingNaam

Char(50)

Geslaagd

Bit

Datum

Char(50)

CBeschrijving

Char(50)

4.2.1.2 ATJtblBehaald ImmatriculatieNr

Char(3)

CombinatieNr

Char(50)

Behaald

Char(50)

DatumOefening

Datetime

Hoofdstuk: Informaticaproject

4.2

Waarde True dtsTraining dtsGeslaagd -

44


Char(50)

Naam

Char(50)

Voornaam

Char(50)

Functie

Char(50)

Inlognaam

Char(50)

Wachtwoord

Char(50)

Niveau

Numeric(9)

4.2.1.4 ATJtblBrevetBehaald ImmatriculatieNr

Char(50)

Brevet

Char(50)

4.2.1.5 ATJtblBrevetLijst Functie

Char(50)

4.2.1.6 ATJtblCriteria CombinatieNr

Char(50)

KaartNr

Numeric(9)

CriteriaNr

Numeric(9)

Beschrijving

Char(50)

4.2.1.7 ATJtblKaarten KaartNr

Char(50)

Titel

Char(50)

Volgnummer

Char(50) Hoofdstuk: Informaticaproject

4.2.1.3 ATJtblBrandweerman ImmatriculatieNr

45


4.2.1.8 ATJtblNieuws Titel

Text(16)

Naam

Nvarchar(50)

Inhoud

Char(500)

Datum

datetime

4.2.1.9 ATJtblSpecialisatie ImmatriculatieNr

Char(50)

Functie

Char(50)

4.2.1.10 ATJtblSpecialisatieLijst Specialisatie

Char(50)

4.2.1.11 ATJtblTraining Datum

Char(50)

[Aantal uur]

Char(50)

TrainingNaam

Char(50)

4.3.1 Eindresultaat in Access Wij maken geen gebruik van relaties tussen onze tabbellen in design zoals u hieronder kunt zien. Alle relaties worden gelegd in de code die we schreven voor ons project. Vaak was het ook niet nodig om een relatie tussen bepaalde tabellen te leggen, omdat we het voor onszelf overzichtelijk zouden houden en dan vaak gebruik hebben gemaakt van 1 tabel per opgave.

Hoofdstuk: Informaticaproject

4.3 Normalisatie Wij hebben gekozen om gebruik te maken van 11 tabellen. Dit is om alle gegevens op te splitsen zodat we geen 2x dezelfde gegevens bijhouden en om het overzichtelijk te houden in de code van het programma. In de tabel ATJtblBrandweerman worden de gegevens bijgehouden zoals naam en voornaam, maar ook de functie en de login gegevens. We hebben ook vaak gebruik gemaakt van gecombineerde primaire sleutels. Dit wil zeggen dat we een combinatie hebben genomen van 2 velden als sleutel. We hebben hiervoor gekozen zodat we zeker geen dubbele gegevens in de database kunnen plaatsen. Per kaart zijn er een aantal criteria waarbij de combinatie van die criteria en die kaart bijgehouden wordt door een unieke waarde: combinatienr. Per criteria wordt de omschrijving bijgehouden. Om de vorderingen bij te houden combineren we ImmatriculatieNr en CombinatieNr als unieke waarde om te kunnen zien of ze behaald zijn en wanneer.

46


4.4

Procedures

4.4.1 Object Page

Admin.aspx Gebeurtenis Load

btnOpslaan

Click

btnFunctie

Click

4.4.2 Object Page

Afdr_Brandweer

4.4.3 Object Page

Afdr_Kaarten

4.4.4 Object Page

BrandweerAlg.aspx

Gebeurtenis Load

Doel Genereert de tabel van alle brandweermannen en voegt op het einde de code in die de pagina automatisch laat afdrukken

Gebeurtenis Load

Doel Genereert de tabel met alle kaarten en voegt op het einde de code in die de pagina automatisch laat afdrukken

Gebeurtenis Load

Doel Laadt alle brandweermannen of alleen de brandweerman die aangemeld is. Daarna vult hij alle trainingen, brevetten, criteria en specialisaties in. Slaat de nieuwe brandweerman op Slaat het nieuwe brevet op in de database

btnToevoegen

Click

btnFunctie

Click

Inlog.aspx Gebeurtenis Load

btnToevoegen

Load

btnAanmelden

Load

btnAdmin btnAfmelden

load Load

Doel Laadt het nieuws en maakt het panel om een nieuw nieuws te maken onzichtbaar. Controleert ook op cookie. Voegt het nieuwe nieuws toe in de database en herlaadt het. Controleert de opgegeven gebruikersnaam en wachtwoord of het klopt en slaat het niveau op. Laadt de admin pagina Logt de gebruiker af.

Hoofdstuk: Informaticaproject

4.4.5 Object Page

Doel Controleert of het niveau hoog genoeg is en maakt connectie aan Slaat de nieuwe specialisatie op in de database Slaat het nieuwe brevet op in de database

47


Kaarten_Nieuw.aspx Gebeurtenis Load

btnKaartToevoegen

Click

grdKaarten

SelectedIndexChanged

grdKaarten

RowDeleting

4.4.7 Object Page

KaartenToevoegen.aspx Gebeurtenis Load

btnKaart

Click

btnToevoegen

Click

btnCriteria

Click

btnVorige

Click

4.4.8 Object Page

Doel Controleert of het niveau hoog genoeg is en maakt connectie aan, genereert ook automatisch kolommen om data aan te passen Dient als link naar KaartenToevoegen.aspx Verandert de geselecteerde rij van kleur als verduidelijking Messagebox met bevestiging of de record mag verwijderd worden uit de database

Doel Controleert of het niveau hoog genoeg is en maakt connectie aan Zal de ingevulde gegevens (kaart) opslaan in de database Zal de ingevulde gegevens (criteria) opslaan in de database Maakt pnlCriteria zichtbaar om criteria te kunnen toevoegen Dient als link om terug te gaan naar de pagina Kaarten_Nieuw.aspx

Training.aspx Gebeurtenis Load

btnAanwezig

Click

btnOpslaan

Click

4.5

Code

4.5.1

Admin.aspx

Imports System.Data.SqlClient Partial Class Admin Inherits System.Web.UI.Page Dim cnnBrandweer As New SqlConnection

Doel Controleert of het niveau hoog genoeg is en maakt connectie aan Voegt de brandweermannen toe aan de lijst met aanwezigen Bewaart alle ingevulde gegevens in de database Hoofdstuk: Informaticaproject

4.4.6 Object Page

48


Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 'controle op niveau 1 anders terugsturen If Session("Niveau") <> 1 Then Response.Redirect("Inlog.aspx") End If 'connectie opvullen cnnBrandweer.ConnectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings("Brandweer").ToStri ng End Sub Protected Sub btnOpslaan_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSpecialisatie.Click 'command declareren Dim scmdSpecialisatie As New SqlCommand 'command connectie en text opvullen scmdSpecialisatie.Connection = cnnBrandweer cnnBrandweer.Open() scmdSpecialisatie.CommandText = "INSERT INTO ATJtblSpecialisatieLijst (Specialisatie) VALUES ('" & txtSpecialisatie.Text & "')" cnnBrandweer.Close() End Sub Protected Sub btnFunctie_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnBrevet.Click 'command declareren Dim scmdBrevet As New SqlCommand

Hoofdstuk: Informaticaproject

'command connectie en text opvullen scmdBrevet.Connection = cnnBrandweer cnnBrandweer.Open() scmdBrevet.CommandText = "INSERT INTO ATJtblBrevetLijst (Functie) VALUES ('" & txtBrevet.Text & "')" cnnBrandweer.Close() End Sub End Class

49


4.5.2

Afdr_Brandweer.aspx

Imports System.Drawing Imports System.Data.SqlClient Partial Class Afdr_Brandweer Inherits System.Web.UI.Page Dim tblBrandweer As New Table Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 'Declareren variabelen Dim dtrLijst As SqlDataReader Dim scmdLijst As New SqlCommand Dim cnnBrandweer As New SqlConnection Dim strNummer, strNaam, strVoornaam, strFunctie As String Dim intTeller As Integer = 0 Dim blnLes As Boolean = False 'Connectiestring instellen cnnBrandweer.ConnectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings("Brandweer").ToStri ng 'Connectie openen cnnBrandweer.Open() 'Commando instellen scmdLijst.Connection = cnnBrandweer scmdLijst.CommandText = "SELECT ImmatriculatieNr, Naam, Voornaam, Functie FROM ATJtblBrandweerman" 'Datareader uitvoeren dtrLijst = scmdLijst.ExecuteReader

'Tabel opstellen 'Hoofd instellen van tabel1 'Beginnen met een rij te maken die de hoofding vormt Dim trRij As New TableRow()

'Vullen van de cellen tcCel1.Controls.Add(New tcCel2.Controls.Add(New tcCel3.Controls.Add(New tcCel4.Controls.Add(New

LiteralControl("Immatriculatie nr")) LiteralControl("Naam")) LiteralControl("Voornaam")) LiteralControl("Functie"))

'Uiterlijk aanpassen van elke cel tcCel1.Font.Bold = True tcCel1.HorizontalAlign = HorizontalAlign.Center tcCel2.Font.Bold = True tcCel2.HorizontalAlign = HorizontalAlign.Center tcCel3.Font.Bold = True tcCel3.HorizontalAlign = HorizontalAlign.Center

Hoofdstuk: Informaticaproject

'3 cellen nodig => lesuur, onderwerp & commentaar Dim tcCel1 As New TableCell() Dim tcCel2 As New TableCell() Dim tcCel3 As New TableCell() Dim tcCel4 As New TableCell()

50


tcCel4.Font.Bold = True tcCel4.HorizontalAlign = HorizontalAlign.Center tcCel1.BorderColor = Drawing.Color.Black tcCel1.BorderStyle = BorderStyle.Solid tcCel1.BorderWidth = 1 tcCel2.BorderColor = Drawing.Color.Black tcCel2.BorderStyle = BorderStyle.Solid tcCel2.BorderWidth = 1 tcCel3.BorderColor = Drawing.Color.Black tcCel3.BorderStyle = BorderStyle.Solid tcCel3.BorderWidth = 1 tcCel4.BorderColor = Drawing.Color.Black tcCel4.BorderStyle = BorderStyle.Solid tcCel4.BorderWidth = 1 'De rij vullen met de aangemaakte cellen trRij.Cells.Add(tcCel1) trRij.Cells.Add(tcCel2) trRij.Cells.Add(tcCel3) trRij.Cells.Add(tcCel4) 'Rij toevoegen aan de tabel tblBrandweer.Rows.Add(trRij) 'Tabel eigenschappen geven tblBrandweer.BorderStyle = BorderStyle.Solid tblBrandweer.BorderWidth = 1 tblBrandweer.BorderColor = Drawing.Color.Black tblBrandweer.GridLines = GridLines.Both 'Datareader uitvoeren While dtrLijst.Read() = True 'Een nieuwe rij Dim r As New TableRow() '3 Nieuwe cellen Dim c1 As New TableCell() Dim c2 As New TableCell() Dim c3 As New TableCell() Dim c4 As New TableCell()

'Eigenschappen van de cellen c1.Width = 120 c2.Width = 200 c3.Width = 200 c4.Width = 100 c1.BorderColor = Drawing.Color.Black c1.BorderStyle = BorderStyle.Solid c1.BorderWidth = 1 c2.BorderColor = Drawing.Color.Black

Hoofdstuk: Informaticaproject

'Variabelen opslaan strNummer = dtrLijst.Item("ImmatriculatieNr").ToString.Replace(" ", "") strNaam = dtrLijst.Item("Naam").ToString.Replace(" ", "") strVoornaam = dtrLijst.Item("Voornaam").ToString.Replace(" ", "") strFunctie = dtrLijst.Item("Functie").ToString.Replace(" ", "")

51


c2.BorderStyle = BorderStyle.Solid c2.BorderWidth = 1 c3.BorderColor = Drawing.Color.Black c3.BorderStyle = BorderStyle.Solid c3.BorderWidth = 1 c4.BorderColor = Drawing.Color.Black c4.BorderStyle = BorderStyle.Solid c4.BorderWidth = 1 'Vullen cellen c1.Controls.Add(New c2.Controls.Add(New c3.Controls.Add(New c4.Controls.Add(New

LiteralControl(strNummer)) LiteralControl(strNaam)) LiteralControl(strVoornaam)) LiteralControl(strFunctie))

'Cellen aan de rij toevoegen r.Cells.Add(c1) r.Cells.Add(c2) r.Cells.Add(c3) r.Cells.Add(c4) 'Rij aan de tabel toevoegen tblBrandweer.Rows.Add(r) End While 'Datareader sluiten dtrLijst.Close() 'Tabel invoegen in Panel1 pnlLijst.Controls.Add(tblBrandweer) Response.Write("<script language = 'javascript'>javascript:window.print()</script>") End Sub End Class

Afdr_Kaarten.aspx

Imports System.Drawing Imports System.Data.SqlClient Partial Class Afdr_Brandweer Inherits System.Web.UI.Page Dim tblBrandweer As New Table Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 'Declareren variabelen Dim dtrLijst As SqlDataReader Dim scmdLijst As New SqlCommand Dim cnnBrandweer As New SqlConnection Dim strNummer, strTitel, strVolgnummer As String Dim intTeller As Integer = 0 Dim blnLes As Boolean = False 'Connectiestring instellen cnnBrandweer.ConnectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings("Brandweer").ToStri ng 'Connectie openen cnnBrandweer.Open() 'Commando instellen

Hoofdstuk: Informaticaproject

4.5.3

52


scmdLijst.Connection = cnnBrandweer scmdLijst.CommandText = "SELECT KaartNr, Titel, Volgnummer FROM ATJtblKaarten" 'Datareader uitvoeren dtrLijst = scmdLijst.ExecuteReader 'Tabel opstellen 'Hoofd instellen van tabel1 'Beginnen met een rij te maken die de hoofding vormt Dim trRij As New TableRow() '3 cellen nodig => lesuur, onderwerp & commentaar Dim tcCel1 As New TableCell() Dim tcCel2 As New TableCell() Dim tcCel3 As New TableCell() 'Vullen van de cellen tcCel1.Controls.Add(New LiteralControl("Kaart nummer")) tcCel2.Controls.Add(New LiteralControl("Titel")) tcCel3.Controls.Add(New LiteralControl("Volgnummer")) 'Uiterlijk aanpassen van elke cel tcCel1.Font.Bold = True tcCel1.HorizontalAlign = HorizontalAlign.Center tcCel2.Font.Bold = True tcCel2.HorizontalAlign = HorizontalAlign.Center tcCel3.Font.Bold = True tcCel3.HorizontalAlign = HorizontalAlign.Center tcCel1.BorderColor = Drawing.Color.Black tcCel1.BorderStyle = BorderStyle.Solid tcCel1.BorderWidth = 1 tcCel2.BorderColor = Drawing.Color.Black tcCel2.BorderStyle = BorderStyle.Solid tcCel2.BorderWidth = 1 tcCel3.BorderColor = Drawing.Color.Black tcCel3.BorderStyle = BorderStyle.Solid tcCel3.BorderWidth = 1

'Rij toevoegen aan de tabel tblBrandweer.Rows.Add(trRij) 'Tabel eigenschappen geven tblBrandweer.BorderStyle = BorderStyle.Solid tblBrandweer.BorderWidth = 1 tblBrandweer.BorderColor = Drawing.Color.Black tblBrandweer.GridLines = GridLines.Both 'Datareader uitvoeren While dtrLijst.Read() = True 'Variabelen opslaan

Hoofdstuk: Informaticaproject

'De rij vullen met de aangemaakte cellen trRij.Cells.Add(tcCel1) trRij.Cells.Add(tcCel2) trRij.Cells.Add(tcCel3)

53


strNummer = dtrLijst.Item("Kaartnr").ToString.Replace(" ", "") strTitel = dtrLijst.Item("Titel").ToString.Replace(" ", "") strVolgnummer = dtrLijst.Item("Volgnummer").ToString.Replace(" ", "") 'Een nieuwe rij Dim r As New TableRow() '3 Nieuwe cellen Dim c1 As New TableCell() Dim c2 As New TableCell() Dim c3 As New TableCell() 'Eigenschappen van de cellen c1.Width = 120 c2.Width = 200 c3.Width = 50 c1.BorderColor = Drawing.Color.Black c1.BorderStyle = BorderStyle.Solid c1.BorderWidth = 1 c2.BorderColor = Drawing.Color.Black c2.BorderStyle = BorderStyle.Solid c2.BorderWidth = 1 c3.BorderColor = Drawing.Color.Black c3.BorderStyle = BorderStyle.Solid c3.BorderWidth = 1 'Vullen cellen c1.Controls.Add(New LiteralControl(strNummer)) c2.Controls.Add(New LiteralControl(strTitel)) c3.Controls.Add(New LiteralControl(strVolgnummer)) 'Cellen aan de rij toevoegen r.Cells.Add(c1) r.Cells.Add(c2) r.Cells.Add(c3) 'Rij aan de tabel toevoegen tblBrandweer.Rows.Add(r) End While

Response.Write("<script language = 'javascript'>javascript:window.print()</script>") End Sub End Class

Hoofdstuk: Informaticaproject

'Datareader sluiten dtrLijst.Close() 'Tabel invoegen in Panel1 pnlLijst.Controls.Add(tblBrandweer)

54


4.5.4

BrandweerAlg.aspx

Imports System.Data.SqlClient Partial Class BrandweerAlg Inherits System.Web.UI.Page Dim cnnBrandweer As New SqlConnection Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 'declaratie Dim strSql As String 'connectie maken cnnBrandweer.ConnectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings("Brandweer").ToStri ng 'niveau controleren en opvullen met juiste waarde If Session("Niveau") = 3 Then strSql = "SELECT ImmatriculatieNr, Naam, Voornaam, Functie FROM ATJtblBrandweerman WHERE (ImmatriculatieNr ='" & Session("Nummer") & "')" pnlNieuw.Visible = False hplAfdrukken.Visible = False ElseIf Session("Niveau") = 4 Then MsgBox("U heeft geen rechten om hier te wijzigen.", "Geen rechten") Response.Redirect("Inlog.aspx") Else strSql = "SELECT ImmatriculatieNr, Naam, Voornaam, Functie, Inlognaam FROM ATJtblBrandweerman" gdvOverzicht.AutoGenerateEditButton = True End If 'strSql = "SELECT ImmatriculatieNr, Naam FROM ATJtblBrandweerman" 'uitvoeren en invullen gridview en connectie openen dtsOverzicht.ConnectionString = cnnBrandweer.ConnectionString dtsOverzicht.SelectCommand = strSql 'automatisch 1ste rij selecteren

Protected Sub btnToevoegen_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnToevoegen.Click Try 'declareren Dim scmdInvoegen As New SqlCommand Dim blnUniek As Boolean Dim sdrBrandweerman As SqlDataReader Dim intTeller As Integer 'command text en connection maken scmdInvoegen.Connection = cnnBrandweer scmdInvoegen.CommandText = "SELECT ImmatriculatieNr FROM ATJtblBrandweerman" 'connectie openen en uitvoeren en boolean op true zeten blnUniek = True cnnBrandweer.Open() sdrBrandweerman = scmdInvoegen.ExecuteReader

Hoofdstuk: Informaticaproject

'gdvOverzicht.AutoGenerateSelectButton = True gdvOverzicht.SelectRow(0) End Sub

55


'terwijl hij aan het inlezen is controleren of de brandweerman al bestaat Do While sdrBrandweerman.Read = True If sdrBrandweerman.Item(0) = CInt(txtImmatriculatie.Text) Then 'Boolean negatief plaatsen blnUniek = False End If Loop sdrBrandweerman.Close() 'als hij bestaat msgbox tonen If blnUniek = False Then MsgBox("Deze brandweerman bestaat al", MsgBoxStyle.OkOnly, "Bestaat al") Else 'brandweerman invoeren scmdInvoegen.CommandText = "INSERT INTO ATJtblBrandweerman (ImmatriculatieNr, Naam, Voornaam, Functie, Inlognaam, Wachtwoord, Niveau) VALUES ('" & txtImmatriculatie.Text & "','" & txtNaam.Text & "','" & txtVNaam.Text & "','" & cboBrevet.SelectedValue & "','" & txtInlognaam.Text & "','" & txtWachtwoord.Text & "','" & cboNiveau.SelectedValue & "')" scmdInvoegen.ExecuteNonQuery() 'alle specialisaties invullen en uitvoeren For intTeller = 0 To chkblSpecialisatie.Items.Count - 1 If chkblSpecialisatie.Items(intTeller).Selected Then scmdInvoegen.CommandText = "INSERT INTO ATJtblSpecialisatie (ImmatriculatieNr, Specialisatie) VALUES ('" & txtImmatriculatie.Text & "','" & chkblSpecialisatie.Items(intTeller).Selected & "')" End If Next 'alle brevetten opslaan For intTeller = 0 To chkblBrevetBehaald.Items.Count - 1 If chkblBrevetBehaald.Items(intTeller).Selected Then scmdInvoegen.CommandText = "INSERT INTO ATJtblBrevetBehaald (ImmatriculatieNr, Brevet) VALUES ('" & txtImmatriculatie.Text & "','" & chkblBrevetBehaald.Items(intTeller).Text & "')" scmdInvoegen.ExecuteNonQuery() End If Next

'connectie sluiten cnnBrandweer.Close() Catch ex As Exception MsgBox(ex.ToString) End Try End Sub End Class

Hoofdstuk: Informaticaproject

MsgBox("Brandweerman toegevoegd", MsgBoxStyle.OkOnly, "Gelukt") End If

56


4.5.5

Inlog.aspx

Imports System.Data.SqlClient Partial Class _Default Inherits System.Web.UI.Page Dim Dim Dim Dim Dim Dim

blnLogin As Boolean cnnBrandweer As New SqlConnection scmdBrandweer As New SqlCommand sdrBrandweerman As SqlDataReader strSQL As String cooLogin As New HttpCookie("LoginInfo")

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 'declaratie Dim blnCookies As Boolean Dim strLogin As String = String.Empty Dim strWachtwoord As String = String.Empty Dim strSQL As String 'boolean cookie en request naar cookie blnCookies = False Try 'If Request.Cookies("LoginInfo")("Login") = True Then 'string opvullen met cookie strLogin = Request.Cookies("LoginInfo")("Login") strWachtwoord = Request.Cookies("LoginInfo")("Wachtwoord") 'End If blnCookies = True Catch ex As Exception End Try 'controle of het de 1ste keer is If Session("Niveau") = Nothing Then 'Niveau standaard op niet ingelogd zetten Session("Niveau") = 4 End If

'controle op cookie If blnCookies = True Then 'boolean op false en command opvullen blnLogin = False strSQL = "SELECT Inlognaam, Wachtwoord, Niveau FROM ATJtblBrandweerman" scmdBrandweer.Connection = cnnBrandweer scmdBrandweer.CommandText = strSQL 'connectie openen en command uitvoeren cnnBrandweer.Open() sdrBrandweerman = scmdBrandweer.ExecuteReader Do While sdrBrandweerman.Read = True 'controle of string van cookie kloppen If sdrBrandweerman.Item(0) = strLogin And sdrBrandweerman.Item(1) = strWachtwoord Then Session("Niveau") = sdrBrandweerman.Item(2) blnLogin = True

Hoofdstuk: Informaticaproject

'connectie instellen cnnBrandweer.ConnectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings("Brandweer").ToStri ng

57


End If Loop 'sluiten van datareader en connectie sdrBrandweerman.Close() cnnBrandweer.Close() End If 'als niveau 1 is dan If Session("Niveau") pnlNieuw.Visible Else pnlNieuw.Visible End If

panel laden = 1 Then = True = False

'beginwaarden zetten btnAfmelden.Visible = False btnAdmin.Visible = False pnlLogin.Visible = True 'al ingelogd dan panel onzichtbaar maken en welkomtekst maken If Session("Panel") = "N" Then pnlLogin.Visible = False lblWelkom.Text = "Welkom " & Session("Naam") lblWelkom.Visible = True btnAfmelden.Visible = True btnAdmin.Visible = True txtNaam0.Text = Session("Naam") txtNaam0.Enabled = False Else pnlLogin.Visible = True lblWelkom.Visible = False btnAfmelden.Visible = False btnAdmin.Visible = False pnlNieuw.Visible = False End If End Sub Protected Sub btnToevoegen_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnToevoegen.Click 'declareren en opvullen sql Dim strSQL As String strSQL = "INSERT INTO ATJtblNieuws (Titel, Naam, Inhoud, Datum)" strSQL &= "VALUES ('" & txtTitel.Text & "','" & txtNaam.Text & "','" & txtBericht.Text & "','" & DateString & "')"

'alles clearen txtTitel.Text = "" txtNaam.Text = "" txtBericht.Text = "" End Sub Protected Sub btnAanmelden_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnAanmelden.Click 'declareren Dim strGebruikersnaam As String = String.Empty Dim strWachtwoord As String = String.Empty Dim sdrInloggen As SqlDataReader

Hoofdstuk: Informaticaproject

'dataset klaarzetten Me.dtsNieuws.InsertCommand = strSQL Me.dtsNieuws.Insert()

58


'sql klaarzetten en command opvullen strSQL = "SELECT Inlognaam, Wachtwoord, Niveau, ImmatriculatieNr FROM ATJtblBrandweerman" scmdBrandweer.CommandText = strSQL scmdBrandweer.Connection = cnnBrandweer 'connectie openen en uitvoeren cnnBrandweer.Open() sdrInloggen = scmdBrandweer.ExecuteReader Do While sdrInloggen.Read = True 'strings opvullen en sessions opvullen strGebruikersnaam = sdrInloggen.Item("Inlognaam").ToString strWachtwoord = sdrInloggen.Item("Wachtwoord").ToString Session("Naam") = strGebruikersnaam Session("Niveau") = sdrInloggen.Item("Niveau").ToString 'als het een brandweerman is session nummer opvullen If Session("Niveau") = 3 Then Session("Nummer") = sdrInloggen.Item("ImmatriculatieNr") End If 'spaties verwijderen strGebruikersnaam = strGebruikersnaam.Replace(" ", "") strWachtwoord = strWachtwoord.Replace(" ", "") 'bij paswoord onthouden alles opslaan in cookie If chkOnthouden.Checked = True And blnLogin = True Then cooLogin.Values("Login") = txtNaam.Text cooLogin.Values("Wachtwoord") = txtWachtwoord.Text cooLogin.Expires = DateTime.Now.AddDays(7) Response.Cookies.Add(cooLogin) End If

'reader en connectie sluiten sdrInloggen.Close() cnnBrandweer.Close() End Sub Protected Sub btnAfmelden_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnAfmelden.Click 'sessions opvullen Session("Panel") = "Y" Session("Niveau") = "4" End Sub Protected Sub btnAdmin_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnAdmin.Click Response.Redirect("Admin.aspx")

Hoofdstuk: Informaticaproject

'controle naam daarna wachtwoord If strGebruikersnaam = txtNaam.Text Then If strWachtwoord = txtWachtwoord.Text Then Session("Panel") = "N" pnlLogin.Visible = False Response.Redirect("Iframe.html") Else MsgBox("U hebt een foute gebruikersnaam/wachtwoord ingegeven.", MsgBoxStyle.OkOnly, "Fout") End If End If Loop

59


End Sub End Class

4.5.6

Kaarten_Nieuw.aspx

Imports System.Data.SqlClient Partial Class sofo_Brandweer_Kaarten_Nieuw Inherits System.Web.UI.Page Protected Sub grdKaarten_RowDeleting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles grdKaarten.RowDeleting 'Vragen naar het verwijderen van het record, indien "ja" dan mag het record verwijderd worden, indien "nee" wordt dit afgebroken If MsgBox("Weet u zeker dat u dit record wilt verwijderen?", MsgBoxStyle.YesNo, "Verwijderen") = MsgBoxResult.No Then e.Cancel = True End If End Sub Protected Sub btnKaartToevoegen_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnKaartToevoegen.Click 'Naar de pagina navigeren om kaarten toe te voegen Response.Redirect("KaartenToevoegen.aspx") End Sub

Protected Sub grdKaarten_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles grdKaarten.SelectedIndexChanged 'De geselecteerde rij kleuren en andere rijen terug blanco kleuren For Each item In grdKaarten.Rows item.BackColor = Drawing.Color.Empty item.ForeColor = Drawing.Color.Black item.BorderColor = Drawing.Color.Empty Next grdKaarten.SelectedRow.BackColor = Drawing.Color.DarkRed grdKaarten.SelectedRow.ForeColor = Drawing.Color.White grdKaarten.SelectedRow.BorderColor = Drawing.Color.LightYellow End Sub End Class

4.5.7

KaartenToevoegen.aspx

Imports System.Data.SqlClient Partial Class KaartenToevoegen Inherits System.Web.UI.Page Protected Sub btnKaart_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnKaart.Click 'declareren connection en command Dim cnnBrandweer As New SqlConnection Dim scmdInvoegen As New SqlCommand

Hoofdstuk: Informaticaproject

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 'Controleren of de gebruiker wel aangemeld is en controleren welk niveau de gebruiker heeft If Session("Niveau") = 3 Then MsgBox("Sorry maar u heeft niet de juiste rechten", MsgBoxStyle.OkOnly, "Fout") Response.Redirect("Inlog.aspx") ElseIf Session("niveau") = 1 Then grdKaarten.AutoGenerateDeleteButton = True grdKaarten.AutoGenerateEditButton = True grdCriteria.AutoGenerateEditButton = True End If End Sub

60


Dim strSQL As String Dim blnUniek As Boolean = True Dim sdrBrandweerman As SqlDataReader 'connectionstring maken en command connectie laten maken cnnBrandweer.ConnectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings("Brandweer").ToStri ng scmdInvoegen.Connection = cnnBrandweer scmdInvoegen.CommandText = "SELECT KaartNr FROM ATJtblKaarten" 'connectie maken en uitvoeren cnnBrandweer.Open() sdrBrandweerman = scmdInvoegen.ExecuteReader Do While sdrBrandweerman.Read = True If sdrBrandweerman.Item(0) = txtKaartNr.Text Then 'Boolean negatief plaatsen blnUniek = False End If Loop 'reader afsluiten sdrBrandweerman.Close() If blnUniek = False Then 'controleren of de gebruiker al in de database zit MsgBox("Kaart bestaat al", MsgBoxStyle.OkOnly, "Bestaat al") Else 'commandtext invoeren om juiste insert te krijgen strSQL = "INSERT INTO ATJtblKaarten (KaartNr, Titel, Volgnummer) VALUES ('" & txtKaartNr.Text & "','" & txtTitel.Text & "','" & txtVolgnr.Text & "')" scmdInvoegen.CommandText = strSQL 'connectie openen en uitvoeren en daarna terug sluiten + weergeven dat het werkt scmdInvoegen.ExecuteNonQuery() MsgBox("Kaart toegevoegd", MsgBoxStyle.OkOnly, "Toegevoegd") End If

'connectie maken en command instellen cnnBrandweer.ConnectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings("Brandweer").ToStri ng scmdToon.Connection = cnnBrandweer scmdToon.CommandText = "SELECT COUNT(CombinatieNr) FROM ATJtblCriteria" cnnBrandweer.Open() intLaatste = scmdToon.ExecuteScalar.ToString scmdToon.CommandText = "INSERT INTO ATJtblCriteria (CombinatieNr, KaartNr, CriteriaNr, Beschrijving) VALUES ('" & (intLaatste + 1) & "','" &

Hoofdstuk: Informaticaproject

cnnBrandweer.Close() End Sub Protected Sub btnToevoegen_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnToevoegen.Click Try 'declareren connection en command Dim cnnBrandweer As New SqlConnection Dim scmdToon As New SqlCommand 'Dim sdrNummer As SqlDataReader Dim intLaatste As Integer

61


cboKaartNr.SelectedItem.ToString & "','" & txtCriteria.Text & "','" & txtBeschrijving.Text & "')" 'connectie openen, uitvoeren, sluiten en message weergeven scmdToon.ExecuteNonQuery() cnnBrandweer.Close() 'MsgBox("Criteria is toegevoegd", "Criteria toegevoegd") Catch ex As Exception MsgBox(ex.ToString) End Try End Sub Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 'Criteria paneel onzichtbaar maken bij het laden van de pagina pnlCriteria.Visible = False 'Controleren of de gebruiker wel aangemeld is If Session("Niveau") > 2 Then MsgBox("U heeft geen rechten om hier te wijzigen.", MsgBoxStyle.OkOnly, "Geen rechten") Response.Redirect("Inlog.aspx") End If End Sub Protected Sub btnCriteria_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnCriteria.Click 'Paneel zichtbaar maken bij het klikken op de knop btnCriteria pnlCriteria.Visible = True End Sub

Hoofdstuk: Informaticaproject

Protected Sub btnVorige_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnVorige.Click 'navigeren naar kaarten nieuw Response.Redirect("Kaarten_Nieuw.aspx") End Sub End Class

62


4.5.8

Training.aspx

Imports System.Data.SqlClient Partial Class _Default Inherits System.Web.UI.Page Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 'niveau controleren If Session("Niveau") = 3 Then MsgBox("Sorry maar u heeft niet de juiste rechten", MsgBoxStyle.OkOnly, "Fout") Response.Redirect("Training_Overzicht.aspx") End If End Sub Protected Sub btnAanwezig_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnAanwezig.Click 'declaratie Dim strBrandweermannen As String 'overzetten van item en verwijderen uit 1ste lijst strBrandweermannen = lstBrandweermannen.SelectedItem.Text lstAanwezig.Items.Add(strBrandweermannen) lstBrandweermannen.Items.Remove(lstBrandweermannen.SelectedItem) End Sub Protected Sub btnOpslaan_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnOpslaan.Click 'declaratie benodigde sql objecten Dim cnnBrandweer As New SqlConnection Dim scmdInvoegen As New SqlCommand Dim intMannen As Integer 'connectie opvullen van connectie en command + connectie openen cnnBrandweer.ConnectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings("Brandweer").ToStri ng scmdInvoegen.Connection = cnnBrandweer cnnBrandweer.Open()

'training opslaan scmdInvoegen.CommandText = "INSERT INTO ATJtblTraining (Datum, [Aantal uur],Trainingnaam) VALUES ('" & cldDatum.SelectedDate.ToString & "','" & txtAantalUur.Text & "','" & txtNaamOefening.Text & "')" scmdInvoegen.ExecuteNonQuery() End Sub End Class

Hoofdstuk: Informaticaproject

'voor elke item, brandweerman opslaan als aanwezig For intMannen = 0 To lstAanwezig.Items.Count - 1 scmdInvoegen.CommandText = "INSERT INTO ATJtblAanwezig (ImmatriculatieNr,TrainingNaam ) VALUES ('" & lstAanwezig.Items(intMannen).ToString & "','" & txtNaamOefening.Text & "')" scmdInvoegen.ExecuteNonQuery() Next

63


4.5.9

Opmaak.css

@charset "utf-8"; /* CSS Document */ body{ /* background-color:#FFFDEA;*/ background-color: #999; color: #464032; vertical-align: top; margin: auto; padding: auto; width : 100%; height : 100%; } #logobar{ background: url(Afbeelding/Logo_resized.gif) no-repeat; background-color: #FFF; height: 134px; margin: auto; margin-top: 5px; margin-bottom:1px; } #titel{ padding-left:100px; font-size:36px; font-family:"Comic Sans MS", cursive; color:#A05; } #Menubar{

background-image:url(Afbeelding/Menu2.jpg);}

#menu { width: 100%; height: 37px; background-image: url(Afbeelding/Menu2.jpg); }

#menu li {

float: left;}

#rechts a{

float: right;}

#menu a { display: block; height: 26px; margin-right: 2px; margin-bottom: 0px; padding: 10px 20px 0px 20px; text-decoration: none; text-align: center; text-transform: uppercase; font-family: Arial, Helvetica, sans-serif; font-size: 11px; font-weight: bold; color: #FFFFFF;

Hoofdstuk: Informaticaproject

#menu ul { margin: 0px 0px 0px 10px; list-style: none; line-height: normal; }

64


border: none; } #menu a:hover{ background: #FFFFFF; text-decoration: none; color: #333333; } #inhoud{ margin:auto; background-color: #999; height:95%; } .knop{background-image:url(Afbeelding/Menu2.jpg);color:#FFF;}

4.5.10

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="Brandweer" connectionString="Data Source=.\Provider=SQLOLEDB.1;Persist Security Info=False;User ID=gebruiker;Password=6ibbiSchool;Initial Catalog=jozefapp;Data Source=www.sintjozefbrugge.be" providerName="System.Data.SqlClient" /> </connectionStrings> <system.web> <compilation debug="true" strict="false" explicit="true" targetFramework="4.0"/> </system.web> </configuration>ASPX code

4.5.11

Afdr_Brandweer.aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Training_Overzicht.aspx.vb" Inherits="Training_Overzicht" %>

<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <style type="text/css"> body { background-color:#999; } .knop{background-image:url(Afbeelding/Menu2.jpg);color:#FFF;} </style> </head> <body> <form id="form1" runat="server"> <div> <asp:GridView ID="GridView1" runat="server"> </asp:GridView>

Hoofdstuk: Informaticaproject

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

65


</div> </form> </body> </html>

4.5.12

Afdr_Kaarten.aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Afdr_Kaarten.aspx.vb" Inherits="Afdr_Brandweer" %> <!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> <style type ="text/css"> .knop{background-image:url(Afbeelding/Menu2.jpg);color:#FFF;} </style> </head> <body> <form id="form1" runat="server"> <div> <asp:Panel ID="pnlLijst" runat="server"> </asp:Panel> </div> <!--<input type="button" value="Afdrukken" onclick="window.print();" class="knop">--> </form> </body> </html>

4.5.13

BrandweerAlg.aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="BrandweerAlg.aspx.vb" Inherits="BrandweerAlg" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

.knop{background-image:url(Afbeelding/Menu2.jpg);color:#FFF;} </style> </head> <body> <form id="frmOverzicht" runat="server"> <div> <asp:SqlDataSource ID="dtsOverzicht" runat="server"></asp:SqlDataSource> <asp:GridView ID="gdvOverzicht" runat="server" AllowPaging="True" AllowSorting="True" DataKeyNames="ImmatriculatieNr" DataSourceID="dtsOverzicht"> <Columns> <asp:CommandField ShowSelectButton="True" /> </Columns> </asp:GridView> <asp:HyperLink ID="hplAfdrukken" runat="server" CssClass="knop"

Hoofdstuk: Informaticaproject

<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <style type="text/css"> body{ background-color:#999; }

66


<br /> </asp:Panel> <asp:Panel ID="pnlBehaald" runat="server" Width="100%"> <div style="text-align: center"> <table border ="1"> <tr> <td> Training<br /> <asp:GridView ID="gdvTraining" runat="server" AutoGenerateColumns="False" DataSourceID="dtsTraining"> <Columns> <asp:BoundField DataField="Datum" HeaderText="Datum" SortExpression="Datum" /> <asp:BoundField DataField="Aantal uur" HeaderText="Aantal uur" SortExpression="Aantal uur" /> <asp:BoundField DataField="TrainingNaam" HeaderText="TrainingNaam" SortExpression="TrainingNaam" /> <asp:BoundField DataField="ImmatriculatieNr" HeaderText="ImmatriculatieNr" SortExpression="ImmatriculatieNr" /> </Columns> </asp:GridView> <asp:SqlDataSource ID="dtsTraining" runat="server" ConnectionString="<%$ ConnectionStrings:Brandweer %>" SelectCommand="SELECT ATJtblTraining.Datum, ATJtblTraining.[Aantal uur], ATJtblTraining.TrainingNaam, ATJtblAanwezig.ImmatriculatieNr FROM ATJtblTraining INNER JOIN ATJtblAanwezig ON ATJtblTraining.TrainingNaam = ATJtblAanwezig.TrainingNaam WHERE (ATJtblAanwezig.ImmatriculatieNr = @Select )"> <SelectParameters> <asp:ControlParameter ControlID="gdvOverzicht" Name="Select" PropertyName="SelectedValue" /> </SelectParameters> </asp:SqlDataSource> </td> <td> Behaald brevet<asp:GridView ID="gdvBrevetBehaald" runat="server" AutoGenerateColumns="False" DataSourceID="dtsBrevetBehaald"> <Columns> <asp:BoundField DataField="Brevet" HeaderText="Brevet" SortExpression="Brevet" /> </Columns> </asp:GridView> <asp:SqlDataSource ID="dtsBrevetBehaald" runat="server" ConnectionString="<%$ ConnectionStrings:Brandweer %>" SelectCommand="SELECT [Brevet] FROM [ATJtblBrevetBehaald] WHERE ([ImmatriculatieNr] = @ImmatriculatieNr)"> <SelectParameters> <asp:ControlParameter ControlID="gdvOverzicht" Name="ImmatriculatieNr" PropertyName="SelectedValue" Type="String" />

Hoofdstuk: Informaticaproject

NavigateUrl="~/Afdr_Brandweer.aspx" Target="_blank">Afdrukken</asp:HyperLink> <asp:Panel ID="pnlOverzicht" runat="server">

67


SelectCommand="SELECT ATJtblKaarten.Titel, ATJtblCriteria.Beschrijving, ATJtblBehaald.Behaald FROM ATJtblBehaald INNER JOIN ATJtblCriteria ON ATJtblBehaald.CombinatieNr = ATJtblCriteria.CombinatieNr INNER JOIN ATJtblKaarten ON ATJtblCriteria.KaartNr = ATJtblKaarten.KaartNr WHERE (ATJtblBehaald.ImmatriculatieNr = @Nummer)"> <SelectParameters> <asp:ControlParameter ControlID="gdvOverzicht" Name="Nummer" PropertyName="SelectedValue" /> </SelectParameters> </asp:SqlDataSource> </td> <td> Specialisatie<br /> <asp:GridView ID="gdvSpecialisatie" runat="server" AutoGenerateColumns="False" DataSourceID="dtsSpecialisatie"> <Columns> <asp:BoundField DataField="Functie" HeaderText="Specialisatie" SortExpression="Functie" /> </Columns> </asp:GridView> <asp:SqlDataSource ID="dtsSpecialisatie" runat="server" ConnectionString="<%$ ConnectionStrings:Brandweer %>" SelectCommand="SELECT Functie FROM ATJtblSpecialisatie WHERE (ImmatriculatieNr = @ImmatriculatieNr)"> <SelectParameters> <asp:ControlParameter ControlID="gdvOverzicht" Name="ImmatriculatieNr" PropertyName="SelectedValue" Type="String" /> </SelectParameters> </asp:SqlDataSource> </td> </tr> </table> </div> </asp:Panel> <asp:Panel ID="pnlNieuw" runat="server">

Hoofdstuk: Informaticaproject

</SelectParameters> </asp:SqlDataSource> </td> <td> Behaalde criteria<asp:GridView ID="gdvBehaald" runat="server" AutoGenerateColumns="False" DataSourceID="dtsBehaald"> <Columns> <asp:BoundField DataField="Titel" HeaderText="Titel" SortExpression="Titel" /> <asp:BoundField DataField="Beschrijving" HeaderText="Beschrijving" SortExpression="Beschrijving" /> <asp:BoundField DataField="Behaald" HeaderText="Behaald" SortExpression="Behaald" /> </Columns> </asp:GridView> <asp:SqlDataSource ID="dtsBehaald" runat="server" ConnectionString="<%$ ConnectionStrings:Brandweer %>"

68


Hoofdstuk: Informaticaproject

<br /> <table style="width:100%;"> <tr> <td> Immatriculatie nummer</td> <td> <asp:TextBox ID="txtImmatriculatie" runat="server"></asp:TextBox> </td> </tr> <tr> <td> Naam</td> <td> <asp:TextBox ID="txtNaam" runat="server"></asp:TextBox> </td> </tr> <tr> <td> Voornaam</td> <td> <asp:TextBox ID="txtVNaam" runat="server"></asp:TextBox> </td> </tr> <tr> <td> Behaald brevet</td> <td> <asp:CheckBoxList ID="chkblBrevetBehaald" runat="server" DataSourceID="dtsBrevet" DataTextField="Functie" DataValueField="Functie" RepeatDirection="Horizontal" RepeatColumns="5"> </asp:CheckBoxList> </td> </tr> <tr> <td> Graad</td> <td> <asp:DropDownList ID="cboBrevet" runat="server" DataSourceID="dtsBrevet" DataTextField="Functie" DataValueField="Functie"> </asp:DropDownList> </td> </tr> <tr> <td> Specialisatie</td> <td> <asp:CheckBoxList ID="chkblSpecialisatie" runat="server" DataSourceID="dtsSpecialisatieLijst" DataTextField="Specialisatie" DataValueField="Specialisatie" RepeatColumns="5" RepeatDirection="Horizontal"> </asp:CheckBoxList> <asp:SqlDataSource ID="dtsSpecialisatieLijst" runat="server" ConnectionString="<%$ ConnectionStrings:Brandweer %>" SelectCommand="SELECT * FROM [ATJtblSpecialisatieLijst]"> </asp:SqlDataSource> </td> </tr> <tr>

69


<td> Inlognaam</td> <td> <asp:TextBox ID="txtInlognaam" runat="server"></asp:TextBox> </td> </tr> <tr> <td> Wachtwoord</td> <td> <asp:TextBox ID="txtWachtwoord" runat="server"></asp:TextBox> </td> </tr> <tr> <td> Niveau</td> <td> <asp:DropDownList ID="cboNiveau" runat="server"> <asp:ListItem>1</asp:ListItem> <asp:ListItem>2</asp:ListItem> <asp:ListItem>3</asp:ListItem> </asp:DropDownList> </td> </tr> <tr> <td> <asp:SqlDataSource ID="dtsBrevet" runat="server" ConnectionString="<%$ ConnectionStrings:Brandweer %>" SelectCommand="SELECT * FROM [ATJtblBrevet]" DeleteCommand="DELETE FROM [ATJtblBrevet] WHERE [Functie] = @Functie" InsertCommand="INSERT INTO [ATJtblBrevet] ([Functie]) VALUES (@Functie)"> <DeleteParameters> <asp:Parameter Name="Functie" Type="String" /> </DeleteParameters> <InsertParameters> <asp:Parameter Name="Functie" Type="String" /> </InsertParameters> </asp:SqlDataSource> </td> <td> <asp:Button ID="btnToevoegen" runat="server" Text="Toevoegen" CssClass="knop" />

</div> </form> </body> </html>

4.5.14

Inlog.aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Inlog.aspx.vb" Inherits="_Default" %> <!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">

Hoofdstuk: Informaticaproject

</td> </tr> </table> </asp:Panel> <br />

70


<asp:Image ID="Image1" runat="server" ImageUrl="~/Afbeelding/img03.jpg" Width="312px" /> <br /> <br /> <asp:Label ID="lblWelkom" runat="server" Text="Label" Visible="False"></asp:Label> <br /> <asp:Button ID="btnAfmelden" runat="server" CssClass="knop" Text="Afmelden" Visible="False" /> <asp:Panel ID="pnlLogin" runat="server" Height="183px"> <asp:Label ID="Label1" runat="server" Text="Gebruikersnaam:"></asp:Label> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <asp:TextBox ID="txtNaam" runat="server"></asp:TextBox> <br /> <br /> <asp:Label ID="Label2" runat="server" Text="Wachtwoord:"></asp:Label> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <asp:TextBox ID="txtWachtwoord" runat="server" TextMode="Password"></asp:TextBox> <br /> <br /> <asp:CheckBox ID="chkOnthouden" runat="server" Text="Onthoud login" /> <br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /> <asp:Button ID="btnAanmelden" runat="server" Text="Aanmelden" CssClass="knop" /> &nbsp;&nbsp; </asp:Panel> </div> <asp:Panel ID="pnlNieuws" runat="server" style="z-index: 1; left: 360px; top: 29px; position: absolute; height: 416px; width: 646px"> &nbsp; <asp:Image ID="Image2" runat="server" ImageUrl="~/Afbeelding/img02.jpg" Width="637px" style="z-index: 1; left: 8px; top: 0px; position: relative" /> <br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<asp:GridView ID="gdvNieuws" runat="server" AutoGenerateColumns="False" CellPadding="4" DataKeyNames="Datum" DataSourceID="dtsNieuws" ForeColor="#333333" GridLines="None"

Hoofdstuk: Informaticaproject

<head runat="server"> <title></title> <style type="text/css"> .style1 { text-align: center; width: 314px; height: 223px; } body{ background-color:#999; } .knop{background-image:url(Afbeelding/Menu2.jpg);color:#FFF;} </style> </head> <body> <form id="form1" runat="server"> <br /> <div class="style1">

71


Hoofdstuk: Informaticaproject

style="z-index: 1; left: 21px; top: 50px; position: relative; height: 133px; width: 625px"> <AlternatingRowStyle BackColor="White" /> <Columns> <asp:BoundField DataField="Titel" HeaderText="Titel" SortExpression="Titel" /> <asp:BoundField DataField="Naam" HeaderText="Naam" SortExpression="Naam" /> <asp:BoundField DataField="Inhoud" HeaderText="Inhoud" SortExpression="Inhoud" /> <asp:BoundField DataField="Datum" HeaderText="Datum" ReadOnly="True" SortExpression="Datum" DataFormatString="{0:d}" /> </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> <br /> &nbsp;<br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> <asp:SqlDataSource ID="dtsNieuws" runat="server" ConnectionString="<%$ ConnectionStrings:Brandweer %>" SelectCommand="SELECT * FROM [ATJtblNieuws]"></asp:SqlDataSource> <br /> <br /> <asp:Panel ID="pnlNieuw" runat="server"> <table style="width:100%;"> <tr> <td> <asp:Label ID="Label4" runat="server" Text="Naam schrijver"></asp:Label> </td> <td> <asp:TextBox ID="txtNaam0" runat="server"></asp:TextBox> </td> </tr> <tr> <td> <asp:Label ID="Label5" runat="server" Text="Titel"></asp:Label> </td> <td> <asp:TextBox ID="txtTitel" runat="server"></asp:TextBox> </td> </tr> <tr> <td>

72


<asp:Label ID="Label3" runat="server" Text="Bericht:"></asp:Label> </td> <td> <asp:TextBox ID="txtBericht" runat="server" Height="155px" Width="387px"></asp:TextBox> </td> </tr> </table> &nbsp;&nbsp;&nbsp; <br /> <asp:Button ID="btnToevoegen" runat="server" Text="Toevoegen" CssClass="knop" /> </asp:Panel> <br /> <div> <br /> <br /> </div> </asp:Panel> <br /> <br /> <br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp; <br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br /> <br /> <br /> <br /> <br /> <br /> <asp:SqlDataSource ID="dtsBrandweer" runat="server" ConnectionString="Provider=SQLOLEDB.1;Persist Security Info=False;User ID=gebruiker;Initial Catalog=jozefapp;Data Source=www.sintjozefbrugge.be" SelectCommand="SELECT [Naam], [Klantnummer] FROM [tblKlanten]"> </asp:SqlDataSource> </form> </body> </html>

Kaarten_Nieuw.aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Kaarten_Nieuw.aspx.vb" Inherits="sofo_Brandweer_Kaarten_Nieuw" %> <!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>Kaarten</title> <style type="text/css"> body {

Hoofdstuk: Informaticaproject

4.5.15

73


background-color:#999; } .knop{background-image:url(Afbeelding/Menu2.jpg);color:#FFF;} .style1 { width: 100%; } </style>

<asp:Panel ID="pnlSubmenu" runat="server"> <asp:Panel ID="pnlKaart" runat="server"> <table class="style1"> <tr> <td> <asp:Label ID="lblUitleg" runat="server" BackColor="Gray" style="width: 496px; text-align: center" Text="Overzichten kaarten en criteria" Width="500px"></asp:Label> </td> </tr> <tr> <td> <asp:GridView ID="grdKaarten" runat="server" AutoGenerateColumns="False" DataKeyNames="KaartNr" DataSourceID="dtsBrandweer" Width="500px" AllowPaging="True"> <Columns> <asp:BoundField DataField="KaartNr" HeaderText="KaartNr" ReadOnly="True" SortExpression="KaartNr" /> <asp:BoundField DataField="Titel" HeaderText="Titel" SortExpression="Titel" /> <asp:BoundField DataField="Volgnummer" HeaderText="Volgnummer" SortExpression="Volgnummer" /> </Columns> </asp:GridView> </td> </tr> </table> </asp:Panel> <asp:SqlDataSource ID="dtsBrandweer" runat="server" ConnectionString="<%$ ConnectionStrings:Brandweer %>" DeleteCommand="DELETE FROM [ATJtblKaarten] WHERE [KaartNr] = @KaartNr" InsertCommand="INSERT INTO [ATJtblKaarten] ([KaartNr], [Titel], [Volgnummer]) VALUES (@KaartNr, @Titel, @Volgnummer)" SelectCommand="SELECT * FROM [ATJtblKaarten]" UpdateCommand="UPDATE [ATJtblKaarten] SET [Titel] = @Titel, [Volgnummer] = @Volgnummer WHERE [KaartNr] = @KaartNr"> <DeleteParameters> <asp:Parameter Name="KaartNr" Type="String" /> </DeleteParameters> <InsertParameters> <asp:Parameter Name="KaartNr" Type="String" /> <asp:Parameter Name="Titel" Type="String" /> <asp:Parameter Name="Volgnummer" Type="String" /> </InsertParameters>

Hoofdstuk: Informaticaproject

</head> <body> <form id="form1" runat="server"> <div>

74


SelectCommand="SELECT [CombinatieNr], [CriteriaNr], [Beschrijving] FROM [ATJtblCriteria] WHERE ([KaartNr] = @KaartNr)" DeleteCommand="DELETE FROM [ATJtblCriteria] WHERE [CombinatieNr] = @CombinatieNr" InsertCommand="INSERT INTO [ATJtblCriteria] ([CombinatieNr], [CriteriaNr], [Beschrijving]) VALUES (@CombinatieNr, @CriteriaNr, @Beschrijving)" UpdateCommand="UPDATE [ATJtblCriteria] SET [CriteriaNr] = @CriteriaNr, [Beschrijving] = @Beschrijving WHERE [CombinatieNr] = @CombinatieNr"> <DeleteParameters> <asp:Parameter Name="CombinatieNr" Type="String" /> </DeleteParameters> <InsertParameters> <asp:Parameter Name="CombinatieNr" Type="String" /> <asp:Parameter Name="CriteriaNr" Type="Decimal" /> <asp:Parameter Name="Beschrijving" Type="String" /> </InsertParameters> <SelectParameters> <asp:ControlParameter ControlID="grdKaarten" Name="KaartNr" PropertyName="SelectedValue" Type="Decimal" /> </SelectParameters> <UpdateParameters> <asp:Parameter Name="CriteriaNr" Type="Decimal" /> <asp:Parameter Name="Beschrijving" Type="String" /> <asp:Parameter Name="CombinatieNr" Type="String" /> </UpdateParameters> </asp:SqlDataSource> <br /> </asp:Panel> <asp:Button ID="btnKaartToevoegen" runat="server" CssClass="knop" Text="Nieuwe kaarten invoegen" /> <br /> <br /> <br /> </asp:Panel>

Hoofdstuk: Informaticaproject

<UpdateParameters> <asp:Parameter Name="Titel" Type="String" /> <asp:Parameter Name="Volgnummer" Type="String" /> <asp:Parameter Name="KaartNr" Type="String" /> </UpdateParameters> </asp:SqlDataSource> <br /> <asp:Panel ID="pnlCriteria" runat="server"> <asp:GridView ID="grdCriteria" runat="server" AutoGenerateColumns="False" DataKeyNames="CombinatieNr" DataSourceID="dtsCriteria" Width="500px" AllowPaging="True"> <Columns> <asp:BoundField DataField="CombinatieNr" HeaderText="CombinatieNr" ReadOnly="True" SortExpression="CombinatieNr" /> <asp:BoundField DataField="CriteriaNr" HeaderText="CriteriaNr" SortExpression="CriteriaNr" /> <asp:BoundField DataField="Beschrijving" HeaderText="Beschrijving" SortExpression="Beschrijving" /> </Columns> </asp:GridView> <asp:SqlDataSource ID="dtsCriteria" runat="server" ConnectionString="<%$ ConnectionStrings:Brandweer %>"

75


</div> </form> </body> </html>

4.5.16

KaartenToevoegen.aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="KaartenToevoegen.aspx.vb" Inherits="KaartenToevoegen" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<asp:Panel ID="pnlKaarten" runat="server"> <asp:Label ID="lblTitel1" runat="server" BackColor="Gray" style="width: 496px; text-align: center" Text="Kaarten bijmaken" Width="500px"></asp:Label> <br /> <table style="width:500px;" class="style1" width="500px"> <tr> <td> &nbsp;</td> <td> &nbsp;</td> <td> &nbsp;</td> <td> <asp:Button ID="btnVorige" runat="server" CssClass="knop" Height="26px" Text="Vorige" Width="65px" /> </td> </tr> <tr> <td> <asp:Label ID="lblNummer" runat="server" style="text-align: right; position: relative;" Text="Kaart nummer :"></asp:Label> </td> <td> <asp:TextBox ID="txtKaartNr" runat="server"></asp:TextBox>

Hoofdstuk: Informaticaproject

<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <style type="text/css"> body { background-color:#999; } .knop{background-image:url('Afbeelding/Menu2.jpg'); color:#FFF; height: 26px; } .style1 { width: 100%; } </style> </head> <body> <form id="form1" runat="server"> <div>

76


</div> <div>

Hoofdstuk: Informaticaproject

</td> <td> &nbsp;</td> <td> &nbsp;</td> </tr> <tr> <td> <asp:Label ID="lblVolgNR" runat="server" style="position: relative; height: 19px; width: 91px; margin-bottom: 1px; text-align: right;" Text="Volgnummer :"></asp:Label> </td> <td> <asp:TextBox ID="txtVolgnr" runat="server" TabIndex="2"></asp:TextBox> </td> <td> &nbsp;</td> <td> &nbsp;</td> </tr> <tr> <td> <asp:Label ID="lblTitel" runat="server" style="position: relative; height: 19px; width: 93px; text-align: right;" Text="Titel :"></asp:Label> </td> <td> <asp:TextBox ID="txtTitel" runat="server" TabIndex="1"></asp:TextBox> </td> <td> &nbsp;</td> <td> &nbsp;</td> </tr> <tr> <td> <asp:Button ID="btnCriteria" runat="server" CssClass="knop" Text="Criteria" Height="26px" Width="65px" /> </td> <td> &nbsp;</td> <td> <asp:Button ID="btnKaart" runat="server" CssClass="knop" Height="26px" style="width: 145px; height: 32px" Text="Kaart toevoegen" Width="160px" /> </td> <td> &nbsp;</td> </tr> </table> <br /> </asp:Panel>

77


</div> <asp:SqlDataSource ID="dtsKaartNr" runat="server"

Hoofdstuk: Informaticaproject

<asp:Panel ID="pnlCriteria" runat="server" Height="197px"> <asp:Label ID="lblTitel2" runat="server" BackColor="Gray" style="width: 496px; text-align: center" Text="Criteria toevoegen" Width="500px"></asp:Label> <br /> <table style="width:500px;" width="500"> <tr> <td class="style1"> &nbsp;</td> <td> &nbsp;</td> </tr> <tr> <td class="style1"> <asp:Label ID="lblKaart" runat="server" Text="Kaart nr. :"></asp:Label> </td> <td> <asp:DropDownList ID="cboKaartNr" runat="server" DataSourceID="dtsKaartNr" DataTextField="KaartNr" DataValueField="KaartNr" Height="20px" Width="136px"> </asp:DropDownList> </td> </tr> <tr> <td class="style1"> <asp:Label ID="lbl" runat="server" style="height: 24px; width: 81px; text-align: right;" Text="Criteria nr. :"></asp:Label> </td> <td> <asp:TextBox ID="txtCriteria" runat="server" style="width: 130px;"></asp:TextBox> </td> </tr> <tr> <td class="style1"> <asp:Label ID="lblBeschrijving" runat="server" style="height: 32px; width: 97px; text-align: right;" Text="Omschrijving :"></asp:Label> </td> <td> <asp:TextBox ID="txtBeschrijving" runat="server" style="width: 130px;"></asp:TextBox> </td> </tr> <tr> <td class="style1"> &nbsp;</td> <td> <asp:Button ID="btnToevoegen" runat="server" Text="Criteria toevoegen" CssClass="knop" Height="26px" Width="160px" /> </td> </tr> </table> </asp:Panel>

78


ConnectionString="<%$ ConnectionStrings:Brandweer %>" SelectCommand="SELECT [KaartNr] FROM [ATJtblKaarten]"></asp:SqlDataSource> </form> </body> </html>

4.5.17

Training.aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Training.aspx.vb" Inherits="_Default" %> <!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> <style type="text/css"> body { background-color:#999; } .knop{background-image:url(Afbeelding/Menu2.jpg);color:#FFF;} </style> </head> <body> <form id="form1" runat="server"> <div> <asp:Panel ID="Panel1" runat="server" Height="587px"> <asp:Calendar ID="cldDatum" runat="server" Width="341px" Height="169px"> </asp:Calendar> <br /> <asp:Label ID="Label1" runat="server" Text="Aantal uur:"></asp:Label>

SelectCommand="SELECT [ImmatriculatieNr], [Naam], [Voornaam] FROM [ATJtblBrandweerman]"> </asp:SqlDataSource> <br /> <asp:Label ID="Label5" runat="server" style="z-index: 1; left: 48px; top: 413px; position: absolute" Text="Brandweermannen"></asp:Label> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs

Hoofdstuk: Informaticaproject

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <asp:TextBox ID="txtAantalUur" runat="server"></asp:TextBox> <br /> <br /> <asp:Label ID="Label2" runat="server" Text="Naam oefening:"></asp:Label> &nbsp;&nbsp;&nbsp;&nbsp; <asp:TextBox ID="txtNaamOefening" runat="server"></asp:TextBox> <br /> <br /> <br /> <br /> <br /> <asp:SqlDataSource ID="dtsBrandweermannen" runat="server" ConnectionString="<%$ ConnectionStrings:Brandweer %>"

79


p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <asp:Label ID="Label6" runat="server" style="z-index: 1; left: 518px; top: 414px; position: absolute" Text="Aanwezig"></asp:Label> <br /> <br /> <asp:ListBox ID="lstBrandweermannen" runat="server" DataSourceID="dtsBrandweermannen" DataTextField="Naam" DataValueField="ImmatriculatieNr" Height="145px" style="z-index: 1; left: 13px; top: 453px; position: absolute" Width="198px"> </asp:ListBox> <asp:Button ID="btnAanwezig" runat="server" style="z-index: 1; left: 280px; top: 487px; position: absolute; height: 35px; width: 99px" Text="Aanwezig" CssClass="knop" /> <asp:Label ID="Label4" runat="server" BackColor="#666699" style="z-index: 1; left: 12px; top: 350px; position: absolute; height: 1px; width: 1300px"></asp:Label> <asp:ListBox ID="lstAanwezig" runat="server" style="z-index: 1; left: 450px; position: absolute; height: 145px; top: 453px; width: 198px"> </asp:ListBox> <asp:Button ID="btnOpslaan" runat="server" CssClass="knop" Height="35px" style="z-index: 1; left: 283px; top: 596px; position: absolute" Text="Opslaan" Width="99px" /> </asp:Panel> </div> <p> &nbsp;</p> </form> </body> </html>

4.5.18

Training_Overzicht.aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Training_Overzicht.aspx.vb" Inherits="Training_Overzicht" %>

<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <style type="text/css"> body { background-color:#999; } .knop{background-image:url(Afbeelding/Menu2.jpg);color:#FFF;} </style> </head> <body> <form id="form1" runat="server"> <div> <asp:GridView ID="GridView1" runat="server"> </asp:GridView> </div>

Hoofdstuk: Informaticaproject

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

80


</form> </body> </html>

4.6

HTML pagina's

4.6.1

Default.html

<!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> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Brandweer Oostkamp</title> <link href="Opmaak.css" rel="stylesheet" type="text/css" /> </head> <body> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td> <table width="96%" border="0" cellpadding="0" cellspacing="0" id="logobar"> <tr> <td id="titel" align="right"><img src="Afbeelding/banner_resized.png" width="1262" height="134" alt="Brandweer Oostkamp" /></td> </tr> </table> </td> </tr> <tr> <td> <div> <table width="96%" border="0" cellpadding="0" cellspacing="0" id="inhoud"> <tr> <td width="100%" height="100%"> <iframe name="Inhoud" width="100%" height="500px" scrolling="auto" frameborder="0" id="Inhoud" src="Inlog.aspx"></iframe> </td> </tr> </table> </div> </td> </tr> </table> </body> </html>

4.6.2

Iframe.html

<html xmlns="http://www.w3.org/1999/xhtml"> <head> <link href="Opmaak.css" rel="stylesheet" type="text/css" /> <title>Brandweer Oostkamp</title> </head> <body> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr id="Menubar"> <td id="menu"> <ul> <li><a href="Inlog.aspx" target ="Centraal">Nieuws</a></li> <li><a href="BrandweerAlg.aspx" target ="Centraal">Brandweerman</a></li>

Hoofdstuk: Informaticaproject

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

81


Hoofdstuk: Informaticaproject

<li><a href="Kaarten_Nieuw.aspx" target ="Centraal">Kaarten</a></li> <li><a href="Training.aspx" target ="Centraal">Training</a></li> <!--<li><a href="Inlog.aspx" target ="Inhoud">Afmelden</a></li>--> </ul> </td> </tr> </table> <table width="96%" border="0" cellpadding="0" cellspacing="0" id="inhoud"> <tr> <td width="100%" height="100%"> &nbsp;<iframe name="Centraal" width="100%" height="500px" scrolling="auto" frameborder="0" src="Inlog.aspx"></iframe> </td> </tr> </table> </body> </html>

82


Handleiding webapplicatie Brandweer Oostkamp

Handleiding voor het bijhouden van de gegevens van de brandweer te Oostkamp via de webapplicatie.


Inhoudsopgave Inleiding 85 Aan de slag! ........................................................................................................................................... 85 Aanmeldniveau â&#x20AC;&#x2122;s .................................................................................................................................. 85 Nieuwsartikels toevoegen ..................................................................................................................... 86 Kaarten bekijken, wijzigen of verwijderen ............................................................................................ 86 Kaarten toevoegen en criteria toevoegen ............................................................................................ 88 Trainingen registreren ........................................................................................................................... 89 Brandweerman ...................................................................................................................................... 89 Afdrukken .............................................................................................................................................. 90 Administrator pagina............................................................................................................................. 91

Hoofdstuk:

Wachtwoord wijzigen ............................................................................................................................ 91

84


4.7

Handleiding web applicatie voor gegevensbeheer Brandweer Oostkamp

4.7.1 Inleiding Deze webapplicatie helpt u bij het beheren van de gegevens over de training van de brandweer te Oostkamp. Hiermee kunt u raadplegen welke brandweerman welke training nog moet doen. Dit met behulp van het immatriculatienummer. De trainingskaarten met de criteria kunnen ook geraadpleegd worden. 4.7.2 Aan de slag! Eenmaal u op de webapplicatie bent zult u eerst moeten inloggen voor u aan de slag kan. U dient in te loggen met uw gebruikersnaam en wachtwoord. Als deze correct zijn ingevuld drukt u op aanmelden. Als bijkomende mogelijkheid kunt u aanvinken dat uw browser het passwoord onthoudt.

In Internet Explorer kan het ook voorkomen dat de browser zelf voorstelt om het wachtwoord op te slaan. U kunt zelf kiezen of u dit wilt doen of niet maar het is in principe niet nodig.

  

Administrator Onderofficier Brandweerman

Hoofdstuk:

4.7.3 Aanmeldniveau s In deze applicatie zijn er drie verschillende aanmeldniveau ’s. Met dit systeem kan er voor gezorgd worden dat niet iedereen zomaar alle gegevens kan verwijderen, wijzigen of inkijken.

85


Een administrator heeft alle rechten, hij kan alles aanpassen, bekijken en verwijderen. Een onderofficier kan geen gegevens verwijderen of aanpassen maar kan wel een nieuwsartikel aanmaken en kan gegevens raadplegen. Een brandweerman heeft de minste rechten en kan enkel zijn gegevens over de training raadplegen. 4.7.4 Nieuwsartikels toevoegen Eenmaal u aangemeld bent en als u het aanmeldniveau administrator of onderofficier heeft dan kunt u nieuwsartikels aanmaken. Onder de huidige nieuwsartikels kunt tekstvelden vinden om de nieuwsartikels aan te maken. Uw naam wordt automatisch ingevuld met uw gebruikersnaam. Onder uw gebruikersnaam vult u de titel van het nieuwsartikel in. In het laatste vak typt u uw nieuwsartikel zelf. Als u alles gecontroleerd heeft kunt u op de knop toevoegen klikken en dan zal uw nieuwsartikel verschijnen in het nieuwsoverzicht bovenaan.

Hoofdstuk:

4.7.5 Kaarten bekijken, wijzigen of verwijderen In het hoofdmenu kunt u klikken op kaarten en dan zult u naar de pagina verwezen worden waar u de inhoud van de kaarten kunt bekijken. In het rooster ziet u alle huidige kaarten. Het programma toont slechts enkele kaarten weer om meer kaarten weer te geven moet u onderaan het rooster navigeren naar de verschillende pagina’s. Als u de criteria wilt bekijken van een gewenste kaart hoeft u enkel op “selecteren” te klikken naast de gewenste kaart in het rooster. Onderaan verschijnen dan de bijhorende criteria.

86


Als administrator heeft u ook nog de mogelijkheid om een gewenste kaart te verwijderen. Hiervoor klikt u op “verwijderen” in de rij waar de kaart staat. U krijgt nog een bevestiging of u zeker deze kaart wil verwijderen. Indien u per ongeluk op verwijderen heeft geklikt drukt u op “nee” als het de bedoeling was om een kaart te verwijderen dan kunt u op “ja” klikken. Opgelet: eenmaal de kaart verwijderd is kunt u deze niet meer recupereren, u kunt de kaart wel opnieuw aanmaken.

Hoofdstuk:

U kunt ook de gegevens van een kaart wijzigen, daarvoor klikt u op “wijzigen” in het rooster. Alle huidige gegevens komen dan in een tekstvak te staan en deze kunt u dan wijzigen. Als u klaar bent klikt u op “bijwerken”. Als u niets wilt wijzigen klikt u op “annuleren”.

87


4.7.6 Kaarten toevoegen en criteria toevoegen Om kaarten toe te voegen klikt u op de knop “Nieuwe kaart invoegen”. U wordt verwezen naar een nieuwe pagina.

Hoofdstuk:

Om de kaart aan te maken vult u de drie tekstvakjes in met de nodige gegevens en drukt u op “Kaart toevoegen”. Als u ook criteria wilt toevoegen aan een kaart moet u eerst op de knop “criteria” klikken. Er verschijnen nu nieuwe tekstvakjes. Net zoals bij kaarten toevoegen vult u alle tekstvakjes in. Enkel kaartnummer moet u selecteren in een lijst. Zo koppelt u de criteria aan de bijhorende kaart. Selecteer dus het kaartnummer van de kaart waaraan u de criteria wil koppelen. Als u klaar bent klikt u op de knop “Criteria toevoegen”. U kunt terugkeren naar het overzicht van de kaarten door op de knop “Vorige” te klikken.

88


4.7.7 Trainingen registreren Als u een training hebt uitgevoerd kunt u deze registreren in de database. Om dit te doen klikt u in het menu op “Training”. U wordt dan verwezen naar een nieuwe pagina.

Als eerste moet u de datum selecteren op de kalender wanneer de training plaatsvond. Daaronder vult u de duur van de training in en de naam van de training die u uitgevoerd heeft. Als laatste selecteert u de brandweermannen die aanwezig waren op de training in de linkerlijst en klikt u op de knop “aanwezig”. Als u alle brandweermannen hebt toegevoegd aan de lijst en alle gegevens heeft ingevuld kunt u op “opslaan” klikken. 4.7.8 Brandweerman Hier kunt u alle brandweermannen van uw korps raadplegen. Er worden slechts enkele brandweermannen weergegeven. Onderaan kunt u navigeren tussen verschillende pagina's om alle brandweermannen terug te vinden. U kunt de kolommen alfabetisch sorteren door op de titel van de kolom te klikken.

Hoofdstuk:

Onder het bovenste rooster ziet u nog een rooster. Hierin staan alle specifieke gegevens over de brandweerman. Zoals welk brevet hij behaald heeft, welke behaalde criteria, enz.

89


Alle velden onderaan dienen om een nieuwe brandweerman toe te voegen aan het korps. U dient alle nodige informatie in te vullen. Voor het behaalde brevet dient u aan te vinken welke brevetten behaald zijn. Voor specialisatie is dit hetzelfde principe. Als laatste moet u de graad selecteren in een lijst. Als alle gegevens zijn ingevuld klikt u op de knop "Toevoegen"

Hoofdstuk:

4.7.9 Afdrukken Van sommige pagina's kunt gegevens afdrukken. Als u de knop "Afdrukken" ziet staan moet u daar ĂŠĂŠnmaal op klikken en dan wordt er naar een nieuwe pagina genavigeerd en opent er een dialoogvenster om te vragen welke printer u wil gebruiken om af te drukken. Selecteer de juiste printer; dit zal meestal standaard juist staan; en klik op afdrukken.

90


4.7.10 Administrator pagina Op de loginpagina kunnen administrators nog een extra knop vinden die hen naar de administrator pagina brengt. Op deze pagina kunnen er nieuwe specialisaties en nieuwe brevetten aangemaakt worden. Ook het wijzigen van uw wachtwoord kunt u hier uitvoeren. Om een specialisatie of een brevet toe te voegen dient u enkel het tekstvakje in te vullen en op opslaan te klikken.

Hoofdstuk:

4.7.11 Wachtwoord wijzigen Om een wachtwoord te wijzigen moet u in het rooster klikken op bewerken. Alle gegevens van de geselecteerde rij veranderen weer in tekstvakjes en hier kunt u in de kolom "wachtwoord" het wachtwoord wijzigen. Als administrator bent u de enige die dit kan doen, het is dus uw verantwoordelijkheid als iemand in uw korps zijn passwoord wil wijzigen om dit dan uit te voeren voor de persoon in kwestie.

91


5

English

5.1

Vantage IT

5.1.1 History Vantage IT started life in 1990 when it was noticed that small and medium sized businesses were not receiving the best possible service from their IT providers. Most businesses do not have in-house expertise to run IT. Vantage IT sets out to help such companies and has successfully done so ever since. Vantage IT is positioned conveniently close to the counties of Hertfordshire, Buckinghamshire, Oxfordshire and Bedfordshire and so provides services to businesses in all these counties. 5.2

Range of products

5.2.1 Server & storage The hardware is just one part of the solution and you can rest assured the software will always be the latest, most reliable version with the latest patches and fixes installed, ensuring that the server is as up-to-date, secure and stable as possible. Vantage goes the extra mile for you. 5.2.2 PCs and laptops Vantage IT is not restricted to supplying a particular brand - instead they can help you decide which is best for your application and your budget. 5.2.3 Mobile e-mail solutions They provide software that’s called OpenHand. It’s a low cost, easy to use and secure program to check your e-mails on a cell phone. 5.2.4 VPN/remote working VPN is a virtual private network and that Vantage provides to their customers. A VPN is a connection that is made over the internet between 2 or more computers. It's very secure. 5.2.5 Voice over IP This is a technology that enables phone calls over the internet. This can enable cost savings

Quality: the level of support the customers receive is far in excess of what the vast majority of companies offer - all of the customers of Vantage compliment them on the quality of service they receive. Security: all the work is focused on security - from the setup of the most basic PC through to servers and IT infrastructure, Vantage is always fully conscious of the need for security to be paramount in all the work that Vantage IT does.

Hoofdstuk: English

5.3 Marketing strategies There are many companies offering IT support, so why should you choose Vantage?

92


ď&#x201A;ˇ

Trust: one phrase the customers often use is they "trust us implicitly". Trust is not something a company gains overnight: it is only after years of providing high quality, secure services and by slowly building up that trust that Vantage now finds itself in the enviable position of being completely trusted when providing IT support to their customers.

Others struggle to match the level of service Vantage provides. Whether it's the speed of response, the quality of the support, or the extra services provided as standard, they have 18+ years of experience in providing superior support means they know what is important to businesses and how your IT can be best managed. Vantage their belief has always been to treat the customer fairly and to provide a service that cannot be bettered.

5.4 European dimension They only work in the UK. To help determine if Vantage is close to you, some of the towns they visit include Abingdon, Amersham, Aylesbury, Beaconsfield, Bedford, Berkhamsted, Bicester, Biggleswade, Bletchley, Buckingham, Chesham, Dunstable, Haddenham, Harpenden, Hatfield, Hemel Hempstead, High Wycombe, Leighton Buzzard, Loudwater, Luton, Milton Keynes, Oxford, Princes Risborough, Rickmansworth, St Albans, Thame, Tring, Watford, Wheathampstead, Witney to name but a few! 5.5 Future Vantage wants to expand to more towns and deliver more reliable software and support than they already do now. I'm almost certain they can achieve it because it are very friendly people but also very professional. 5.6 Sources http://www.vantageit.co.uk 5.7

E-mail correspondence

Hi, We are 2 young students from Belgium still going to school and we have a school assignement that we have to give a presentation about an SME from the UK. We found your website via Google and we would like to ask you if we can make our presentation about your company.

If this is alright with you, we would like to ask you some questions: The history of the company Organization chart The future of your company Thank you in advance! Tom Vandegehuchte, Jorne Vanlandschoot

Hoofdstuk: English

Human resources (number of workers / recruitement policy / employment prospects)

93


5.8

Letter of enquiry

5.8.1 Havant Computers Tom Vandegehuchte Willem De Zwijgerstraat 8 8020 Oostkamp Belgium

10 November 2010

Havant Computers 1 Havant House Mill Road, Storrington West Sussex RH20 4PP

Dear Sir or Madam My name is Tom Vandegehuchte and I'm a student at the Sint-Jozefsinstituut in Bruges. I have found your company's website using Google and I'm very interested in the services you provide. I would be very thankful if you could give me some more information about self-built computers you sell. Especially the so-called: Extreme Power QC Workstation. Is it possible to send me some more details about the motherboard, and what features it has (how many ports, does it support Wi-Fi?) Is it possible to change certain hardware, to make my own personalized computer? I also saw an offer of web design, do you have any references of this? Thank you for your time, and I hope to be hearing from you soon. Yours faithfully

Hoofdstuk: English

Tom Vandegehuchte

94


5.8.2 Keane Computer Services Tom Vandegehuchte Willem De Zwijgerstraat 8 8020 Oostkamp BELGIUM

10 November 2010

Keane Computer Services 50 Kenmore Crescent Coalvill Leicestershire LE67 4RQ

Dear Sir or Madam I'm a student in the sixth year. I have found your website using Google and I'm very interested in your company. I would be grateful if you could provide me with some more information about your business. What kind of services do you offer? Do you only provide support to private individuals, or also to other company's? The computers that you advertise on your website, are they the only computers do you have or do you have some more? If you, could you please send me a magazine or a complete folder with all the computers that you sell, or is there an option to make a pc with the parts you have in your store for a full personalized computer?

Yours faithfully

Hoofdstuk: English

Tom Vandegehuchte

95


6

Conclusie

Ik wist al wat een GIP inhield en wist dus ook dat ik er opnieuw zeer veel uren zou aan spenderen. Maar was toch zeer gemotiveerd om er iets beters van te maken dan vorig jaar. Ik had me daarom ook voor genomen om er zeker mijn best voor te doen en volgens mij is dit zeker gelukt. Door deze GIP wou ik leren op voorhand werken en niet op het laatste nippertje alles vlug af te werken. Ik heb deze doelstelling deels kunnen vervullen, want het is niet altijd even gemakkelijk geweest dit schooljaar.

Hoofdstuk: Conclusie

Door middel van de stage en de GIP wou ik ook een betere kijk krijgen op volgend jaar, welke studierichting ik zou willen en misschien wat ik later van werk zou willen doen. Door de stage weet ik al zeker dat ik in de informatica sector wil werken. Het is een zeer uitdagende sector waar er altijd over bij te leren is. Ook mijn zelfstandig werken is verbeterd door de stage. Ik heb af en toe eens een taak gekregen van mijn stage begeleider waar ik toch eerst wat opzoekingzwerk voor moest verrichten.

96


GIP 2010 - 2011