Studiegebied Handelswetenschappen en Bedrijfskunde Bachelor Toegepaste Informatica Afstudeerrichting - Academiejaar Student.

Maat: px
Weergave met pagina beginnen:

Download "Studiegebied Handelswetenschappen en Bedrijfskunde Bachelor Toegepaste Informatica Afstudeerrichting - Academiejaar 2007-2008 Student."

Transcriptie

1 Stage Eindwerk Studiegebied Handelswetenschappen en Bedrijfskunde Bachelor Toegepaste Informatica Afstudeerrichting - Academiejaar Student Bart Matthys Elektronisch uitgeven STATS.6minutes.be De automatisering van statistische rapportage op een systeem van elektronische nieuwsbrief tracking Stageplaats Index NV Veurne

2

3 Voorwoord Dit project heb ik uitgewerkt in het kader van de stage die ik volgde bij Index NV te Veurne als laatstejaarsstudent Professionele Bachelor Toegepaste Informatica aan de Hogeschool West- Vlaanderen departement Simon Stevin. Eerst en vooral zou ik Index willen bedanken voor het aanbieden van de stageplaats en voor de vriendelijke ontvangst die ik gekregen heb. Zij hebben mij de kans gegeven om een kijkje te nemen in het bedrijfsleven en alvast wat ervaring op te doen. De stageopdracht waar ik 13 weken lang mee geconfronteerd werd heb ik voornamelijk zelfstandig uitgewerkt, maar toch kon ik altijd rekenen op de expertise en hulp van mijn stagementor Pedro Decock als ik door een probleem niet verder kon of ergens raad bij nodig had. Ook wil ik de opdrachtgever van het project, Toon Lowette, bedanken voor de tijd die hij gestoken heeft in het verzorgen van een heleboel input en feedback om het project in goede banen te leiden. Tenslotte wil ik mijn stagebegeleider Dirk Vandycke bedanken om mijn project op te volgen en te begeleiden. Aan hem heb ik enkele goede tips te danken omtrent het project en stageverslag en een oplossing in verband met de gebruikte databank die mij een heel stuk verder bracht! Voorwoord 3

4 Abstract Dit dossier behandelt de uitwerking van mijn stageopdracht bij Index NV. Deze stageopdracht bestond er uit een applicatie te ontwikkelen voor de elektronische uitgever 6minutes die over enkele verschillende domeinen statistische informatie moet verschaffen aan zijn beheerders, medewerkers en adverteerders. Het omvat de tracking van elektronisch verzonden nieuwsbrieven die voor de verschillende 6minutes rubrieken of voor externe opdrachtgevers periodiek worden verzonden. Daarbij is het onder meer mogelijk om te bekijken hoeveel nieuwsbrieven er per uitgave geopend werden, en hoe vaak er op links naar de artikels of adverteerders binnen deze nieuwsbrieven geklikt werd. Daarnaast wordt er een beeld verschaft van de bijdrage die de verschillende medewerkers leveren en de populariteit van de door hun geschreven artikels. Verder verzorgt het systeem een uitgebreide rapportage over de abonnees van de verschillende nieuwsbrieven, zoals de verdeling van profielkenmerken (geslacht, woonplaats, beroep, etc.). Ten slotte werd er ook gewerkt aan integratie met MetriWeb, dat dagelijks per keyword op de 6minutes website het aantal bezoekers, bezoeken en pagerequests kan leveren. Op het einde van mijn stage kon ik de applicatie achterlaten op de door Index gehoste server van 6minutes waar hij nu ten volle benut kan worden. Hierdoor beschikken zij nu over een systeem waarmee statistieken en rapporten met een klik op de knop bekeken of gedownload kunnen worden, dat vervolgens voor allerhande doeleinden gebruikt kunnen worden. Abstract 4

5 Abstract (English) This file describes the realization on my practice term assignment at Index NV. The practice term assignment was to develop an application for the electronic publisher 6minutes that should provide statistical information over several areas to its administrators, staff members and advertisers. It includes the tracking of sent newsletters s that are sent periodically for various 6minutes topics or for external principals. That way it is possible to monitor how many newsletters were opened for each issue, and how often the links to the articles or advertisers were clicked. Other than that it provides an image of the contributions that the staff members delivered and the popularity of the articles they wrote. Beside that the system maintains extensive reports of the several newsletters' subscribers, such as a comparison of all their characteristics (sex, habitat, occupation etc.). Finally there has also been worked on integration with MetriWeb, that supplies the amount of visitors, visits and page requests on the 6minutes for every keyword on a daily basis. At the end of my practice term I left the application on the server that Index hosts for 6minutes, where it can now be put to full use. In doing so 6minutes now possesses a system that can be used to view or download statistics or reports by a click on the mouse, which can be used for various purposes. Abstract (English) 5

6 Inhoudsopgave Voorwoord... 3 Abstract... 4 Abstract (English)... 5 Inhoudsopgave... 6 Verklarende woordenlijst... 8 Het stagebedrijf... 9 Historiek... 9 Producten Analyse Huidige situatie Functionele eisen Voor beheer Over abonnees Voor adverteerders Voor medewerkers Niet-functionele eisen MoSCoW-methode Use-cases Paginastructuur Databank Realisatie Gebruikte software Webontwikkeling Algemeen ASP.NET Design View State Page Periode Control GridView Databank Klasse Telerik RadControls Pagina's Login Tracking nieuwsbrieven Tracking artikels Tracking advertenties en clicks Abonnees en abonnementen Gebeurtenissen Integratie met CIM Beheer Windows Service Algemeen Inhoudsopgave 6

7 Implementatie Tracking nieuwsbrieven samenvatten Ophalen CIM keyword-statistieken Genereren rapporten van het abonneeprofiel Verwerking oude databank gegevens Probleemstelling Verwerken tot samenvattingsgegevens Databankoptimalisatie Conclusie Kritische reflectie Algemeen Wat ik anders zou willen gedaan hebben Bronnen Colofon Voor akkoord verklaring Inhoudsopgave 7

8 Verklarende woordenlijst XML extensible Markup Language is een standaard voor het definiëren van formele markup-talen voor de representatie van gestructureerde gegevens in de vorm van platte tekst. Deze representatie is zowel machineleesbaar als leesbaar voor de mens. CIM CIM staat voor het Centrum voor Informatie over de Media. Het CIM stelt zich tot doel zijn leden op permanente en regelmatige basis binnen de kortst mogelijke termijn nauwkeurige en betrouwbare gegevens te leveren die noodzakelijk zijn voor de objectieve weergave en de optimalisering van de reclamebestedingen in België. MetriWeb MetriWeb is een meetinstrument van het CIM. Met dit meetinstrument wordt voor alle deelnemende sites gemeten hoeveel mensen een site, en specifieke pagina's binnen een site, bezoeken en wanneer ze dat doen. Telerik Telerik is een vooraanstaand verkoper van User Interface (UI) componenten voor ASP.NET, Windows Forms en.net rapportering oplossingen. Telerik helpt zijn klanten om ongekend rijke en interactieve applicaties te bouwen. CSS CSS staat voor Cascading Style Sheets. CSS is een techniek voor de stijl (vormgeving) van webpagina's. Die informatie kan in het HTML document zelf staan, maar ook in een extern document dat wordt geïmporteerd, wat ook wel stylesheet genoemd wordt. PDF PDF staat voor Portable Document Format. PDF is een de facto standaard voor de uitwisseling van elektronische documenten en formulieren die in hun oorspronkelijke vorm gereproduceerd moeten kunnen worden. Verklarende woordenlijst 8

9 Het stagebedrijf Historiek In het jaar 1992 wordt Index NV opgericht. Programmeurs werden aangetrokken om alle ontwikkelingen in eigen handen te kunnen nemen. Het eerste product van Index, de Index Fiscale Databank, wordt een feit. Initieel was Index gehuisvest in de kantoren van Immo La Terrasse aan de Koninklijke Baan 172 te Koksijde. Deze behuizing werd al snel te klein en in 1994 werd een nieuwe locatie gevonden : de Zonstraat 36 te Koksijde. Vanaf 1995 kiest Index resoluut de weg van het internet, dat op dat moment in België nog relatief onbekend is. Drie jaar na de vorige verhuis, barst Index in 1997 alweer uit zijn voegen. De gebouwen van de voormalige drukkerij Pattyn te Veurne werden aangekocht. Tot op vandaag is Index nog steeds op de huidige locatie gevestigd. In 1998, na zes jaar ontwikkeling, wordt het personeelsbestand uitgebreid naar acht medewerkers en worden alle producten volop gecommercialiseerd. De eerste ontwikkelingen voor de vastgoedmarkt zijn tevens een feit. Rond het jaar 2000 is de klantenportefeuille van de Index Fiscale Databank uitgegroeid tot zo n 1000 klanten. Vanaf het jaar 2002 richt Index zich ook tot de markt van de websites en de intranetten. Op heden heeft Index een mooie klantenportefeuille uitgebouwd voor elk van z n producten. Het stagebedrijf 9

10 Producten Index extended Edition Vakpers, boekhoud-, handels- en vennootschapsrecht, directe belastingen, BTW, Kadaster, successie, registratie en domeinen, rechtspraak, sociale zekerheid, jaarrekeningen,... Index extended bundelt, sorteert, klasseert en archiveert voor u elke dag opnieuw alle professionele informatie. Uitgeversonafhankelijk geven wij u de standpunten van zowel de administratie, rechtspraak als de volledige vakpers mee. Index extended geeft u naast deze schat aan fiscale en boekhoudkundige informatie tevens toegang tot uiterst interessante bijkomende modules ( I-VAT Web Assistant, jaarrekeningen, financiële analyses,... ). Web De Index Web Manager biedt u de mogelijkheid om uw website zelf volledig aan te passen. IWM is een zeer gebruiksvriendelijke editor die iedereen toelaat om webpagina s te beheren. Geen specifieke voorkennis of technische bagage is vereist om met dit systeem overweg te kunnen. Bijmaken, wijzigen of verwijderen, werken met IWM houdt in dat u de baas bent in uw eigen webhuis. Index ontwerpt de layout op basis van uw wensen, rekening houdend met het logo en de huisstijl. Daarna kan u met uw persoonlijke gebruikersnaam en wachtwoord gebruik maken van de online editor waar en wanneer u maar wil. Intranetten Reeds jaren houdt Index Development zich bezig met intranet-technologie. Bedrijven, groeperingen, verenigingen... kunnen via een gesloten en beveiligd internetgedeelte met elkaar communiceren op een zeer snelle en kostenbesparende manier. Dit intranet is enkel toegankelijk voor leden. Een intranet kan aanzien worden als een "one stop shopping point" vermits er databanken en softwareprogramma's in vervat zitten. Het doel van dit intranet is het op een gestructureerde wijze aanbieden van alle relevante informatie die de professionele gebruiker in zijn dagelijkse praktijk nodig heeft en kan gebruiken. Deze "afgesloten website" is opgebouwd uit verschillende onderdelen: Interactief; Het interactieve luik van het intranet heeft als doelstelling de communicatie tussen Index NV en haar leden, alsook tussen de leden onderling te vereenvoudigen. Databanken; Hieronder vindt u een overzicht van alle databanken die te raadplegen zijn op het Index-intranet. Enkele van deze databanken zijn gratis, andere zijn dan weer betalend en kunt u dankzij dit intranet tegen een voor u voordelige prijs raadplegen. Tools; Enkele programma's die het werk van de professional vergemakkelijken en hem opmerkelijke tijdswinst opleveren. Het stagebedrijf 10

11 Analyse Huidige situatie 6minutes Press bvba is een uitgever van gratis nieuwsbrieven en de 6minutes website. Zowel nieuwsbrieven als site zijn een eigen journalistiek product gebaseerd op segmentatie, selectie en synthese, met de bedoeling de lezer in beperkte tijd kennis te laten nemen van de meest relevante informatie voor zijn of haar interessegebied. Sinds enige tijd worden de nieuwsbrieven van 6minutes elektronisch per verzonden. Zowel de 6minutes website als de infrastructuur om het verzenden van de nieuwsbrieven mogelijk te maken zijn ontworpen en gehost door Index NV. Omdat advertenties de voornaamste inkomsten vormen voor 6minutes, is het belangrijk dat de cijfers die hieromtrent belangrijk zijn voor adverteerders in kaart worden gebracht. Voor de website bestaat er al een uitgebouwd systeem van DoubleClick en van Google (Google Ads). Voor de advertenties in de nieuwsbrieven echter bestaat er niet zo'n systeem. Wel zijn er al de nodige voorzieningen getroffen om zo'n systeem mogelijk te maken: Zo zijn er verborgen afbeeldingen in de nieuwsbrieven gestoken die linken naar een afbeelding die met het abonneeid en nieuwsbriefid als parameters linkt. Op die manier wordt elke keer wanneer een nieuwsbrief geopend wordt een record toegevoegd in de TRACKEML-tabel op de (MS)SQL server. Daarnaast worden alle links in een nieuwsbrief omgevormd tot url's naar de 6minutes website die forwarden naar de desbetreffende link. Ook hier worden het abonneeid en nieuwsbriefid meegegeven als parameters en deze worden door de forward pagina toegevoegd aan de TRACKURL-tabel. Het is mogelijk om rapporten voor deze gegevens te maken met SQL instructies. Maar dat vereist toegang tot de MSSQL server, die eigelijk zo veel mogelijk afgeschermd moet worden. Daarnaast is het opstellen van rapporten op deze manier een zware karwei, er kruipt immers veel tijd in om telkens SQL instructies te wijzigen wanneer de vraag verandert en deze gegevens dan in rapporten te verwerken. Zo ontstond de nood om een speciaal hiervoor toegewijde applicatie hiervoor te ontwikkelen: stats6minutes was geboren, alsook mijn stageopdracht! Analyse 11

12 Functionele eisen Voor beheer In deze groep gaat het vooral over instrumenten waarmee 6minutes de evolutie van gebruik van site en nieuwsbrieven kan volgen. Toegang: alleen het 6minutes beheer Tracking van openen van nieuwsbrieven per editie het aantal verzonden en geopende nieuwsbrieven per afgesloten dag, week, maand, kwartaal en jaar het aantal verzonden en geopende nieuwsbrieven voor alle nieuwsbrieven samen per abonnee het aantal geopende nieuwsbrieven per maand - onderscheid tussen 6minutes-nieuwsbrieven en opdrachtnieuwsbrieven per abonnee de datum van de laatst geopende 6minutes-nieuwbrief per abonnee het aantal ontvangen en geopende advantag s per abonnee de datum van de laatst geopende advantag Tracking van kliks op links in nieuwsbrieven per advertentie en per landingpage het aantal kliks per advertentie en per dag het aantal kliks per adverteerder en per advertentie het aantal kliks voor opgegeven sites of nieuwsbrieven per editie en per landingpage het aantal kliks naar niet-6minutes links naar landingpages van Diskidee in nieuwsbrieven van PC Professional naar landingpages van Wijnidee in nieuwsbrieven van Wijnidee naar landingpages van easymro in easymro nieuwsbrieven NL-FR naar eventueel andere voor de links naar de site van 6minutes per maand het aantal kliks op links zoals homepage, colofon, etc. Stats over aantal gelezen artikels (views) per taal de lijst van meest frequent gelezen artikels, sorteermogelijkheid op datum, views of auteur, voor de laatste lopende week, maand, kwartaal, jaar per rubriek aantal keer dat een artikel is opgevraagd, sorteermogelijkheid op datum of views per auteur aantal keer dat een artikel is opgevraagd, sorteermogelijkheid op datum of views per editie van nieuwsbrief het totaal van de views van de artikels in die nieuwsbrief Analyse 12

