GIP eindwerk

Page 1

Ge誰ntegreerde Proef informaticabeheer Sintjozefsinstituut Handel en Toerisme 2010 - 2011 Paul Hurlebusch

6IB

3



Woord vooraf De GIP (Ge誰ntegreerde proef) taak is een verplicht onderdeel in het 6de jaar Informaticabeheer. Er wordt getoetst naar de algemene kennis die de leerling heeft opgedaan in de derde graad. Het omvat een automatiseringsproject en een website. Verder wordt de leerling getest op het gebied van talen, en zijn kennis van bedrijfseconomische aspecten. Er werd ook een stage van twee weken voorzien. Mijn dank gaat vooral naar mijn stagementor Jeroen De Block. Verder wil ik mijn vakleerkrachten meneer Beerens, meneer Devriendt, mevrouw De Smet en mevrouw De Meulder bedanken voor de goede samenwerking en het helpen bij problemen.

3


4


Inhoudstabel Woord vooraf............................................................................................................................... 3 Inleiding ...................................................................................................................................... 7 1 Bedrijfseconomische aspecten ........................................................................................... 8 1.1 Eenmanszaak of vennootschap ............................................................................................... 8 1.1.1 1.1.2

Eenmanszaak .......................................................................................................................................... 8 Vennootschap ........................................................................................................................................ 8

1.2

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

1.2.1 1.2.2 1.2.3

Sectoren: ................................................................................................................................................ 9 Bedrijfsgrootte ..................................................................................................................................... 10 Juridische vorm .................................................................................................................................... 10

1.3

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

1.3.1 1.3.2 1.3.3

Q2C ....................................................................................................................................................... 11 Microsoft Lync ...................................................................................................................................... 12 Outlook................................................................................................................................................. 12

1.4

Contracten ............................................................................................................................. 13

1.4.1 1.4.2 1.4.3 1.4.4

Bestelbon ............................................................................................................................................. 13 Leveringsbon ........................................................................................................................................ 14 Factuur ................................................................................................................................................. 15 Creditnota ............................................................................................................................................ 16

1.5 2 2.1

Bronnen.................................................................................................................................. 16 Stage............................................................................................................................... 17 Aanvraag stageplaats + curriculum vitae ............................................................................... 17

2.1.1 2.1.2

Aanvraag stageplaats ........................................................................................................................... 17 Curriculum Vitae .................................................................................................................................. 18

2.2

Verslag.................................................................................................................................... 20

2.2.1

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

2.3

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

2.3.1 2.3.2 2.3.3

Voorstelling .......................................................................................................................................... 21 Organogram ......................................................................................................................................... 21 Interview met stagementor ................................................................................................................. 22

2.4 2.5 2.6

Sollicitatiebrief ....................................................................................................................... 23 Beschrijving van de werking in het bedrijf ............................................................................. 24 Dagelijkse Stageverslagen ...................................................................................................... 25

2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.6.6 2.6.7 2.6.8 2.6.9 2.6.10

Dag 1 .................................................................................................................................................... 25 Dag 2 .................................................................................................................................................... 26 Dag 3 .................................................................................................................................................... 27 Dag 4 .................................................................................................................................................... 28 Dag 5 .................................................................................................................................................... 29 Dag 6 .................................................................................................................................................... 30 Dag 7 .................................................................................................................................................... 31 Dag 8 .................................................................................................................................................... 32 Dag 9 .................................................................................................................................................... 33 Dag 10 .................................................................................................................................................. 34

3

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


3.1 3.2 3.3 3.4 3.5 3.6 4 4.1

Inleiding.................................................................................................................................. 35 Index....................................................................................................................................... 35 Verhuur .................................................................................................................................. 36 Verkoop.................................................................................................................................. 36 Herstellingen .......................................................................................................................... 37 Over Ons ................................................................................................................................ 37 Informaticaproject .......................................................................................................... 38 Probleemstelling .................................................................................................................... 38

4.1.1 4.1.2

Probleemstelling .................................................................................................................................. 38 Vragen en antwoorden ........................................................................................................................ 38

4.2

Aanmelden ............................................................................................................................. 39

4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6

Screenshot............................................................................................................................................ 39 Besturingselementen ........................................................................................................................... 39 Procedure ............................................................................................................................................. 39 Code ..................................................................................................................................................... 40 Opmaakcode ........................................................................................................................................ 41 Web.config ........................................................................................................................................... 42

4.3

Beheerder .............................................................................................................................. 43

4.3.1 4.3.2 4.3.3 4.3.4 4.3.5 4.3.6 4.3.7 4.3.8

Default .................................................................................................................................................. 43 Brandweerman..................................................................................................................................... 44 Oefenkaart ........................................................................................................................................... 51 Print Oefenkaart ................................................................................................................................... 58 Oefening ............................................................................................................................................... 60 Opvragingen ......................................................................................................................................... 71 Help ...................................................................................................................................................... 72 Web.config ........................................................................................................................................... 78

4.4

Gebruiker ............................................................................................................................... 79

4.4.1 4.4.2 4.4.3 4.4.4

Default .................................................................................................................................................. 79 Brandweerman..................................................................................................................................... 80 Oefenkaart ........................................................................................................................................... 86 Web.config ........................................................................................................................................... 92

5 5.1 5.2

Engels ............................................................................................................................. 93 List of 10 suppliers ................................................................................................................. 93 Letter of enquiry .................................................................................................................... 94

5.2.1 5.2.2

Sony ...................................................................................................................................................... 94 Hewlett-Packard ................................................................................................................................... 95

5.3

SME ........................................................................................................................................ 96

5.3.1 5.3.2

text ....................................................................................................................................................... 96 Powerpoint ........................................................................................................................................... 97

Besluit

...................................................................................................................................100

6


Inleiding De hoofdopdracht van de GIP bestond erin om een automatiseringsproject te maken voor de brandweer. Ik heb hiervoor samen gewerkt met Florian Dieleman en Brecht Timmerman. De opdracht was een programma te maken waar men de gegevens over de brandweermannen (bijvoorbeeld naam, specialisatie‌) en de oefenkaarten en de criteria per oefenkaart kon bijhouden. Verder moeten de brandweermannen aan oefeningen kunnen deelnemen, waarvoor ze per criteria kunnen slagen of niet. Voor het onderdeel bedrijfsgericht programmeren kregen we de opdracht een website te maken. We mochten zelf het onderwerp en de lay-out kiezen. Ik heb gekozen om een website te maken voor de handelszaak fietsen AndrÊ waar ik een vakantiejob had gedaan. Verder werd onze kennis in de talen Engels en Nederlands en onze kennis in bedrijfseconomie getest via een reeks van opdrachten.

7


1

Bedrijfseconomische aspecten

In het 6de jaar informaticabeheer kwamen we in contact met een bedrijf via de stage die we er liepen. Bedrijven kun je volgens verschillende criteria opdelen, voor elk criterium zijn er andere regels.

1.1

Eenmanszaak of vennootschap

Als beginnende zelfstandige kun je kiezen om ofwel een eenmanszaak of een vennootschap op te richten. Aan allebei zijn er zowel voordelen als nadelen, hieronder staan ze allemaal op een rij. 1.1.1 Eenmanszaak DEFINITIE Juridische vorm om het eigendom te regelen in een bedrijf waar één persoon de zeggenschap heeft. Hij mag zoveel werknemers hebben als hij wil, zolang alleen hij het vermogen van de onderneming beheert. VOORDELEN • • • •

Lage oprichtingskosten, geen minimumkapitaal vereist. Weinig formaliteiten. Beslissingsmacht en werking in handen van één persoon. De totale opbrengst is voor één persoon.

NADELEN • •

Geen scheiding tussen het privévermogen en het bedrijfsvermogen. Ziekte of ongeval van de handelaar kunnen voor het bedrijf nefast zijn. De personenbelasting kent doorgaans hogere tarieven dan de vennootschapsbelasting.

1.1.2 Vennootschap DEFINITIE Bedrijf dat is opgericht met kapitaal van mensen die daarvoor in ruil aandelen in het bedrijf krijgen. VOORDELEN • • • • •

Er zijn (in principe) meer personen om de nodige financiële middelen bij mekaar te brengen. De vennoten zijn slechts aansprakelijk voor hun inbreng. Faillissement van de vennootschap betekent niet automatisch faillissement van de vennoten. Het wegvallen door overlijden van één van de vennoten leidt niet tot het einde van de vennootschap. Een voordeliger belastingstelsel.

NADELEN • • •

Er is in ieder geval een minimum kapitaal vereist. Er zijn meer formaliteiten te volbrengen waardoor men een minder soepele werking krijgt. De verplichtingen inzake boekhouding zijn veel strenger. 8


1.2

Indeling volgens activiteit, bedrijfsgrootte en juridische vorm

Er zijn verschillende manieren om een bedrijf in te delen. Je kunt het indelen volgens sector, bedrijfsgrootte en juridische vorm. Hieronder worden al deze indelingen uitvoerig besproken. 1.2.1

Sectoren:

De eerste manier van indelen is het indelen in sectoren. In het bedrijfsleven heb je 3 sectoren, je hebt nog een 4de sector, maar die is niet commercieel. De sectoren geven aan in welke fase de productie van een eindproduct is. Sector Primair Secundair Tertiair Quartaire Omschrijving

Sector die voedsel of grondstoffen levert. Er gebeurt nog geen verwerking van de verworven goederen.

De sector met alle bedrijven en activiteiten die de producten uit de primaire sector verwerken. De verkoop aan de consument gebeurt doorgaans in de tertiaire sector

Sector waarin bedrijven met de verkoop van hun producten of diensten winst willen maken.

de quartaire sector is de sector van de niet-commerciële gesubsieerde en of collectief gefinancierde dienstverlening. Sector zonder oog op winst.

Behandelde sectoren

Landbouw, jacht, veeteelt, visserij en delfstofwinning.

Enorm veel, bijvoorbeeld: staalproductie, bierbrouwerij, autofabrieken...

Enorm veel, Bijvoorbeeld: winkels, horeca, theaters, ICT bedrijven, zakelijke dienstverleners, advocaten…

Onderwijs, Politie, gezondheids-zorg…

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

9


1.2.2

Bedrijfsgrootte

Je kunt bedrijven ook indelen volgens juridische grote. Je hebt zeer kleine, kleine en grote ondernemingen. Hieronder is een schema met de verschillende kenmerken per bedrijfsgrootte. Volgens deze indeling hoort mijn stagebedrijf bij de zeer kleine onderneming. Onderneming Kenmerken

Zeer kleine onderneming Koper moet een natuurlijk persoon of een vennootschap zijn. Jaaromzet <= €500 000

Kleine onderneming In het laaste afgesloten boekjaar niet meer dan 100 personen tewerkstellen.

Grote onderneming Alle andere ondernemingen.

Jaargemiddelde personeelsbestand: 50 tewerkgestelden. Jaarlijks Bruttoloon (excl BTW) <=€7 300 000 Balanstotaal <=€ 3 650 000 Soort boekhouding

1.2.3

Keuze tussen enkelvoudige of dubbele boekhouding. Voor vennootschappen is wel een dubbele boekhouding verplicht.

Dubbele boekhouding

Dubbele boekhouding

Juridische vorm

Bij het oprichten van een bedrijf kun je kiezen om ofwel een eenmanszaak of een vennootschap op te richten. De kenmerken van een eenmanszaak zijn voornamelijk dat één natuurlijk persoon het kapitaal van de onderneming beheert. Er is geen verschil tussen het kapitaal van de onderneming en het kapitaal van de oprichter, dit betekend dus dat wanneer er een financieel probleem is in je onderneming, dat de overheid je persoonlijke goederen in beslag mag nemen. Een vennootschap wordt opgericht met het kapitaal van meerdere mensen. Bij een faillissement kan er geen aanspraak worden gemaakt op persoonlijke goederen. Mijn bedrijf is een eenmanszaak. De eindverantwoordelijke is Jeroen De Block die ook mijn stagebegeleider was. Hij heeft deze vorm gekozen omdat hij altijd al moeite had om gezag te aanvaarden, en dus wou hij zijn eigen baas zijn. Zijn kinderen hebben allemaal niets te maken met informatica, dus waarschijnlijk zullen ze zijn zaak verkopen als hij sterft. Het geld dat hij nodig had om de zaak op te richten kwam voornamelijk van

10


zijn ouders. Hij heeft niet gestudeerd, daarom was het moeilijk om een lening aan te gaan bij de bank. Hij is blij met wat hij nu heeft, en zal waarschijnlijk niet meer uitbreiden in de toekomst.

1.3

E-business

Tijdens mijn stage kreeg ik te maken met verschillende informaticatoepassingen. Hieronder zijn er een paar die ik bijna dagelijks moest gebruiken. 1.3.1

Q2C Bij mijn stagebedrijf maken ze voornamelijk gebruik van Q2C. Dit is een software programma dat een zusterbedrijf waarmee ze samenwerken heeft gemaakt. Het bevat alle belangrijke onderdelen die ze nodig hebben. Je kan er facturen mee maken, en bijhouden welke computers nog moeten hersteld worden tegen welke datum. Je kan er ook je aankopen en verkopen in opnemen, en er zit een agenda in waarmee je je afspraken met je klanten kan beheren. Het programma Q2C is ge誰nstalleerd op een cloudserver. Dit betekent dat ze vanop elke computer met internettoegang aan het programma kunnen. Dit is zeer handig als je bijvoorbeeld bij een klant iets moet uitvoeren en een paswoord nodig hebt.

11


1.3.2

Microsoft Lync Om hun telefooncentrale te beheren gebruiken ze nu een Microsoft Lync 2010 Server die ik heb geïnstalleerd. Hiermee kunnen ze bijvoorbeeld een telefoon doorverwijzen naar hun gsm als er niemand opneemt op de werkplaats. Je kunt er ook snel berichten mee sturen naar collega’s. Omdat er namen van hun klanten in de lijst met contacten stonden, staat hiernaast het programma zoals men deze kan terugvinden op het internet.

1.3.3

Outlook Om hun mails te beheren en te schrijven gebruikt mijn stagebedrijf Microsoft Outlook. Ze controleren hun e-mails meerdere keren per dag want de servers van klanten sturen fouten door per email. Het progamma staat geĂŻnstalleerd op een Cloudserver. Dit wil zeggen dat ze het programma kunnen openen op elke computer met internettoegang. Dit is zeer handig als je aan het werken bent bij een klant, en je hebt bepaalde informatie nodig van een e-mail.

12


1.4

Contracten

In het bedrijfsleven zijn er bepaalde documenten die nodig zijn voor de aankoop en verkoop. We kregen de opdracht om een bestelbon, leveringsbon, factuur en creditnota te maken. 1.4.1

Bestelbon

13


1.4.2

Leveringsbon

14


1.4.3

Factuur

15


1.4.4

Creditnota

1.5

Bronnen

http://nl.wikipedia.org/wiki/Primaire_sector http://nl.wikipedia.org/wiki/Secundaire_sector http://nl.wikipedia.org/wiki/Tertiaire_sector http://nl.wikipedia.org/wiki/Quartaire_sector http://www.optimumsite.be/assets/optimum/leerkrachten/thema%201.pdf http://www.netonline.be/ondernemen/detail.asp?id=776 http://www.startenbvba.be/accountancy/215-eenmanszaak-of-vennootschap-voordelen-ennadelen-en-vergelijking-.html