13 per auteur overzicht van het aantal artikels, aantal views en gemiddeld views/artikel voor de meest recente 30 en 90 dagen gemiddeld aantal views per artikel per taal Stats over aantal gelezen gebeurtenissen (views) totaal aantal views van gebeurtenissen per afgesloten dag, week, maand, kwartaal en jaar totaal aantal views per gebeurtenis totaal aantal views per kalenderdag, ongeacht het jaar van de gebeurtenis Stats over bezoekers, bezoeken en pagerequests Die worden bij CIM dagelijks berekend met maandelijkse overzichten. Over abonnees In deze groep gaat het vooral over de analyse van het profiel van de abonnees over de hele site en per nieuwsbrief. Abonnees totaal aantal abonnees, en totaal per taal het zou een mooie gimmick zijn om op de site een knop te hebben waarbij mensen kunnen klikken voor het real time aantal abonnees overzicht van aantal abonnees per titel, afzonderlijk NL en FR, en samen met daarbij een berekening van het aantal verzonden mails over de laatste maand Profiel voor het hele bestand verdeling van de profielkenmerken per taalgroep verdeling van profielkenmerken voor elke nieuwsbrief verdeling van de profielkenmerken overzicht van landen met aantal abonnees hoeveel abonnementen heeft een gemiddelde abonnee per profielkenmerk Abonnementen gemiddeld aantal nieuwsbrieven hoeveel abonnementen hebben abonnees van elke titel gemiddeld voor welke andere titels zijn de abonnees geabonneerd hoeveel abonnees per titel hebben slechts één nieuwsbrief, en wie zijn zij Providers hoeveel abonnees hebben adres bij hotmail, gmail, skynet/belgacom, telenet/pandora idem per nieuwsbrief Analyse 13

14 clients - browsers hoeveel abonnees gebruiken Outlook, Thunderbird, LotusNotes, Eudora,... hoeveel abonnees gebruiken IE, Firefox, Apple, Opera... hoeveel abonnees gebruiken Windows (versies), MacOS, Linux, Sun... Voor adverteerders In deze groep gaat het vooral over de rapportering van het succes van advertenties in de nieuwsbrieven, en enkele andere die nuttig zijn voor de reclameregie Beweb. Met downloadmogelijkheid (excel en PDF). rapportering met aantal verzonden, aantal geopende, aantal kliks, % geopend op verzonden, % kliks op verzonden, % kliks op geopend; per advertentie en per landingpage met totalen aantal kliks per advertentie per dag overzicht per adverteerder Toegang: koppelen aan toegang voor reclame-invoer; alleen die resultaten kunnen worden opgevraagd waarvoor ook advertenties zijn ingevoerd. Voor medewerkers In deze groep gaat het vooral over hoe vaak artikels gelezen zijn, per medewerker, en een combinatie met advertentiegegevens voor die gevallen waar de inkomsten van de medewerker afhangen van de reclame-inkomsten. Met downloadmogelijkheid (excel). Overzicht eigen artikels Bijkomend bij wat in het eerste deel (beheer) is omschreven over artikels: ranking van de meest gelezen artikels per medewerker aangezien een medewerker in meer dan één rubriek kan schrijven: combineren met keuze per rubriek overzicht met rubriek, titel artikel, aantal views, datum, aantal dagen sinds publicatie idem met ingang rubriek en combinatie met medewerker Toegang: elke medewerker de rubrieken waarin zijn artikels staan; mag ook zicht geven op andere medewerkers in die rubrieken. overzicht van meest gelezen artikels voor heel de site Toegang: 6minutes beheer Analyse 14

15 Niet-functionele eisen De presentatie van de resultaten is in principe webpagina's. Hiervoor moet ASP.NET gebruikt worden. Voor statistieken waar grafieken van pas komen kunnen Telerik RAD controls gebruikt worden die makkelijk te integreren zijn in ASP.NET pagina's. In sommige gevallen is downloaden voor excel of pdf ook van toepassing. Hiervoor kan gebruik gemaakt worden van externe bibliotheken om deze bestanden te genereren, zoals itextsharp of PDFSharp om PDF bestanden te maken. De gegevens die nodig zijn voor de rapportering zijn grotendeels reeds aanwezig op een MSSQL databank. De statistieken van CIM zijn te vinden op een beveiligde web directory. Frequentie van berekening: niet alles moet in real-time berekend worden, veel gegevens uit de overzichten mogen op een kalm moment berekend worden. Hiervoor is het belangrijk om per onderdeel te bekijken wat er real-time kan berekend worden en wat er beter op een kalm moment gebeurt. Analyse 15

16 MoSCoW-methode Must Een tracking van kliks op links in nieuwsbrieven leveren Een tracking van kliks op advertenties leveren Een tracking van kliks op 6minutes-links vanuit nieuwsbrieven leveren Statistieken over het aantal gelezen artikels leveren Een overzicht van de abonnees leveren Should Statistieken over bezoekers, bezoeken en page requests leveren Statistieken over aantal gelezen gebeurtenissen leveren Een overzicht van de eigen artikels leveren Samenvatten van gegevens die niet real-time berekend moeten worden Could Overzichten van het profiel van abonnees leveren Overzichten van clients, browsers, etc. van abonnees leveren Een adressenlijst van inactieve abonnees exporteren Would / Won't Overzichten van clients, browsers, etc. van abonnees leveren Een adressenlijst van inactieve abonnees exporteren Analyse 16

17 Use-cases Nummer use-case: 1 Naam use-case: Inloggen Doel: De gebruiker toegang geven tot de statistieken waartoe hij gemachtigd is. Korte beschrijving: De gebruiker logt in. Actoren: alle geregistreerde gebruikers: beheerders, medewerkers en adverteerders Uitvoeringsfrequentie: hoog Schaalbaarheid: middelmatig Kritikaliteit: hoog Overige niet-functionele eisen: De gebruiker moet in de databank aanwezig zijn. Precondities: geen Postcondities: De gebruiker is ingelogd. Primaire pad: De gebruiker gaat naar het loginscherm. De gebruiker voert zijn gebruikersnaam en wachtwoord in. De gebruiker klikt op Inloggen. Het systeem verifiëert de gebruiker en meldt de gebruiker aan. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Nummer use-case: 2 Naam use-case: Uitloggen Doel: De gebruiker uitloggen. Korte beschrijving: De gebruiker logt uit. Actoren: alle geregistreerde gebruikers: beheerders, medewerkers en adverteerders Uitvoeringsfrequentie: middelmatig Schaalbaarheid: middelmatig Kritikaliteit: middelmatig Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: De gebruiker is uitgelogd. Primaire pad: De gebruiker gaat naar het overzichtscherm. De gebruiker klikt op Uitloggen. Het systeem meldt de gebruiker af en stuurt de gebruiker naar het loginscherm. Use-cases gerelateerd aan primaire pad: geen Alternatieven: De gebruiker wordt automatisch uitgelogd als zijn web-sessie verlopen is. Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Analyse 17

18 Nummer use-case: 3 Naam use-case: CIM login wijzigen Doel: De CIM login gegevens wijzigen. Korte beschrijving: De CIM login gegevens wijzigen die door de site gebruikt worden om statistieken van CIM te downloaden en te verwerken. Deze login gegevens worden maandelijks door CIM gewijzigd en de beheerder ontvangt hiervoor maandelijks een met de nieuwe login. Actoren: beheerders Uitvoeringsfrequentie: maandelijks Schaalbaarheid: laag Kritikaliteit: hoog Overige niet-functionele eisen: De gebruiker moet beschikken over de nieuwste CIM login gegevens. Precondities: De gebruiker moet ingelogd zijn. Postcondities: De CIM login gegevens zijn gewijzigd. Primaire pad: De gebruiker klikt op Ga naar beheer en vervolgens op Beheer CIM toegang. De gebruiker voert de nieuwe gebruikersnaam en wachtwoord in. De gebruiker klikt op Opslaan. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: In normale omstandigheden verandert enkel het wachtwoord en niet de gebruikersnaam. Nummer use-case: 4 Naam use-case: Site met domeinen toevoegen Doel: Toevoegen van een site met domeinen. Korte beschrijving: In een onderdeel van de site is het mogelijk om de clicks voor een bepaalde site per nieuwsbrief te bekijken. Hiervoor moet de site met zijn domeinen toegevoegd worden. Actoren: beheerders Uitvoeringsfrequentie: relatief laag Schaalbaarheid: laag Kritikaliteit: middelmatig Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: De site met domeinen is toegevoegd. Primaire pad: De gebruiker klikt op Ga naar beheer, Beheer domeinen sites en partnersites en daarna op Toevoegen. De gebruiker vult de naam van de site in en klikt op Toevoegen. De gebruiker voegt daarna domeinen tot de site toe door telkens de domeinnaam in te vullen en op Toevoegen te klikken Use-cases gerelateerd aan primaire pad: Site domeinen wijzigen, Site met domeinen verwijderen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Analyse 18

19 Nummer use-case: 5 Naam use-case: Site domeinen wijzigen Doel: Wijzigen van de domeinen van een site. Korte beschrijving: In een onderdeel van de site is het mogelijk om de clicks voor een bepaalde site per nieuwsbrief te bekijken. Hiervoor moeten de domeinen van een site gewijzigd kunnen worden. Actoren: beheerders Uitvoeringsfrequentie: laag Schaalbaarheid: laag Kritikaliteit: middelmatig Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: De domeinen van een site zijn gewijzigd. Primaire pad: De gebruiker klikt op Ga naar beheer, Beheer domeinen sites en partnersites en kiest dan een site en klikt op domeinen. De gebruiker voegt daarna domeinen tot de site toe door telkens de domeinnaam in te vullen en op Toevoegen te klikken, of verwijdert een domeinnaam door deze te selecteren en op Verwijderen te klikken. Use-cases gerelateerd aan primaire pad: Site met domeinen toevoegen, Site met domeinen verwijderen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Nummer use-case: 6 Naam use-case: Site met domeinen verwijderen Doel: Verwijderen van een site met domeinen. Korte beschrijving: In een onderdeel van de site is het mogelijk om de clicks voor een bepaalde site per nieuwsbrief te bekijken. Hiervoor moeten de sites met zijn domeinen verwijderd kunnen worden. Actoren: beheerders Uitvoeringsfrequentie: laag Schaalbaarheid: laag Kritikaliteit: middelmatig Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: De domeinen van een site zijn gewijzigd. Primaire pad: De gebruiker klikt op Ga naar beheer, Beheer domeinen sites en partnersites en kiest dan een site en klikt op verwijderen. Use-cases gerelateerd aan primaire pad: Site met domeinen toevoegen, Site domeinen wijzigen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Analyse 19

20 Nummer use-case: 7 Naam use-case: Tracking nieuwsbrieven weergeven Doel: Het weergeven van de nieuwsbrieftracking voor een editie. Korte beschrijving: Trackinggegevens zoals aantal keren verzonden en geopend per nieuwsbrief weergeven voor een bepaalde editie, met de mogelijkheid om deze gegevens te exporteren naar Excel of PDF. Actoren: beheerders Uitvoeringsfrequentie: regelmatig Schaalbaarheid: middelmatig Kritikaliteit: relatief hoog Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: De gebruiker beschikt over de gewenste nieuwsbrief tracking gegevens. Primaire pad: De gebruiker klikt op Tracking openen nieuwsbrieven per editie. De gebruiker kiest een editie. De gebruiker stelt een periode in en klikt op Weergeven. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Nummer use-case: 8 Naam use-case: Tracking van alle nieuwsbrieven weergeven Doel: Het weergeven van de nieuwsbrieftracking voor alle edities. Korte beschrijving: Trackinggegevens zoals aantal keren verzonden en geopend voor alle nieuwsbrieven van elke editie, met de mogelijkheid om deze gegevens te exporteren naar Excel of PDF. Actoren: beheerders Uitvoeringsfrequentie: regelmatig Schaalbaarheid: middelmatig Kritikaliteit: relatief hoog Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: De gebruiker beschikt over de gewenste nieuwsbrief tracking gegevens. Primaire pad: De gebruiker klikt op Tracking openen alle nieuwsbrieven. De gebruiker stelt een periode in en klikt op Weergeven. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Analyse 20

21 Nummer use-case: 9 Naam use-case: Stats artikels per auteur/rubriek weergeven Doel: Het weergeven van statistieken over artikels per auteur en/of rubriek. Korte beschrijving: Voor ieder artikel wordt weergegeven hoeveel views er geweest zijn, voor een bepaalde auteur of voor alle auteurs samen en voor een bepaalde rubriek of voor alle rubrieken samen, met de mogelijkheid om deze gegevens te exporteren naar Excel of PDF. Actoren: beheerders, medewerkers Uitvoeringsfrequentie: regelmatig Schaalbaarheid: middelmatig Kritikaliteit: relatief hoog Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: De gebruiker beschikt over de gewenste artikel-statistieken. Primaire pad: De gebruiker klikt op Artikels per auteur en/of rubriek. De gebruiker kiest een auteur of selecteert Alle auteurs. De gebruiker kiest een rubriek of selecteert Alle rubrieken. De gebruiker stelt een periode in en klikt op Weergeven. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: Medewerkers kunnen enkel het aantal views raadplegen op artikels die in één van de rubrieken staan waar hij zelf voor geschreven heeft. Nummer use-case: 10 Naam use-case: Stats voor alle auteurs weergeven Doel: Het weergeven van statistieken over artikels voor alle auteurs. Korte beschrijving: Er wordt voor iedere auteur weergegeven hoeveel artikels hij/zij gepubliceerd heeft en het totale aantal views op deze artikels alsook de gemiddelde populariteit, met de mogelijkheid om deze gegevens te exporteren naar Excel of PDF. Actoren: beheerders Uitvoeringsfrequentie: regelmatig Schaalbaarheid: middelmatig Kritikaliteit: relatief hoog Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: De gebruiker beschikt over de gewenste artikel-statistieken. Primaire pad: De gebruiker klikt op Auteur overzicht. De gebruiker stelt een periode in en klikt op Weergeven. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Analyse 21

22 Nummer use-case: 11 Naam use-case: Tracking ads weergeven Doel: Het weergeven van advertentie statistieken voor een bepaalde adverteerder. Korte beschrijving: Voor iedere landingpage van een bepaalde adverteerder wordt weergegeven hoeveel clicks er geweest zijn, met de mogelijkheid om deze gegevens te exporteren naar Excel of PDF. Actoren: beheerders, adverteerders Uitvoeringsfrequentie: regelmatig Schaalbaarheid: middelmatig Kritikaliteit: relatief hoog Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: De gebruiker beschikt over de gewenste advertentie tracking gegevens. Primaire pad: De gebruiker klikt op Clicks advertenties. De gebruiker selecteert een adverteerder. De gebruiker stelt een periode in en klikt op Weergeven. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: Adverteerders kunnen enkel zichzelf als adverteerder selecteren. Nummer use-case: 12 Naam use-case: Tracking ads per dag weergeven Doel: Het weergeven van dagelijkse advertentie statistieken voor een bepaalde adverteerder. Korte beschrijving: Per dag worden voor iedere landingpage van een bepaalde adverteerder weergegeven hoeveel clicks er geweest zijn, voor een bepaalde editie of alle edities samen, met de mogelijkheid om deze gegevens te exporteren naar Excel of PDF. Actoren: beheerders, adverteerders Uitvoeringsfrequentie: regelmatig Schaalbaarheid: middelmatig Kritikaliteit: relatief hoog Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: De gebruiker beschikt over de gewenste advertentie tracking gegevens. Primaire pad: De gebruiker klikt op Clicks advertenties (per dag). De gebruiker selecteert een adverteerder. De gebruiker selecteert een editie of selecteert Alle edities. De gebruiker stelt een periode in en klikt op Weergeven. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: Adverteerders kunnen enkel zichzelf als adverteerder selecteren. Analyse 22