16


2

Stage

2.1

Aanvraag stageplaats + curriculum vitae

2.1.1

Aanvraag stageplaats

Paul Hurlebusch Koningin Astridlaan 66 8200 Brugge

2010-10-12

De Computerkliniek Nijverheidsstraat 100 8310 Assebroek Aanvraag van een stageplaats

Geachte heer De Block, Mijn naam is Paul Hurlebusch, en ik zit in mijn laatste jaar Informaticabeheer(TSO) aan het Sintjozefsinstituut. Op school hebben we dit jaar een geïntegreerde oefening, hierbij worden alle kernvakken van de studierichting (tekstverwerking, toegepaste informatica, softwareontwikkeling‌ ) getest. De reden waarom ik u contacteer, is omdat we in februari twee weken stage zullen lopen. Ik vroeg me af of er bij u nog een plaats beschikbaar is. Uw stageplaats interesseert me door de veelzijdigheid van het werk. Ik zou graag enige werkervaring opdoen op zo veel mogelijk vlakken. Ik heb een goede kennis van het Nederlands, Frans, Engels en Duits. Verder heb ik over een basiskennis netwerkbeheer en programmeren. Ik ben ook vertrouwd met MS-office(Word, Excel en Acces). Deze kennis werd meestal theoretisch gegeven, mijn doel is om ze ook eens in praktijk toe te passen. Ik hoop dat het mogelijk is bij uw bedrijf een stageplaats te verkrijgen en ik ben altijd bereid om mijn CV in een mondeling gesprek te komen toelichten. Hoogachtend

Paul Hurlebusch

Bijlage: Curriculum Vitae 17


2.1.2

Curriculum Vitae

Personalia Naam: Paul Hurlebusch Adres: Koningin Astridlaan 66 8200 Brugge Geboortedatum: 24-06-1993 Geboorteplaats: Wolfenbüttel Geslacht: Man Burgerlijke staat: Student

Opleidingen & Cursussen 2011

Opleiding: Informaticabeheer Instituut: Sint-Jozefsintituut Zilverstraat 26 8000 Brugge Resultaat: Diploma secundair onderwijs

Werkervaring 2010

Bedrijf: Fietsen André Leopoldlaan 9-11 8420 De Haan-Centrum Functie: Verhuurder

2011

Bedrijf: Yuniit Solutions Baron Ruzettelaan 240 8310 Assebroek Functie: Stagair bij Hardware en Support

Talenkennis •

Nederlands: moedertaal

Duits: goed Engels: goed Frans: redelijk

• •

Computerkennis •

MS-office

Basis netwerkbeheer

Basis Visual Basic 18


In bezit van • • •

Rijbewijs A3 Voorlopig rijbewijs B Brommer en Fiets

Hobby’s en interesses • • •

Computer Uitgaan Sociale netwerken

Referenties •

Ingrid Beirens Fietsen André Leopoldlaan 9-11 8420 De Haan-Centrum

Jeroen De Block Yuniit Solutions Baron Ruzettelaan 240 8310 Assebroek

19


2.2

Verslag

2.2.1

Algemeen stageverslag

Ik heb mijn stage gelopen bij Yuniit Solutions, een klein computerbedrijf in Assebroek. Ze verkopen hardware en geven andere bedrijven support voor, tijdens en na de installatie ervan. Ik heb veel zelfstandig gewerkt, en op die manier heb ik veel bijgeleerd. Meestal heb ik voor problemen een oplossing moeten zoeken via internet. Daarna probeerde ik ze uit met hulp van mijn stagebegeleider. De meeste support gebeurde vanop afstand. Dit kon via het programma LogMeIn. Af en toe moesten we toch eens langs gaan bij een klant, zoals op 19 januari toen we een UPS (Uninterruptable power supply) gingen installeren bij een klant. Ook hier heb ik eigenlijk alleen maar goede ervaringen opgedaan. De meeste klanten zijn heel vriendelijk en meestal krijg je er nog iets te drinken. Ze spraken allemaal Nederlands, dus ik heb geen andere taalkennis nodig gehad. In Yuniit zelf was er een aangename atmosfeer. Iedereen was erg behulpzaam. Alles was redelijk losjes, en je mocht een beetje kiezen hoe je je werk wou plannen. Al bij al was het een onvergetelijke tijd, die me een goede indruk heeft gegeven over wat mijn toekomstige job zal inhouden

20


2.3

Voorstelling van de stage

2.3.1

Voorstelling

Ik heb mijn stage gedaan bij Yuniit Solutions, een bedrijf in de Baron Ruzettelaan 240 te Assebroek. Yuniit is gespecialiseerd in het installeren van hardware, en in de support voor tijdens en na de verkoop. Ze doen ook aan programmeren, maar ik heb gewerkt in de hardware sector. Ik moest voornamelijk nieuwe hardware klaarmaken en informatie opzoeken op internet. In het bedrijf heerst een rustige sfeer, omdat de meeste klanten bij wie het syseem op een correcte wijze is geïnstalleerd achteraf weinig support nodig hebben. De meeste klanten bij Yuniit Solutions zijn kleine tot middelgrote bedrijven. Meestal zijn ze vriendelijk, maar soms komen er een paar lastige die bijna elke dag eens bellen gewoon uit gemakzucht. Om de support te vergemakkelijken werkt Yuniit Solutions met een remote support system. Dit is een programma waarmee ze elke computer van hun klanten vanop afstand kunnen overnemen en besturen. Hierdoor moeten ze niet bij elk probleem naar de klanten komen of uren bellen om uit te leggen aan de klanten wat ze moeten doen. Bij sommige problemen volstaat dit echter niet, en is het toch nodig om naar de klant te gaan. Op de werkvloer heerst een rustige en toffe sfeer. Iedereen is vriendelijk, en je mag bij iedereen terecht met vragen. Men werkt van 9.00u tot 12.00u en dan weer van 13.30 tot 17.00. Tussen de middag gaat de baas naar de supermarkt om eten te kopen, en dan eet iedereen tezamen. ’s Avonds mocht ik soms eerder naar huis als er geen dringende opdrachten meer waren. 2.3.2

Organogram

Mijn bedrijf heeft maar twee medewerkers. De baas is Jeroen De Block, maar ze werken al jaren samen, en beslissen alles tezamen. Jeroen De Block Funcite:

Christophe Duchaine Functie:

Hardware en support

Hardware en support

Nieuwe klanten zoeken

Op verplaatsing gaan naar klant.

Paul Hurlebusch Functie: Stagair

21


2.3.3

Interview met stagementor

Ik heb mijn stage gedaan bij Yuniit Solutions. Mijn stagebegeleider Jeroen De Block, een vriendelijke baas, was bereid was een paar vragen te beantwoorden. Hij studeerde informatica in Gent. Hij behaalde eerst een praktische bachelor in de richting Toegepaste Informatica. Daarna volgde hij een schakeljaar om zijn master te behalen. Omdat hij wat moeilijkheden met wiskunde had, deed hij er drie jaar over. Hij beschreef zijn tijd als student als de beste tijd van zijn leven. In 2001 richtte hij samen met Christophe Duchaine en Yuri De Groote het bedrijf Yuniit Solutions op. Hij kon nooit goed met kritiek omgaan en daarom besloot hij om zelfstandig te worden. Hij is blij met zijn keuze en staat volledig achter zijn job. Buiten Yuniit Solutions heeft hij ook nog een internetbedrijf dat Cloudcom heet. Hier verhuurt hij serverruimte aan andere bedrijven om hun documenten en programma’s op elke computer met een internetverbinding ter beschikking te stellen. Hij probeert om deze twee werken gescheiden te houden, maar soms zorgt dit voor moeilijkheden in de organisatie. In de nabije toekomst zou hij zeker niet willen veranderen van werk. Op lange termijn zou hij misschien nog een paar lessen volgen om dan in de consulting te gaan werken. Maar hij zegt ook dat dit er waarschijnlijk nooit van zal komen.

22


2.4

Sollicitatiebrief

Paul Hurlebusch Koningin Astridlaan 66 8200 Brugge

2011-02-08

Yuniit Solutions Baron Ruzettelaan 240 8310 Assebroek Sollicitatie voor hardware en support medewerker

Geachte heer De Block, Mijn naam is Paul Hurlebusch, en ik zit in mijn laatste jaar Informaticabeheer(TSO) aan het SintJozefsinstituut. In januari heb ik twee weken stage gevolgd bij jullie. De reden waarom ik u contacteer, is omdat ik op zoek ben naar een vaste job. Ik heb gehoord dat er een plaats vrijkomt bij hardware en support. Ik heb over een goede kennis van het Nederlands, Frans, Engels en Duits. Verder heb ik een basiskennis van netwerkbeheer en programmeren. Ik ben ook vertrouwd met MS-office(Word, Excel en Access). Tijdens mijn stage heb ik bewezen dat ik ze ook kon toepassen in praktijk Ik hoop dat het mogelijk is om bij uw bedrijf te mogen werken en ik ben altijd bereid om mijn CV in een mondeling gesprek te komen toelichten. Hoogachtend

Paul Hurlebusch

Bijlage: Curriculum Vitae

23


2.5

Beschrijving van de werking in het bedrijf

Op mijn stageplaats werkte iedereen met Windows 7. Ze hebben er ook servers die allemaal Windows server 2008 gebruikten. Ze hebben het complete office pakket geïnstalleerd op hun Cloud server. Dit betekent dat het programma eigenlijk draait op de server, en het dus niet nodig is dat het geïnstalleerd is op de computer van de gebruiker. Zo zijn je programma’s, documenten… op elke computer met internettoegang beschikbaar, wat uiteraard zeer handig is als je bijvoorbeeld een paswoord van een klant nodig hebt, terwijl je op verplaatsing bent. Voor hun telefoon en fax gebruiken ze Microsoft Lync. Om te factureren en bij te houden welke computers nog hersteld moeten worden, hebben ze hun eigen programma geschreven dat Q2C heet. Elke dag wordt er een algemene back up genomen van alle bestanden. Voor de e-mails is iedereen zelf verantwoordelijk. Iedereen krijgt een e-mailadres van het bedrijf, maar er worden geen back-ups genomen.

24


Dagelijks stageverslag

2.6

Dagelijkse Stageverslagen

2.6.1

Dag 1

2.6.1.1 Activiteiten

9.00 - 9.30 9.30 – 10.00

Rondleiding Installeren van een printer van op afstand

10.00 – 11.00

Herstellen van trage pc

11.00 – 12.00

Documentatie van de stock

12.00 – 13.30 13.30 – 15.00

Pauze Repareren van computers

15.00 – 17.00

Herinstalleren van Windows 7 + recovery data van oude Windows 7

2.6.1.2 Verslag

Vandaag heb ik kennisgemaakt met de medewerkers van Yuniit Solutions. Iedereen was vriendelijk en er heerst een rustige sfeer. Tussen de middag eet iedereen samen. Ik heb vooral virussen en spyware moeten verwijderen van binnengebrachte computers. Om bij te houden welke computers moeten worden hersteld, hebben ze zelf een programma geschreven dat Q2C heet.

P. VANDENEYNDE Yuniit Solutions Baron Rusettelaan 240 8310 Assebroek 050 35 29 99 info@yuniit.be

JEROEN DE BLOCK

25


Dagelijks stageverslag 2.6.2

Dag 2

2.6.2.1 Activiteiten

9.00 – 11.00

Herstellen van 3 pc’s

11.00 – 11.30

Tellen stock

10.30 – 12.30

Beginnen installeren van Microsoft Lync op een Windows Server 2008. Pauze

12.30 – 13.30 13.30 – 17.30

Herinstalleren van Windows Vista + recovery data van oude Windows Vista

2.6.2.2 Verslag

Nadat ik samen met mijn stagebegeleider de binnengebrachte pc's gerepareerd had, kreeg ik de opdracht om Lync te installeren op een Windows 2008 server. Er waren veel moeilijkheden, het programma wilde bijvoorbeeld de gebruikers uit de Active Directory niet weergeven, waar ook mijn stagebegeleider geen antwoord op wist. De rest van de dag heb ik me vooral beziggehouden met het opzoeken van informatie om deze problemen op te lossen

P. VANDENEYNDE Yuniit Solutions Baron Rusettelaan 240 8310 Assebroek 050 35 29 99 info@yuniit.be

JEROEN DE BLOCK

26


Dagelijks stageverslag 2.6.3

Dag 3

2.6.3.1 Activiteiten

9.00 – 11.30

Installatie van een computer + verder werken installatie van Microsoft Lync

11.30 – 12.30

UPS installeren bij klant

12.30 – 13.30 13.30 – 17.30

Pauze Installatie + configuratie Microsoft Lync

2.6.3.2 Verslag

Vandaag heb ik me vooral beziggehouden met het opzoeken van informatie over het programma Microsoft Lync. Bij de installatie traden er meerdere problemen op waarop ook mijn stagebegeleider geen antwoord kon geven.Zo bijvoorbeeld accepteerde de server de certificaten van de Certified Authority niet. Dit is nodig zodat de computer rechten krijgt om gebruikers uit de Active Directory op te vragen. We zijn ook een UPS (Uninterruptible power supply) gaan installeren bij een klant, maar in feite waren dat gewoon een paar kabels die je er in moest steken. Het zorgt ervoor dat wanneer er een stroompanne is, dat de server toch op een correcte manier kan afsluiten.

P. VANDENEYNDE Yuniit Solutions Baron Rusettelaan 240 8310 Assebroek 050 35 29 99 info@yuniit.be

JEROEN DE BLOCK

27


Dagelijks stageverslag 2.6.4

Dag 4

2.6.4.1 Activiteiten

9.00 – 12.30

Informatie zoeken en configureren van Lync server en clients

11.30 – 12.30

Pauze

14.00 – 15.30

Informatie zoeken en configureren Lync server en client Informatie opzoeken over potentiële klanten van Cloudcom

15.30 – 16.30 16.30 – 17.00

Configureren Lync server

2.6.4.2 Verslag

Vandaag heb ik me vooral beziggehouden met het opzoeken van informatie om Microsoft Lync te installeren. Dit is een communicatieprogramma waarmee je bijvoorbeeld een telefooncentrale kan configureren. Ik heb meestal alleen gewerkt, maar ik kon altijd bij mijn stagebegeleider terecht voor vragen, bijvoorbeeld over hoe het netwerk was beveiligd. Daarna heb ik Lync op de clients geïnstalleerd en manueel geconfigureerd. Omdat ze bijna allemaal domain administrators waren, moest je ze toevoegen aan Lync door middel van een powershell commando.

P. VANDENEYNDE Yuniit Solutions Baron Rusettelaan 240 8310 Assebroek 050 35 29 99 info@yuniit.be

JEROEN DE BLOCK

28


Dagelijks stageverslag 2.6.5

Dag 5

2.6.5.1 Activiteiten

9.00 – 10.00

Laatste afstellingen Lync

10.00 – 12.30

Opzoeken waarom time synchronisatie niet werkt

12.30 – 14.00 14.00 – 17.20

Pauze Opzoeken waarom time synchronisatie niet werkt + installeren Windows op nieuwe pc’s.

2.6.5.2 Verslag

Vandaag heb ik lync ongeveer afgewerkt. Daarna ben ik beginnen opzoeken waarom een bepaalde server (Windows server 2008 R2) geen tijd synchronisatie met een internet ntp server deed. Dit is een cruciale stap bij het encrypteren van wachtwoorden. We hebben nog geen oplossing gevonden.

P. VANDENEYNDE Yuniit Solutions Baron Rusettelaan 240 8310 Assebroek 050 35 29 99 info@yuniit.be

JEROEN DE BLOCK

29


Dagelijks stageverslag 2.6.6

Dag 6

2.6.6.1 Activiteiten

9.00 – 10.00

Herstellen van laptop

10.00 – 12.00

Installeren van laptop bij klant in Knokke

12.00 – 14.00

Pauze

14.00 – 16.00 16.00 – 17.30

Herstellen van computer + data recovery Installatie 2 laptops

2.6.6.2 Verslag

Vandaag heb ik me vooral beziggehouden met het formatteren en herïnstalleren van computers. Omdat ik dit al kon was het een nogal oninteressant werk. In de voormiddag zijn we een laptop gaan installeren bij een klant in Knokke. In de namiddag heb ik een computer hersteld nadat hij verkeerd was afgesloten na een update. Ik heb ook twee computers klaargemaakt voor verkoop.

P. VANDENEYNDE Yuniit Solutions Baron Rusettelaan 240 8310 Assebroek 050 35 29 99 info@yuniit.be

JEROEN DE BLOCK

30


Dagelijks stageverslag 2.6.7

Dag 7

2.6.7.1 Activiteiten

9.00 – 11.30

Informatie zoeken over SQL server en certificaten

11.30 – 12.30

Herstellen van laptop

12.30 – 14.00 14.30 – 17.30

Pauze Informatie zoeken over SQL server en certificaten

2.6.7.2 Verslag

Vandaag heb ik vooral informatie opgezocht over de SQL server van een klant en hoe je de servers moet beveiligen door middel van certificaten. Verder heb ik ook een laptop proberen te herstellen, maar dat lukte niet omdat de grafische kaart of het moederbord kapot was. Dan heb ik een halfuur moeten bellen met Hewlett-Packard om ze te overtuigen dat het binnen de garantie viel.

P. VANDENEYNDE Yuniit Solutions Baron Rusettelaan 240 8310 Assebroek 050 35 29 99 info@yuniit.be

JEROEN DE BLOCK

31


Dagelijks stageverslag 2.6.8

Dag 8

2.6.8.1 Activiteiten

9.00 – 12.30

Opzoeken over sql-database beveiligingen

12.30 – 14.30

Pauze

14.30 – 17.30

Opzoeken over sql-database beveiligingen

2.6.8.2 Verslag

Vandaag heb ik informatie opgezocht over sql-database beveiligingen. Ik heb ze nog niet kunnen uitproberen omdat de server waar hun SQL database opstaat niet mocht crashen. Dit is een soort databank die je met specifieke commando’s kan aanspreken.

P. VANDENEYNDE Yuniit Solutions Baron Rusettelaan 240 8310 Assebroek 050 35 29 99 info@yuniit.be

JEROEN DE BLOCK

32


Dagelijks stageverslag 2.6.9

Dag 9

2.6.9.1 Activiteiten

9.00 – 12.30

opzoeken info + beveiligen van sql server

12.30 – 14.00

Pauze

14.00 – 16.00

Proberen de SQL server te hacken

16.00 – 17.00

Proberen computer te herstellen en bestanden over te zetten van een fat 16 hdd

2.6.9.2 Verslag

Vandaag heb ik nog een beetje informatie over het beveiligen van de sql-server van een klant opgezocht. Dan hebben we hem beveiligd. In de namiddag moest ik proberen de server te hacken, en de beveiliging indien nodig aan te passen. Dit leek eerst een leuke opdracht, maar niets wat ik probeerde werkte. Daarna hebben we geprobeerd data te recoveren van een FAT 16 (indelingstype van data) harde schijf die kapot was. Het is ons nog niet gelukt.

P. VANDENEYNDE Yuniit Solutions Baron Rusettelaan 240 8310 Assebroek 050 35 29 99 info@yuniit.be

JEROEN DE BLOCK

33


Dagelijks stageverslag 2.6.10 Dag 10 2.6.10.1 Activiteiten

9.00 – 10.00

Herstellen van 2 laptops

10.00 – 12.30

Pauze

12.30 – 17.00

Proberen data van harde schijf terug te recoveren Afscheid nemen

17.00 – 17.30 2.6.10.2 Verslag

Vandaag hebben we ons vooral beziggehouden om een DOS-programma van een oude harde schijf te halen. De harde schijf was corrupt en moest geformatteerd worden. Na het formatteren mijn stagebegeleider en ik geprobeerd de data te recupereren via het data recovery programma Recover My Files. Maar na het terughalen van het programma bleek dat het database bestandje was verdwenen. Mijn stagebegeleider en ik hebben het nog niet teruggevonden.

P. VANDENEYNDE Yuniit Solutions Baron Rusettelaan 240 8310 Assebroek 050 35 29 99 info@yuniit.be

JEROEN DE BLOCK

34


3

Het bouwen van een statische website

3.1

Inleiding

Ik heb ervoor gekozen om een website te maken voor fietsen AndrĂŠ, waar ik vroeger een vakantiejob heb gedaan.

3.2

Index

35


3.3

Verhuur

3.4

Verkoop

36


3.5

Herstellingen

3.6

Over Ons

37


4

Informaticaproject

4.1

Probleemstelling

4.1.1

Probleemstelling

Onze opdracht bestaat eruit een programma voor de brandweer van Oostkamp te maken. Dit programma bevat een database van ongeveer 60 vrijwilligers van wie we bepaalde eigenschappen bijhouden zoals opleiding en gekende procedures. Via het programma moeten gegevens uitgelezen, toegevoegd en veranderd kunnen worden. En dit met een duidelijke en efficiënte gebruikersinterface. Er moet ook een controle zijn op wie de data mag uitlezen, dit a.d.h.v. een inlogsysteem. Vanuit het programma moeten ook op een simpele manier de gegevens kunnen worden afgedrukt. 4.1.2

Vragen en antwoorden

Voor we begonnen met programeren waren er natuurlijk een heleboel vragen. Hierbij mochten we terecht bij onze informaticaleerkracht meneer Berens. Moeten de behaalde opleidingen van de brandweermannen en procedures in een combobox (alfabetisch) verschijnen zodat de gebruiker deze enkel heeft aan te klikken? Hierbij eventueel de mogelijkheid om items toe te voegen aan de combobox. Dit leek me gebruiksvriendelijker en efficiënter voor de gebruiker. Dat is een goed idee. Als "beveiliging", is het voldoende de gebruikers en wachtwoorden op te slaan in een database (echt veilig lijkt dit me niet)? Ja je kunt de databank dan nog altijd beveiligen. Wie (gebruiker) mag de gegevens opvragen? Enkel de hoogste persoon in de hiërarchie? Of mogen alle mensen gegevens opvragen (dit dan wel enkel van personen die een lagere functie hebben dan de gebruiker zelf). De officieren en opleidingsverantwoordelijken mogen alles bekijken enkel de brandweermannen mogen enkel hun eigen dossier bekijken. Wat zijn al de mogelijke functies (bv.: officier, dienstchef) en deze dan in hiërarchische volgorde? dienstchef-kapitein luitenant (officier) adjudant 1e sergeant sergeant

38


korporaal brandweerman Moeten het programma uit 2 delen bestaan (één deel voor aanpassingen in de database, en één deel waar enkel gegevens kunnen worden opgevraagd en afgeprint) Ja dat mag. Zijn er voorkeuren voor de lay-out van zowel het programma als van wat uitgeprint wordt (bv. logo van de brandweer, themakleuren...)? Wat brandweerachtig is leuker dan gewoon grijs Wordt van elke persoon een tijdsverloop bijgehouden of worden de gegevens overschreven zodat alleen de laatste gegevens zichtbaar zijn? Mogen gegevens na zoveel jaar zomaar verwijderd worden? Er moet een evolutie zichtbaar zijn maar de meest recente gegevens moeten direct opvraagbaar zijn.Deze gegevens moeten altijd bijgehouden blijven.

4.2

Aanmelden

4.2.1

Screenshot

4.2.2 Besturingselementen Object

Eigenschap

Waarde

txtGebruiker txtPaswoord

Tekst Tekst

Gebruikersnaam intypen. Paswoord intypen.

lblFout

Tekst

Foutmelding bij verkeerd paswoord.

Object

Gebeurtenis

Waarde

btnLogin

Click

4.2.3

Procedure Indien beheerder 39


doorgaan naar beheerder homepage •

4.2.4

Indien gebruiker doorgaan naar gebruikers homepage

Code

Partial Class Account_Login Inherits System.Web.UI.Page Protected Sub LoginButton_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles LoginButton.Click 'Declareren van de variabelen Dim intGebruiker As Integer Dim strWachtwoord As String 'De datasources updaten met inhoud van tekstbox dtsGebruiker.DataBind() dtsWachtwoord.DataBind() 'Gebruikersnaam (=ImmatriculatieNr) uit Database halen Dim gvGebruiker As New GridView gvGebruiker.DataSource = dtsGebruiker gvGebruiker.DataBind() 'Indien de gebruiker bestaat intGebruiker vullen Try intGebruiker = CInt(gvGebruiker.Rows(0).Cells(0).Text.ToString) Catch End Try 'Wachtwoord uit Database halen Dim gvWachtwoord As New GridView gvWachtwoord.DataSource = dtsWachtwoord gvWachtwoord.DataBind() 'Indien wachtwoord bestaat strWachtwoord opvullen Try strWachtwoord = gvWachtwoord.Rows(0).Cells(0).Text.ToString Catch End Try

'Indien de wachtwoorden en gebruikersnamen overeenkomen aanmelden, anders foutmelding If txtGebruiker.Text = "Beheerder" And txtPasswoord.Text = "Eindwerk2011" Then FormsAuthentication.RedirectFromLoginPage(txtGebruiker.Text, False) Response.Redirect("Beheerder/Default.aspx") ElseIf CInt(txtGebruiker.Text) = intGebruiker And txtPasswoord.Text = strWachtwoord Then FormsAuthentication.RedirectFromLoginPage(CStr(txtGebruiker.Text), False) Response.Redirect("Gebruiker/Default.aspx") Else lblFout.Text = "Verkeerde Gebruikersnaam of Passwoord" End If End Sub

40


End Class

4.2.5

Opmaakcode

<%@ Page Title="Log In" Language="VB" MasterPageFile="Sitemaster Login.master" AutoEventWireup="false" CodeFile="Login.aspx.vb" Inherits="Account_Login" %> <asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> </asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">

<div class="accountInfo"> <fieldset class="login"> <legend>Account Informatie</legend> <p> <asp:Label ID="lblGebruiker" runat="server" Text="Gebruiker"></asp:Label> <asp:TextBox ID="txtGebruiker" runat="server" CssClass="textEntry"></asp:TextBox> </p> <p> <asp:Label ID="lblPasswoord" runat="server" Text="Wachtwoord"></asp:Label> <asp:TextBox ID="txtPasswoord" runat="server" CssClass="passwordEntry" TextMode="Password"></asp:TextBox> </p> </fieldset> <p class="submitButton"> <asp:Button ID="LoginButton" runat="server" CommandName="Login" Text="Log In" ValidationGroup="LoginUserValidationGroup" style="width: 53px; "/> </p> <asp:Label ID="lblFout" runat="server" ForeColor="Red"></asp:Label> <asp:SqlDataSource ID="dtsGebruiker" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT [ImmatriculatieNr] FROM [BPFtblBrandweerman] WHERE ([ImmatriculatieNr] = ?)"> <SelectParameters> <asp:ControlParameter ControlID="txtGebruiker" Name="ImmatriculatieNr" PropertyName="Text" Type="String" /> </SelectParameters> </asp:SqlDataSource> <asp:SqlDataSource ID="dtsWachtwoord" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT [Wachtwoord] FROM [BPFtblBrandweerman] WHERE ([Wachtwoord] = ?)"> <SelectParameters> <asp:ControlParameter ControlID="txtPasswoord" Name="Wachtwoord" PropertyName="Text" Type="String" /> </SelectParameters> </asp:SqlDataSource> <br />

41


</div>

</asp:Content>

4.2.6

Web.config

<?xml version="1.0"?> <!-For more information on how to configure your ASP.NET application, please visit http://go.microsoft.com/fwlink/?LinkId=169433 --> <configuration> <connectionStrings> <add name="cnnBrandweer" connectionString="Provider=SQLOLEDB.1;Data Source=www.sintjozefbrugge.be;Persist Security Info=True;Password=6ibbiSchool;User ID=gebruiker" providerName="System.Data.OleDb" /> </connectionStrings> <system.web> <authentication mode="Forms" > <forms name=".ASPXAUTH" loginUrl="Login.aspx" /> </authentication> <compilation debug="true" strict="false" explicit="true" targetFramework="4.0"/> </system.web> </configuration>

42


4.3

Beheerder

Gebruiker: Beheerder Wachtwoord: Eindwerk2011 4.3.1

Default

4.3.1.1 Screenshot

4.3.1.2 Code Partial Class _Default Inherits System.Web.UI.Page End Class

4.3.1.3 Opmaak code <%@ Page Title="Home Page" Language="VB" MasterPageFile="Site.Master" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %> <asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> </asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> <p> Welkom op de administrator site,<br /> Hier kunt u gegevens toevoegen, aanpassen en verwijderen.</p> </asp:Content>

43


4.3.2

Brandweerman

4.3.2.1 Screenshot

4.3.2.2 Besturingselementen

Object cboItem

Eigenschap Items

txtWaarde

Tekst

gvBrandweerman

Waarde Waarden waarop je kunt zoeken Waarde om te zoeken Brandweermannen die voldoen aan de zoekcriteria Details over geselecteerde brandweerman, mogelijkheid om nieuwe toe te voegen

dvBrandweerman

gvBrevetten

Brevetten voor geselecteerde brandweerman

gvSpecialisaties

Specialisaties voor geselecteerde branweerman

txtVoegToeBrev

Tekst

Naam van het toe te voegen brevet Naam van de toe te voegen specialisatie

txtSpecialisatie

Tekst

dtsBrandweerman

Select SQL

Sql van de te selecteren brandweermannen

dtsBrevetten

Select SQL

Sql van de brevetten van de gekozen brandweerman 44


dtsSpecialisaties

Select SQL

Sql van de specialisaties van de gekozen brandweerman

Object

Gebeurtenis

Waarde

btnZoek

Click

Geef de brandweermannen met de gevraagde waarde weer

btnVoegToeBrev

Click

Voeg het brevet toe met de waarde van txtVoegToeBrev

btnVoegToeSpec

Click

Voeg de specialisatie toe met waarde txtSpecialisatie

4.3.2.3 Procedure