23 Nummer use-case: 13 Naam use-case: Tracking ads opdrachtnieuwsbrieven weergeven Doel: Het weergeven van advertentie statistieken voor een bepaalde opdrachtnieuwsbrief. Korte beschrijving: Voor iedere landingpage van een bepaalde opdrachtnieuwsbrief wordt weergegeven hoeveel clicks er geweest zijn, met de mogelijkheid om deze gegevens te exporteren naar Excel of PDF. Actoren: beheerders Uitvoeringsfrequentie: regelmatig Schaalbaarheid: middelmatig Kritikaliteit: relatief hoog Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: De gebruiker beschikt over de gewenste advertentie tracking gegevens. Primaire pad: De gebruiker klikt op Clicks advertenties opdrachtnieuwsbrieven. De gebruiker selecteert een opdrachtnieuwsbrief. De gebruiker stelt een periode in en klikt op Weergeven. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Nummer use-case: 14 Naam use-case: Clicks op site domeinen weergeven Doel: Het aantal clicks naar site domeinen weergeven. Korte beschrijving: Het aantal clicks naar bepaalde sites vanuit een bepaalde editie of vanuit alle edities samen weergeven. Deze sites en de domeinen die er toe behoren zijn instelbaar. Actoren: beheerders Uitvoeringsfrequentie: regelmatig Schaalbaarheid: middelmatig Kritikaliteit: relatief hoog Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: De gebruiker beschikt over de gewenste click statistieken. Primaire pad: De gebruiker klikt op Clicks domeinen 6minutes en partnersites. De gebruiker selecteert een opdrachtnieuwsbrief. De gebruiker stelt een periode in en klikt op Weergeven. Use-cases gerelateerd aan primaire pad: Site met domeinen toevoegen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Analyse 23

24 Nummer use-case: 15 Naam use-case: Abonnees overzicht weergeven Doel: Een overzicht van de abonnees weergeven. Korte beschrijving: Per editie het aantal abonnees weergeven, en een verdeling van landen waar de abonnees wonen weergeven. Actoren: beheerders Uitvoeringsfrequentie: af en toe Schaalbaarheid: middelmatig Kritikaliteit: relatief laag Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: De gebruiker beschikt over een overzicht van de abonnees. Primaire pad: De gebruiker klikt op Algemeen overzicht bij het onderdeel abonnees. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Nummer use-case: 16 Naam use-case: Abonnementen per editie weergeven Doel: Een verdeling van aantal abonnees per aantal abonnementen weergeven voor een bepaalde editie. Korte beschrijving: Een verdeling van aantal abonnees per aantal abonnementen weergeven voor een bepaalde editie. Actoren: beheerders Uitvoeringsfrequentie: af en toe Schaalbaarheid: middelmatig Kritikaliteit: relatief laag Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: Primaire pad: De gebruiker klikt op Aantal abonnementen van abonnees per editie. De gebruiker selecteert een editie Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Analyse 24

25 Nummer use-case: 17 Naam use-case: Overlappende abonnementen weergeven Doel: Het weergeven van de overlappende abonnementen op een bepaalde editie. Korte beschrijving: Voor een bepaalde editie wordt weergegeven hoeveel abonnees uit alle andere edities abonnee zijn van die geselecteerde editie, relatief aan hun eigen aantal abonnees. Actoren: beheerders Uitvoeringsfrequentie: af en toe Schaalbaarheid: middelmatig Kritikaliteit: relatief laag Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: Primaire pad: De gebruiker klikt op Overlappende abonnees per editie. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Nummer use-case: 18 Naam use-case: Rapporten profielkenmerken weergeven Doel: Een rapport weergeven met een verdeling van profielkenmerken voor een bepaalde editie. Korte beschrijving: Een rapport in PDF-formaat exporteren met een verdeling van profielkenmerken voor een bepaalde editie. Actoren: beheerders Uitvoeringsfrequentie: af en toe Schaalbaarheid: middelmatig Kritikaliteit: relatief laag Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: De gebruiker beschikt over het gewenste rapport van profielkenmerken. Primaire pad: De gebruiker klikt op Rapporten profielkenmerken per editie. De gebruiker selecteert een editie en klikt op Download PDF-bestand. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: Deze rapporteren worden iedere dag rond middernacht opnieuw gegenereerd. Analyse 25

26 Nummer use-case: 19 Naam use-case: Stats gebeurtenissen weergeven Doel: Het weergeven van alle gebeurtenissen en het aantal clicks per gebeurtenis. Korte beschrijving: Het weergeven van alle gebeurtenissen en het aantal clicks per gebeurtenis Actoren: beheerders Uitvoeringsfrequentie: af en toe Schaalbaarheid: middelmatig Kritikaliteit: relatief laag Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: Primaire pad: De gebruiker klikt op Statistieken gebeurtenissen. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Nummer use-case: 20 Naam use-case: Stats gebeurtenissen per dag weergeven Doel: Het weergeven van alle clicks op gebeurtenissen per dag. Korte beschrijving: Het weergeven van alle clicks op gebeurtenissen per dag. Actoren: beheerders Uitvoeringsfrequentie: af en toe Schaalbaarheid: middelmatig Kritikaliteit: relatief laag Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: Primaire pad: De gebruiker klikt op Statistieken gebeurtenissen per dag. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Analyse 26

27 Nummer use-case: 21 Naam use-case: Verdeling clicks 6minutes weergeven Doel: Het weergeven van een verdeling van clicks op 6minutes links uit nieuwsbrieven. Korte beschrijving: Het absolute en relatieve aantal clicks uit nieuwsbrieven naar de verschillende 6minutes onderdelen: artikels, gebeurtenissen, homepage, privacy-pagina en profiel-pagina. Actoren: beheerders Uitvoeringsfrequentie: af en toe Schaalbaarheid: middelmatig Kritikaliteit: relatief laag Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: Primaire pad: De gebruiker klikt op Verdeling clicks op 6minutes links uit nieuwsbrieven. De gebruiker stelt een periode in en klikt op Weergeven. Use-cases gerelateerd aan primaire pad: geen Alternatieven: geen Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: geen Nummer use-case: 22 Naam use-case: Stats CIM weergeven Doel: Het weergeven van CIM statistieken voor een bepaald keyword. Korte beschrijving: Per dag en per maand kan er gekeken worden hoeveel bezoekers en paginaverzoeken op de website er zijn voor een bepaald keyword. Actoren: beheerders Uitvoeringsfrequentie: regelmatig Schaalbaarheid: middelmatig Kritikaliteit: relatief hoog Overige niet-functionele eisen: geen Precondities: De gebruiker moet ingelogd zijn. Postcondities: Primaire pad: De gebruiker klikt op Statistieken CIM per keyword dagelijks en maandelijks. De gebruiker selecteert een keyword uit de lijst van keywords uit de laatste 7 dagen. Use-cases gerelateerd aan primaire pad: geen Alternatieven: De gebruiker klikt op Statistieken CIM per keyword dagelijks en maandelijks. De gebruiker zoekt een keyword via de zoekfunctie en selecteert deze. Use-cases gerelateerd aan alternatieven: nvt. Uitzonderingen: geen Use-cases gerelateerd aan uitzonderingen: nvt. Opmerkingen: Deze statistieken worden dagelijks geüpdatet. Analyse 27

28 Paginastructuur Hieronder ziet u de paginastructuur van de 6minutes statistieken website. De navigatie is eenvoudig: één enkele overzichtpagina linkt naar alle statistieken en rapporten en naar de beheerpagina. Login.aspx Overzicht.aspx Beheer.aspx BeheerCIM.aspx BeheerSites.aspx Pages Tracking nieuwsbrieven - TrackingOpenenNieuwsbrieven.aspx - TrackingOpenenAlleNieuwsbrieven.aspx Statistieken artikels - StatsArtikelsAuteurRubriek.aspx - StatsArtikels.aspx Tracking advertenties - TrackingAds.aspx - TrackingAdsDagelijks.aspx - TrackingAdsOpdrachtNB.aspx - TrackingAdsPartnersites.aspx Tracking abonnees - AbonneesOverzicht.aspx - AbonneesActiviteit.aspx - AbonneesAbonnementen.aspx - AbonneesProfiel.aspx Tracking gebeurtenissen - StatsGebeurtenissen.aspx - StatsGebeurtenissenDagelijks.aspx CIM statistieken - CIMstats.aspx - CIMstatsDetails.aspx Overige - TrackingClicks6Minutes.aspx Analyse 28

29 Databank 6minutes had reeds een bestaande databank, dus hiervoor was geen uitgebreide analyse meer nodig. Het merendeel van de voorzieningen om de gewenste statistieken weer te geven waren reeds voorzien in de bestaande tabellen: hier is enkel de tabel NieuwsbriefClicks aan toegevoegd die per nieuwsbrief bijhoudt hoe vaak ze geopend werd. De precieze functionaliteit hierachter wordt verder in dit dossier uitgelegd (zie p.61 Tracking nieuwsbrieven samenvatten). Hier ziet u het databankschema met de tabellen waar ik het meest mee te maken heb gehad: Analyse 29

30 Realisatie Gebruikte software Op het ontwikkelsysteem Besturingssysteem: Microsoft Windows XP Professional met het.net framework versie 2.0 Programmatuur: Microsoft Visual Web Developer 2005 Express Edition Dit is een gratis versie van Microsoft Visual Studio, specifiek om aan web projecten te werken. Dit volstond prima voor de opdracht die mij gegeven was. Microsoft SQL Server Management Studio Express Dit is een gratis versie van Microsoft SQL Server Management Studio. Het enige gebrek ten opzichte van de betaalde versie dat ik persoonlijk heb ervaren is de afwezigheid van de mogelijkheid om databank diagrammen te genereren. Microsoft Visual C# 2005 Express Edition Op de server Dit is een gratis versie van Microsoft Visual Studio, specifiek om aan C# applicaties te werken. Een gebrek ten opzichte van de betaalde versie is dat een groot deel van de applicatie-templates uit de betaalde versie niet beschikbaar zijn. Hierdoor moet je zelf op zoek naar code om bijvoorbeeld een Windows-service aan te maken. Besturingssysteem: Microsoft Windows Server 2003 met het.net framework versie 2.0 Programmatuur: Microsoft SQL Server 2000 Internet Information Services 6.0 Het plaatsen van de software en website op de server verliep bijna vlekkeloos. Het was enkel een kwestie van het juist instellen van NTFS machtigingen. Realisatie 30

31 Webontwikkeling Algemeen ASP.NET Design Alle ASP.NET pagina's werden gemaakt op basis van een masterpage. Een masterpage is een webpagina waarin je de lay-out en het uiterlijk van de website kan maken, waarbij de ASP.NET pagina's die op basis hiervan gemaakt werden de pagina inhoudelijk vullen door gebruik te maken van zogenaamde Content Placeholders die in de masterpage geplaatst werden. Voor dit project heb ik een relatief eenvoudige masterpage opgesteld met slechts één content placeholder: Voor de opmaak van de website wordt gebruik gemaakt van een appart CSS (Cascading Style Sheets) bestand. Het grote voordeel van het gebruik van een dergelijke stylesheet is dat opmaak voor een bepaald item, bijvoorbeeld een hyperlink, maar één keer moet gedefiniëerd worden in de stylesheet en dat alle pagina's die er gebruik van maken automatisch deze opmaak gebruiken voor hyperlinks. Omdat alle pagina's gebaseerd zijn op de masterpage en de masterpage met het CSS bestand gelinkt is zullen alle pagina's dus de aangepaste opmaak krijgen voor hyperlinks! Hieronder ziet u het stukje code uit het CSS bestand dat gebruikt wordt om hyperlinks een andere opmaak te geven. Code: a /* Een verwijzing naar <a>, de (X)HTML tag voor een hyperlink. */ { color:rgb(0,104,172); /* Geeft een lichtblauwe kleur */ text-decoration:underline; /* Onderlijnt de link */ } a:hover /* Dit is wijzigende opmaak die optreedt wanneer de muispijl over de link zweeft.*/ { text-decoration:none; /* Onderlijning weghalen */ } Realisatie 31

32 View State Page De ViewState in een ASP.NET pagina bewaart de staat van de server controls die zich op de pagina bevinden. Zo kan je bijvoorbeeld de gegevens uit invulvelden behouden nadat de gebruiker een postback heeft veroorzaakt. Een postback is meestal het klikken op een knop om gegevens naar de server te sturen, maar dit kan ook op andere manieren automatisch gebeuren. Standaard wordt de ViewState van een pagina bewaard in een verborgen veld die ASP.NET aan het formulier in de pagina toevoegt. Een belangrijk nadeel bij het gebruik van de ViewState is echter dat naarmate er steeds meer of omvangrijke server controls aan de ViewState toegevoegd worden de ViewState steeds groter wordt. En omdat de ViewState steeds heen en weer gestuurd wordt tussen client en server bij elke postback kan dit voor enige vertraging zorgen. Bij dit project merkte ik dat vooral de grotere GridView controls en Telerik RadControls zoals grafieken veel ruimte in beslag namen in de ViewState. Daarom ging ik onderzoeken of de ViewState in omvang kleiner gemaakt kon worden en of er een andere oplossing mogelijk was. Een voor de hand liggende oplossing was het gebruik van ViewState volledig vermijden en gebruik te maken van sessie-variabelen of het Cache object in.net, die langs de server kant gegevens kunnen bijhouden en die gebruikt kunnen blijven worden over verschillende postbacks heen. Het nadeel aan deze methode is echter dat er extra programmeerwerk aan te pas komt bij elke pagina waar je het wilt toepassen en dat het vrij omslachtig is om goed te implementeren. Dan ontdekte ik dat het mogelijk is om de ViewState gewoon te blijven gebruiken, maar deze in plaats van in het formulier te plaatsen, in sessie-variabelen of in het Cache object te bewaren langs de kant van de server. De manier waarop dit werkt is dat je een nieuwe klasse maakt op basis van de klasse Page, die de methode SavePageStateToPersistenceMedium en de functie LoadPageStateFromPersistenceMedium vervangt door zijn eigen implementatie. Door dan je ASP.NET pagina's op deze klasse te baseren in plaats van op de klasse Page, kun je transparant gebruik maken van het nieuwe systeem die de ViewState langs de kant van de server opslaat! Het gevolg is dat de formulieren in de webpagina's enkel een ViewStateKey bevatten om de juiste ViewState te koppelen aan die webpagina, en postbacks geen vertraging meer kennen vanwege het versturen van een grote ViewState. Onderzoek heeft uitgewezen dat dit een verbetering van maar liefst 500% aan doorstuur performantie kan betekenen ten opzichte van het gebruik van een ViewState op de klassieke manier. Op de volgende pagina vindt u een codevoorbeeld van een vereenvoudigde versie van een View State Page klasse die de ViewState in het Cache object bewaart. Realisatie 32

33 Code: public class VSPage : System.Web.UI.Page // Er wordt overgeërft van de Page-klasse { } protected override void SavePageStateToPersistenceMedium(object viewstate) /* De vervangende methode voor het opslaan van de ViewState. De klassieke methode zorgde voor het coderen en registreren van de ViewState als verborgen formulierveld. */ { // Er wordt een ViewStateKey gemaakt die deze ViewState moet identificeren: String strviewstatekey = "VIEWSTATE_" + Request.UserHostAddress + "_" + DateTime.Now.Ticks.ToString(); } // De ViewState wordt toegevoegd aan het Cache object: Cache.Add(strViewStateKey, viewstate, null, DateTime.Now.AddMinutes(Session.Timeout), TimeSpan.Zero, CacheItemPriority.Default, null); // De ViewStateKey wordt geregistreerd als verborgen formulierveld, samen een leeg // ViewState veld: RegisterHiddenField(" VIEWSTATE_KEY", strviewstatekey); RegisterHiddenField(" VIEWSTATE", ""); protected override object LoadPageStateFromPersistenceMedium() /* De vervangende functie voor het ophalen van de ViewState. De klassieke functie zorgde voor het ophalen van de ViewState uit een verborgen formulierveld. */ { // De ViewStateKey wordt opgehaald: String strviewstatekey = Request.Form[" VIEWSTATE_KEY"]; } // Als de ViewStateKey niet begint met "VIEWSTATE_" is het veld ongeldig. if (!strviewstatekey.startswith("viewstate_")) { throw new Exception("Ongeldige ViewStateKey: " + strviewstatekey); } // Haalt de ViewState uit het Cache object volgens de ViewStateKey, // en retourneert deze als functiewaarde: return Cache[strViewStateKey]; Realisatie 33