4.3.2.4 Code Partial Class _Default Inherits System.Web.UI.Page Protected Sub btnZoek_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnZoek.Click 'SQL commando en parameters toekennen Dim filterExpression As String = cboItem.SelectedValue + " LIKE '%" & txtWaarde.Text & "%'" Dim filterparameters As String = "txtWaarde.Text" 'Filter Toepassen dtsBrandweerman.FilterParameters.Clear() dtsBrandweerman.FilterExpression = filterExpression gvBrandweerman.DataBind() 'Indien geen resultaten -> waarschuwing in label If Me.gvBrandweerman.Rows.Count = 0 Then lblGeenWaarde.Text = "Er zijn geen resultaten met opgegeven zoekwaarden" End If End Sub Protected Sub dvBrandweerman_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles dvBrandweerman.PreRender 'Indien er geen entry's zijn in dvBrandweerman, modus veranderen in "insert" If dvBrandweerman.DataItemCount = 0 Then dvBrandweerman.ChangeMode(FormViewMode.Insert) End If End Sub Protected Sub gvBrandweerman_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles gvBrandweerman.SelectedIndexChanged 'Declareren variabele Dim strGeselecteerde As String 'Toekennen geselecteerde brandweerman aan variabele strGeselecteerde = "Geselecteerd: " & gvBrandweerman.SelectedRow.Cells(2).Text.ToString & " " & gvBrandweerman.SelectedRow.Cells(3).Text.ToString & "." 'ImmatriculatieNr in textbox zetten (als control te gebruiken bij WHERE (dts)) txtImmatriculatieNr.Text = gvBrandweerman.SelectedRow.Cells(1).Text 'Gepaste panels tonen/verbergen

45


pnlVoegBrevetToe.Visible = True pnlVoegSpecToe.Visible = True 'Info aanpassen naar geselecteerde brandweerman (naam, voornaam) lblInfo.Text = strGeselecteerde.ToString End Sub Protected Sub btnVoegToeBrev_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnVoegToeBrev.Click 'Declareren variabele Dim strSQLINSERT As String 'SQL insert commando genereren strSQLINSERT = "INSERT INTO BPFtblBrevetten(Id, Brevet) VALUES('" & txtImmatriculatieNr.Text.ToString & "', '" & txtBrevet.Text.ToString & "')" 'Toekennen SQL commando en uitvoeren "INSERT" dtsBrevetten.InsertCommand = strSQLINSERT dtsBrevetten.Insert() End Sub Protected Sub btnVoegToeSpec_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnVoegToeSpec.Click 'Declareren variabele Dim strSQLINSERT As String 'SQL insert commando genereren strSQLINSERT = "INSERT INTO BPFtblSpecialisatie(Id, Specialisatie) VALUES('" & txtImmatriculatieNr.Text.ToString & "', '" & txtSpecialisatie.Text.ToString & "')" 'Toekennen SQL commando en uitvoeren "INSERT" dtsSpecialisaties.InsertCommand = strSQLINSERT dtsSpecialisaties.Insert() End Sub

End Class

46


4.3.2.5 Opmaakcode <%@ Page Title="Brandweerman" Language="VB" MasterPageFile="~/Beheerder/Site.Master" AutoEventWireup="false" CodeFile="Brandweerman.aspx.vb" Inherits="_Default" %> <asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> <style type="text/css"> .style2 { height: 23px; width: 154px; } .style1 { height: 23px; } .style4 { width: 214px; height: 346px; } .style6 { width: 193px; height: 346px; } </style> </asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> Brandweermannen<br /> <br /> <table style="width:43%;" border="solid 1px black" frame="box"> <tr> <td class="style2"> <asp:DropDownList ID="cboItem" runat="server"> <asp:ListItem Value="ImmatriculatieNr">Immatriculatie Nr</asp:ListItem> <asp:ListItem>Naam</asp:ListItem> <asp:ListItem>Voornaam</asp:ListItem> <asp:ListItem Value="BehaaldBrevet">Behaald Brevet</asp:ListItem> <asp:ListItem>Functie</asp:ListItem> <asp:ListItem>Specialisatie</asp:ListItem> </asp:DropDownList> </td> <td class="style1"> <asp:TextBox ID="txtWaarde" runat="server" style="margin-left: 0px"></asp:TextBox>  <asp:Button ID="btnZoek" runat="server" Text="Zoek" /> </td> </tr> </table> <asp:Label ID="lblGeenWaarde" runat="server"></asp:Label> <br /> <table style="width:100%;"> <tr> <td class="style6" valign="top"> <asp:GridView ID="gvBrandweerman" runat="server"

47


AutoGenerateColumns="False" CellPadding="4" DataSourceID="dtsBrandweerman" ForeColor="#333333" GridLines="None" AllowPaging="True"> <AlternatingRowStyle BackColor="White" /> <Columns> <asp:BoundField DataField="ImmatriculatieNr" HeaderText="ImmatriculatieNr" SortExpression="ImmatriculatieNr" /> <asp:BoundField DataField="Naam" HeaderText="Naam" SortExpression="Naam" /> <asp:BoundField DataField="Voornaam" HeaderText="Voornaam" SortExpression="Voornaam" /> <asp:BoundField DataField="Functie" HeaderText="Functie" SortExpression="Functie" /> <asp:BoundField DataField="Wachtwoord" HeaderText="Wachtwoord" SortExpression="Wachtwoord" /> </Columns> <FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /> <HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" /> <RowStyle BackColor="#FFFBD6" ForeColor="#333333" /> <SelectedRowStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="Navy" /> <SortedAscendingCellStyle BackColor="#FDF5AC" /> <SortedAscendingHeaderStyle BackColor="#4D0000" /> <SortedDescendingCellStyle BackColor="#FCF6C0" /> <SortedDescendingHeaderStyle BackColor="#820000" /> </asp:GridView> <asp:SqlDataSource ID="dtsBrandweerman" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT * FROM [BPFtblBrandweerman]" OldValuesParameterFormatString="original_{0}"> </asp:SqlDataSource>

<br />

<asp:TextBox ID="txtImmatriculatieNr" runat="server" Visible="False"></asp:TextBox> <asp:DetailsView ID="dvBrandweerman" runat="server" AutoGenerateRows="False" DataSourceID="dtsBrandweerman" Height="50px" Width="125px"> <Fields> <asp:BoundField DataField="ImmatriculatieNr" HeaderText="ImmatriculatieNr" SortExpression="ImmatriculatieNr" /> <asp:BoundField DataField="Naam" HeaderText="Naam" SortExpression="Naam" /> <asp:BoundField DataField="Voornaam" HeaderText="Voornaam" SortExpression="Voornaam" />

48


<asp:BoundField DataField="Functie" HeaderText="Functie" SortExpression="Functie" /> <asp:BoundField DataField="Wachtwoord" HeaderText="Wachtwoord" SortExpression="Wachtwoord" /> </Fields> </asp:DetailsView>

</td> <td class="style4" valign="top"> <asp:Label ID="lblInfo" runat="server" ForeColor="Red" Text="Selecteer een brandweerman om de Brevetten en Specialisaties te zien."></asp:Label> <br /> <asp:GridView ID="gvBrevetten" runat="server" AutoGenerateColumns="False" CellPadding="4" DataSourceID="dtsBrevetten" ForeColor="#333333" GridLines="None"> <AlternatingRowStyle BackColor="White" /> <Columns> <asp:BoundField DataField="Brevet" HeaderText="Brevet" SortExpression="Brevet" /> </Columns> <FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /> <HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" /> <RowStyle BackColor="#FFFBD6" ForeColor="#333333" /> <SelectedRowStyle BackColor="#FFCC66" FontBold="True" ForeColor="Navy" /> <SortedAscendingCellStyle BackColor="#FDF5AC" /> <SortedAscendingHeaderStyle BackColor="#4D0000" /> <SortedDescendingCellStyle BackColor="#FCF6C0" /> <SortedDescendingHeaderStyle BackColor="#820000" /> </asp:GridView> <asp:SqlDataSource ID="dtsBrevetten" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT [Id], [Brevet] FROM [BPFtblBrevetten] WHERE ([Id] = ?)"> <SelectParameters> <asp:ControlParameter ControlID="txtImmatriculatieNr" Name="Id" PropertyName="Text" Type="String" /> </SelectParameters> </asp:SqlDataSource> <br />

49


<asp:Panel ID="pnlVoegBrevetToe" runat="server" Visible="False"> <asp:TextBox ID="txtBrevet" runat="server"></asp:TextBox> <br /> <asp:Button ID="btnVoegToeBrev" runat="server" Text="Voeg brevet toe" /> </asp:Panel> <br /> <asp:GridView ID="gvSpecialisaties" runat="server" AutoGenerateColumns="False" CellPadding="4" DataSourceID="dtsSpecialisaties" ForeColor="#333333" GridLines="None"> <AlternatingRowStyle BackColor="White" /> <Columns> <asp:BoundField DataField="Specialisatie" HeaderText="Specialisatie" SortExpression="Specialisatie" /> </Columns> <FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /> <HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" /> <RowStyle BackColor="#FFFBD6" ForeColor="#333333" /> <SelectedRowStyle BackColor="#FFCC66" FontBold="True" ForeColor="Navy" /> <SortedAscendingCellStyle BackColor="#FDF5AC" /> <SortedAscendingHeaderStyle BackColor="#4D0000" /> <SortedDescendingCellStyle BackColor="#FCF6C0" /> <SortedDescendingHeaderStyle BackColor="#820000" /> </asp:GridView> <asp:SqlDataSource ID="dtsSpecialisaties" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT [Id], [Specialisatie] FROM [BPFtblSpecialisatie] WHERE ([Id] = ?)"> <SelectParameters> <asp:ControlParameter ControlID="txtImmatriculatieNr" Name="Id" PropertyName="Text" Type="String" /> </SelectParameters> </asp:SqlDataSource> <br /> <asp:Panel ID="pnlVoegSpecToe" runat="server" Visible="False"> <asp:TextBox ID="txtSpecialisatie" runat="server"></asp:TextBox> <br /> <asp:Button ID="btnVoegToeSpec" runat="server" Text="Voeg specialisatie toe" /> </asp:Panel> <br /> <br />

50


</td> </tr> </table> <br /> <br /> <br />

</asp:Content>

4.3.3

Oefenkaart

4.3.3.1 Screenshot

4.3.3.2 Besturingselementen

Object dvOefenkaarten

Eigenschap

Waarde Oefenkaarten met de gezochte criteria Criteria voor oefenkaart uit dvOefenkaarten

txtCriteria

Tekst

Naam van het nieuwe criterium

txtKaartNr

Tekst

Grootste kaartnummer verkregen uit dtsGrootsteGetal

dtsGrootsteGetal

Select SQL

Grootste KaartNr uit tblOefenkaarten

dtsOefenkaarten

Select SQL

Sql om alle oefenkaarten uit tblOefenkaarten te halen

gvCriteria

51


dtsCriteria

Select SQL

Bevat de Criteria van de oefenkaart uit dvOefenkaarten

Object

Gebeurtenis

Waarde

btnVoegToe

Click

Voeg de criteria toe met de waarde txtCriteria

btnPrint

Click

Stuurt door naar de print pagina

4.3.3.3 Procedure

4.3.3.4 Code Partial Class _Default Inherits System.Web.UI.Page Protected Sub dvOefenkaarten_DataBound(ByVal sender As Object, ByVal e As System.EventArgs) Handles dvOefenkaarten.DataBound 'txtKaartNr Opvullen indien er een entry is in dvOefenkaarten Try txtKaartNr.Text = dvOefenkaarten.Rows(0).Cells(1).Text dtsCriteria.DataBind() gvCriteria.DataBind() Catch ex As Exception End Try End Sub

Protected Sub dvOefenkaarten_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles dvOefenkaarten.PreRender 'Als er geen items in de database zitten -> insert weergave If dvOefenkaarten.DataItemCount = 0 Then dvOefenkaarten.ChangeMode(FormViewMode.Insert) End If End Sub

Protected Sub btnVoegToe_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnVoegToe.Click 'CriteriaNr genereren adhv max (sql in dts) Dim intGetal As Integer intGetal = 0 Dim gv As New GridView gv.DataSource = dtsGrootsteGetal gv.DataBind() Try intGetal = gv.Rows(0).Cells(0).Text Catch ex As Exception End Try

'SQL insert commando: genereren, toekennen en uitvoeren Dim strInsert As String strInsert = "INSERT INTO BPFtblCriteria (CriteriaNr, Beschrijving, KaartNr) VALUES ('" & intGetal + 1 & "', '" & TextBox1.Text.ToString & "', '" & txtKaartNr.Text & "')" dtsCriteria.InsertCommand = strInsert

52


dtsCriteria.Insert() 'Textbox leegmaken TextBox1.Text = ""

End Sub Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 'txtKaartnr opvullen indien er een entry is in dvOefenkaarten Try txtKaartNr.Text = dvOefenkaarten.Rows(0).Cells(1).Text Catch End Try End Sub

Protected Sub btnPrint_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnPrint.Click 'Doorverwijzen naar Printen.aspx Response.Redirect("..\Printen.aspx") End Sub End Class

53


4.3.3.5 Opmaakcode <%@ Page Title="Brandweerman" Language="VB" MasterPageFile="~/Beheerder/Site.Master" AutoEventWireup="false" CodeFile="Oefenkaarten.aspx.vb" Inherits="_Default" %> <asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> <style type="text/css"> .style1 { width: 339px; } </style> </asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> Oefenkaarten <br /> <asp:Panel ID="pnlBewerkenVerwijderen" runat="server"> <p> </p> <table style="width:100%;"> <tr> <td class="style1" valign="top"> Oefenkaart:<br /> <asp:DetailsView ID="dvOefenkaarten" runat="server" AllowPaging="True" AutoGenerateRows="False" DataKeyNames="KaartNr" DataSourceID="dtsOefenkaarten" Height="50px" Width="125px"> <Fields> <asp:BoundField DataField="KaartNr" HeaderText="KaartNr" SortExpression="KaartNr" ReadOnly="True" /> <asp:BoundField DataField="Onderwerp" HeaderText="Onderwerp" SortExpression="Onderwerp" /> <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" ShowInsertButton="True" /> </Fields> </asp:DetailsView> <br /> <br /> <asp:SqlDataSource ID="dtsOefenkaarten" runat="server" ConflictDetection="CompareAllValues" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" DeleteCommand="DELETE FROM [BPFtblOefenkaarten] WHERE [KaartNr] = ? AND (([CriteriaNr] = ?) OR ([CriteriaNr] IS NULL AND ? IS NULL)) AND (([Onderwerp] = ?) OR ([Onderwerp] IS NULL AND ? IS NULL))" InsertCommand="INSERT INTO [BPFtblOefenkaarten] ([KaartNr], [CriteriaNr], [Onderwerp]) VALUES (?, ?, ?)" OldValuesParameterFormatString="original_{0}" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT * FROM [BPFtblOefenkaarten]"

54


UpdateCommand="UPDATE [BPFtblOefenkaarten] SET [CriteriaNr] = ?, [Onderwerp] = ? WHERE [KaartNr] = ? AND (([CriteriaNr] = ?) OR ([CriteriaNr] IS NULL AND ? IS NULL)) AND (([Onderwerp] = ?) OR ([Onderwerp] IS NULL AND ? IS NULL))"> <DeleteParameters> <asp:Parameter Name="original_KaartNr" Type="String" /> <asp:Parameter Name="original_CriteriaNr" Type="Int32" /> <asp:Parameter Name="original_CriteriaNr" Type="Int32" /> <asp:Parameter Name="original_Onderwerp" Type="String" /> <asp:Parameter Name="original_Onderwerp" Type="String" /> </DeleteParameters> <InsertParameters> <asp:Parameter Name="KaartNr" Type="String" /> <asp:Parameter Name="CriteriaNr" Type="Int32" /> <asp:Parameter Name="Onderwerp" Type="String" /> </InsertParameters> <UpdateParameters> <asp:Parameter Name="CriteriaNr" Type="Int32" /> <asp:Parameter Name="Onderwerp" Type="String" /> <asp:Parameter Name="original_KaartNr" Type="String" /> <asp:Parameter Name="original_CriteriaNr" Type="Int32" /> <asp:Parameter Name="original_CriteriaNr" Type="Int32" /> <asp:Parameter Name="original_Onderwerp" Type="String" /> <asp:Parameter Name="original_Onderwerp" Type="String" /> </UpdateParameters> </asp:SqlDataSource> </td> <td style="text-align: left" valign="top"> <asp:GridView ID="gvCriteria" runat="server" AutoGenerateColumns="False" CellPadding="4" DataKeyNames="CriteriaNr" DataSourceID="dtsCriteria" ForeColor="#333333" GridLines="None"> <AlternatingRowStyle BackColor="White" /> <Columns> <asp:BoundField DataField="Beschrijving" HeaderText="Criteria" SortExpression="Beschrijving" /> <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" /> </Columns> <FooterStyle BackColor="#990000" FontBold="True" ForeColor="White" /> <HeaderStyle BackColor="#990000" FontBold="True" ForeColor="White" />

55


<PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" /> <RowStyle BackColor="#FFFBD6" ForeColor="#333333" /> <SelectedRowStyle BackColor="#FFCC66" FontBold="True" ForeColor="Navy" /> <SortedAscendingCellStyle BackColor="#FDF5AC" /> <SortedAscendingHeaderStyle BackColor="#4D0000" /> <SortedDescendingCellStyle BackColor="#FCF6C0" /> <SortedDescendingHeaderStyle BackColor="#820000" /> </asp:GridView> <asp:SqlDataSource ID="dtsCriteria" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" DeleteCommand="DELETE FROM [BPFtblCriteria] WHERE [CriteriaNr] = ?" InsertCommand="INSERT INTO [BPFtblCriteria] ([CriteriaNr], [KaartNr], [Beschrijving]) VALUES (?, ?, ?)" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT * FROM [BPFtblCriteria] WHERE ([KaartNr] = ?)"

[KaartNr] = ?,

UpdateCommand="UPDATE [BPFtblCriteria] SET [Beschrijving] = ? WHERE [CriteriaNr] = ?"> <DeleteParameters> <asp:Parameter Name="CriteriaNr"

Type="Int32" /> </DeleteParameters> <InsertParameters> <asp:Parameter Name="CriteriaNr" Type="Int32" /> <asp:Parameter Name="KaartNr" Type="String" /> <asp:Parameter Name="Beschrijving" Type="String" /> </InsertParameters> <SelectParameters> <asp:ControlParameter ControlID="txtKaartNr" Name="KaartNr" PropertyName="Text" Type="String" /> </SelectParameters> <UpdateParameters> <asp:Parameter Name="KaartNr" Type="String" /> <asp:Parameter Name="Beschrijving" Type="String" /> <asp:Parameter Name="CriteriaNr" Type="Int32" /> </UpdateParameters> </asp:SqlDataSource> <br /> Een nieuw Criterium toevoegen<br /> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <br /> <br />

56


<asp:Button ID="btnVoegToe" runat="server" Text="Opslaan" /> <br /> <asp:TextBox ID="txtKaartNr" runat="server" Visible="False"></asp:TextBox> <br /> </td> </tr> </table> <br /> <asp:Button ID="btnPrint" runat="server" Text="Print Oefeningkaart" />     <asp:SqlDataSource ID="dtsGrootsteGetal" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT MAX(CriteriaNr) FROM BPFtblCriteria;"> </asp:SqlDataSource> <br /> </asp:Panel> <br /> <br /> <br />

</asp:Content>

57


4.3.4

Print Oefenkaart

4.3.4.1 Screenshot

4.3.4.2 Besturingselementen

Object

Eigenschap

Waarde

cboKaart dtsKaart

Items Select SQL

lblKaart

Text

Alle oefenkaarten (naam) Sql om alle waarden uit tblOefenkaarten te halen Geselecteerde kaartnummer uit cboKaart

gvCriteria dtsCriteria

Alle Criteria per geselecteerde oefenkaart (cboKaart) Select SQL

Sql om alle Criteria voor de geselecteerde oefenkaart uit tblCriteria te halen

Gebeurtenis Click

Waarde Print de pagina

4.3.4.3 Procedure

Object btnPrint

4.3.4.4 Code Partial Class Printen Inherits System.Web.UI.Page Protected Sub btnPrint_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnPrint.Click 'Alles verbergen wat niet afgedrukt moet worden lblKaartNr.Text = "Kaart nr.: " & cboKaart.SelectedItem.Text pnlWeg.Visible = False btnPrint.Visible = False 'Afdrukken Response.Write("<script language=javascript>window.print();</script>") End Sub End Class

58


4.3.4.5 Opmaak Code <%@ Page Language="VB" AutoEventWireup="false" CodeFile="Printen.aspx.vb" Inherits="Printen" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <asp:Panel ID="pnlWeg" runat="server"> <asp:DropDownList ID="cboKaart" runat="server" DataSourceID="dtsKaart" DataTextField="KaartNr" DataValueField="KaartNr"> </asp:DropDownList> <asp:SqlDataSource ID="dtsKaart" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT DISTINCT [KaartNr] FROM [BPFtblCriteria]"> </asp:SqlDataSource> <br /> </asp:Panel> <br /> <br /> <asp:Label ID="lblKaartNr" runat="server" Font-Size="Large" FontBold="True"></asp:Label> <br /> <br /> <asp:Label ID="lblDatum" runat="server" Text="Datum: ........................."></asp:Label> <br /> <br /> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="CriteriaNr" DataSourceID="dtsCriteria" Width="1187px"> <Columns> <asp:BoundField DataField="Beschrijving" HeaderText="Criteria" SortExpression="Beschrijving" > <HeaderStyle Height="200px" Width="150px" /> </asp:BoundField> <asp:TemplateField> <ItemStyle Width="50px" /> </asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField>

59


<asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> <asp:TemplateField></asp:TemplateField> </Columns> </asp:GridView> <asp:SqlDataSource ID="dtsCriteria" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT DISTINCT [Beschrijving], [KaartNr], [CriteriaNr] FROM [BPFtblCriteria] WHERE ([KaartNr] = ?)"> <SelectParameters> <asp:ControlParameter ControlID="cboKaart" Name="KaartNr" PropertyName="SelectedValue" Type="String" /> </SelectParameters> </asp:SqlDataSource> <br /> </div> <asp:Button ID="btnPrint" runat="server" Text="Print" /> </form> </body> </html>

4.3.5

Oefening

4.3.5.1 Screenshot

4.3.5.2 Besturingselementen

Object

Eigenschap

Waarde

cldKalendar txtDuur

Selected date Tekst

Te selecteren datum Duur van de oefening

60


lblOefenNr

Tekst

Max oefening nummer uit tblOefeningen

dtsMaxOefNr

Select SQL

cboKaart

Itmes

Sql om maximum oefening nummer uit tblOefeningen te halen Alle oefenkaarten (naam)

dtsKaart

Select SQL

gvBrandweerman

Sql om alle oefenkaarten uit tblOefenkaarten te halen Alle brandweermannen

lstToegevoegdeBrandweer

Items

Toegevoegde brandweermannen

dtsBrandweerman

Select SQL

Sql om brandweermannen uit tblBrandweermannen te halen Alle geselecteerde brandweermannen weergeven

Select SQL

Sql om de geselecteerde brandweermannen

dvBrandweerman dtsGeselecteerde Brandweermannen fvGeslaagd

Per criteria een tekstbox om aan te duiden of de brandweerman geslaagd is

dtsCriteria

Select SQL

Sql om criteria van de geselecteerde oefenkaart in de formview te steken

dtsOefening

Insert SQL

Sql om de oefening toe te voegen

dtsMaxId

Select SQL

lblControleGetal

Tekst

Sql om maximum Id van tblOefeningen te krijgen Als de waarde ervan gelijk is aan die van dtsAantalCriteria, brandweerman toevoegen aan tblBehaald

dtsAantalCriteria dtsBehaald

Selcect SQL Insert SQL

Sql om de criteria te tellen Brandweerman toevoegen aan tblBehaald indien hij geslaagd is

Object btnGa

Gebeurtenis Click

Waarde Ga door naar pnlOefenkaartToevoegen, en verberg de rest

btnVerwijder

Click

Verwijder de brandweerman uit lstToegevoegdeBrandweer

4.3.5.3 Procedure

61


btnGegevensInvullen

Click

Ga door naar pnlGegevensInvullen, en verberg de rest

btnOpslaan

Click

Sla de brandweerman op

4.3.5.4 Code Partial Class _Default Inherits System.Web.UI.Page Protected Sub gvBranweerman_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles gvBranweerman.SelectedIndexChanged 'Declareren variabele Dim strWaarde As String 'Gegevens brandweerman in string steken strWaarde = gvBranweerman.SelectedRow.Cells(1).Text & " " & gvBranweerman.SelectedRow.Cells(2).Text & " " & gvBranweerman.SelectedRow.Cells(3).Text 'Gegevens van de brandweerman in listbox toevoegen lstToegevoegdeBrandweer.Items.Add(strWaarde) lstToegevoegdeBrandweer.SelectedIndex = lstToegevoegdeBrandweer.Items.Count 1 lstToegevoegdeBrandweer.SelectedItem.Value = gvBranweerman.SelectedRow.Cells(1).Text 'Controleergetal op 0 zetten lblControleGetal.Text = 0

End Sub Protected Sub btnVerwijder_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnVerwijder.Click 'Geselecteerde brandweerman (listitem) verwijderen lstToegevoegdeBrandweer.Items.Remove(lstToegevoegdeBrandweer.SelectedItem)

End Sub Protected Sub btnGegevensInvullen_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnGegevensInvullen.Click 'Declareren variabelen Dim strSELECTSQL As String Dim strBrandweermannen As String Dim intTeller As Integer Dim strDeelSQL As String Dim strImmatriculatieNr As String 'Gepaste panels verbergen/tonen pnlOefenkaartToevoegen.Visible = False pnlGegevensInvoeren.Visible = True 'Opstellen SQLcommand adhv waarden uit listbox For intTeller = 0 To CInt(lstToegevoegdeBrandweer.Items.Count - 1) strImmatriculatieNr = lstToegevoegdeBrandweer.Items.Item(intTeller).Text strImmatriculatieNr = Left(strImmatriculatieNr, (strImmatriculatieNr.IndexOf(" "))) strDeelSQL = " ImmatriculatieNr = '" & strImmatriculatieNr & "' OR"

62


strBrandweermannen &= strDeelSQL Next strBrandweermannen = Left(strBrandweermannen, strBrandweermannen.Length - 3) 'SQL selection command toekennen strSELECTSQL = "SELECT ImmatriculatieNr, Naam, Voornaam FROM BPFtblBrandweerman WHERE" & strBrandweermannen & "" dtsGeselecteerdeBrandweermannen.SelectCommand = strSELECTSQL End Sub

Protected Sub btnOpslaan_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnOpslaan.Click 'Declareren variabelen Dim strINSERTSQL As String Dim intID As Integer Dim strImmatriculatieNr As String Dim strBehaald As String Dim strKaartNr As String Dim strCriteriaNr As String Dim strDuur As String Dim strDatum As String 'Toekennen waarde strID intID = 0 Dim gv As New GridView gv.DataSource = dtsMaxId gv.DataBind() Try intID = gv.Rows(0).Cells(0).Text Catch ex As Exception End Try intID += 1 'Toekennen waarde strImmatriculatieNr strImmatriculatieNr = dvBrandweerman.Rows(0).Cells(1).Text 'Toekennen waarde strBehaald Dim chk As New CheckBox chk = fvGeslaagd.FindControl("chkGeslaagd") If chk.Checked = True Then strBehaald = "True" lblControleGetal.Text = CInt(lblControleGetal.Text) + 1 Else strBehaald = "False" End If 'Toekennen waarde strKaartNr strKaartNr = cboKaart.SelectedValue.ToString 'Toekennen waarde strCriteriaNr Dim lbl As New Label lbl = fvGeslaagd.FindControl("lblCriteriaNr") strCriteriaNr = lbl.Text.ToString 'Toekennen waarde strDuur strDuur = lblDuur.Text

63


'Toekennen waarde strDatum strDatum = cldKalender.SelectedDate.Date.ToShortDateString

'SQL insert command strINSERTSQL = "INSERT INTO BPFtblOefeningen(ID, ImmatriculatieNr, Datum, Behaald, KaartNr, OefeningNr, CriteriaNr, Duur) VALUES('" & CStr(intID) & "', '" & strImmatriculatieNr & "', '" & strDatum & "', '" & strBehaald & "', '" & strKaartNr & "', '" & lblOefeningNr.Text & "', '" & strCriteriaNr & "', '" & strDuur & "')" 'SQL uitvoeren "INSERT" dtsOefening.InsertCommand = strINSERTSQL dtsOefening.Insert()

'Tellen van de Criteria Dim intAantalCriteria As Integer

Dim strSQLCOUNT As String strSQLCOUNT = "SELECT COUNT(CriteriaNr) FROM BPFtblCriteria WHERE KaartNr='" & cboKaart.SelectedValue.ToString & "'" dtsAantalCriteria.SelectCommand = strSQLCOUNT Dim gvAantalCriteria As New GridView gvAantalCriteria.DataSource = dtsAantalCriteria gvAantalCriteria.DataBind() intAantalCriteria = gvAantalCriteria.Rows(0).Cells(0).Text If CInt(lblControleGetal.Text) = intAantalCriteria Then dtsBehaald.InsertCommand = "INSERT INTO BPFtblBehaald(ImmatriculatieNr, OefeningNr, Naam, KaartNr) VALUES ('" & strImmatriculatieNr & "', '" & lblOefeningNr.Text.ToString & "', '" & dvBrandweerman.Rows(1).Cells(1).Text & " " & dvBrandweerman.Rows(2).Cells(1).Text & "', '" & strKaartNr & "')" dtsBehaald.Insert() End If End Sub Protected Sub btnGa_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnGa.Click Dim intOefeningNr As Integer 'declareren variabelen Dim strDatum As String 'strDatum toekennen strDatum = cldKalender.SelectedDate.Date.ToShortDateString.ToString 'Gepaste panels tonen/verbergen pnlDatum.Visible = False pnlOefenkaartToevoegen.Visible = True 'Oefeningnr genereren adhv max Oefeningnr +1

64


Dim gv As New GridView gv.DataSource = dtsMaxOefNr gv.DataBind() intOefeningNr = 0 'Indien er al oefeningnummers zijn intOefeningnummmer If gv.Rows.Count <> 0 Then Try intOefeningNr = gv.Rows(0).Cells(0).Text Catch ex As Exception End Try End If intOefeningNr += 1 lblOefeningNr.Text = CStr(intOefeningNr)

End Sub Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 'De huidige datum selecteren in de kalender cldKalender.SelectedDate = Now.Date End Sub End Class

65