34 Periode Control In een groot deel van de rapporten en statistieken die voor het project verwezenlijkt moesten worden was er een methode nodig om een periode in te stellen: een begin- en einddatum die op een gebruiksvriendelijke manier aangeduid moet kunnen worden. Omdat dit iets is dat zo vaak hergebruikt moest worden, heb ik besloten hier een Web User Control van te maken. Een Web User Control is een ASP.NET component die éénmaal het opgemaakt en gecodeerd is, eenvoudig kan geplaatst worden in gewone ASP.NET pagina's of zelfs in een ander Web User Control component. De Periode Control moest 3 elementen bevatten: Een keuzelijst met voorgedefinieerde periodes die de gebruiker kan selecteren: Zelf kiezen, Vandaag, Gisteren, Laatste week, Laatste maand, Laatste 3 maanden, Laatste 6 maanden, Laatste jaar, Vorige week, Vorige maand, Vorige 3 maanden, Vorige 6 maanden en Vorig jaar. Een invoerveld om desgewenst manueel een begindatum in te stellen. Een invoerveld om desgewenst manueel een einddatum in te stellen. Voor de laatste twee elementen kon gebruik gemaakt worden van een control uit de Telerik RadControls collectie: RadDatePicker die onderdeel is van RadCalendar. Deze laat toe om zelf een datum in te vullen of één te kiezen met de grafische interface: De keuzelijst met voorgedefinieerde periodes werd ingesteld zodat deze automatisch de pagina herlaadt en zelf de passende begin- en einddatum invult. Om de invoervelden begin- en einddatum beschikbaar moesten zijn vanuit de ASP.NET pagina's heb ik het facade design-pattern gebruikt om dit te realiseren: het PeriodeControl component kreeg de functies DatumBegin en DatumEinde om respectievelijk de begin- en einddatum van de periode te verkrijgen. Alles samen werd dan in een (X)HTML tabel gegoten. Het eindresultaat: Hierna was het gebruiken van het PeriodeControl component slechts een kwestie van verslepen en plaatsen vanuit de Solution Explorer naar de ASP.NET pagina. Een Web User Control krijgt de extentie.ascx en het achterliggende codebestand.ascx.cs (cs staat hier voor C# oftewel CSharp, de gebruikte programmeertaal). Realisatie 34

35 GridView Het GridView control is een onderdeel van ASP.NET 2.0 en is de opvolger van de DataGrid in ASP.NET 1.0. Een GridView wordt gebruikt om gegevens in tabelvorm weer te geven, ze te sorteren en/of er totalen van te maken. Om dit te bereiken moeten de brongegevens met behulp van DataBinding aan de GridView gekoppeld worden. Voor het stats.6minutes.be project heb ik intensief gebruik gemaakt van het GridView control om gegevens mee weer te geven in de talrijke rapporten. De brongegevens waren meestal DataTables. DataBinding Het koppelen van een DataTable aan een GridView is eenvoudig te doen met twee regels code. Best voegen we de DataTable ook toe aan de ViewState zodat deze gebruikt kan worden voor sortering. Code: // De DataTable instellen als databron voor de GridView: GridViewTabel.DataSource = datatable; // De DataBinding doorvoeren: GridView.DataBind(); // Toevoegen van de DataTable aan de ViewState: ViewState["datatable"] = datatable; Sorteren Hieronder ziet u de code die gebruikt wordt om velden in de GridView te sorteren. Opdat deze code kan werken moet de naam van de methode als Sorting gebeurtenis ingesteld worden in de GridView. Daarnaast moet de eigenschap AllowSorting op True ingesteld worden en moet voor ieder veld waarop er gesorteerd moet kunnen worden een SortExpression eigenschap met een waarde bestaan dat normaal gezien overeenkomt met de naam van dat veld in de DataTable. Code: protected void GridViewTabel_Sorting(object sender, GridViewSortEventArgs e) { // De sorteerrichting ophalen, als die niet aanwezig is op ascending (oplopend) instellen: String dir = (ViewState["SortDir"]!= null? ViewState["SortDir"].ToString() : "ASC"); } // De omgekeerde sorteerrichting in de ViewState opslaan: dit is de sorteerrichting die // gebruikt zal worden als de gebruiker nogmaals op het veld sorteert. ViewState["SortDir"] = (dir == "DESC"? "ASC" : "DESC"); // Ophalen van de DataTable uit de ViewState: DataTable dt = (DataTable)ViewState["datatable"]; // Een DataView maken op basis van de DataTable, hierop kan sortering toegepast worden. DataView dv = new DataView(dt); // De sortering instellen: dv.sort = e.sortexpression + " " + dir; // De DataView als nieuwe databron voor de GridView instellen & de DataBinding doervoeren: GridViewTabel.DataSource = dv; GridViewTabel.DataBind(); Realisatie 35

36 Totalen weergeven Soms is het handig om totalen te zien voor bepaalde numerieke kolommen. Hiervoor moet wel het één en ander ingesteld en geprogrammeerd worden. Eerst en vooral moet de eigenschap ShowFooter op True worden ingesteld. Tevens moet er voor ieder veld waarvoor totalen gemaakt moeten worden een extra Label toegevoegd worden in de ASPX code van het veld zoals in het volgende voorbeeld te zien is: Code: <asp:templatefield HeaderText="Veld 1" SortExpression="waarde_veld1"> <ItemTemplate> <asp:label ID="Label1" runat="server" Text='<%# Bind("waarde_veld1") %>'></asp:label> </ItemTemplate> <FooterTemplate> <asp:label ID="TotVeld1" runat="server" /> </FooterTemplate> <FooterStyle Font-Names="Lucida Console" /> <ItemStyle Font-Names="Lucida Console" /> </asp:templatefield> Hieronder ziet u dan de achterliggende C# code die nodig is om de totalen in het extra veld uit het bovenstaande voorbeeld te zetten. De naam van deze methode moet ingesteld worden als RowDataBound gebeurtenis in de GridView. Code: protected int totveld1; protected void GridViewTabel_RowDataBound(object sender, GridViewRowEventArgs e) { DataRowView tabledata = e.row.dataitem as DataRowView; } // Initialiseer de totaalwaarde op 0 als de hoofding van de GridView gemaakt wordt: if (e.row.rowtype == DataControlRowType.Header) { totveld1 = 0; } // Vermeerder de totaalwaarde met de waarde van het veld in elke datarij: else if (e.row.rowtype == DataControlRowType.DataRow) { totveld1 += (int)tabledata["waarde_veld1"]; } // Zet de totaalwaarde in het footer-veld eens de datarijen overlopen zijn: else if (e.row.rowtype == DataControlRowType.Footer) { Label LabelVeld1 = e.row.findcontrol("totveld1") as Label; LabelVeld1.Text = totveld1.tostring(); } Realisatie 36

37 Databank Klasse Ik heb ervoor gekozen om voor de website stats.6minutes.be één partiële klasse te maken met de hoofdfunctionaliteit van de databank zoals het ophalen van gegevens in de vorm van DataTables of als enkele waarden (scalar values). En hieraan worden verschillende andere partiële klasses gekoppeld die de eigenlijke functies bevatten die gebruikt worden om gegevens op te halen in de verschillende webpagina's. Laatstgenoemde klasses bevatten dus de concrete SQL commando's. De hoofdfuncties in de databank-klasse zijn: // Functie om het resultaat van een SQL query als DataTable te retourneren: public DataTable GetDataTable(String sql) {... } // Functie om het resultaat van een prepared statement als DataTable te retourneren: public DataTable GetDataTable(String preparedstatement, params object[] parameters) {... } // Functie om de resultaten van een serie gelijkaardige SQL commando's aan elkaar te // plakken en te retourneren als DataTable zonder de onderlinge sortering te beïnvloeden: public DataTable GetDataTable(List<String> sqlreeks) {... } // Functie om het resultaat van een prepared statement als DataTable te retourneren: public Object GetScalar(String sql) {... } SQL injection Op een bepaald moment tijdens mijn stage werden enkele minder goed beveiligde websites op één van de servers van Index aangevallen door een type van SQL injection die alle tekstvelden vulde met een schadelijk stukje javascript. Dat deed voor mij een belletje rinkelen dat mijn project mogelijk ook vatbaar was voor SQL injection. Ik deed zelf de test, en inderdaad: het was vatbaar. Ik kon bijvoorbeeld de tabel nieuwsbriefclicks wijzigen door proberen in te loggen met de gebruikersnaam: '; update nieuwsbriefclicks set clicks = clicks Toen heb ik een functie aan de Databank-klasse toegevoegd die dit misbruik tegenhoudt met behulp van prepared statements. Hierbij wordt iedere parameter in de SQL query gecontroleerd en kan er geen SQL injection meer plaatsvinden. Realisatie 37

38 Telerik RadControls Voor mijn stageopdracht heb ik gebruik kunnen maken van dit softwarepakket dat door Index aangekocht werd. Telerik RadControls voor ASP.NET AJAX is een collectie van webcontrols die gebouwd zijn bovenop het ASP.NET AJAX framework. Met die controls kun je functionaliteit en interactiviteit aan een webpagina toevoegen. Overzicht RadControls componenten RadAjax Hiermee kun je AJAX applicaties maken zonder een enkele regel javascript te moeten schrijven. Je maakt hiervoor gebruik van Callback panels en Trigger settings. RadCalendar Met deze input-control kan de gebruiker een datum kiezen op een gebruiksvriendelijke manier. RadChart Hiermee kun je data weergeven door middel van een grafiek. Het is mogelijk om verschillende series toe te voegen, al dan niet van hetzelfde type. RadColorPicker Dit is een input-control waarmee de gebruiker een kleur kan kiezen uit een volledig configureerbaar kleurenpallet. RadCombobox Dit is een combobox met uitgebreide functionaliteit: Zo kan je dynamisch gegevens laten inladen, en is het mogelijk om auto-complete in te stellen. RadDock Deze control laat je toe om panelen te maken die voor de gebruiker verplaatsbaar en wijzigbaar in formaat zijn. Het is ook mogelijk om de aangepaste layout van een pagina met verschillende dergelijke panelen op te slaan en te herladen. RadToolBar Hiermee kun je toolbars maken met knoppen die zich gedragen alsof het een toolbar is uit een desktopapplicatie. RadFormDecorator Deze control voeg je toe aan een pagina om het uiterlijk van je formulieren te verbeteren. Zonder een regel code te schrijven pas je stijlen toe aan knoppen, inputvelden enzovoort. Realisatie 38

39 RadEditor Dit is een control die een volledige WYSIWYG (What You See Is What You Get) HTML editor bevat. Zo hebben gebruikers geen technische kennis nodig om een tekst met een HTML layout te maken. RadGrid Hiermee kun je data weergeven in tabelvorm op een klassieke manier of in de stijl van een Outlook Grid. Daarnaast is er ook nog Drag&Drop functionaliteit beschikbaar. RadInput Deze control laat geavanceerde input technieken toe. Het is ook de basis van verschillende andere Rad input-controls. RadMenu Hiermee kun je menu's aan je webpagina's toevoegen die er niet alleen goed uit zien maar ook gelijkwaardige functionaliteit bieden ten opzichte van zijn desktop-varianten. RadScheduler Met deze control kan een gebruiker op een eenvoudige manier taken bekijken, toevoegen, wijzigen of verwijderen op een kalender. RadSlider Dit is een schuifbalk die uitgebreid geconfigureerd kan worden, met een vloeiende schuifknop of volgens vooraf gedefiniëerde stappen. RadPanelBar Deze control biedt een menu langs de linker- of rechterzijde in een Outlook-stijl, waarbij de menu's in en uit elkaar geklapt kunnen worden. RadSpell Hiermee kun je een spellingschecker toevoegen aan gelijk welke input-control. De spellingschecker kan in meer dan 20 verschillende talen werken, waaronder ook het Nederlands. RadSplitter Met splitters kun je verschillende gebieden in de layout van elkaar scheiden of interactief van grootte veranderen. RadToolTip Deze control maakt gebruik van de OnMouseOver gebeurtenis om gedetailleerde informatie of een formulier weer te geven voor het onderliggende item. Realisatie 39

40 RadTrieview Dit is een control waarmee een boomstructuur kan weergegeven worden op een efficiënte manier. Het control biedt ook de functionaliteit om dynamisch gegevens in te laden. RadUpload Dit is een gespecialiseerd file-upload component. Het geeft de gebruiker de mogelijkheid één bestand of meerdere bestanden tegelijk te uploaden. RadWindow Hiermee kun je de bekende javascript alert/prompt/confirm pop-ups vervangen door een beter vormgegeven versie, die volledig configureerbaar is. RadTabStrip Dit component biedt de functionaliteit om tabbladen te creëren in je webpagina's. Realisatie 40

41 Pagina's Login Login pagina (Login.aspx) Use-case nummer: 1 Deze pagina krijgt de gebruiker te zien wanneer hij/zij naar surft. Indien de gebruiker rechtstreeks naar een statistiek pagina probeert te surfen zal hij verwezen worden naar deze pagina. De gebruiker dient eerst zijn gebruikersnaam en wachtwoord correct in te vullen om in te loggen. Invoer Uitvoer Als de login gegevens correct waren komt de gebruiker nu op een overzichtspagina terecht. Hier wordt afhankelijk van zijn rechten een lijst van statistieken en rapporten weergegeven die hij kan raadplegen. Zo kan een adverteerder enkel de rapporten in verband met zijn advertenties zien en een medewerker enkel de rapporten ivm. zijn/haar artikels. Een beheerder heeft rechten tot alle statistieken en rapporten. Indien de login gegevens foutief ingevuld werden krijgt de gebruiker een foutmelding te zien: Realisatie 41

42 Tracking nieuwsbrieven Tracking openen nieuwsbrieven in editie (TrackingOpenenNieuwsbrieven.aspx) Use-case nummer: 7 Met deze pagina kan een beheerder de evolutie van een bepaalde nieuwsbrief editie over een bepaalde periode volgen, met name per uitgave de oplage en het aantal keer dat de nieuwsbrief geopend werd. Invoer Uitvoer Er kan gesorteerd worden op volgnummer, datum, oplage, geopend, geopend (uniek) en geopend percentage. De gegevens kunnen geëxporteerd worden naar Excel of Pdf. Realisatie 42

43 Naast de tabulaire weergave is er voor dit onderdeel ook een grafische voorstelling voorzien. Deze werd gerealiseerd met behulp van het Telerik RadControls: RadChart component. De meeste instellingen van het RadChart component kunnen gemaakt worden via de grafische interface. Voor het aantal verzonden (oplage) en het aantal geopende nieuwsbrieven worden series toegevoegd van het type StackedArea. De dynamische opvulling gebeurt aan de hand van de hieronder staande code. dtnieuwsbrieven is hier de DataTable met de brongegevens. Code: // Geen labels weergeven als er meer dan 12 nieuwsbrieven zijn. bool showlabels = (dtnieuwsbrieven.rows.count > 12); RadChartGrafiek.Series[0].ShowLabels = RadChartGrafiek.Series[1].ShowLabels = showlabels; // De volgnummer volgorde omdraaien door een DataView te maken en opnieuw te sorteren: DataView dv = new DataView(dtNieuwsbrieven); dv.sort = "volgnr asc"; // Elke nieuwsbrief wordt aan de grafiek toegevoegd: // Enkele casts zijn nodig omdat de velden als decimal in de databank staan. foreach (DataRowView row in dv) { int geopend = (int)(decimal)row["clicksuniek"], oplage = (int)(decimal)row["oplage"]; } // Toevoegen van het volgnummer label op de x-as: RadChartGrafiek.XAxis.AddItem(((decimal)row["volgnr"]).ToString()); // Items toevoegen tot de series: RadChartGrafiek.Series[0].AddItem(geopend); RadChartGrafiek.Series[1].AddItem(oplage - geopend), oplage.tostring()); // De waarde voor de 2de serie (Nieuwsbrieven verzonden) is (oplage geopend) hoger // op de grafiek (= 1ste parameter) en krijgt de oplage als label (= 2de parameter). Het resultaat: Realisatie 43

44 Tracking openen alle nieuwsbrieven (TrackingOpenenAlleNieuwsbrieven.aspx) Use-case nummer: 8 Met deze pagina kan een beheerder een vergelijking maken tussen de verschillende nieuwsbrief edities over een bepaalde periode: het aantal verzonden nieuwsbrieven, de totale verspreiding en het totaal aantal keer dat de nieuwsbrieven geopend werden. Invoer Uitvoer Er kan gesorteerd worden op oplage, frequentie, verspreiding, geopend, geopend (uniek) en geopend percentage. Er worden totalen gemaakt voor al deze kolommen uitgezonderd oplage. De gegevens kunnen geëxporteerd worden naar Excel of Pdf. Realisatie 44

45 Tracking artikels Tracking Artikels per auteur (StatsArtikelsAuteurRubriek.aspx) Use-case nummer: 9 Met deze pagina kan men raadplegen hoe vaak artikels die gepubliceerd werden binnen een bepaalde periode op de website bekeken werden. Een beheerder heeft de mogelijkheid om dit voor alle rubrieken te bekijken, terwijl een medewerker dat enkel kan voor de rubrieken waarvoor hij zelf een artikel geschreven heeft. Invoer Uitvoer Er kan gesorteerd worden op auteur, datum, dagen sinds publicatie en views. De gegevens kunnen geëxporteerd worden naar Excel of Pdf. Realisatie 45

46 Tracking Artikels: auteur overzicht (StatsArtikels.aspx) Use-case nummer: 10 Met deze pagina kan per taal per auteur bekeken worden hoeveel artikels zij geschreven hebben en hoe vaak deze bekeken werden over een bepaalde periode. Een beheerder heeft de mogelijkheid om dit voor alle rubrieken te bekijken, terwijl een medewerker dat enkel kan voor de rubrieken waarvoor hij zelf een artikel geschreven heeft. Invoer Uitvoer Er kan gesorteerd worden op aantal artikels, aantal views en gemiddeld aantal views. De gegevens kunnen geëxporteerd worden naar Excel of Pdf. Realisatie 46

47 Tracking advertenties en clicks Tracking advertenties (TrackingAds.aspx) Use-case nummer: 11 Op deze pagina kan voor een bepaalde adverteerder over een bepaalde periode bekeken worden hoeveel clicks er zijn geweest per landingpage per editie. Daarnaast worden hier ook de oplage en het aantal keer geopend voor iedere nieuwsbrief getoond, en de verhouding van clicks op de oplage. Een adverteerder kan enkel zijn eigen tracking gegevens bekijken, terwijl een beheerder dit voor alle adverteerders kan. Invoer Uitvoer Er kan gesorteerd worden op datum, editie, volgnummer, oplage, geopend, clicks en clicks op oplage. De gegevens kunnen geëxporteerd worden naar Excel of Pdf. Realisatie 47

48 Tracking advertenties per dag (TrackingAdsDagelijks.aspx) Use-case nummer: 12 Op deze pagina kan bekeken worden hoe vaak er per dag geklikt is geweest op de landingpages van een adverteerder over een bepaalde periode en voor een bepaalde editie of voor alle edities samen. Een adverteerder kan enkel zijn eigen tracking gegevens bekijken, terwijl een beheerder dit voor alle adverteerders kan. Invoer Uitvoer De gegevens kunnen geëxporteerd worden naar Excel of Pdf. Realisatie 48

49 Tracking advertenties opdrachtnieuwsbrieven (TrackingAdsOpdrachtNB.aspx) Use-case nummer: 13 Op deze pagina kan voor een bepaalde opdrachtnieuwsbrief over een bepaalde periode bekeken worden hoeveel clicks er zijn geweest per landingpage per editie. Daarnaast worden hier ook de oplage en het aantal keer geopend voor iedere nieuwsbrief getoond, en de verhouding van clicks op de oplage. Deze pagina is enkel toegankelijk voor beheerders. Invoer Uitvoer Er kan gesorteerd worden op datum, volgnummer, oplage, geopend, clicks en clicks op oplage. De gegevens kunnen geëxporteerd worden naar Excel of Pdf. Realisatie 49

50 Clicks domeinen 6minutes en partnersites (TrackingAdsPartnersites.aspx) Use-case nummer: 14 Op deze pagina kan voor een bepaald domein of combinatie van domeinen over een bepaalde periode bekeken worden hoeveel clicks er zijn geweest naar deze domeinen voor een bepaalde editie of voor alle edities samen. Daarnaast worden hier ook de oplage en het aantal keer geopend voor iedere nieuwsbrief getoond, en de verhouding van clicks op de oplage. De domeinen kunnen door de beheerder ingesteld worden (zie p. 57). Deze pagina is enkel toegankelijk voor beheerders. Invoer Uitvoer Er kan gesorteerd worden op datum, editie, volgnummer, oplage, geopend, clicks en clicks op oplage. De gegevens kunnen geëxporteerd worden naar Excel of Pdf. Realisatie 50

51 Abonnees en abonnementen Overzicht abonnees (AbonneesOverzicht.aspx) Use-case nummer: 15 Deze pagina biedt een overzicht op de abonnees: het aantal abonnnees per taal per editie en een overzicht van abonnees per land. Deze pagina is enkel toegankelijk voor beheerders. Uitvoer Overzicht abonnees per taal per editie: Overzicht abonnees per land: Realisatie 51

52 Abonnees activiteit (AbonneesActiviteit.aspx) Use-case nummer: 16 Met deze pagina kan bekeken worden hoeveel actieve abonnementen van andere edities de abonnees van een bepaalde editie hebben. Deze pagina is enkel toegankelijk voor beheerders. Invoer Uitvoer Realisatie 52

53 Overlappende abonnees per editie (AbonneesAbonnementen.aspx) Use-case nummer: 17 Met deze pagina kan bekeken worden hoeveel abonnees van een bepaalde editie ook abonnee zijn op de andere edities. Vb: 90% van de abonnees voor editie A is ook abonnee voor editie B. Deze pagina is enkel toegankelijk voor beheerders. Invoer Uitvoer Realisatie 53

54 Profielkenmerken abonnees (AbonneesProfiel.aspx) Use-case nummer: 18 Op deze pagina kan een beheerder een rapport van de profielkenmerken van een bepaalde editie downloaden. Invoer Uitvoer Het volledig rapport kan hier niet in detail weergegeven worden. Gebeurtenissen Statistieken gebeurtenissen (StatsGebeurtenissen.aspx) Use-case nummer: 19 Op deze pagina kan een beheerder raadplegen hoe vaak elke gebeurtenis op de website bekeken is. Uitvoer Er kan gesorteerd worden op datum, gebeurtenis en views. Realisatie 54

55 Integratie met CIM CIM statistieken (CIMstats.aspx en CIMstatsDetails.aspx) Use-case nummer: 22 Met deze pagina's kan een beheerder voor elk keyword op de website bekijken hoe het aantal bezoekers, bezoeken en paginaverzoeken evolueert per dag of per maand. De manier waarop deze gegevens opgehaald worden, wordt verder uitgelegd op p. 62. Eerst moet de gebruiker een keyword aanduiden die in de laatste zeven dagen in de statistieken voorkwam of moet hij het keyword in het archief opzoeken: Vervolgens kan de gebruiker een periode aanduiden waarvoor de dagelijkse evolutie moet weergegeven worden, of kan hij/zij de maandelijkse evolutie weergeven. Realisatie 55

56 De dagelijkse evolutie: De maandelijkse evolutie: Realisatie 56

57 Beheer Beheer CIM toegang (BeheerCIM.aspx) Use-case nummer: 3 Op deze pagina kan een beheerder de CIM login gegevens wijzigen. Deze login wordt gebruikt om de website statistieken gemeten door MetriWeb te downloaden uit een beveiligde web directory en deze te verwerken. De login gegevens worden maandelijks door CIM gewijzigd en de beheerder ontvangt hiervoor maandelijks een met de nieuwe login. Invoer Beheer domeinen sites en partnersites (BeheerSites.aspx) Use-case nummers: 4, 5 en 6 Met deze pagina kan een beheerder partnersites definiëren en hun domeinen opgeven. Voor die partnersites kan dan gekeken worden hoeveel clicks er waren vanuit de nieuwsbrieven (zie p. 50). Site toevoegen: Site domeinen toevoegen of verwijderen: Realisatie 57

58 De partnersites en hun domeinen worden in XML formaat opgeslaan. Code: <?xml version="1.0" encoding="utf-8"?> <sites> <site naam="diskidee"> <domein>diskidee.be</domein> </site> <site naam="wijnidee"> <domein>wijnidee.be</domein> </site> <site naam="6minutes"> <domein>6minutes.be</domein> <domein>6minutes.net</domein> </site> </sites> Overige Tracking clicks op 6minutes links (TrackingClicks6Minutes.aspx) Use-case nummer: 21 Met deze pagina kan een beheerder het absolute en relatieve aantal clicks uit nieuwsbrieven naar de verschillende 6minutes onderdelen over een bepaalde periode raadplegen. Invoer Uitvoer De gegevens kunnen geëxporteerd worden naar Excel of Pdf. Realisatie 58

59 Windows Service Algemeen Een Windows Service is een programma dat op de achtergrond draait op een Microsoft Windows systeem, waarbij er geen interactie met de gebruiker nodig is om het programma naar behoren uit te voeren. Om verschillende redenen die u verder in dit hoofdstuk leest, werd het nodig om voor het stats.6minutes.be project zo'n service te maken, een programma dat periodiek enkele taken kan afhandelen die te lang zouden duren om realtime te doen wanneer de gebruiker het vraagt. Een Windows Service maken in.net is relatief gemakkelijk. Jammergenoeg bevatten de express edities van Visual Studio geen template hiervoor, maar gelukkig zijn er genoeg voorbeeldservices van het internet te plukken. De basis van een Windows Service bestaat uit een WindowsService klasse gebaseerd op de klasse ServiceBase, en een WindowsServiceInstaller klasse gebaseerd op de klasse Installer. Op deze pagina ziet u een simpel voorbeeld van zo'n WindowsService klasse en op de volgende pagina een WindowsServiceInstaller klasse. Code: class WindowsService : ServiceBase { public WindowsService() { this.servicename = "VoorbeeldService"; // De naam van de service this.eventlog.log = "Application"; // Het logboek waarin foutmeldingen moeten komen } this.canhandlepowerevent = false; this.canhandlesessionchangeevent = false; this.canpauseandcontinue = true; this.canshutdown = true; this.canstop = true; static void Main() { ServiceBase.Run(new WindowsService()); } protected override void Dispose(bool disposing) { base.dispose(disposing); } protected override void OnStart(string[] args) { // Hier code plaatsen die moet uitgevoerd worden wanneer de service wordt gestart. } base.onstart(args); protected override void OnStop() { // Hier code plaatsen die moet uitgevoerd worden wanneer de service wordt stopgezet. } base.onstop(); protected override void OnPause() { // Hier code plaatsen die moet uitgevoerd worden wanneer de service wordt gepauzeerd. } base.onpause(); protected override void OnContinue() { // Hier code plaatsen die moet uitgevoerd worden wanneer de service wordt voortgezet. } } base.oncontinue(); Realisatie 59

60 Code: [RunInstaller(true)] public class WindowsServiceInstaller : Installer { public WindowsServiceInstaller() { ServiceProcessInstaller serviceprocessinstaller = new ServiceProcessInstaller(); ServiceInstaller serviceinstaller = new ServiceInstaller(); // De service starten met de SYSTEM-account: serviceprocessinstaller.account = ServiceAccount.LocalSystem; serviceprocessinstaller.username = null; serviceprocessinstaller.password = null; serviceinstaller.starttype = ServiceStartMode.Automatic; // Automatisch opstarten serviceinstaller.displayname = "Naam van de service"; // Weergeefnaam van de service serviceinstaller.description = "Voorbeeld beschrijving"; // Beschrijving v/d service serviceinstaller.servicename = "VoorbeeldService"; // De naam van de service } } this.installers.add(serviceprocessinstaller); this.installers.add(serviceinstaller); Uiteraard zal deze voorbeeldservice niets uitvoeren. Om de service periodiek programmacode te laten uitvoeren kunnen timers gemaakt worden die bij het aflopen een callback methode oproepen. Met deze methode kun je dan bijvoorbeeld instanties maken van klasses om bepaalde programmacode uit te voeren, en eventueel de timer opnieuw instellen. Eens gecompileerd kan de service geïnstalleerd en gedeïnstalleerd worden met behulp van eenvoudige batch scripts. Als de service geïnstalleerd is moet het installatiescript niet opnieuw worden uitgevoerd, de service stopzetten als deze loopt, het uitvoerbaar bestand vervangen door de nieuwe versie en dan de service opnieuw opstarten is voldoende. Code: REM Voorbeeld OFF "%SystemRoot%\Microsoft.NET\Framework\v \InstallUtil" "VoorbeeldService.exe" REM Voorbeeld OFF "%SystemRoot%\Microsoft.NET\Framework\v \InstallUtil" /u "VoorbeeldService.exe" Realisatie 60

61 Implementatie Tracking nieuwsbrieven samenvatten Één van de beperkingen die het tracking systeem voor nieuwsbrieven had, was dat de gegevens in de databank gewoon te veel plaats innamen. Daardoor onstond de noodzaak om telkens als de databank vol zat (lees: te veel ruimte in nam) er een deel van de gegevens moest worden gewist. Al deze gegevens bleven echter bewaard in een offline Access databank (zie p. 65 Verwerking oude databank gegevens). Om de oude tracking gegevens te kunnen blijven gebruiken werd er besloten om een extra tabel toe te voegen aan de databank die enkel de samengevatte gegevens bijhoudt. Hierbij komt de service van pas om dagelijks (specifiek: om middernacht) die tracking gegevens uit te lezen en de samenvattingstabel hiermee te updaten. Concreet worden elke dag het aantal openingen en het aantal unieke openingen van elke nieuwsbrief opgeteld en bijgeteld bij het samenvattingsrecord voor de betreffende nieuwsbrief. Het aantal openingen is het totaal aantal keer dat een nieuwsbrief werd geopend, terwijl het aantal unieke openingen overeenkomt met het aantal abonnees dat op die dag de nieuwsbrief geopend heeft. Het systeem werkt op die manier dat het niet uitmaakt wanneer de service één of meerdere dagen niet loopt, zodat er geen problemen ontstaan bij een eventuele downtime. Zo wordt er per nieuwsbrief een datum bijgehouden die weergeeft wanneer de samenvattende gegevens het laatst geüpdatet werden. Een voorbeeld-illustratie van het samenvattingsproces: De TrackEML-tabel (nieuwsbrief tracking tabel) Nieuwsbriefid Abonneeid Datum (vandaag) 1 2 (vandaag) 1 3 (vandaag) De NieuwsbriefClicks-tabel (samenvattingstabel) Nieuwsbriefid Clicks Clicksuniek LaatsteUpdate (gisteren) (gisteren) (gisteren) 1 1 (vandaag) 2 2 (vandaag) 2 3 (vandaag) Samenvatten tracking 2 3 (vandaag) Nieuwsbriefid Clicks Clicksuniek LaatsteUpdate (vandaag) (vandaag) (gisteren) Realisatie 61

62 Ophalen CIM keyword-statistieken MetriWeb is een meetinstrument van CIM die onder meer iedere dag het aantal bezoekers, bezoeken en paginaverzoeken meet per keyword van de website. Elke dag rond de middag wordt een volledig rapport van de vorige dag online gezet op een beveiligde web directory. Dit rapport is beschikbaar in ASCII (.txt), PDF en in XML formaten. De service download telkens het rapport in XML formaat en voegt de eerdervermelde gegevens (visitors/visits/pagerequests) van elk keyword toe aan een lokaal bestand. Deze kunnen dan gebruikt worden om de evolutie van de gegevens te volgen (zie p ). Het systeem is voorzien op een downtime van maximaal 20 dagen: d.w.z. dat de service steeds zal kijken of de gegevens van elk van die laatste 20 dagen beschikbaar zijn en indien ze niet beschikbaar zijn, ze zal proberen te downloaden. De brongegevens zijn als volgt in het XML rapport terug te vinden. De werkelijke cijfers zijn in dit voorbeeld verwijderd en vervangen door #WAARDE#. <?xml version="1.0"?> <!-- MetriWeb result file --> <!-- Version > <result version="1.1"> <header id="part_1"> <data_type>result</data_type> <customer>minutes</customer> <date> <year>2008</year> <month>05</month> <day>20</day> </date> </header>... <page_list id="part_5"> <keyword name="a_la_carte" kind="page"> <visitors value="absolute">#waarde#</visitors> <visits value="absolute">#waarde#</visits> <page_requests value="absolute">#waarde#</page_requests> </keyword> <keyword name="ardennen" kind="page"> <visitors value="absolute">#waarde#</visitors> <visits value="absolute">#waarde#</visits> <page_requests value="absolute">#waarde#</page_requests> </keyword> <keyword name="auto" kind="page"> <visitors value="absolute">#waarde#</visitors> <visits value="absolute">#waarde#</visits> <page_requests value="absolute">#waarde#</page_requests> </keyword> <keyword name="bootmagazine" kind="page"> <visitors value="absolute">#waarde#</visitors> <visits value="absolute">#waarde#</visits> <page_requests value="absolute">#waarde#</page_requests> </keyword>... </page_list>... </result> De gegevens worden dan in een ietwat beknopter formaat toegevoegd aan het lokaal bestand: <?xml version="1.0"?> <cimstats> <stat date=" "> <page keyword="a_la_carte" visitors="#waarde#" visits="#waarde#" page_requests="#waarde#" /> <page keyword="ardennen" visitors="#waarde#" visits="#waarde#" page_requests="#waarde#" /> <page keyword="auto" visitors="#waarde#" visits="#waarde#" page_requests="#waarde#" /> <page keyword="bootmagazine" visitors="#waarde#" visits="#waarde#" page_requests="#waarde#" />... </stat> <stat date=" ">... </stat>... </cimstats> Realisatie 62

63 Genereren rapporten van het abonneeprofiel Één van de functionele eisen was het weergeven van een verdeling van profielkenmerken per nieuwsbrief editie per taal. Jammergenoeg bleek het niet mogelijk om dergelijke rapporten realtime weer te geven op de website aan een acceptabele snelheid. Daarom werd besloten om het genereren van deze rapporten over te laten aan de Windows Service. Laatstgenoemde genereert dus dagelijks (specifiek: om middernacht) de rapporten voor elke nieuwsbrief editie en maakt deze beschikbaar voor de website. De oude versies worden telkens overschreven. Het genereren van de rapporten kan vele minuten in beslag nemen, maar doordat dit 's nachts uitgevoerd wordt, vormt dat niet echt een probleem omdat de internet traffiek dan lager ligt dan overdag. itextsharp De rapporten worden gegenereerd in PDF formaat, en dit wordt afgehandeld door de itextsharp bibliotheek. itextsharp is een.net poort van itext, een open source java bibliotheek. itextsharp kan dus dynamisch PDF's opbouwen vanuit programmacode. Enkele van de mogelijkheden zijn het invoegen van paragrafen, lijsten, hoofd- en voetteksten, tabellen, afbeeldingen, andere grafische objecten etc. Hieronder ziet u een voorbeeld van het aanmaken van een Pdf met een paragraaf. Code: // Een nieuw A4 document creëren met marges van 25 punt: Document doc = new Document(PageSize.A4, 25F, 25F, 25F, 25F); // Een filestream koppelen aan het document: PdfWriter.GetInstance(doc, new FileStream(pdfPath + naam + ".pdf", FileMode.Create)); // Het document openen: doc.open(); // Een paragraaf toevoegen met de tekst "Hello World!" in het lettertype Helvetica punt 12: Font font = FontFactory.GetFont(Font.HELVETICA, 12F, Color.BLACK); Paragraph paragraph = new Paragraph("Hello world!", font); doc.add(paragraph); // Het document sluiten: doc.close(); PieChart Het was wenselijk om ook een grafische voorstelling te hebben van de profielkenmerken. Ik ging dan op zoek naar een manier om taartdiagrammen aan de rapporten toe te voegen. Veel van de bibliotheken en codevoorbeelden voldeden echter niet aan de eisen. Zo bleek het maximaal aantal items die in de taart konden toegevoegd worden vaak te beperkt. Daarnaast moest de taart een ovale vorm hebben om de ruimte in het rapport optimaal te benutten. Hier kwamen veel bibliotheken (inclusief de.net methode DrawPie) tekort door de hoeken van de scheidingslijnen niet correct aan te passen, zoals in de onderstaande afbeelding wordt gedemonstreerd: Realisatie 63

64 De bibliotheek die het beste voldeed aan de eisen was PieChart, deze ondersteunt in principe oneindig veel items zolang je even veel verschillende kleuren meegeeft, geeft ovale taarten correct weer en ziet er bovendien niet mis uit, mits het goed geconfigureerd wordt. Een voorbeeld van het resultaat: Realisatie 64

65 Verwerking oude databank gegevens Probleemstelling Omdat de gegevens van de nieuwsbrieftracking te veel plaats in beslag nemen om blijvend op de server te houden was er noodzaak om telkens een deel van deze gegevens te verwijderen, hoewel er steeds eerst een offline backup hiervan gemaakt werd. Het probleem kwam al eerder aan bod en dit werd opgelost door de trackinggegevens dagelijk samen te vatten (zie p. 61). Het lag voor de hand om de oude offline tracking gegevens ook te verwerken en deze in de samenvattingsgegevens op te nemen. Verwerken tot samenvattingsgegevens De oude tracking gegevens waren opgeslagen in een MDB-bestand: een Access databank. Op zich is dat geen enkel probleem omdat er met het.net platform prima gewerkt kan worden met databanken van dit bestandsformaat. In eerste instantie ben ik dus beginnen werken aan een programma om de trackinggegevens uit dit MDB-bestand samen te vatten. Ik kreeg al snel het deksel op de neus toen ik merkte dat de mogelijkheden met SQL op een Access databank wel erg beperkt waren ten opzichte van wat ik gewoon was met MS SQL Server. Dit struikelblok kon ik nog wel overwinnen maar toen ik zag hoe slecht de performantie was bij het testen van SQL queries werd mij duidelijk dat ik naar een andere oplossing moest uitkijken: Een Access databank is duidelijk niet gemaakt om met enkele miljoenen records te werken. Oplossing: converteren MDB naar MSSQL De oplossing was simpel: converteren van het MDB bestand naar een lokale MS SQL Server Express databank. Hiervoor gebruikte ik een programma genaamd Full Convert Enterprise. De gebruikte trial versie liet een watermerk achter op tekstvelden van de geconverteerde tabellen. Gelukkig had ik enkel de cijfergegevens nodig, en die bleven intact. Eens het converteren voltooid was kon er vlot gewerkt worden met de gegevens in tegenstelling tot bij de Access-databank, en was het samenvatten van de trackinggegevens een fluitje van een cent. Realisatie 65

66 Databankoptimalisatie Toen mijn stagebegeleider tussentijds op stagebezoek kwam merkte hij op dat het uitvoeringsplan van een SQL query met de SQL Management Studio kon bekeken worden. Met dit plan kan je exact zien op welke manier de MS SQL Server aan het resultaat van een query komt, en aan welke onderdelen het meeste tijd besteed wordt. Hierdoor kan je ontdekken of er velden zijn waar eigenlijk een index moet op geplaatst worden om de query vlot te laten uitvoeren. Zo bleek dat het plaatsen van enkele indexen trackinggegevens de uitvoeringstijd van de zwaardere SQL queries sterk te verkorten. Hieronder ziet u het verschil in performantie op een query met en zonder een index op het veld Nieuwsbriefid in de TRACKURL-tabel. MET index: ZONDER index: Zoals u ziet duurt de query vier seconden zonder index en nog geen seconde met een index! De keerzijde van indexeren? Het toevoegen van de indexen op de trackinggegevens tabellen bleek de server ook extra te belasten doordat aan deze tabellen constant nieuwe records worden toegevoegd. Jammergenoeg heb ik niet de tijd gehad om dit verder te onderzoeken in de duur van mijn stageperiode, om te zoeken naar een oplossing die zowel bevorderlijk is voor de server-load en voor de snelheid bij het gebruik van de gegevens in zware SQL queries. Realisatie 66

2 Eisenanalyse. 2.1 Functionele eisen het UseCaseDiagram

2 Eisenanalyse. 2.1 Functionele eisen het UseCaseDiagram 2 Eisenanalyse 2.1 Functionele eisen het UseCaseDiagram beschrijvingen van de UseCases en/of prototype Inloggen Inloggen Deze usecase zorgt ervoor dat de gebruiker zich kan inloggen op het systeem. lid

Nadere informatie

Handleiding Glimworm nieuwsbrief

Handleiding Glimworm nieuwsbrief Handleiding Glimworm nieuwsbrief Auteur: Marten Hoekstra Datum: 26 Mei 2005 Versie: 1.0 Dit document bevat vertrouwelijk informatie die niet voor anderen dan de relatie van Glimworm bedoeld is. Op alle

Nadere informatie

Software Requirements Specification

Software Requirements Specification Software Requirements Specification PEN: Paper Exchange Network Software Engineering groep 1 (se1-1415) Academiejaar 2014-2015 Jens Nevens - Sander Lenaerts - Nassim Versbraegen Jo De Neve - Jasper Bevernage

Nadere informatie

Katholieke Hogeschool Kempen Campus Geel Departement Handelswetenschappen en Bedrijfskunde 2de jaar Toegepaste Informatica

Katholieke Hogeschool Kempen Campus Geel Departement Handelswetenschappen en Bedrijfskunde 2de jaar Toegepaste Informatica Katholieke Hogeschool Kempen Campus Geel Departement Handelswetenschappen en Bedrijfskunde 2de jaar Toegepaste Informatica Bookinto Analyse- en ontwerprapport Teamnr: 64 Ewout SPITAELS (2Ti6) Olivier NUYTS

Nadere informatie

Handleiding. Inhoudsopgave 25-02-2014

Handleiding. Inhoudsopgave 25-02-2014 Inhoudsopgave Beheerders Dashboard...2 Kalender beheerders...3 Activiteiten beheren...3 Herhalende activiteiten...4 Wijk coördinatoren...5 Kalenders beheren...5 Kalenders exporteren...6 Gebruikers beheren...7

Nadere informatie

Handleiding: OpenEmm nieuwsbrief manager Diergaarde Blijdorp

Handleiding: OpenEmm nieuwsbrief manager Diergaarde Blijdorp Handleiding: OpenEmm nieuwsbrief manager Diergaarde Blijdorp Algemeen Deze handleiding beschrijft de werking van OpenEmm gekoppeld aan WordPress. Ondanks het feit dat binnen OpenEmm nieuwsbrieven opgemaakt

Nadere informatie

MWeb 4.0. Handleiding Basis Modules Versie 1.0

MWeb 4.0. Handleiding Basis Modules Versie 1.0 MWeb 4.0 Handleiding Basis Modules Versie 1.0 Index 1. Algemeen 3 1.1. Gebruikersnamen en Wachtwoorden 3 1.2. Inloggen 3 1.3. Uitloggen 3 1.4. Belangrijk 3 2. User Manager 4 2.1. Gebruikers lijst User

Nadere informatie

Handleiding: Whitelabel Customersite

Handleiding: Whitelabel Customersite ARGEWEB B.V. Handleiding: Whitelabel Customersite Controlportal.nl Argeweb Support 8-1-2009 Handleiding voor het gebruik maken van de Whitelabel Customersite op controlportal.nl, door Resellers van Argeweb.

Nadere informatie

Software Requirements Specification

Software Requirements Specification Software Requirements Specification PEN: Paper Exchange Network Software Engineering groep 1 (se1-1415) Academiejaar 2014-2015 Jens Nevens - Sander Lenaerts - Nassim Versbraegen Jo De Neve - Jasper Bevernage

Nadere informatie

Software Requirements Specification

Software Requirements Specification Software Requirements Specification PEN: Paper Exchange Network Software Engineering groep 1 (se1-1415) Academiejaar 2014-2015 Jens Nevens - Sander Lenaerts - Nassim Versbraegen Jo De Neve - Jasper Bevernage

Nadere informatie

Mach3Framework 5.0 / Website

Mach3Framework 5.0 / Website Mach3Framework 5.0 / Website Handleiding Mach3Builders Inhoudsopgave 1 Inloggen...5 1.1 Ingelogd blijven...6 1.2 Wachtwoord vergeten...7 2 Applicatie keuzescherm...8 2.1 De beheeromgeving openen...9 3

Nadere informatie

Handleiding Resultaatmeetsysteem en Mezzedo

Handleiding Resultaatmeetsysteem en Mezzedo Handleiding Resultaatmeetsysteem en Mezzedo voor aanbieders (Versie 26 augustus 2014) 1 Inhoud Wat is het Resultaatmeetsysteem?... 3 Cliënten stimuleren mee te doen... 4 Over de handleiding... 4 Deel I

Nadere informatie

SportCTM 2.0 Startscherm trainer

SportCTM 2.0 Startscherm trainer SportCTM 2.0 Startscherm trainer Inloggen Webapplicatie Via inlog.dotcomsport.com kun je in inloggen op de webapplicatie van het SportCTM. Wij adviseren onderstaande browsers Windows: Internet Explorer,

Nadere informatie

Bitrix Site Manager gebruikershandleiding BureauZuid

Bitrix Site Manager gebruikershandleiding BureauZuid Bitrix Site Manager gebruikershandleiding BureauZuid Introductie Deze gebruikershandleiding geeft gedetailleerde basisinformatie over hoe te werken met Bitrix Site Manager. Deze handleiding is bedoeld

Nadere informatie

Inventus Software. Antum Secured Mail / Message System. Gebruikershandleiding

Inventus Software. Antum Secured Mail / Message System. Gebruikershandleiding Inventus Software Antum Secured Mail / Message System Gebruikershandleiding 1 Hoe begin ik? 3 2 Wat is er zoal aanwezig in het hoofdprogramma? 3 3 Hoe decoder ik e-mails of tekstberichten? 4 3.1 Decoderen

Nadere informatie

4.1 4.2 5.1 5.2 6.1 6.2 6.3 6.4

4.1 4.2 5.1 5.2 6.1 6.2 6.3 6.4 Handleiding CMS Inhoud 1 Inloggen 2 Algemeen 3 Hoofdmenu 4 Pagina s 4.1 Pagina s algemeen 4.2 Pagina aanpassen 5 Items 5.1 Items algemeen 5.2 Item aanpassen 6 Editor 6.1 Editor algemeen 6.2 Afbeeldingen

Nadere informatie

ECTS fiche. Module info. Evaluatie. Gespreide evaluatie OPLEIDING. Handelswetenschappen en bedrijfskunde HBO Informatica

ECTS fiche. Module info. Evaluatie. Gespreide evaluatie OPLEIDING. Handelswetenschappen en bedrijfskunde HBO Informatica ECTS fiche Module info OPLEIDING STUDIEGEBIED AFDELING MODULE MODULENAAM Programmeren 5 MODULECODE B STUDIEPUNTEN 10 VRIJSTELLING MOGELIJK ja Handelswetenschappen en bedrijfskunde HBO Informatica Evaluatie

Nadere informatie

HRM-Reviews Reviews Handleiding voor PZ

HRM-Reviews Reviews Handleiding voor PZ HRM-Reviews Reviews Handleiding voor PZ In deze uitgebreide handleiding vindt u instructies om met Reviews in the Cloud aan de slag te gaan. U kunt deze handleiding ook downloaden (PDF). TIP: De navigatie

Nadere informatie

SportCTM 2.0 Sporter

SportCTM 2.0 Sporter SportCTM 2.0 Sporter APP Inloggen Dotcomsport heeft ter ondersteuning van de dagelijkse praktijk ook een APP ontwikkeld, om data invoer te vereenvoudigen. Deze APP ondersteunt de onderdelen; Agenda (invoer

Nadere informatie

1 Inleiding. WIND Internet / www.windinternet.nl 1

1 Inleiding. WIND Internet / www.windinternet.nl 1 1 Inleiding Om de Webshop goed te kunnen beheren is het noodzakelijk dat u kennis heeft van een aantal componenten. Door alle handelingen die nodig zijn te beschrijven wordt u in staat gesteld het beheer

Nadere informatie

Handleiding Mooy Logistics Servicedesk

Handleiding Mooy Logistics Servicedesk Handleiding Mooy Logistics Servicedesk Handleiding Mooy Logistics Servicedesk... 1 1. Inloggen... 2 2. Zoeken naar documenten.... 3 3. Downloaden van alle documenten op factuurnummer.... 5 4. Order regels

Nadere informatie

HANDLEIDING. onderzoekaccount. serviceapotheek.tevreden.nl handleiding onderzoekaccount 2013 pagina 1 van 23

HANDLEIDING. onderzoekaccount. serviceapotheek.tevreden.nl handleiding onderzoekaccount 2013 pagina 1 van 23 HANDLEIDING onderzoekaccount serviceapotheek.tevreden.nl handleiding onderzoekaccount 2013 pagina 1 van 23 Inhoudsopgave Inloggen serviceapotheek.tevreden.nl... 3 Dashboard... 3 Rapportcijfers... 4 Toon...

Nadere informatie

Globale kennismaking

Globale kennismaking Globale kennismaking Kennismaking Tesla CMS 1. Dashboard 2. pagina beheer - pagina aanmaken - pagina aanpassen - pagina verwijderen - pagina seo opties - zichtbaarheid pagina 3. subpagina beheer - subpagina

Nadere informatie

Handleiding OnLine voor de Opdrachtgever Versie 3.1

Handleiding OnLine voor de Opdrachtgever Versie 3.1 Handleiding OnLine voor de Opdrachtgever Versie 3.1 Handleiding voor de Opdrachtgever EuroSystems B.V. Nieuwegein 2008, EuroSystems B.V., Nieuwegein Alle rechten voorbehouden. Niets uit deze uitgave mag

Nadere informatie

Handleiding Websitebeheer

Handleiding Websitebeheer Handleiding Websitebeheer Event Media Websites Copyright 2005, Event Media 1. Inleiding... 3 2. CMS-systeem... 3 2.1 Inloggen... 3 2.2 Basis-menu... 3 2.3 Bestaande pagina s aanpassen...3 2.4 Nieuwe pagina

Nadere informatie

Hoe met Windows 8 te verbinden met NDI Remote Office (NDIRO) How to connect With Windows 8 to NDI Remote Office (NDIRO

Hoe met Windows 8 te verbinden met NDI Remote Office (NDIRO) How to connect With Windows 8 to NDI Remote Office (NDIRO Handleiding/Manual Hoe met Windows 8 te verbinden met NDI Remote Office (NDIRO) How to connect With Windows 8 to NDI Remote Office (NDIRO Inhoudsopgave / Table of Contents 1 Verbinden met het gebruik van

Nadere informatie

www.invallersonline.nl

www.invallersonline.nl Speciaal ontwikkeld voor scholenverenigingen! Geen verouderde, onoverzichtelijke en tijdrovende papieren lijsten met invallers meer, maar alles digitaal en altijd up-to-date. www.invallersonline.nl Informatiebrochure

Nadere informatie

Inhoudsopgave V2.02 2

Inhoudsopgave V2.02 2 Inhoudsopgave Inhoudsopgave... 2 Beginnen met InterWord.... 3 Navigatiemenu.... 4 Hoofdmenu aanmaken.... 4 Submenu aanmaken.... 4 Hoofd- en submenu s verwijderen.... 4 Hoofd- en submenu s aan of uit te

Nadere informatie

Software Design Document

Software Design Document Software Design Document PEN: Paper Exchange Network Software Engineering groep 1 (se1-1415) Academiejaar 2014-2015 Jens Nevens - Sander Lenaerts - Nassim Versbraegen Jo De Neve - Jasper Bevernage Versie

Nadere informatie

ManualMaster Systeem 6.1 (ManualMaster Administrator, ManualMaster WebAccess en ManualMaster WebEdit)

ManualMaster Systeem 6.1 (ManualMaster Administrator, ManualMaster WebAccess en ManualMaster WebEdit) Let op: de versie op de gebruikerswebsite kan worden bijgewerkt! Het kan dus zijn dat uw geprinte versie verouderd is. Van toepassing op ManualMaster Systeem 6.1 (ManualMaster Administrator, ManualMaster

Nadere informatie

Korte handleiding AccountView Mobile Scanner

Korte handleiding AccountView Mobile Scanner Korte handleiding AccountView Mobile Scanner Een product van Visma Software BV Copyright Alle rechten met betrekking tot de documentatie en de daarin beschreven software berusten bij Visma Software BV.

Nadere informatie

RTE. Handleiding. Publiceren Documenten

RTE. Handleiding. Publiceren Documenten RTE Handleiding Publiceren Documenten Datum: December 2015 Inhoudsopgave 1. Introductie 2 2. Aan de slag 3 2.1. Het opstarten van de applicatie 3 2.2. WebHare Applicaties 3 2.3. De RTE applicatie 3 3.

Nadere informatie

Ondersteuning van zorg gerelateerde processen en activiteiten voor patiënt en zorgverstrekkers

Ondersteuning van zorg gerelateerde processen en activiteiten voor patiënt en zorgverstrekkers Ondersteuning van zorg gerelateerde processen en activiteiten voor patiënt en zorgverstrekkers Contact persoon: Thera Splinter: 020 6445160 team@webfysio.nl Contact persoon: Joost Nagelmaeker: 0642115336

Nadere informatie

Handleiding beheerders gebruikersgroep NETQ Internet Surveys

Handleiding beheerders gebruikersgroep NETQ Internet Surveys Handleiding beheerders gebruikersgroep NETQ Internet Surveys Utrecht, December 2010 NetQuestionnaires Nederland BV Ondiep Zuidzijde 6 Postbus 10058 3505 BW UTRECHT T +31 (0)30 261 81 00 F +31 (0)30 261

Nadere informatie

MA!N Rapportages en Analyses

MA!N Rapportages en Analyses MA!N Rapportages en Analyses Auteur Versie CE-iT 1.2 Inhoud 1 Inleiding... 3 2 Microsoft Excel Pivot analyses... 4 2.1 Verbinding met database... 4 2.2 Data analyseren... 5 2.3 Analyses verversen... 6

Nadere informatie

Het Wepsysteem. Het Wepsysteem wordt op maat gebouwd, gekoppeld aan de gewenste functionaliteiten en lay-out van de site. Versie september 2010

Het Wepsysteem. Het Wepsysteem wordt op maat gebouwd, gekoppeld aan de gewenste functionaliteiten en lay-out van de site. Versie september 2010 Het Wepsysteem Het Wepsysteem is een content management systeem, een systeem om zonder veel kennis van html of andere internettalen een website te onderhouden en uit te breiden. Met het Content Management

Nadere informatie

Content Management Systeem Specifieke modules van het Steenstra CMS 2011

Content Management Systeem Specifieke modules van het Steenstra CMS 2011 Content Management Systeem Specifieke modules van het Steenstra CMS 2011 2. Overzicht en specificering van additionele modules Naast de basis implementatie is het Steenstra CMS systeem uit te breiden met

Nadere informatie

Navigator CMS 2009. Beknopte handleiding v1.0

Navigator CMS 2009. Beknopte handleiding v1.0 Navigator CMS 2009 Beknopte handleiding v1.0 Inhoudsopgave 1. Inleiding... 3 2. Inloggen... 4 3. Menustructuur... 5 4. Document Verkenner... 6 5. Mappen beheren... 7 5.2 Map hernoemen... 7 5.3 Map verplaatsen...

Nadere informatie

Hiervoor heeft u toegang nodig met uw persoonlijke account. Vraag uw account aan, aan de hoofd beheerder.

Hiervoor heeft u toegang nodig met uw persoonlijke account. Vraag uw account aan, aan de hoofd beheerder. Handleiding Gebruik Download Chrome voor de beste compatibiliteit Aanmelden link: http://www.omegabelgium.com/cms/ Hiervoor heeft u toegang nodig met uw persoonlijke account. Vraag uw account aan, aan

Nadere informatie

WEBSITE USABILITY. white-paper

WEBSITE USABILITY. white-paper WEBSITE USABILITY white-paper Alle rechten voorbehouden Het is niet toegestaan deze white-paper aan derden te verstrekken of te verkopen. Het is niet toegestaan de inhoud van deze white-paper elders te

Nadere informatie

Opstarten van de GRATIS facturatiemodule

Opstarten van de GRATIS facturatiemodule Opstarten van de GRATIS facturatiemodule 1 Welkom in het gratis facturatieprogramma van WinBooks on Web Het gratis facturatieprogramma is ontworpen om u kennis te laten maken met de interessante functionaliteiten

Nadere informatie

Handleiding website. Inloggen Start uw internet browser en ga naar http://www.rbaoreven.nl/.

Handleiding website. Inloggen Start uw internet browser en ga naar http://www.rbaoreven.nl/. Handleiding website In deze handleiding staat alles wat u nodig heeft om een bericht op de website van de Reddingsbrigade Aoreven Heythuysen te plaatsen. Alles wordt in woord en beeld uitgelegd. Inloggen

Nadere informatie

Handleiding. imailingtool. Introductie

Handleiding. imailingtool. Introductie Handleiding imailingtool Handleiding...1 imailingtool...1 Introductie...1 2 Aan de slag!...2 2.1 Inloggen...2 2.2 Dashboard / Homepage...2 2.2.1 Uitleg dashboard...3 3 Adressenlijst...0 3.1 Een nieuwe

Nadere informatie

Website van het openbaar ministerie Korte gebruikershandleiding voor Content Managers

Website van het openbaar ministerie Korte gebruikershandleiding voor Content Managers Website van het openbaar ministerie Korte gebruikershandleiding voor Content Managers De website van het openbaar ministerie is momenteel (tijdelijk) te vinden op volgende intranetadres: http://10.241.132.229.

Nadere informatie

Een ASP.NET applicatie opzetten. Beginsituatie:

Een ASP.NET applicatie opzetten. Beginsituatie: Hoofdstuk 1 Een ASP.NET applicatie opzetten Beginsituatie: Windows XP Pro, Windows Vista Pro of Windows 7 Pro Visual Studio.NET moet zijn geïnstalleerd. Let hierbij op dat de Express versie niet voldoet.

Nadere informatie

Van Dale Elektronisch groot woordenboek versie 4.5 activeren en licenties beheren

Van Dale Elektronisch groot woordenboek versie 4.5 activeren en licenties beheren De nieuwste editie van dit document is altijd online beschikbaar: Activeren en beheren licenties Inhoudsopgave Van Dale Elektronisch groot woordenboek versie 4.5 activeren Automatisch activeren via internet

Nadere informatie

Handleiding. Beheeromgeving

Handleiding. Beheeromgeving Handleiding Beheeromgeving Kant en Klare Site Veluwelaan 80 8443 AH Heerenveen www.kantenklaresite.nl - info@kantenklaresite.nl - fax: 084-8368243 KvK 01134248 Inhoud Inloggen op de beheeromgeving...3

Nadere informatie

Weebly: Stappenplan voor docenten

Weebly: Stappenplan voor docenten Weebly: Stappenplan voor docenten Stap 1: Registratie Ga naar http://education.weebly.com/ Voordat u aan de slag kunt met Weebly moet u zich inschrijven. U vult uw gebruikersnaam en uw e-mailadres in en

Nadere informatie

HRM-Reviews Reviews in the Cloud Handleiding voor de manager

HRM-Reviews Reviews in the Cloud Handleiding voor de manager HRM-Reviews Reviews in the Cloud Handleiding voor de manager In deze uitgebreide handleiding vindt u instructies om met HRM-Reviews aan de slag te gaan. U kunt deze handleiding ook downloaden (PDF). TIP:

Nadere informatie

6. De sitemap of stamboom van uw website

6. De sitemap of stamboom van uw website 6. De sitemap of stamboom van uw website Dynamisch of statisch? CMS of Dreamweaver? Een databankgestuurde website en CMS Grotere websites hebben nood aan een eenvoudiger manier om informatie toe te voegen,

Nadere informatie

Inhoudsopgave V1.02 2

Inhoudsopgave V1.02 2 Inhoudsopgave Inhoudsopgave... 2 Beginnen met InterWord.... 3 Navigatiemenu.... 4 Hoofdmenu aanmaken.... 4 Submenu aanmaken.... 4 Hoofd- en submenu s verwijderen.... 4 Hoofd- en submenu s aan of uit te

Nadere informatie

KeistadWeb.nl gebruikershandleidingen: Mozilla Thunderbird 1.0 NL (Windows versie) instellen voor gebruik met uw KeistadWeb.

KeistadWeb.nl gebruikershandleidingen: Mozilla Thunderbird 1.0 NL (Windows versie) instellen voor gebruik met uw KeistadWeb. KeistadWeb.nl gebruikershandleidingen: Mozilla Thunderbird 1.0 NL (Windows versie) instellen voor gebruik met uw KeistadWeb.nl email account Revisie: 07-04-2010 Inhoudsopgave: 1. Voorwoord 2. Mozilla Thunderbird

Nadere informatie

INHOUDSOPGAVE 3. 3.5 Het Boekenwinkeltje... 90 3.5.1 Registreer.aspx... 90 3.6 Opgaven... 97

INHOUDSOPGAVE 3. 3.5 Het Boekenwinkeltje... 90 3.5.1 Registreer.aspx... 90 3.6 Opgaven... 97 Inhoudsopgave 1 Inleiding 8 1.1 Het.Net Framework................................ 8 1.1.1 Het.Net Ontwikkelingsmodel....................... 8 1.1.2 Compilatie en Uitvoering in.net.....................

Nadere informatie

Katholieke Hogeschool Kempen

Katholieke Hogeschool Kempen Katholieke Hogeschool Kempen Campus Geel Departement Handelswetenschappen en Bedrijfskunde 2de jaar Toegepaste Informatica Examenrooster Eisenanalyserapport Teamnr: 63 Luca Andronico (2Ti6 631) Jorge Schrauwen

Nadere informatie

Zicht - Content Management Systeem een algemene beschrijving

Zicht - Content Management Systeem een algemene beschrijving Zicht - Content Management Systeem een algemene beschrijving Versie april/2008 Zicht nieuwe media ontwerpers 2008 1 Inleiding Een Content Management Systeem (CMS) is een webapplicatie waarmee je zonder

Nadere informatie

Gebruikershandleiding -ICT BEHEERDER-

Gebruikershandleiding -ICT BEHEERDER- Gebruikershandleiding -ICT BEHEERDER- Inhoudsopgave 1. LET OP... 3 2. Inloggen... 4 3. Naar de beheeromgeving... 5 3.1 Tabbladen en menubalk... 5 4. School... 6 5. Licenties... 7 6. Groepen... 7 6.1 Licenties

Nadere informatie

Technische nota AbiFire5 Rapporten maken via ODBC

Technische nota AbiFire5 Rapporten maken via ODBC Technische nota AbiFire5 Rapporten maken via ODBC Laatste revisie: 29 juli 2009 Inhoudsopgave Inleiding... 2 1 Installatie ODBC driver... 2 2 Systeeminstellingen in AbiFire5... 3 2.1 Aanmaken extern profiel...

Nadere informatie

De stappenhandleiding is in hoofdstappen verdeeld, de volgende stappen zullen aan bod komen:

De stappenhandleiding is in hoofdstappen verdeeld, de volgende stappen zullen aan bod komen: VOORWOORD In deze handleiding wordt de module Nieuwsbrief van OnderneemOnline stap voor stap uitgelegd. In de inhoudsopgave vindt u exact terug hoe u de module Nieuwsbrief kunt beheren. De stappenhandleiding

Nadere informatie

Mach3Framework 5.0 / Website

Mach3Framework 5.0 / Website Mach3Framework 5.0 / Website Handleiding Mach3Builders Inhoudsopgave 1 Inloggen...4 1.1 Ingelogd blijven...5 1.2 Wachtwoord vergeten...6 2 Applicatie keuzescherm...7 2.1 De beheeromgeving openen...8 3

Nadere informatie

IMAP-handleiding Bookinto

IMAP-handleiding Bookinto IMAP-handleiding Bookinto Olivier Nuyts 2Ti6 Ewout Spitaels 2Ti6 Departement Handelswetenschappen en Bedrijfskunde Bachelor Toegepaste Informatica 2 de jaar Academiejaar 2010-2011 Overzicht Inleiding Bookinto

Nadere informatie

Handleiding voor Zotero versie 2.0

Handleiding voor Zotero versie 2.0 Handleiding voor Zotero versie 2.0 Michiel Wolda De handleiding voor Zetero is geschreven voor de lezers van het boek Deskresearch: Informatie selecteren, beoordelen en verwerken: tweede editie (Van Veen

Nadere informatie

Oracle Application Server Portal Oracle Gebruikersgroep Holland Oktober 2003

Oracle Application Server Portal Oracle Gebruikersgroep Holland Oktober 2003 Oracle Application Server Portal Oracle Gebruikersgroep Holland Oktober 2003 Page 1 1 Kees Vianen Senior Sales Consultant Technology Solutions Oracle Nederland Agenda Geschiedenis van Oracle Portal Portal

Nadere informatie

Handleiding CMS Online Identity Webontwikkeling. Handleiding CMS

Handleiding CMS Online Identity Webontwikkeling. Handleiding CMS Handleiding CMS 1 Inhoudsopgave 1. Inloggen... 3 2. Het CMS... 3 3. Websitecontent... 4 3.1 Een nieuwe pagina toevoegen... 4 3.2 Een pagina wijzigen... 4 3.3 Een pagina verwijderen... 5 4. De WYSIWYG editor...

Nadere informatie

Basis handleiding CMS

Basis handleiding CMS Basis handleiding CMS Inhoud Basis handleiding CMS... 1 Inloggen... 3 Pagina beheren... 4 Pagina toevoegen/wijzigen... 6 WYSIWYG editor... 8 externe / interne link toevoegen... 9 Plaatjes toevoegen...

Nadere informatie

Advertentiewereld Dé advertentiesite voor regio s en groepen

Advertentiewereld Dé advertentiesite voor regio s en groepen Advertentiewereld Dé advertentiesite voor regio s en groepen Beheer uw eigen site, en bepaal eigen regels, voor een regio of specifieke groep op het domein van Advertentiewereld.com Copyright 2014 Advertentiewereld.com

Nadere informatie

Trippeltrap Content Management System

Trippeltrap Content Management System Handleiding Trippeltrap Content Management System versie 2.4 Aanmelden Voordat u de tekst op uw webpagina kunt aanpassen, moet u zich eerst aanmelden. Bovenaan de pagina vindt u een link naar het intranet.

Nadere informatie

De Kleine WordPress Handleiding

De Kleine WordPress Handleiding Introductie Dit is geen uitgebreide handleiding om een WordPress website of blog mee te bouwen. Het is ook geen overzicht van alle aspecten die een WordPress website zo bijzonder maken en geen verhandeling

Nadere informatie

NVU-Workshop. Websites bouwen met Nvu. Henk Stoop - Docent Website design - HkeyDesigns - HCC WG Website design - KBO WG ICT-Adviseur

NVU-Workshop. Websites bouwen met Nvu. Henk Stoop - Docent Website design - HkeyDesigns - HCC WG Website design - KBO WG ICT-Adviseur Websites bouwen met Nvu Voorbeeld websites Hkey-Designs Manders mondhygieniste Slaapadvies Sterrenburg Werkplan Henk Stoop - Docent Website design - - HCC WG Website design - KBO WG ICT-Adviseur Workshop:

Nadere informatie

Deze handleiding maakt u wegwijs in de Bios2-webapplicatie om uw adres-, bibliotheeken jaargegevens in te voeren.

Deze handleiding maakt u wegwijs in de Bios2-webapplicatie om uw adres-, bibliotheeken jaargegevens in te voeren. VOORAF Deze handleiding maakt u wegwijs in de Bios2-webapplicatie om uw adres-, bibliotheeken jaargegevens in te voeren. Deze handleiding wil geen (inhoudelijke) beschrijving van de webapplicatie geven,

Nadere informatie

Handleiding Wordpress

Handleiding Wordpress Handleiding Wordpress Inhoudsopgave 1. Inloggen 2. Berichten en Pagina s 3. Afbeeldingen en video s 4. Weblinks 1. Inloggen 1.1 Inloggen bij Wordpress We starten met het inloggen op je WordPress gebaseerde

Nadere informatie

Veel gestelde vragen nieuwe webloginpagina

Veel gestelde vragen nieuwe webloginpagina Veel gestelde vragen nieuwe webloginpagina Op deze pagina treft u een aantal veel gestelde vragen aan over het opstarten van de nieuwe webloginpagina http://weblogin.tudelft.nl: 1. Ik krijg de melding

Nadere informatie

Nederlands Normalisatie Instituut

Nederlands Normalisatie Instituut Nederlands Normalisatie Instituut CITRIX / SSL VPN Helpdesk NEN kmc@nen.nl T: 0152690268 http://portal.nen.nl Versie 2.0.1 VPN hoe en wat Bij NEN kan er vanaf extern worden ingelogd op het netwerk. Dit

Nadere informatie

Handleiding CMS. Inclusief updatesysteem ledendatabase. Websitebaker 2.7.0.

Handleiding CMS. Inclusief updatesysteem ledendatabase. Websitebaker 2.7.0. Handleiding CMS Inclusief updatesysteem ledendatabase Websitebaker 2.7.0. Inhoud Inhoud...2 Inloggen...3 Menu opties...4 Help, Website, Uitloggen...5 Pagina s...6 Paginabeheer...6 Toevoegen...7 Instellingen...8

Nadere informatie

Handleiding Facultaire website Expression Engine

Handleiding Facultaire website Expression Engine Handleiding Facultaire website Expression Engine Inhoud 1. Opbouw 2. Inloggen 3. Home 4. Publish 5. Publish Form full item 6. Uitleg velden Publish Form Full item 7. Publish Form Half Page 8. Uitleg velden

Nadere informatie

Katholieke Hogeschool Kempen ASP

Katholieke Hogeschool Kempen ASP Katholieke Hogeschool Kempen Campus Geel Departement Handelswetenschappen en Bedrijfskunde 3de jaar Toegepaste Informatica ASP www.projectchatroom.be Yorkim Parmentier 3TI4 Andy Geluykens 3TI4 Academiejaar

Nadere informatie

Elia Supplier Information Guide Registreren als Elia leverancier op Ariba

Elia Supplier Information Guide Registreren als Elia leverancier op Ariba Version 2 Date 25//204 Contents Introductie... 3 2 Hulp nodig?... 3 3 Taalinstellingen... 4 4 Invitation E-mail... 5 5 Registratie op Ariba Commerce Cloud... 6 5.. Ariba welkomstpagina... 6 5.2. Voer uw

Nadere informatie

Registratie als energiemeester (als je je voor het eerst aanmeldt).

Registratie als energiemeester (als je je voor het eerst aanmeldt). Handleiding website Energiejacht voor energiemeesters In deze handleiding vind je de nodige informatie over hoe je met de website van Energiejacht aan de slag kunt gaan. Met vragen over de website kun

Nadere informatie

Gebruikershandleiding Hawaii305

Gebruikershandleiding Hawaii305 Gebruikershandleiding Hawaii305 Inhoudsopgave 3 Voorwoord 4 Inloggen 5 Introductie 6 Campagne aanmaken en verzenden 11 Abonnees beheren 14 Rapporten bekijken 16 Begrippenlijst 17 Slot Gebruikershandleiding

Nadere informatie

e-invoicing Online Billing

e-invoicing Online Billing e-invoicing Online Billing Voor vragen over Online Billing, contacteer: Email: Tel.: Inhoud Welkom bij Online Billing 3 Registratie voor Online Billing 4 einvoicing en epayment 10 Aanmelden 11 Nieuwe facturen

Nadere informatie

Workflows voor SharePoint met forms en data K2 VOOR SHAREPOINT

Workflows voor SharePoint met forms en data K2 VOOR SHAREPOINT Slimmer samenwerken met SharePoint Workflows voor SharePoint met forms en data K2 VOOR SHAREPOINT Workflows, forms, reports en data WAAROM KIEZEN VOOR K2? Of u nu workflows moet maken voor items in SharePoint

Nadere informatie

HANDLEIDING IMPACTXRM MOBILE. IMPACTXRM NV Zuidleiestraat 12/1b 9880 Aalter 0032 (50)960070 info@impactxrm.com. Bijgewerkt 29/07/2015 Versie 1.2.

HANDLEIDING IMPACTXRM MOBILE. IMPACTXRM NV Zuidleiestraat 12/1b 9880 Aalter 0032 (50)960070 info@impactxrm.com. Bijgewerkt 29/07/2015 Versie 1.2. HANDLEIDING IMPACTXRM MOBILE IMPACTXRM NV Zuidleiestraat 12/1b 9880 Aalter 0032 (50)960070 info@impactxrm.com Bijgewerkt 29/07/2015 Versie 1.2.1 INHOUD INHOUD... 1 ALGEMEEN Filosofie... 2 INSTALLATIE...

Nadere informatie

Website De Stap: Berichtenbeheer

Website De Stap: Berichtenbeheer Klik op Login Er wordt je gevraagd een Login en een Paswoord op te geven. De Login is stapteam Het wachtwoord is stapteam Klik op OK Je bent ingelogd en komt op een beveiligd deel van de site, enkel toegankelijk

Nadere informatie

Bericht Creëren en versturen binnen Wes 4 U mail

Bericht Creëren en versturen binnen Wes 4 U mail Bericht Creëren en versturen binnen Wes 4 U mail Berichten maken en versturen met Wes 4 U mail is simpel, doeltreffend en snel! Belangrijk is dat u reeds bent voorzien van een lijst met emailadressen van

Nadere informatie

De nieuwste editie van dit document is altijd online beschikbaar: Activeren en beheren licenties

De nieuwste editie van dit document is altijd online beschikbaar: Activeren en beheren licenties De nieuwste editie van dit document is altijd online beschikbaar: Activeren en beheren licenties Inhoudsopgave Van Dale Elektronisch groot woordenboek versie 5.0 activeren... 2 Automatisch activeren via

Nadere informatie

Handleiding 2designers Content Management Systeem

Handleiding 2designers Content Management Systeem Handleiding 2designers Content Management Systeem pagina 1 van 7 Inloggen: Om de welkom-kind website te kunnen beheren, moet u eerst inloggen. Dit kan via de URL: http://www.welkom-kind.nl/nieuw/admin

Nadere informatie

Handleiding. MijnLADIS. Houten, mei 2013. Stichting Informatievoorziening Zorg

Handleiding. MijnLADIS. Houten, mei 2013. Stichting Informatievoorziening Zorg Handleiding MijnLADIS Houten, mei 2013 Stichting Informatievoorziening Zorg Inhoud 1 Inleiding... 3 2 MijnLADIS... 3 2.1 Doel...3 2.2 Inhoud...3 3 Handleiding MijnLADIS... 4 3.1 URL...4 3.2 Inloggen...4

Nadere informatie

Handleiding. Outlook Web App 2010 - CLOUD. Versie: 22 oktober 2012. Toegang tot uw e-mailberichten via internet

Handleiding. Outlook Web App 2010 - CLOUD. Versie: 22 oktober 2012. Toegang tot uw e-mailberichten via internet Handleiding Outlook Web App 2010 - CLOUD Versie: 22 oktober 2012 Toegang tot uw e-mailberichten via internet Handleiding Multrix Outlook Web App 2010 - CLOUD Voorblad Inhoudsopgave 1 Inleiding...3 2 Inloggen...4

Nadere informatie

Inhoudsopgave. Kunnen we je ergens mee helpen? Inhoudsopgave 2 Voorwoord 3

Inhoudsopgave. Kunnen we je ergens mee helpen? Inhoudsopgave 2 Voorwoord 3 Inhoudsopgave Inhoudsopgave 2 Voorwoord 3 1.0 Voordat je begint 4 1.1 Browserinstellingen 5 1.2 Beeldscherminstellingen 6 1.3 Pop-up blokkering 6 2.0 Starten met BDO Online 7 2.1 Inloggen in 9 2.2 Wijzigen

Nadere informatie

DHL EXPRESS. 1 DHL IntraShip User Guide

DHL EXPRESS. 1 DHL IntraShip User Guide DHL EXPRESS 1 DHL IntraShip User Guide INLOGGEN Gebruik uw login & wachtwoord om in te loggen op DHL INTRASHIP via https://www.intraship-dhl.be Via de MyDHL portaal via http://www.mydhl.com kan u ook op

Nadere informatie

Bestek nr. 16EN/2003/8. Het ontwerpen, ontwikkelen en instandhouden van een webstek Schelderadarketen: www.schelderadar.net.

Bestek nr. 16EN/2003/8. Het ontwerpen, ontwikkelen en instandhouden van een webstek Schelderadarketen: www.schelderadar.net. Ministerie van de Vlaamse Gemeenschap Departement Leefmilieu en Infrastructuur Administratie Waterwegen en Zeewezen afdeling Scheepvaartbegeleiding en Ministerie van Verkeer en Waterstaat afdeling Verkeer

Nadere informatie

Beschrijving functioneel en technisch design van de website

Beschrijving functioneel en technisch design van de website Bespreking Punten: Beschrijving functioneel en technisch design van de website Nr. Punt 1 Student 2 Bedrijf 3 Algemene lay out 4 Technologieën 5 Webruimte en datatrafiek 1. Student Registratie Bij de registratie

Nadere informatie

DE ELEKTRONISCHE IDENTITEITSKAART (EID)

DE ELEKTRONISCHE IDENTITEITSKAART (EID) DE ELEKTRONISCHE IDENTITEITSKAART (EID) MS OFFICE 2007 (WINDOWS - WORD EN EXCEL) VERSIE 1.1.1 NL Disclaimer Fedict is niet verantwoordelijk voor om het even welke schade die een derde zou ondervinden ingevolge

Nadere informatie

Externe toegang met ESET Secure Authentication. Daxis helpdesk@daxis.nl Versie 2.0

Externe toegang met ESET Secure Authentication. Daxis helpdesk@daxis.nl Versie 2.0 Externe toegang met ESET Secure Authentication Daxis helpdesk@daxis.nl Versie 2.0 Inhoudsopgave: Inhoudsopgave:... 1 Inleiding:... 2 Stap 1: Download eenmalig Eset Secure Authentication op uw smartphone...

Nadere informatie

Het beheren van mijn Tungsten Network Portal account NL 1 Manage my Tungsten Network Portal account EN 14

Het beheren van mijn Tungsten Network Portal account NL 1 Manage my Tungsten Network Portal account EN 14 QUICK GUIDE C Het beheren van mijn Tungsten Network Portal account NL 1 Manage my Tungsten Network Portal account EN 14 Version 0.9 (June 2014) Per May 2014 OB10 has changed its name to Tungsten Network

Nadere informatie

HTML en CSS. Je website bestaat uit HTML. Dat is een taal die browsers (Internet explorer, Chrome, Safari) kunnen lezen.

HTML en CSS. Je website bestaat uit HTML. Dat is een taal die browsers (Internet explorer, Chrome, Safari) kunnen lezen. Terminologie HTML en CSS HTML: Hyper Markup language Je website bestaat uit HTML. Dat is een taal die browsers (Internet explorer, Chrome, Safari) kunnen lezen. CSS: Cascading StyleSheet stylesheet for

Nadere informatie

WordPress Handleiding

WordPress Handleiding Algemene Informatie Disclaimer: Bij het samenstellen van dit boek is de grootst mogelijke zorg besteed aan de juistheid van de opgenomen informatie. Wij kunnen echter niet verantwoordelijk gesteld worden

Nadere informatie

NORA Document Management Software

NORA Document Management Software NORA Document Management Software Beheer en beheers uw document flow INHOUD NORA Eenvoudig documentenbeheer NORA: eenvoudig documentenbeheer 3 MODULES Dossier- en contactenbeheer 4 Documenten 5 Berichten

Nadere informatie