4.3.5.5 Opmaakcode <%@ Page Title="Home Page" Language="VB" MasterPageFile="Site.Master" AutoEventWireup="false" CodeFile="Oefening.aspx.vb" Inherits="_Default" %> <asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> <style type="text/css"> .style1 { width: 533px; } .style2 { height: 23px; } </style> </asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> <p> </p> <asp:Panel ID="pnlDatum" runat="server"> Datum:<asp:Calendar ID="cldKalender" runat="server" BackColor="#FFFFCC" BorderColor="#FFCC66" BorderWidth="1px" DayNameFormat="Shortest" Font-Names="Verdana" Font-Size="8pt" ForeColor="#663399" Height="200px" ShowGridLines="True" Width="220px"> <DayHeaderStyle BackColor="#FFCC66" Font-Bold="True" Height="1px" /> <NextPrevStyle Font-Size="9pt" ForeColor="#FFFFCC" /> <OtherMonthDayStyle ForeColor="#CC9966" /> <SelectedDayStyle BackColor="#CCCCFF" Font-Bold="True" /> <SelectorStyle BackColor="#FFCC66" /> <TitleStyle BackColor="#990000" Font-Bold="True" Font-Size="9pt" ForeColor="#FFFFCC" /> <TodayDayStyle BackColor="#FFCC66" ForeColor="White" /> </asp:Calendar> <br /> Duur oefening (minuten):<br /> <asp:TextBox ID="lblDuur" runat="server" Height="22px"></asp:TextBox> <br /> <asp:Label ID="lblOefeningNr" runat="server" Visible="False">1</asp:Label> <br /> <asp:Button ID="btnGa" runat="server" Text="Ga verder" /> <br /> <asp:SqlDataSource ID="dtsMaxOefNr" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT MAX(OefeningNr) FROM BPFtblOefeningen;"> </asp:SqlDataSource> </asp:Panel> <asp:Panel ID="pnlOefenkaartToevoegen" runat="server" Visible="False"> <asp:DropDownList ID="cboKaart" runat="server" DataSourceID="dtsKaart" DataTextField="KaartNr" DataValueField="KaartNr"> </asp:DropDownList> <asp:SqlDataSource ID="dtsKaart" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT DISTINCT [KaartNr] FROM [BPFtblOefenkaarten] ORDER BY [KaartNr]"> </asp:SqlDataSource>

66


 Brandweerman toevoegen         <table style="width:100%;"> <tr> <td class="style1"> <asp:GridView ID="gvBranweerman" runat="server" AllowPaging="True" AutoGenerateColumns="False" CellPadding="4" DataKeyNames="ImmatriculatieNr" DataSourceID="dtsBrandweerman" ForeColor="#333333" GridLines="None"> <AlternatingRowStyle BackColor="White" /> <Columns> <asp:CommandField ShowSelectButton="True" /> <asp:BoundField DataField="ImmatriculatieNr" HeaderText="ImmatriculatieNr" ReadOnly="True" SortExpression="ImmatriculatieNr" /> <asp:BoundField DataField="Naam" HeaderText="Naam" SortExpression="Naam" /> <asp:BoundField DataField="Voornaam" HeaderText="Voornaam" SortExpression="Voornaam" /> <asp:BoundField DataField="BehaaldBrevet" HeaderText="BehaaldBrevet" SortExpression="BehaaldBrevet" /> <asp:BoundField DataField="Functie" HeaderText="Functie" SortExpression="Functie" /> <asp:BoundField DataField="Specialisatie" HeaderText="Specialisatie" SortExpression="Specialisatie" /> </Columns> <FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /> <HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" /> <RowStyle BackColor="#FFFBD6" ForeColor="#333333" /> <SelectedRowStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="Navy" /> <SortedAscendingCellStyle BackColor="#FDF5AC" /> <SortedAscendingHeaderStyle BackColor="#4D0000" /> <SortedDescendingCellStyle BackColor="#FCF6C0" /> <SortedDescendingHeaderStyle BackColor="#820000" /> </asp:GridView> </td> <td> <asp:ListBox ID="lstToegevoegdeBrandweer" runat="server"></asp:ListBox> <br /> <asp:Button ID="btnVerwijder" runat="server" Text="Verwijder" /> </td> <td>  </td> </tr> <tr> <td class="style1">  </td> <td>  </td> <td>  </td> </tr>

67


<tr> <td class="style1">  </td> <td>  </td> <td>  </td> </tr> </table> <asp:SqlDataSource ID="dtsBrandweerman" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT [ImmatriculatieNr], [Naam], [Voornaam], [BehaaldBrevet], [Functie], [Specialisatie] FROM [BPFtblBrandweerman]"> </asp:SqlDataSource> <br /> <asp:Button ID="btnGegevensInvullen" runat="server" Text="Ga Verder" /> <br /> </asp:Panel> <br /> <asp:Panel ID="pnlGegevensInvoeren" runat="server" Visible="False"> <table style="width:100%;"> <tr> <td> Brandweerman<br /> <asp:DetailsView ID="dvBrandweerman" runat="server" AllowPaging="True" AutoGenerateRows="False" DataKeyNames="ImmatriculatieNr" DataSourceID="dtsGeselecteerdeBrandweermannen" Height="50px" Width="125px"> <Fields> <asp:BoundField DataField="ImmatriculatieNr" HeaderText="ImmatriculatieNr" ReadOnly="True" SortExpression="ImmatriculatieNr" /> <asp:BoundField DataField="Naam" HeaderText="Naam" SortExpression="Naam" /> <asp:BoundField DataField="Voornaam" HeaderText="Voornaam" SortExpression="Voornaam" /> </Fields> </asp:DetailsView> <asp:SqlDataSource ID="dtsGeselecteerdeBrandweermannen" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT [ImmatriculatieNr], [Naam], [Voornaam] FROM [BPFtblBrandweerman]"> </asp:SqlDataSource> </td> <td> <asp:FormView ID="fvGeslaagd" runat="server" AllowPaging="True" DataKeyNames="CriteriaNr" DataSourceID="dtsCriteria"> <EditItemTemplate> CriteriaNr: <asp:Label ID="CriteriaNrLabel1" runat="server" Text='<%# Eval("CriteriaNr") %>' /> <br /> KaartNr: <asp:TextBox ID="KaartNrTextBox" runat="server" Text='<%# Bind("KaartNr") %>' />

68


<br /> Beschrijving: <asp:TextBox ID="BeschrijvingTextBox" runat="server" Text='<%# Bind("Beschrijving") %>' /> <br /> <asp:LinkButton ID="UpdateButton" runat="server" CausesValidation="True" CommandName="Update" Text="Update" />  <asp:LinkButton ID="UpdateCancelButton" runat="server" CausesValidation="False" CommandName="Cancel" Text="Cancel" /> </EditItemTemplate> <InsertItemTemplate> CriteriaNr: <asp:TextBox ID="CriteriaNrTextBox" runat="server" Text='<%# Bind("CriteriaNr") %>' /> <br /> KaartNr: <asp:TextBox ID="KaartNrTextBox" runat="server" Text='<%# Bind("KaartNr") %>' /> <br /> Beschrijving: <asp:TextBox ID="BeschrijvingTextBox" runat="server" Text='<%# Bind("Beschrijving") %>' /> <br /> <asp:LinkButton ID="InsertButton" runat="server" CausesValidation="True" CommandName="Insert" Text="Insert" />  <asp:LinkButton ID="InsertCancelButton" runat="server" CausesValidation="False" CommandName="Cancel" Text="Cancel" /> </InsertItemTemplate> <ItemTemplate> Beschrijving: <asp:Label ID="lblBeschrijving" runat="server" Text='<%# Bind("Beschrijving") %>' /> <br /> <asp:Label ID="lblCriteriaNr" runat="server" Text='<%# Bind("CriteriaNr") %>' Visible="False" /> <br /> <asp:CheckBox ID="chkGeslaagd" runat="server" Text="Geslaagd" /> <br /> </ItemTemplate> </asp:FormView> <asp:SqlDataSource ID="dtsCriteria" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT [CriteriaNr], [KaartNr], [Beschrijving] FROM [BPFtblCriteria] WHERE ([KaartNr] = ?)"> <SelectParameters> <asp:ControlParameter ControlID="cboKaart" Name="KaartNr" PropertyName="SelectedValue" Type="String" /> </SelectParameters> </asp:SqlDataSource> <br /> <asp:Button ID="btnOpslaan" runat="server" Text="Opslaan" />

69


<asp:SqlDataSource ID="dtsOefening" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT * FROM [BPFtblOefeningen]"></asp:SqlDataSource> <asp:SqlDataSource ID="dtsMaxId" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT MAX(ID) FROM BPFtblOefeningen;"></asp:SqlDataSource> <asp:Label ID="lblControleGetal" runat="server" Text="Label" Visible="False"></asp:Label> <br /> </td> <td>  </td> </tr> <tr> <td class="style2"> </td> <td class="style2"> <asp:SqlDataSource ID="dtsAantalCriteria" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT [CriteriaNr], [KaartNr] FROM [BPFtblCriteria]"> </asp:SqlDataSource> </td> <td class="style2"> </td> </tr> <tr> <td>  </td> <td> <asp:SqlDataSource ID="dtsBehaald" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT [Naam], [OefeningNr] FROM [BPFtblBehaald]"> </asp:SqlDataSource> </td> <td>  </td> </tr> </table> <br /> </asp:Panel> <br /> <br /> </asp:Content>

70


4.3.6

Opvragingen

4.3.6.1 Screenshot

4.3.6.2 Besturingselementen

Object cldDatumOefening

Eigenschap Date

Waarde Te selecteren datum

cboOefening

Items

Geeft alle oefeningen op de geselecteerde datum weer

lblGeenWaarden

Tekst

dtsOefening

Select SQL

dtsDezeOefening

Select SQL

Melding indien er geen oefeningen zijn op de gekozen datum Sql om oefeningen op te halen uit tblOefeningen Sql om de gekozen oefening op te halen uit tblOefeningen

dtsAantalCriteria lblDatum

Select SQL Tekst

Sql om de criteria te tellen Gekozen datum

lblDuur lblKaartNr

Tekst Tekst

Gekozen Duur Nummer van de gekozen oefenkaart

lblOefeningNr gvBrandweerman

tekst

dtsGeslaagd

Select SQL

Nummer van de Oefening Brandweermannen die geslaagd zijn Sql om de geslaagde brandweermannen op te halen uit tblBehaald 71


4.3.6.3 Procedure

Object

Gebeurtenis

Waarde

cldDatumOefening

Selected index changed

Databind dtsOefening

btnGa

Click

Ga naar pnlPrinten en verberg de rest

btnPrint

Click

Pagina afdrukken

4.3.7

Help

4.3.7.1 Screenshot

4.3.7.2 Code Partial Class _Default Inherits System.Web.UI.Page Protected Sub btnBrandweermanToevoegen_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnBrandweermanToevoegen.Click 'Panel met gewenste help weergeven pnlBrandweermanToevoegen.Visible = True pnlBrandweermannenBewerken.Visible = False pnlOefenakaartenVerwijderen.Visible = False pnlBrandweermanVerwijderen.Visible = False PnlOefeningenToevoegen.Visible = False pnlOefenkaartenBewerken.Visible = False pnlOefenkaartenToevoegen.Visible = False End Sub

72


Protected Sub btnBrandweermanVerwijderen_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnBrandweermanVerwijderen.Click 'Panel met gewenste help weergeven pnlBrandweermanToevoegen.Visible = False pnlBrandweermannenBewerken.Visible = False pnlOefenakaartenVerwijderen.Visible = True pnlBrandweermanVerwijderen.Visible = False PnlOefeningenToevoegen.Visible = False pnlOefenkaartenBewerken.Visible = False pnlOefenkaartenToevoegen.Visible = False End Sub Protected Sub btnBrandweermanBewerken_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnBrandweermanBewerken.Click 'Panel met gewenste help weergeven pnlBrandweermanToevoegen.Visible = False pnlBrandweermannenBewerken.Visible = True pnlOefenakaartenVerwijderen.Visible = False pnlBrandweermanVerwijderen.Visible = False PnlOefeningenToevoegen.Visible = False pnlOefenkaartenBewerken.Visible = False pnlOefenkaartenToevoegen.Visible = False End Sub Protected Sub btnOefenkaartToevoegen_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnOefenkaartToevoegen.Click 'Panel met gewenste help weergeven pnlBrandweermanToevoegen.Visible = False pnlBrandweermannenBewerken.Visible = False pnlOefenakaartenVerwijderen.Visible = False pnlBrandweermanVerwijderen.Visible = False PnlOefeningenToevoegen.Visible = False pnlOefenkaartenBewerken.Visible = False pnlOefenkaartenToevoegen.Visible = True End Sub Protected Sub btnOefenkaartVerwijderen_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnOefenkaartVerwijderen.Click 'Panel met gewenste help weergeven pnlBrandweermanToevoegen.Visible = False pnlBrandweermannenBewerken.Visible = False pnlOefenakaartenVerwijderen.Visible = True pnlBrandweermanVerwijderen.Visible = False PnlOefeningenToevoegen.Visible = False pnlOefenkaartenBewerken.Visible = False pnlOefenkaartenToevoegen.Visible = False End Sub Protected Sub btnOefenkaartBewerken_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnOefenkaartBewerken.Click 'Panel met gewenste help weergeven pnlBrandweermanToevoegen.Visible = False pnlBrandweermannenBewerken.Visible = False pnlOefenakaartenVerwijderen.Visible = False pnlBrandweermanVerwijderen.Visible = False PnlOefeningenToevoegen.Visible = False pnlOefenkaartenBewerken.Visible = True pnlOefenkaartenToevoegen.Visible = False End Sub

73


Protected Sub btnOefeningToevoegen_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnOefeningToevoegen.Click 'Panel met gewenste help weergeven pnlBrandweermanToevoegen.Visible = False pnlBrandweermannenBewerken.Visible = False pnlOefenakaartenVerwijderen.Visible = False pnlBrandweermanVerwijderen.Visible = False PnlOefeningenToevoegen.Visible = True pnlOefenkaartenBewerken.Visible = False pnlOefenkaartenToevoegen.Visible = False End Sub End Class

4.3.7.3 Opmaak code <%@ Page Title="Home Page" Language="VB" MasterPageFile="Site.Master" AutoEventWireup="false" CodeFile="Help.aspx.vb" Inherits="_Default" %> <asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> <style type="text/css"> .style1 { width: 607px; height: 386px; } .style2 { width: 609px; height: 413px; } .style4 { width: 962px; height: 254px; } .style5 { width: 257px; height: 184px; } .style6 { width: 573px; height: 253px; } .style7 { width: 669px; height: 196px; } .style8 { width: 622px; height: 259px; } .style9 { width: 943px; height: 294px; }

74


.style10 { width: 769px; height: 221px; } .style11 { width: 468px; height: 292px; } .style12 { width: 483px; height: 191px; } </style> </asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> <table style="width:100%;"> <tr> <td> <asp:Button ID="btnBrandweermanToevoegen" runat="server" Text="Brandweerman Toevoegen" /> </td> <tr> <td> <asp:Button ID="btnBrandweermanVerwijderen" runat="server" Text="Brandweerman Verwijderen" height="26px" width="227px" /> </td> <tr> <td> <asp:Button ID="btnBrandweermanBewerken" runat="server" Text="Brandweerman Bewerken" height="26px" width="227px" /> </td> <tr> <td> <asp:Button ID="btnOefenkaartToevoegen" runat="server" Text="Oefenkaart Toevoegen" height="26px" width="227px" /> </td> <tr> <td> <asp:Button ID="btnOefenkaartVerwijderen" runat="server" Text="Oefenkaart Verwijderen" height="26px" width="227px" /> </td> <tr> <td>

75


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

</table> <br /> <asp:Panel ID="pnlBrandweermanToevoegen" runat="server" Visible="False"> Stap 1:<br /> U klikt in het menu op het item "Brandweerman".<br /> Nu komt u terecht in de module om de brandweermannen te beheren.<br /> <br /> Stap 2:<br /> U klikt in het onderste veld op de knop "Nieuw".<br /> <img alt="KnopNieuw" class="style1" src="../ScreenShots/BrandweermanToevoegen1.JPG" /> <br /> <br /> Stap 3:<br /> U vult alle gegevens in van de toe te voegen brandweerman.<br /> <br /> Stap 4:<br /> U klikt op de knop "Voeg toe" om de brandweerman op te slaan.<br /> <img alt="VoegToe" class="style2" src="../ScreenShots/BrandweermanToevoegen2.JPG" /> <br /> </asp:Panel> <asp:Panel ID="pnlOefenkaartenToevoegen" runat="server" Visible="False"> Stap 1:<br /> U klikt in het menu op het item "Oefenkaart".<br /> Nu komt u terecht in de module om de Oefenkaarten te beheren.<br /> <br /> Stap 2:<br /> Om een nieuwe oefenkaart toe te voegen, klikt u op Nieuw (rode pijl).<br /> <img alt="" class="style4" src="../ScreenShots/Oefenkaarten%20Toevoegen.png" /> <br /> <br /> Stap 3:<br />Vervolgens klikt u op invoegen<br /> <br />  <img alt="" class="style5" src="../ScreenShots/Oefenkaarten%20Toevoegen%202.jpg" /><br /> (Stap 4:<br /> Om een criterium toe te voegen, tipt u de naam van het criterium in het tekstvak, en klikt u op opslaan.)</asp:Panel> <asp:Panel ID="pnlOefenkaartenBewerken" runat="server" Visible="False"> Stap 1:<br /> U klikt in het menu op het item "Oefenkaart".<br /> Nu komt u terecht in de module om de Oefenkaarten te beheren.<br /> <br /> Stap 2:<br /> Om een oefenkaart, of criterium te bewerken, klikt u op bewerken (A

76


of B).<br /> <img alt="" class="style6" src="../ScreenShots/Oefenkaarten%20Bewerken1.jpg" /> <br /> Stap 3:<br /> Vervolgens geeft u de gegevens in, en drukt u op "Bijwerken").<br /> <img alt="" class="style7" src="../ScreenShots/Oefenkaart%20Bewerken%202.jpg" /> <br /> <br /> Het is niet mogelijk om het KaartNr te veranderen, hiervoor moet u de oefenkaart verwijderen, en een nieuwe maken met het juiste nummer.<br /> </asp:Panel> <asp:Panel ID="pnlOefenakaartenVerwijderen" runat="server" Visible="False"> Stap 1:<br /> U klikt in het menu op het item "Oefenkaart".<br /> Nu komt u terecht in de module om de Oefenkaarten te beheren.<br /> <br /> Stap 2:<br /> Om een oefenkaart of criterium te verwijderen, klikt u op "Verwijderen".<br /> <img alt="" class="style8" src="../ScreenShots/Oefenkaart%20Verwijderen%201.jpg" /> <br /> <asp:Panel ID="pnlBrandweermannenBewerken" runat="server" Visible="False"> Stap 1:<br /> U klikt in het menu op het item "Brandweerman".<br /> Nu komt u terecht in de module om de brandweermannen te beheren.<br /> <br /> Stap 2: <br /> Vervolgens klikt u op bewerken.<br /> <img alt="" class="style9" src="../ScreenShots/Brandweerman%20Bewerken%201.jpg" /> <br /> Stap 3:<br /> Vul alle gegevens in, om op te slaan, klikt u op "bijwerken".<br /> <img alt="" class="style10" src="../ScreenShots/Brandweerman%20Bewerken%202.jpg" /> <br /> Stap 4:<br /> Om Specialisaties of Brevetten te veranderen, moet u eerst een brandweerman Selecteren.<br /> <img alt="" class="style11" src="../ScreenShots/Brandweerman%20Selecteren.jpg" /> <br /> Stap 5:<br /> Vervolgens klikt u op Bewerken, vult u alle gegevens in, en klikt u op bijwerken. (Geen screenshots want primairy keys werkten niet)<br /> </asp:Panel> </asp:Panel> <asp:Panel ID="pnlBrandweermanVerwijderen" runat="server" Visible="False"> Stap 1:<br /> U klikt in het menu op het item "Brandweerman".<br /> Nu komt u terecht in de module om de brandweermannen te beheren.<br /> <br /> Stap 2:<br /> U klikt op "Verwijderen".<br /> <img alt="" class="style12" src="../ScreenShots/Brandweerman%20Verwijderen.jpg" /> </asp:Panel> <asp:Panel ID="PnlOefeningenToevoegen" runat="server" Visible="False">

77


Stap 1:<br /> U klikt in het menu op het item "Oefening".<br /> Nu komt u terecht in de module om de Oefeningen te beheren.<br /> <br /> Stap 2:<br /> U Selecteert een Datum, en geeft een duur op van de oefening (in minuten).<br /> <br /> Stap 3:<br /> Vervolgens klikt u op "Ga Verder".<br /> <br /> Stap 4:<br /> Bovenaan kunt de oefenkaart uit een lijst selecteren. Vervolgens selecteerd u alle brandweermannen die meededen aan de oefening.<br /> Om verder te gaan klikt u op "Ga Verder".<br /> <br /> Stap 5:<br /> Vervolgens ziet u links de Brandweerman, en rechts alle criteria voor de van u gekozen Oefenkaart. U kunt nu telkens aangeven of de brandweerman slaagde voor een bepaald criterium of niet. Om op te slaan klikt u op "Opslaan".<br /> Opgelet, als u niet op "Opslaan" klikt, worden de gegevens niet weggeschreven in de databank.<br /> </asp:Panel> <br /> <br /> </asp:Content>

4.3.8

Web.config

<?xml version="1.0"?> <configuration> <system.web> <authorization> <allow users="Beheerder"/> <deny users="?"/> <allow users ="*"/> </authorization> <compilation debug="true" strict="false" explicit="true" targetFramework="4.0"/> </system.web> </configuration>

78


4.4

Gebruiker

4.4.1

Default

4.4.1.1 Screenshot

4.4.1.2 Code Partial Class _Default Inherits System.Web.UI.Page End Class

4.4.1.3 Opmaak code <%@ Page Title="Home Page" Language="VB" MasterPageFile="Site.Master" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %> <asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> </asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> <p> Welkom op de gebruiker site,<br /> Hier kunt u gegevens bekijken.</p> </asp:Content>

79


4.4.2

Brandweerman

4.4.2.1 Screenshot

4.4.2.2 Besturingselementen

Object

Eigenschap

gvBrandweerman

Aangemelde brandweerman tonen Brevetten voor aangemelde brandweerman tonen Specialisaties voor aangemelde brandweerman tonen

gvBrevetten gvSpecialisaties dtsBrandweerman

Waarde

Select SQL

Sql om de aangemelde brandweerman te tonen

Object

Gebeurtenis

Waarde

Form

Load

Ken sql toe aan de datasources

4.4.2.3 Procedure

4.4.2.4 Code Partial Class _Default Inherits System.Web.UI.Page Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 'declareren van de variabelen Dim strBrandweermanSELECTSQL As String Dim strBrevettenSELECTSQL As String Dim strSpecialisatieSELECTSQL As String

80


'alles tonen waarvan ImmatriculatieNr gelijk is aan de username Try strBrandweermanSELECTSQL = "SELECT * FROM [BPFtblBrandweerman] WHERE ImmatriculatieNr = '" & Me.User.Identity.Name.ToString & "'" dtsBrandweerman.SelectCommand = strBrandweermanSELECTSQL dtsBrandweerman.DataBind() strBrevettenSELECTSQL = "SELECT * FROM [BPFtblBrevetten] WHERE Id = '" & Me.User.Identity.Name.ToString & "'" dtsBrevetten.SelectCommand = strBrevettenSELECTSQL dtsBrevetten.DataBind() strSpecialisatieSELECTSQL = "SELECT * FROM [BPFtblSpecialisatie] WHERE Id = '" & Me.User.Identity.Name.ToString & "'" dtsSpecialisaties.SelectCommand = strSpecialisatieSELECTSQL dtsSpecialisaties.DataBind() Catch End Try End Sub End Class

81


4.4.2.5 Opmaak code <%@ Page Title="Brandweerman" Language="VB" MasterPageFile="~/Beheerder/Site.Master" AutoEventWireup="false" CodeFile="Brandweerman.aspx.vb" Inherits="_Default" %> <asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> <style type="text/css"> .style4 { width: 214px; height: 346px; } .style6 { width: 193px; height: 346px; } </style> </asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> Brandweermannen<br /> <br /> <table style="width:100%;"> <tr> <td class="style6" valign="top"> <asp:GridView ID="gvBrandweerman" runat="server" AutoGenerateColumns="False" CellPadding="4" DataSourceID="dtsBrandweerman" ForeColor="#333333" GridLines="None" DataKeyNames="ImmatriculatieNr"> <AlternatingRowStyle BackColor="White" /> <Columns> <asp:BoundField DataField="ImmatriculatieNr" HeaderText="ImmatriculatieNr" SortExpression="ImmatriculatieNr" ReadOnly="True" /> <asp:BoundField DataField="Naam" HeaderText="Naam" SortExpression="Naam" /> <asp:BoundField DataField="Voornaam" HeaderText="Voornaam" SortExpression="Voornaam" /> <asp:BoundField DataField="Functie" HeaderText="Functie" SortExpression="Functie" /> </Columns> <FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /> <HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" /> <RowStyle BackColor="#FFFBD6" ForeColor="#333333" /> <SelectedRowStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="Navy" /> <SortedAscendingCellStyle BackColor="#FDF5AC" /> <SortedAscendingHeaderStyle BackColor="#4D0000" /> <SortedDescendingCellStyle BackColor="#FCF6C0" /> <SortedDescendingHeaderStyle BackColor="#820000" /> </asp:GridView> <asp:SqlDataSource ID="dtsBrandweerman" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT * FROM [BPFtblBrandweerman]" ConflictDetection="CompareAllValues"

82


DeleteCommand="DELETE FROM [BPFtblBrandweerman] WHERE [ImmatriculatieNr] = ? AND (([Naam] = ?) OR ([Naam] IS NULL AND ? IS NULL)) AND (([Voornaam] = ?) OR ([Voornaam] IS NULL AND ? IS NULL)) AND (([BehaaldBrevet] = ?) OR ([BehaaldBrevet] IS NULL AND ? IS NULL)) AND (([Functie] = ?) OR ([Functie] IS NULL AND ? IS NULL)) AND (([Specialisatie] = ?) OR ([Specialisatie] IS NULL AND ? IS NULL))" InsertCommand="INSERT INTO [BPFtblBrandweerman] ([ImmatriculatieNr], [Naam], [Voornaam], [BehaaldBrevet], [Functie], [Specialisatie]) VALUES (?, ?, ?, ?, ?, ?)" OldValuesParameterFormatString="original_{0}" UpdateCommand="UPDATE [BPFtblBrandweerman] SET [Naam] = ?, [Voornaam] = ?, [BehaaldBrevet] = ?, [Functie] = ?, [Specialisatie] = ? WHERE [ImmatriculatieNr] = ? AND (([Naam] = ?) OR ([Naam] IS NULL AND ? IS NULL)) AND (([Voornaam] = ?) OR ([Voornaam] IS NULL AND ? IS NULL)) AND (([BehaaldBrevet] = ?) OR ([BehaaldBrevet] IS NULL AND ? IS NULL)) AND (([Functie] = ?) OR ([Functie] IS NULL AND ? IS NULL)) AND (([Specialisatie] = ?) OR ([Specialisatie] IS NULL AND ? IS NULL))"> <DeleteParameters> <asp:Parameter Name="original_ImmatriculatieNr" Type="String" /> <asp:Parameter Name="original_Naam" Type="String" /> <asp:Parameter Name="original_Naam" Type="String" /> <asp:Parameter Name="original_Voornaam" Type="String" /> <asp:Parameter Name="original_Voornaam" Type="String" /> <asp:Parameter Name="original_BehaaldBrevet" Type="String" /> <asp:Parameter Name="original_BehaaldBrevet" Type="String" /> <asp:Parameter Name="original_Functie" Type="String" /> <asp:Parameter Name="original_Functie" Type="String" /> <asp:Parameter Name="original_Specialisatie" Type="String" /> <asp:Parameter Name="original_Specialisatie" Type="String" /> </DeleteParameters> <InsertParameters> <asp:Parameter Name="ImmatriculatieNr" Type="String" /> <asp:Parameter Name="Naam" Type="String" /> <asp:Parameter Name="Voornaam" Type="String" /> <asp:Parameter Name="BehaaldBrevet" Type="String" /> <asp:Parameter Name="Functie" Type="String" /> <asp:Parameter Name="Specialisatie" Type="String" /> </InsertParameters> <UpdateParameters> <asp:Parameter Name="Naam" Type="String" /> <asp:Parameter Name="Voornaam" Type="String" /> <asp:Parameter Name="BehaaldBrevet" Type="String" /> <asp:Parameter Name="Functie" Type="String" /> <asp:Parameter Name="Specialisatie" Type="String" /> <asp:Parameter Name="original_ImmatriculatieNr" Type="String" /> <asp:Parameter Name="original_Naam" Type="String" /> <asp:Parameter Name="original_Naam" Type="String" /> <asp:Parameter Name="original_Voornaam" Type="String" /> <asp:Parameter Name="original_Voornaam" Type="String" /> <asp:Parameter Name="original_BehaaldBrevet" Type="String" /> <asp:Parameter Name="original_BehaaldBrevet" Type="String" /> <asp:Parameter Name="original_Functie" Type="String" /> <asp:Parameter Name="original_Functie" Type="String" />

83


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

<br />

</td> <td class="style4" valign="top"> <asp:GridView ID="gvBrevetten" runat="server" AutoGenerateColumns="False" CellPadding="4" DataSourceID="dtsBrevetten" ForeColor="#333333" GridLines="None"> <AlternatingRowStyle BackColor="White" /> <Columns> <asp:BoundField DataField="Brevet" HeaderText="Brevet" SortExpression="Brevet" /> </Columns> <FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /> <HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" /> <RowStyle BackColor="#FFFBD6" ForeColor="#333333" /> <SelectedRowStyle BackColor="#FFCC66" FontBold="True" ForeColor="Navy" /> <SortedAscendingCellStyle BackColor="#FDF5AC" /> <SortedAscendingHeaderStyle BackColor="#4D0000" /> <SortedDescendingCellStyle BackColor="#FCF6C0" /> <SortedDescendingHeaderStyle BackColor="#820000" /> </asp:GridView> <asp:SqlDataSource ID="dtsBrevetten" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT * FROM [BPFtblBrevetten]"> </asp:SqlDataSource> <br /> <br /> <asp:GridView ID="gvSpecialisaties" runat="server" AutoGenerateColumns="False" CellPadding="4" DataSourceID="dtsSpecialisaties" ForeColor="#333333" GridLines="None"> <AlternatingRowStyle BackColor="White" />

84


<Columns> <asp:BoundField DataField="Specialisatie" HeaderText="Specialisatie" SortExpression="Specialisatie" /> </Columns> <FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /> <HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" /> <RowStyle BackColor="#FFFBD6" ForeColor="#333333" /> <SelectedRowStyle BackColor="#FFCC66" FontBold="True" ForeColor="Navy" /> <SortedAscendingCellStyle BackColor="#FDF5AC" /> <SortedAscendingHeaderStyle BackColor="#4D0000" /> <SortedDescendingCellStyle BackColor="#FCF6C0" /> <SortedDescendingHeaderStyle BackColor="#820000" /> </asp:GridView> <asp:SqlDataSource ID="dtsSpecialisaties" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT * FROM [BPFtblSpecialisatie]"> </asp:SqlDataSource> <br /> <br /> <br /> </td> </tr> </table> <br /> <br /> <br />

</asp:Content>

85


4.4.3

Oefenkaart

4.4.3.1 Screenshot

4.4.3.2 Besturingselementen

Object

Eigenschap

dvOefenkaarten gvCriteria

Waarde Oefenkaarten met de gezochte criteria Criteria voor oefenkaart uit dvOefenkaarten Kaartnummer uit dvOefenkaarten

txtKaartNr

Tekst

dtsOefenkaarten

Select SQL

Sql om alle oefenkaarten uit tblOefenakaarten te halen

dtsCriteria

Select SQL

Bevat de Criteria van de oefenkaart uit dvOefenkaarten

Object Form

Gebeurtenis Load

Waarde Vul txtKaartNr

dvOefenkaarten

Databound

Vul txtKaartNr

4.4.3.3 Procedure

4.4.3.4 Code Partial Class _Default Inherits System.Web.UI.Page Protected Sub dvOefenkaarten_DataBound(ByVal sender As Object, ByVal e As System.EventArgs) Handles dvOefenkaarten.DataBound 'txtKaartNr opvullen indien er oefenkaarten zijn

86


Try txtKaartNr.Text = dvOefenkaarten.Rows(0).Cells(1).Text dtsCriteria.DataBind() gvCriteria.DataBind() Catch ex As Exception End Try End Sub Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 'txtKaartNr opvullen indien er oefenkaarten zijn Try txtKaartNr.Text = dvOefenkaarten.Rows(0).Cells(1).Text Catch End Try End Sub

End Class

87


4.4.3.5 Opmaak Code <%@ Page Title="Brandweerman" Language="VB" MasterPageFile="Site.Master" AutoEventWireup="false" CodeFile="Oefenkaarten.aspx.vb" Inherits="_Default" %> <asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> <style type="text/css"> .style1 { width: 339px; } </style> </asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> Oefenkaarten (met zoekfunctie)<br /> <br /> <asp:Panel ID="pnlBewerkenVerwijderen" runat="server"> <table style="width:100%;"> <tr> <td class="style1"> <br /> Oefenkaart:<br /> <asp:DetailsView ID="dvOefenkaarten" runat="server" AllowPaging="True" AutoGenerateRows="False" DataKeyNames="KaartNr" DataSourceID="dtsOefenkaarten" Height="50px" Width="125px"> <Fields> <asp:BoundField DataField="KaartNr" HeaderText="KaartNr" SortExpression="KaartNr" ReadOnly="True" /> <asp:BoundField DataField="Onderwerp" HeaderText="Onderwerp" SortExpression="Onderwerp" /> </Fields> </asp:DetailsView> <br /> <br /> <br /> <asp:SqlDataSource ID="dtsOefenkaarten" runat="server" ConflictDetection="CompareAllValues" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" DeleteCommand="DELETE FROM [BPFtblOefenkaarten] WHERE [KaartNr] = ? AND (([CriteriaNr] = ?) OR ([CriteriaNr] IS NULL AND ? IS NULL)) AND (([Onderwerp] = ?) OR ([Onderwerp] IS NULL AND ? IS NULL))" InsertCommand="INSERT INTO [BPFtblOefenkaarten] ([KaartNr], [CriteriaNr], [Onderwerp]) VALUES (?, ?, ?)" OldValuesParameterFormatString="original_{0}" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT * FROM [BPFtblOefenkaarten]"

UpdateCommand="UPDATE [BPFtblOefenkaarten] SET [CriteriaNr] = ?, [Onderwerp] = ? WHERE [KaartNr] = ? AND (([CriteriaNr] = ?) OR

88


([CriteriaNr] IS NULL AND ? IS NULL)) AND (([Onderwerp] = ?) OR ([Onderwerp] IS NULL AND ? IS NULL))"> <DeleteParameters> <asp:Parameter Name="original_KaartNr" Type="String" /> <asp:Parameter Name="original_CriteriaNr" Type="Int32" /> <asp:Parameter Name="original_CriteriaNr" Type="Int32" /> <asp:Parameter Name="original_Onderwerp" Type="String" /> <asp:Parameter Name="original_Onderwerp" Type="String" /> </DeleteParameters> <InsertParameters> <asp:Parameter Name="KaartNr" Type="String" /> <asp:Parameter Name="CriteriaNr" Type="Int32" /> <asp:Parameter Name="Onderwerp" Type="String" /> </InsertParameters> <UpdateParameters> <asp:Parameter Name="CriteriaNr" Type="Int32" /> <asp:Parameter Name="Onderwerp" Type="String" /> <asp:Parameter Name="original_KaartNr" Type="String" /> <asp:Parameter Name="original_CriteriaNr" Type="Int32" /> <asp:Parameter Name="original_CriteriaNr" Type="Int32" /> <asp:Parameter Name="original_Onderwerp" Type="String" /> <asp:Parameter Name="original_Onderwerp" Type="String" /> </UpdateParameters> </asp:SqlDataSource> </td> <td style="text-align: left"> <br /> <br /> <asp:TextBox ID="txtKaartNr" runat="server" Visible="False"></asp:TextBox> <br /> <br /> <asp:GridView ID="gvCriteria" runat="server" AutoGenerateColumns="False" CellPadding="4" DataKeyNames="CriteriaNr" DataSourceID="dtsCriteria" ForeColor="#333333" GridLines="None"> <AlternatingRowStyle BackColor="White" /> <Columns> <asp:BoundField DataField="Beschrijving" HeaderText="Criteria" SortExpression="Beschrijving" /> </Columns> <FooterStyle BackColor="#990000" FontBold="True" ForeColor="White" />

89


<HeaderStyle BackColor="#990000" FontBold="True" ForeColor="White" /> <PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" /> <RowStyle BackColor="#FFFBD6" ForeColor="#333333" /> <SelectedRowStyle BackColor="#FFCC66" FontBold="True" ForeColor="Navy" /> <SortedAscendingCellStyle BackColor="#FDF5AC" /> <SortedAscendingHeaderStyle BackColor="#4D0000" /> <SortedDescendingCellStyle BackColor="#FCF6C0" /> <SortedDescendingHeaderStyle BackColor="#820000" /> </asp:GridView> <asp:SqlDataSource ID="dtsCriteria" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" DeleteCommand="DELETE FROM [BPFtblCriteria] WHERE [CriteriaNr] = ?" InsertCommand="INSERT INTO [BPFtblCriteria] ([CriteriaNr], [KaartNr], [Beschrijving]) VALUES (?, ?, ?)" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT * FROM [BPFtblCriteria] WHERE ([KaartNr] = ?)" UpdateCommand="UPDATE [BPFtblCriteria] SET [KaartNr] = ?, [Beschrijving] = ? WHERE [CriteriaNr] = ?"> <DeleteParameters> <asp:Parameter Name="CriteriaNr" Type="Int32" /> </DeleteParameters> <InsertParameters> <asp:Parameter Name="CriteriaNr" Type="Int32" /> <asp:Parameter Name="KaartNr" Type="String" /> <asp:Parameter Name="Beschrijving" Type="String" /> </InsertParameters> <SelectParameters> <asp:ControlParameter ControlID="txtKaartNr" Name="KaartNr" PropertyName="Text" Type="String" /> </SelectParameters> <UpdateParameters> <asp:Parameter Name="KaartNr" Type="String" /> <asp:Parameter Name="Beschrijving" Type="String" /> <asp:Parameter Name="CriteriaNr" Type="Int32" /> </UpdateParameters> </asp:SqlDataSource> <br /> <br /> <br /> <br /> <br />

90


</td> </tr> </table> <br />     <asp:SqlDataSource ID="dtsGrootsteGetal" runat="server" ConnectionString="<%$ ConnectionStrings:cnnBrandweer %>" ProviderName="<%$ ConnectionStrings:cnnBrandweer.ProviderName %>" SelectCommand="SELECT MAX(CriteriaNr) FROM BPFtblCriteria;"> </asp:SqlDataSource> <br /> </asp:Panel> <br /> <br /> <br />

</asp:Content>

91


4.4.4

Web.config

<?xml version="1.0"?> <configuration> <system.web> <authorization> <allow users="Beheerder"/> <deny users="?"/> <allow users ="*"/> </authorization> <compilation debug="true" strict="false" explicit="true" targetFramework="4.0"/> </system.web> </configuration>

92


5

Engels

5.1

List of 10 suppliers

Supplier

Website

Contact

Dell

www.dell.com

Phone: 0844 338 1080

E-mail: ukcustomerservices@cit.com

phone: 0800-266 7272

http://www8.hp.com/nl/nl/contacthp/contact.html On this website you can email them or chat with them.

Phone : 0870 853 1005

E-mail : support@acer.com

Hewlett Packard

www.hp.com

Acer

www.acer.com

Nvidea

www.nvidia.co.uk/page/home.html

Phone: 0044 (118) 903 3000

AMD

www.amd.com

Phone: 408-749-4000

http://emailcustomercare.amd.com/ to email them

Adobe

www.adobe.com

Phone: 0207 365 0735

Pixmani a

www.pixmania.co.uk

Phone: 02 620 03 22

Sony

www.sony.com

Phone: 239-768-7547

E-mail: https://esupport.sony.com/US/perl/contac t-email.pl? On this website you can email them if you create an account first.

Phone: 020 - 500 1500

http://support.microsoft.com/contactus/? ws=mscom On this website you can chat with them, or email them.

Phone: 08705 332200

E-mail: uksales_ie@oracle.com

Microso ft

www.microsoft.com

Oracle

www.oracle.com/global/uk/index.htm l

93


5.2

Letter of enquiry

5.2.1

Sony

Yuniit Baron de Ruzettelaan 66 8310 Assebroek info@yuniit.be

2011-11-08

Sony Belgium - Customer Information Center Technologielaan 7 1840 Londerzeel

Letter of enquiry

Dear Sir or Madam We have found your address on your website on our search for a software and hardware supplier. Our company Yuniit has made good profits last year. Now we want to expand to the rest of the world. Before we do that, we want to make sure we have a good communications system between each department of our company. In order to achieve that, we will need good servers, cables, switches ‌ We also need a good and easy-manageable operating system. In the future, we might also consider to connect all our LANS in a WAN so the hardware has to be able to achieve that. We have been looking up large hardware and software suppliers, eligible to supply us. Could you please send us an quotation with your possible hardware, operating systems and prices? We look forward to further corporation in the future. Yours faithfully,

Paul Hurlebusch 94


5.2.2

Hewlett-Packard

Yuniit Baron de Ruzettelaan 66 8310 Assebroek info@yuniit.be

2011-11-08

Hewlett-Packard Belgium Hermeslaan 1A 1831 Diegem hpinfo@hp.com

Letter of enquiry

Dear Sir or Madam, It has been a few years since we bought new computers for our staff. But with the emergence of Windows 7 we thought it is time for a renewal of our system. To do so we went to a lot of websites of hardware suppliers. On your website the product HP Omni 100-5010uk Desktop PC has come to our attention. It has the product-number XH893EAD. We would love some extra information on this computer. Also we would like to know if you could make us any special offer if we buy a hundred. If you have some other interesting deals, you can send them to us. We also want to know more about your support. Do you come and install the computers or do we have to install them ourselves? And what happens if a pc crashes? We look forward to a partnership in the future. Yours faithfully,

Paul Hurlebusch 95


5.3

SME

5.3.1

text

We are going to give some information about the enterprise “SME Web Design”, which is a SME. SME stands for Small Medium Enterprise. This enterprise is located in Great Britain. Products What they do is naturally more than just web design and web hosting, they have a team of several persons who are specialized in their part of the job. The Graphic designs are made with Adobe Photoshop, this program is well-known in the IT business, and it stands for quality and simplicity. To save the information from the website they need a Database, therefore they use an SQL server which we also use at school. The main parts of the websites are made in ASP.NET and JavaScript, these are programming languages which are very popular. Additionally they have a team which makes very attractive videos (for example as an intro to the main page). They also make Virtual tour imagery, this term isn’t that know, it’s basically making an image which you can turn around (360°) with your cursor, which is very interesting to show an object on a 2D screen. History This company was established in 2000 by Geoff Johns who had experience for over 20 years in the IT sector. He describes himself as a hands-on, get-involved, team-player, project manager who focuses on getting the job done and delivering more than the expected. Geoff Johns works together with his team, he’s specialised in databases. Human Resources The most important employees are David Abell and Geoff Johns (the founder of the SME). David is specialised in Web design and Search engine optimisation, Geoff is specialised in SQL server, Microsoft Access, ASP.NET and JavaScript. Next to them they have a team of about 4 persons who work on the other parts of the website (They are mentioned in the part about the Products) Portfolio In ten years they collected a portfolio which contains about 100 websites, maybe this doesn’t sound a lot but they also have a lot of work with keeping the website up-to-date and still making them better. Some websites they made: Oodles Cover Love Us Or Leave Us 96


SME Web Design (their own website) Future They are interested in extending the scope of their business by developing their websites with professional graphic designers and web designers. They also want to enlarge the amount of sites that they are currently keeping up-to-date. Maybe they will take another employee, but that is not for the near future. European Dimension Because of the new technology, out SME is thinking about getting clients from other countries than the UK. They want to bring their consulting to a new level, and to do so they would like to have live video conferences with their clients. It’s however just an idea that they have, and they don’t know if they are going to do it or not. 5.3.2

Powerpoint

Florian Dieleman & Paul Hurlebusch

Products Services • Web Development • Web Hosting

Structure • Graphic design • Databases • ASP/Javascript • Videos • Virtual tour imagery

97


History • Established in 2000 • Founded By Geoff Johns

Human Resources • Most important employees

David Abell

Geoff Johns

European Dimension • They think about expanding over the world • They would give support via live video conferences

98


The Future • Extend the scope • Work together with professionals • Extend the amount of websites to keep up-to-date • Maybe take another employee

Portfolio • More then 100 sites in 10 years • Some examples

99


Besluit De Ge誰ntegreerde proef was een zeer leerrijke ervaring. Hoewel er soms problemen waren bij het tijdig indienen van de opdrachten, hoop ik toch dit eindwerk tot een goed einde gebracht te hebben. Ik heb in elk geval enorm veel bijgeleerd op het gebied van programmeren. Het was een interessante uitdaging om alle kennis die we in de derde graad hebben opgedaan toe te passen en uit te werken via deze GIP opgave.

100


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.