ProCure voor tablet en mobiel Technische handleiding en gebruikshandleiding Project aangeboden door Kimberley Verstraete voor het behalen van de graad van Bachelor in de New Media and Communication Technology Academiejaar 2013-2014 Stageplaats : Integreat te Waregem Stagementor : Wim Cordier Stagebegeleider : Sophie Vanwijnsberghe ProCure voor tablet en mobiel Technische handleiding en gebruikshandleiding Project aangeboden door Kimberley Verstraete voor het behalen van de graad van Bachelor in de New Media and Communication Technology Academiejaar 2013-2014 Stageplaats : Integreat te Waregem Stagementor : Wim Cordier Stagebegeleider : Sophie Vanwijnsberghe Woord vooraf Deze thesis is geschreven als naslagwerk van mijn stage bij Integreat. Dit eindwerk is geschreven voor eindgebruikers van ProCure. Dit project kon niet vlot verlopen zonder enige hulp en steun van derden, daarom wil ik mijn oprechte dank aanbieden aan alle mensen die betrokken waren bij de ondersteuning van dit eindrapport. Eerst en vooral wil ik Howest en Integreat bedanken, omdat ze mij de kans gaven deze opdracht in optimale omstandigheden uit te werken. Ik bedank mijn stagebegeleider Sophie Vanwijnsberghe voor haar onmisbare bijdrage, voor al haar ideeën en de eerlijke feedback. Tevens bedank ik mijn colleaga’s Wim Cordier, Johannes Dursin, Stefaan Missiaen, Bart Bultinck, Benny Declerq en Karolien Sabbe voor de ondersteuning en aanmoediging. Tot slot bedank ik mijn vrienden en familie voor alle steun. Verklarende woordenlijst API Een application programming interface (API) is een verzameling definities op basis waarvan een computerprogramma kan communiceren met een ander programma of onderdeel (meestal in de vorm van bibliotheken). Back end Datgene wat onzichtbaar is voor de gebruiker van een programma: uitlezen van nieuwsberichten uit een database, registeren van een nieuwe gebruiker, uploaden van bestanden, berekeningen, etc. Dienstverplaatsing Verplaatsing met de auto van een locatie naar de locatie waar de job uitgeoefend wordt. Fietsverplaatsing Verplaatsing met de fiets van de woonplaats van de weknemer naar de locatie waar de job uitgeoefend wordt. Front end Datgene wat zichtbaar is voor de bezoeker van een programma: de afbeeldingen, het webdesign, de lettertypen, etc. GKG Campus Graaf Karel De Goedelaan van de Hogeschool West-Vlaanderen. ID Unieke identiteit. Intercampus verplaatsing Verplaatsing met de fiets van de ene campus naar een andere campus. JSON Afkorting voor JavaScript Object Notation. Deelverzameling van de programmeertaal JavaScript die gebruikt wordt voor het uitwisselen van datastructuren, vooral in web applicaties voor het asynchroon gegevens ophalen van webservers. MVVM Een ontwerp patroon in programmeertalen. MVVM staat voor model-view-viewmodel. Dit patroon laat ons toe om op een gestructureerde manier applicaties te bouwen. Het is tevens het meest gebruikte patroon in de XAML wereld. Models in een MVVM applicatie zijn de voorstellingen van de data. View in een MVVM applicatie is het visuele van de applicatie. ViewModel is verantwoordelijk voor het uitvoeren van acties uit de view, de view voorzien van data uit het model en het tonen van de juiste View. Platform Een basis waarop software ontwikkeld wordt. Portable Class Library Een project dat helpt om snel en gemakkelijk cross-platform apps en bibliotheken te bouwen voor Microsoft-platforms. ProCure Applicatie voor aankoopbeheer. SLA Afkorting voor Service Level Agreement. Overeenkomst tussen aanbieder en afnemer. Storagefile Een plaats waar gegevens kunnen opgeslagen worden. Web Service Een web service kan omschreven worden als een interface van een applicatiecomponent, die toegankelijk is via standaard web protocollen, en waarbij meestal wordt gecommuniceerd via XML zonder menselijke tussenkomst. Wireframe Blauwdruk van de applicatie. Schets van de lay-out van de applicatie. XAML Afkorting voor Extensible Application Markup Language. Het is een declaratieve taal van Microsoft gebaseerd op XML. De taal wordt gebruikt om gestructureerde waarden en objecten te initialiseren. XML Afkorting voor Extensible Markup Language. Het is een standaard syntax van formele opmaaktalen waarmee men gestructureerde gegevens kan weergeven in de vorm van platte tekst. 1 INHOUDSOPGAVE 2 Stagebedrijf ..................................................................................................................................... 5 2.1 Identificatiegegevens stagebedrijf .......................................................................................... 5 2.2 Voorstelling ............................................................................................................................. 5 3 Stage opdracht ................................................................................................................................ 6 4 Eerste analyse lay-out ..................................................................................................................... 9 4.1 5 Wireframes .............................................................................................................................. 9 4.1.1 Login ................................................................................................................................ 9 4.1.2 Overzicht........................................................................................................................ 11 4.1.3 Dienstverplaatsing eigen wagen ................................................................................... 12 4.1.4 Fietsvergoeding ............................................................................................................. 15 4.1.5 Terugvordering kosten .................................................................................................. 17 Technische handleiding ................................................................................................................. 18 5.1 Algemeen............................................................................................................................... 18 5.1.1 Backend ......................................................................................................................... 18 5.1.2 Frontend ........................................................................................................................ 20 5.2 Login ...................................................................................................................................... 20 5.3 Keuzescherm ......................................................................................................................... 20 5.4 Dienstverplaatsing eigen wagen ........................................................................................... 22 5.4.1 5.5 Woon-werkverkeer fietsvergoeding ..................................................................................... 23 5.5.1 Standaard fietsvergoeding ............................................................................................ 23 5.5.2 Route ............................................................................................................................. 23 5.5.3 Interne campus.............................................................................................................. 23 5.6 6 Nieuwe bestemming ..................................................................................................... 22 Terugvordering eigen kosten ................................................................................................ 23 Gebruikershandleiding .................................................................................................................. 25 6.1 Login ...................................................................................................................................... 25 6.2 Keuzescherm ......................................................................................................................... 26 6.3 Dienstverplaatsing eigen wagen ........................................................................................... 26 6.3.1 Overzicht........................................................................................................................ 27 6.3.2 Overzicht item ............................................................................................................... 27 6.3.3 Nieuw............................................................................................................................. 29 6.4 Fietsvergoeding ..................................................................................................................... 34 6.4.1 Overzicht........................................................................................................................ 35 6.4.2 Nieuw............................................................................................................................. 36 1 6.5 Terugvordering eigen kosten ................................................................................................ 40 6.5.1 Overzicht........................................................................................................................ 41 6.5.2 Nieuw............................................................................................................................. 42 6.6 Afmelden ............................................................................................................................... 43 7 Besluit ............................................................................................................................................ 44 8 Bronvermelding ............................................................................................................................... 1 2 Lijst van figuren Figuur 1 Integreat .................................................................................................................................... 5 Figuur 2 Aankoopflow ............................................................................................................................. 7 Figuur 3 Wireframe tablet login .............................................................................................................. 9 Figuur 4 Wireframe keuzescherm ......................................................................................................... 10 Figuur 5 Wireframe tablet overzicht dienstverplaatsing eigen wagen ................................................. 11 Figuur 6 Wireframe tablet nieuwe aanvraag dienstverplaatsing eigen wagen(1/2) ........................... 12 Figuur 7 Wireframe tablet nieuwe aanvraag dienstverplaatsing eigen wagen (2/2) ........................... 13 Figuur 8 Wireframe tablet nieuwe standaard bestemming dienstverplaatsing eigen wagen .............. 13 Figuur 9 Wireframe tablet nieuwe geavanceerde bestemming dienstverplaatsing eigen wagen ....... 14 Figuur 10 Wireframe tablet nieuwe aanvraag fietsvergoeding ............................................................ 15 Figuur 11 Wireframe tablet nieuwe route fietsvergoeding .................................................................. 16 Figuur 12 Wireframe tablet nieuwe interne campus fietsvergoeding .................................................. 16 Figuur 13 Wireframe tablet nieuwe aanvraag terugvordering eigen kosten........................................ 17 Figuur 14 Login pagina .......................................................................................................................... 25 Figuur 15 Keuze pagina ......................................................................................................................... 26 Figuur 16 Tile dienstverplaatsing eigen wagen ..................................................................................... 27 Figuur 17 Overzicht pagina dienstverplaatsing eigen wagen ................................................................ 27 Figuur 18 Detail pagina dienstverplaatsing eigen wagen...................................................................... 28 Figuur 19 Nieuw tile dienstverplaatsing eigen wagen .......................................................................... 29 Figuur 20 Nieuwe aanvraag algemene gegevens dienstverplaatsing eigen wagen .............................. 30 Figuur 21 Nieuwe ingevulde aanvraag algemene gegevens dienstverplaatsing eigen wagen ............. 31 Figuur 22 Nieuwe aanvraag bestemming toevoegen dienstverplaatsing eigen wagen ....................... 32 Figuur 23 Campussen dienstverplaatsing eigen wagen ........................................................................ 33 Figuur 24 Andere locatie dienstverplaatsing eigen wagen ................................................................... 33 Figuur 25 Geavanceerde bestemming dienstverplaatsing eigen wagen .............................................. 34 Figuur 26 Tile fietsvergoeding ............................................................................................................... 35 Figuur 27 Overzicht pagina fietsvergoeding .......................................................................................... 35 Figuur 28 Detail pagina fietsvergoeding................................................................................................ 36 Figuur 29 Nieuw tile fietsvergoeding .................................................................................................... 36 Figuur 30 Nieuwe aanvraag algemene gegevens fietsvergoeding ........................................................ 37 Figuur 31 Standaard fietsvergoeding .................................................................................................... 38 Figuur 32 fietsvergoeding pdf download .............................................................................................. 38 Figuur 33 Fietsvergoeding pdf ............................................................................................................... 39 Figuur 34 Nieuwe aanvraag geavanceerde fietsvergoeding ................................................................. 39 Figuur 35 Opslaan routes ...................................................................................................................... 40 Figuur 36 Tile terugvordering eigen kosten .......................................................................................... 40 Figuur 37 Overzicht pagina terugvordering eigen kosten ..................................................................... 41 Figuur 38 Detail pagina terugvordering eigen kosten ........................................................................... 41 Figuur 39 Nieuw tile terugvordering eigen kosten................................................................................ 42 Figuur 40 Nieuwe aanvraag terugvordering eigen kosten .................................................................... 42 Figuur 41 Details login gebruiker........................................................................................................... 43 3 Inleiding Deze handleiding is niet enkel bestemd voor technici die verder ontwikkelen voor de ProCure app, maar ook voor de eindgebruikers van de app. Dit werkstuk is voornamelijk een handleiding voor ProCure, een aankoopbeheersysteem. Daarbij wordt stap voor stap beschreven hoe ProCure efficiënt gebruikt kan worden door de eindgebruikers. Bovendien wordt ProCure technisch beknopt toegelicht. In hoofdstuk 1 wordt het stagebedrijf voorgesteld. Bovendien worden de identificatie gegevens van Integreat toegelicht. Hoofdstuk 2 bespreek de stageopdracht. In hoofdstuk 3 worden de wireframes van de eerste versie overlopen. In hoofdstuk 4 worden de technische basisconcepten van ProCure uitgewerkt. Dit licht een aantal onderdelen toe die een belangrijke rol spelen bij het ontwikkelen van de ProCure app. In hoofdstuk 5 wordt stap voor stap overlopen hoe de applicatie gebruikt moet worden door de eindgebruikers 4 2 STAGEBEDRIJF 2.1 IDENTIFICATIEGEGEVENS STAGEBEDRIJF InteGreat NV. Potegemstraat 17 bus 5 B-8790 Waregem M: info[at]integreat.be Tel: +32 (0)56 61 78 97 Fax: +32 (0)56 61 78 98 BE 0 884 768 177 RPR Kortrijk ING 363-0063587-92 2.2 VOORSTELLING Figuur 1 Integreat Integreat begeleidt organisaties in het implementeren en onderhouden van IT projecten op niveau van serverinfrastructuur, communicatiesoftware en integratie met telefonie. De stage opdracht omtrent de applicatie sluit aan bij het onderdeel communicatiesoftware. Integreat heeft veel ervaring met aankoopsoftware voor hogescholen en overheidsinstellingen. Ze zijn vooruitstrevend, naast de software voor aankoop wordt er ook gewerkt aan een software voor de verkoopzijde. 5 3 STAGE OPDRACHT Procure is een softwarepakket dat aankopen beheert startend van de aanvraag tot de uiteindelijke betaling van de factuur. Het softwareprogramma “Procure” heeft een beperkt aantal gebruikers binnen de organisatie, maar “Procure.Web”, het webformulier om een bestelaanvraag te plaatsen, is toegankelijk voor alle werknemers van Howest. Op vandaag wordt de eerste versie van Procure.Web nog steeds gebruikt door een 500-tal Howest-medewerkers. 6 Hieronder is de aankoopflow van Howest waarneembaar. Er zijn vier diverse flows. Bij het tweede voorbeeld zal een werknemer van Howest een fietsvergoeding, onkostennota, … ingeven. Indien dit gecontroleerd en goedgekeurd is door het ankerpunt, zal de boekhouder er een factuur van maken. Als het bedrag meer dan 8500 euro bedraagt zal de financiële directeur dit eerst moeten goedkeuren voor de boekhouder er een factuur van mag maken. Figuur 2 Aankoopflow 7 De gebruiksvriendelijkheid van de eerste versie van ProCure is ondermaats, daarom kwam er een nieuwe versie namelijk ProCure.Web. Deze versie moet eenvoudig en snel te gebruiken zijn vanaf elke locatie. Vandaar de vraag van veel eindgebruikers om ProCure.Web mobiel te maken (Android, IOS of Windows). De app procure.web, het webformulier om een bestelaanvraag te plaatsen is tot op de dag van vandaag alleen toegankelijk op het web. Het gebruik van smartphones en tablets hebben een stijging tegenover voorgaande jaren. De eindgebruikers nemen sneller de tablet of de smartphone om iets op te zoeken of iets in te geven. Van daar is het essentieel om ook een smartphone en tablet versie aan te bieden van “Procure.Web”. Zo kan de gebruiker tijdens een pauze snel even zijn vergoedingen ingeven en moet de pc daarvoor niet opgestart worden. De opdracht bestaat er in om verder te bouwen op de bestaande module van ProCure.Web. Dit is een webbased module gekoppeld aan het aankoopbeheer. In dit aankoopbeheer kan een gebruiker diverse vergoedingen aanvragen. De verschillende aanvragen voor de mobile applicatie zijn: Dienstverplaatsing eigen wagen Woon-Werkverkeer fietsvergoeding Terugvordering eigen kosten Dit in tegenstelling tot de ProCure.Web based applicatie: Dienstverplaatsing eigen wagen Woon-werkverkeer fietsvergoeding Woon-werkverkeer openbaar vervoer Terugvordering eigen kosten Gastspreker Andere aankopen Nu geven de howest-medewerkers hun fietsvergoeding in via de webbrowser. Indien dit goedgekeurd wordt door een leiding gevende kan er overgegaan worden tot uitbetaling van deze vergoeding. 8 4 EERSTE ANALYSE LAY-OUT 4.1 WIREFRAMES De volgende schetsen zijn het resultaat van de eerste analyse van ProCure. Na het bestuderen van de bestaande ProCure.Web mocht er een eerste schets voorgelegd worden. Dit werd dan later goed gekeurd door de leiding gevende. Ook werden later aanpassingen uitgevoerd die waargenomen kunnen worden in de handleidingen. 4.1.1 Login Wanneer de applicatie opgestart is, wordt er genavigeerd naar het login scherm. Figuur 3 Wireframe tablet login 9 Als het inloggen foutloos verloopt zal de applicatie navigeren naar het keuzescherm met drie verschillende onderdelen, namelijk: “Dienstverplaatsing eigen wagen”, “Fietsvergoeding” en “Terugvordering eigen kosten”. Figuur 4 Wireframe keuzescherm 10 4.1.2 Overzicht Wanneer de tile “Dienstverplaatsing eigen wagen”, “Fietsvergoeding” of “Terugvordering eigen kosten” aangeklikt wordt, wordt er een overzicht weer gegeven van dat type aanvraag. Daar kan er nagegaan worden of de aanvraag al dan niet verwerkt is. Hieronder kan de tile “Dienstverplaatsing eigen wagen” waargenomen worden. De tiles “Fietsvergoeding” en “Terugvordering eigen kosten” zijn gelijkaardig aan de onderstaande tile. Figuur 5 Wireframe tablet overzicht dienstverplaatsing eigen wagen 11 4.1.3 Dienstverplaatsing eigen wagen Wanneer op de tile “Dienstverplaatsing eigen wagen” geklikt wordt, dan zal de app een overzicht tonen van de “Dienstverplaatsing eigen wagen”. Links naast het overzicht staan er drie knoppen. Wanneer er op de eerste knop geklikt wordt, navigeert de app naar een scherm om een nieuwe aanvraag “Dienstverplaatsing eigen wagen” toe te voegen. Die hieronder waargenomen kan worden. Figuur 6 Wireframe tablet nieuwe aanvraag dienstverplaatsing eigen wagen(1/2) 12 Wanneer men op de knop “Bestemming toevoegen” klikt, wordt er genavigeerd naar het onderstaande scherm. Figuur 7 Wireframe tablet nieuwe aanvraag dienstverplaatsing eigen wagen (2/2) Wanneer er vervolgens op “Nieuw” geklikt wordt onder bestemming, kan er een nieuwe bestemming toegevoegd worden. Hier kan gekozen worden tussen een standaard of een geavanceerde aanvraag. Figuur 8 Wireframe tablet nieuwe standaard bestemming dienstverplaatsing eigen wagen 13 Figuur 9 Wireframe tablet nieuwe geavanceerde bestemming dienstverplaatsing eigen wagen Wanneer er geklikt wordt op de tweede knop, navigeert de app naar het overzicht van de aanvragen “Dienstverplaatsing eigen wagen”. Tot slot kan er terug genavigeerd worden naar het keuzescherm door te klikken op de derde knop. 14 4.1.4 Fietsvergoeding Wanneer er op de tile “Fietsvergoeding” geklikt wordt, zal er automatisch genavigeerd worden naar de overzicht pagina van “Fietsvergoeding”. Ook hier zijn er drie knoppen zoals bij “Dienstverplaatsing eigen wagen” met bijna dezelfde functie. Wanneer er geklikt wordt op de eerste knop “Nieuw”, zal er een mogelijkheid zijn om een nieuwe aanvraag “Fietsvergoeding” toe te voegen. Figuur 10 Wireframe tablet nieuwe aanvraag fietsvergoeding 15 Hier kan er gekozen worden tussen een standaard, geavanceerde route of geavanceerde interne campus fietsvergoeding. Figuur 11 Wireframe tablet nieuwe route fietsvergoeding Figuur 12 Wireframe tablet nieuwe interne campus fietsvergoeding 16 4.1.5 Terugvordering kosten Wanneer er op de tile “Terugvordering kosten” geklikt wordt, zal de app automatisch navigeren naar de overzicht pagina van “Terugvordering kosten”. Dit scherm heeft ook drie knoppen die dezelfde functie uitoefenen als bij de voorgaande tiles. Bij de nieuwe aanvraag is er maar één keuze. Figuur 13 Wireframe tablet nieuwe aanvraag terugvordering eigen kosten 17 5 TECHNISCHE HANDLEIDING 5.1 ALGEMEEN 5.1.1 Backend 5.1.1.1 Models Er wordt gebruik gemaakt van een Portable Class Library, dit kan hergebruikt worden in verschillende soorten projecten. Bij het aanmaken kan er gekozen worden op welke platformen de library zal gebruikt worden. Dit kan later gewijzigd worden in de properties van het project. Vervolgens worden de classes toegevoegd. Omdat de database reeds bestaat is het belangrijk om rekening te houden met de namen van de classes. Wanneer er gegevens van de tabel “ProCure_User” nodig zijn, moet er in het project een classe aangemaakt worden met de naam “ProCure_User”. Daarnaast moet er ook aangegeven worden welke property de id is. 5.1.1.2 Web API Er wordt gebruik gemaakt van een web service, ASP.NET MVC 4 Web Application. Dit laat toe eenvoudig een JSON web service te gaan opzetten. In de file web.config wordt de connectie met de database gemaakt. De connectie met de database zal gebeuren via DbContext. Voor elke database wordt er een web API gemaakt met een bijhorende context. Deze context erft over van DbContext. Deze classe zorgt voor de verbinding met de database. Om de juiste database te gebruiken moet er nog een connectiestring toegevoegd worden aan de web.config file. Hierbij is de naam van da connectionstring essentieel. Deze moet dezelfde naam hebben als de context classe (bv. MainContext). In de Context classes wordt er aangeven welke tabellen er aangemaakt worden. Vervolgens moet de database access laag geschreven worden. Er wordt gebruik gemaakt van de volgende ontwerp patronen: Repository Pattern Unit Of Work Pattern Het repository patroon is een patroon waar er voor ieder model een eigen klasse aangemaakt wordt. Die klasse wordt gebruikt om de data te wijzigen, toe te voegen of verwijderen. 18 Het unit of work patroon is een patroon waar een aantal gegroepeerde operaties uitgevoerd worden op de database. De laatste stap aan de server kant is het opzetten van de web service. Er kan op een eenvoudige manier methodes aangemaakt worden die aanspreekbaar zijn via het web. De data zal via het JSON formaat verzonden worden. 19 5.1.2 Frontend Er wordt gebruik gemaakt van het MVVM (model-view-viewmodel) patroon, dit laat de gebruiker toe om een gestructureerde applicatie te bouwen dat ook zeer eenvoudig onderhoudsvriendelijk is. 5.1.2.1 Model Dit zijn de Classes. 5.1.2.2 View De XAML code is de store app of phone app is de view. 5.1.2.3 Viewmodel Een viewmodel is een classe die erft van ViewModelBase. Dit wordt gekoppeld aan een view met behulp van XAML databinding. Vanuit ViewModel worden verschillende services aangeroepen die data ophalen of wegschrijven. In de service zijn er functies die HttpRequests uitvoeren naar de JSON service. 5.1.2.4 Windows store applicatie In de App.xaml file is er een instantie gemaakt van de ViewModelLocator. Zo kan er een view gekoppeld worden aan een viewmodel. De layout wordt helemaal in XAML uitgewerkt. De tiles zullen zich altijd in het midden van de view bevinden. 5.2 LOGIN Wanneer er een gebruikersnaam ingegeven wordt, zullen de databases opgehaald worden die voor die gebruiker beschikbaar zijn. De app is gekoppeld aan een webservice die gebruik maakt van Active Directory. Als de database geselecteerd is, het wachtwoord en de gebruikersnaam ingevuld zijn, wordt het wachtwoord en gebruikersnaam gecontroleerd. Als dit correct is, wordt gecontroleerd of de database bestaat. Als dit bestaat zal men controleren of de gebruiker toegang heeft tot de database. Indien al deze controles positief zijn, wordt de gebruiker opgeslagen in de filestorage. Verder wordt gecontroleerd of de gebruiker actief is en of het een administrator is. 5.3 KEUZESCHERM Als er genavigeerd wordt naar het keuzescherm, zullen de velden die betrekking hebben tot de aanvragen in de filestorage leeggemaakt worden. Dit voorkomt het vollopen van de filestorage. 20 De knop afmelden die op elke pagina kan teruggevonden worden, navigeert naar de loginpagina. Deze knop verwijdert ook alles in de storagefile. 21 5.4 DIENSTVERPLAATSING EIGEN WAGEN Bij een nieuwe aanvraag worden er nieuwe objecten aangemaakt, namelijk: “ProCure_DocumentHeader”, “ProCure_DocumentDetail”, “ProCure_Invoice” en één of meerdere objecten van “ProCure_DocumentDetail_Expense”. Bij een nieuwe aanvraag zijn er twee views: Algemene view Bestemming toevoegen 5.4.1 Nieuwe bestemming 5.4.1.1 Standaard verplaatsing Eerst worden de ingegeven adresgegevens gecontroleerd. Als alles foutloos is ingevuld, wordt voor elke datum die geselecteerd is een object ProCure_DocumentDetail_Expense aangemaakt. Hier worden de dag, adresgegevens en afstand van de verplaatsing in bewaard. Het annuleren brengt de gebruiker naar de vorige pagina. Dit gebeurt ook bij het verzenden. In dit overzicht is ook de toegevoegde ProCure_DocumentDetail te zien. 5.4.1.2 Geavanceerde verplaatsing Na klikken op de knop toevoegen zal eerst gecontroleerd worden of het ingegeven adres volledig is en of het adres geldig is. Daarna zal er bij een geldig adres een of meerdere nieuwe objecten ProCure_DocumentDetail_Expense aangemaakt worden met de ingevulde gegevens. Als de checkbox “Heen en terug” is aangevinkt zullen er extra objecten ProCure_DocumentDetail_Expense aangemaakt worden. Hier worden de start bestemming van het vorige ProCure_DocumentDetail_Expense object, de eindbestemming van het huidige ProCure_DocumentDetail_Expense object. Als alles correct is, zullen de aangemaakte gegevens worden weggeschreven naar de database. 22 5.5 WOON-WERKVERKEER FIETSVERGOEDING Bij een nieuwe aanvraag worden er nieuwe objecten aangemaakt, namelijk: “ProCure_DocumentHeader”, “ProCure_DocumentDetail”, “ProCure_DocumentDetail_Expense” en “ProCure_Invoice”. Bij een nieuwe aanvraag voor woon-werkverkeer zijn er drie opties: Standaardfietsvergoeding Geavanceerde fietsvergoeding route Geavanceerde fietsvergoeding interne campus 5.5.1 Standaard fietsvergoeding Bij een standaardfietsvergoeding zal er een object “ProCure_DocumentDetail_Expense” aangemaakt worden. Hier worden de start en eindbestemming in opgeslagen met de afstand. De afstand wordt automatisch berekend met behulp van bing maps API. De startbestemming is altijd het thuisadres en de eindbestemming is de geselecteerde campus. Wanneer de checkbox “Geavanceerde fietsvergoeding” aangeduid is, zijn er twee opties: route of interne campus. 5.5.2 Route Voor deze optie wordt voor elke tussenstop een nieuw object “ProCure_DocumentDetail_Expense” aangemaakt. 5.5.3 Interne campus Voor deze optie wordt net als bovenstaande optie een nieuw object “ProCure_DocumentDetail_Expense” aangemaakt. Met als begin locatie het adres van de eerste geselecteerde campus en als eind locatie het adres van de tweede geselecteerde campus. Verder moet er nog een datum geselecteerd zijn. Als dit voor één datum is zal de app niets extra moeten aanmaken. Als dit voor bijvoorbeeld twee datums zijn, zal het twee “DocumentDetail_ExpenseDetail” moeten aanmaken. Het eerste “DocumentDetail_ExpenseDetail” object en het tweede “DocumentDetail_ExpenseDetail” object zullen bijna het zelfde zijn, behalve dat ze verschillen van datum. 5.6 TERUGVORDERING EIGEN KOSTEN Bij een nieuwe aanvraag worden er nieuwe objecten aangemaakt, namelijk: “ProCure_DocumentHeader”, “ProCure_DocumentDetail” en “ProCure_Invoice”. 23 Wanneer er op “Annuleren” gedrukt wordt zal de app terug navigeren naar de overzicht pagina. Bij het verzenden worden de bovenstaande objecten verzonden naar de database. En krijgt de gebruiker de nodige feedback. 24 6 GEBRUIKERSHANDLEIDING 6.1 LOGIN Voordat er ingelogd wordt, is het belangerijk te weten dat er alleen ingelogd kan worden wanneer de persoon in kwestie: als personeelslid bij een organisatie geregistreerd staat toegang heeft tot een bepaalde database Inloggen kan in drie stappen: Voer de gebruikersnaam in (vervolgens verschijnen de databases waar de persoon in kwestie toegang tot heeft) Voer het wachtwoord in Selecteer een databank en klik op “Aanmelden” Figuur 14 Login pagina 25 6.2 KEUZESCHERM Nadat er ingelogd is op ProCure app verschijnt het startscherm. Hier kan de aanvraag gekozen worden. De keuze is beperkt tot “Terugvorderingen”. Dit in tegenstelling tot de web applicatie, daar zijn er twee categorieën: “Aanvragen” en “Terugvorderingen”. Figuur 15 Keuze pagina Bij de categorie “Terugvorderingen” zijn er de volgende opties: Dienstverplaatsing eigen wagen Woon-werkverkeer fietsvergoeding Terugvorderingen eigen kosten Daarnaast is er ook een tile met de instellingen van de gebruiker. 6.3 DIENSTVERPLAATSING EIGEN WAGEN Wanneer er geklikt wordt op de knop “Dienstverplaatsing eigen wagen” zal er genavigeerd worden naar overzicht scherm “Dienstverplaatsing eigen wagen”. 26 Figuur 16 Tile dienstverplaatsing eigen wagen 6.3.1 Overzicht Bij het klikken op “Dienstverplaatsing eigen wagen” gaat de app verder naar dat specifiek onderdeel. Figuur 17 Overzicht pagina dienstverplaatsing eigen wagen Standaard wordt er een overzicht weergegeven van de laatste 10 aanvragen. Hier kunnen alle aanvragen waargenomen worden van de gekozen categorie (hier dienstverplaatsing van eigen wagen) met hun huidige status. Als er geklikt wordt op 6.3.2 rechts naast het document nummer, zal de aanvraag openen. Overzicht item Bij het openklikken van een aanvraag, wordt er een overzicht van de dataillijnen weergegeven. Bij dit type zijn dit de “dienstverplaatsing” en de “parkeerkosten”. 27 Figuur 18 Detail pagina dienstverplaatsing eigen wagen Wanneer er bijvoorbeeld op de “dienstverplaatsing” geklikt wordt, wordt er rechts een overzicht van alle aanvragen voor de dienstverplaatsing weergegeven. Er kan gebruik gemaakt worden van een knop op het toestel of rechts onder op de ‘Annuleer’ knop om te navigeren naar de vorige view. 28 6.3.3 Nieuw Figuur 19 Nieuw tile dienstverplaatsing eigen wagen Wanneer er geklikt wordt op de knop “Nieuw” onder de tile “Dienstverplaatsing eigen wagen”, zal er een nieuwe aanvraag kunnen aangemaakt worden voor “Dienstverplaatsing eigen wagen”. 6.3.3.1 Algemene gegevens Hieronder kan er een nieuwe aanvraag aangevraagd worden voor “Dienstverplaatsing eigen wagen”. 29 Figuur 20 Nieuwe aanvraag algemene gegevens dienstverplaatsing eigen wagen Eerst zal er een scherm met algemene informatie kunnen ingevuld worden. De algemene gegevens omvatten: Gegevens van de aanvrager De organisatie eenheid waar de aanvraag naar verzonden wordt Het ankerpunt (leidinggevende) dat de aanvraag zal behandelen Een foto, indien er parkeerkosten toegevoegd worden Hieronder kan er een scherm waargenomen worden van een ingevulde aanvraag. 30 Figuur 21 Nieuwe ingevulde aanvraag algemene gegevens dienstverplaatsing eigen wagen Wanneer de “Details aanvrager” aangevinkt wordt, zal er extra informatie van de gebruiker die ingelogd is verschijnen. Vervolgens kan de aanvraag enerzijds geannuleerd worden door op de knop “Annuleren” te drukken. Anderzijds kan worden verder gegaan door op de knop “Bestemming toevoegen” te klikken. 6.3.3.2 Nieuwe bestemmingen Gewone bestemming Het scherm dat hieronder waargenomen kan worden is van toepassing op een gewone verplaatsing. Dit betekent concreet van adres A naar adres B en terug, als de optie “Heen en Terug” aangevinkt is. 31 Figuur 22 Nieuwe aanvraag bestemming toevoegen dienstverplaatsing eigen wagen Zowel de start als eindbestemming hebben drie mogelijkheden: Thuisadres Campus Andere locatie Thuisadres Wanneer het thuisadres aangevinkt wordt, zullen de adresgegevens van de ingelogde persoon in de database automatisch opgevraagd worden. Als de optie “Toon thuisadres” aangevinkt wordt, kan nagekeken worden of de gegevens al dan niet correct zijn. Campus Hier zullen de campussen of verschillende afdelingen opgehaald worden. 32 Figuur 23 Campussen dienstverplaatsing eigen wagen Andere locatie Deze optie biedt de gebruiker een mogelijkheid om een willekeurige plaats van vertrek of aankomst in te geven. Figuur 24 Andere locatie dienstverplaatsing eigen wagen Vervolgens moeten de dagen geselecteerd worden voor de verplaatsing. Dit is beperkt tot de huidige dag. Tot slot kunnen de parkeerkosten toegevoegd worden, door de optie “Parkeerkosten” aan te vinken. Dan zal de gebruiker de mogelijkheid krijgen om het bedrag en de valuta in te geven. Als alles foutloos is ingevuld kan dit bevestigd worden door op de knop “Opslaan” te drukken. Wanneer de optie “Geavanceerde dienstverplaatsing” aangevinkt wordt, zal er een andere view waarneembaar zijn. Dit wordt in het volgende puntje “Geavanceerde bestemming” verder besproken. 33 Geavanceerde bestemming Figuur 25 Geavanceerde bestemming dienstverplaatsing eigen wagen Om een nieuwe tussenstop toe te voegen, klikt de gebruiker op de optie “Toevoegen”. Vervolgens zal de gebruiker de start en eindbestemming moeten invullen. Hieronder valt: Adres Gemeente Land Als de gebruiker op “Opslaan” wordt dit toegevoegd aan een lijst en kunnen er eventueel nog meerdere locaties toegevoegd worden. Wanneer de gebruiker een tweede locatie toevoegt zal het vertrekpunt automatisch de eindbestemming zijn van de vorige locatie. Gegevens kunnen ook verwijderd worden. Vervolgens moet er nog een “Reden voor de verplaatsing” ingegeven worden en dagen geselecteerd worden. Tot slot kunnen hier ook parkeerkosten ingegeven worden. 6.4 FIETSVERGOEDING Wanneer er geklikt wordt op de knop “Woon-werkverkeer fietsvergoeding”, navigeert de app naar het overzicht scherm “Woon-werkverkeer fietsvergoeding”. 34 Figuur 26 Tile fietsvergoeding 6.4.1 Overzicht Figuur 27 Overzicht pagina fietsvergoeding Standaard wordt er een overzicht weergegeven van de laatste 10 aanvragen. Hier kunnen alle aanvragen waargenomen worden van de gekozen categorie (hier Woon-werkverkeer fietsvergoeding van eigen wagen) met hun huidige status. Als er geklikt wordt op rechts naast het document nummer, zal de aanvraag openen. 35 Figuur 28 Detail pagina fietsvergoeding 6.4.2 Nieuw Figuur 29 Nieuw tile fietsvergoeding De bovenstaande knop start een nieuwe aanvraag “Fietsvergoeding”. 36 6.4.2.1 Algemene gegevens Figuur 30 Nieuwe aanvraag algemene gegevens fietsvergoeding Deze wizard bestaat uit 1 scherm waar de gebruiker meerdere soorten fietsvergoedingen op kan aanvragen. Deze soorten zijn: Standaard fietsvergoeding (bv. van het thuisadres naar campus RDR) Fietsvergoeding geavanceerde route (bv: van adres a naar adres b en terug) Interne campus verplaatsing (bv van campus RDR naar campus GKG) Ook hier kunnen de gegevens nagegaan worden van de ingelogde persoon, door de optie “Detail aanvrager” aan te vinken. Vervolgens moeten de volgende onderdelen geselecteerd worden: Organisatie eenheid Ankerpunt Maand Dagen selecteren Verder is er ook een bijlagen overzicht. Hier kan er geen bijlage toegevoegd worden, maar bij het verzenden van de aanvraag wordt een bijlage aangemaakt die achteraf bekeken kan worden. Standaard fietsvergoeding 37 Wanneer de gebruiker de standaardfietsvergoeding doorloopt zal er een bestemming (campus) geselecteerd moeten worden. Figuur 31 Standaard fietsvergoeding Na dit weg geschreven is naar de database zal de applicatie een pdf downloaden. Figuur 32 fietsvergoeding pdf download In de onderstaande afbeelding kan de gedownloade pdf waargenomen worden. 38 Figuur 33 Fietsvergoeding pdf Wanneer de gebruiker “Geavanceerde fietsvergoeding” aanduidt, zijn er twee opties “Route” of “Interne campus verplaatsing”. Fietsvergoeding geavanceerde route Hier krijgt de gebruiker de mogelijkheid om routes toe te voegen. Figuur 34 Nieuwe aanvraag geavanceerde fietsvergoeding 39 Wanneer er op “Opslaan” gedrukt wordt, worden de gegevens opgeslagen en het venster gesloten. Figuur 35 Opslaan routes Als er geklikt wordt op het vuilbakje rechts naast een tussenstop, kan de tussenstop verwijderd worden. Interne campus verplaatsing Bij de ingaven van een interne campus verplaatsing moet de gebruiker de campus van vertrek en de campus van aankomst selecteren. 6.5 TERUGVORDERING EIGEN KOSTEN Wanneer de gebruiker klikt op de knop “Terugvordering eigen kosten” komt de gebruiker op het overzicht scherm “Terugvordering eigen kosten”. Figuur 36 Tile terugvordering eigen kosten 40 6.5.1 Overzicht Hier kan de gebruiker het overzicht scherm “Terugvordering eigen kosten” bekijken. Figuur 37 Overzicht pagina terugvordering eigen kosten Bij elke aanvraag kan er een overzicht van de kosten waargenomen worden. Als er geklikt wordt op rechts naast het document nummer, zal de aanvraag openen. Figuur 38 Detail pagina terugvordering eigen kosten 41 6.5.2 Nieuw Wanneer er op de knop “Nieuw” geklikt wordt. Zal de gebruiker navigeren naar de view voor een nieuwe aanvraag “Terugvordering eigen kosten”. Figuur 39 Nieuw tile terugvordering eigen kosten 6.5.2.1 Algemene gegevens Hieronder kan de gebruiker waarnemen welke gegevens er nodig zijn om een nieuwe aanvraag in te dienen voor “Terugvordering eigen kosten”. Figuur 40 Nieuwe aanvraag terugvordering eigen kosten Ook hier worden de gegevens van de ingelogde persoon automatisch opgehaald uit de databank. Dit kan nagekeken worden door de optie “Detail aanvrager” aan te vinken. 42 Figuur 41 Details login gebruiker Vervolgens zal het volgende ingegeven moeten worden: De omschrijving en het totaal Het bedrag van de kosten Verder zal nog het volgende geselecteerd moeten worden: BTW percentage Organisatie eenheid Ankerpunt Maand Tot slot moet de gebruiker een bewijs van de betaling toevoegen, door een lokaal bestand te selecteren. 6.6 AFMELDEN Wanneer de gebruiker de applicatie wilt verlaten kan er geklikt worden op de knop “Afmelden” dat altijd rechtsboven kan terug gevonden worden. 43 7 BESLUIT De doelstelling van de stage was verder bouwen op de bestaande module van ProCure.Web. Dit is een webbased module gekoppeld aan het aankoopbeheer. In dit aankoopbeheer kan een gebruiker diverse vergoedingen aanvragen. De verschillende aanvragen voor de mobile applicatie zijn: Dienstverplaatsing eigen wagen Woon-Werkverkeer fietsvergoeding Terugvordering eigen kosten Hiervan is er een gebruikers en technische handleiding beschreven. De grootste uitdaging bij dit project was de vereisten afwegen tegen de mogelijkheden. De stage bij Integreat was een interessante ervaring. Er werd geleerd hoe theoretische kennis in de praktijk toepassen wordt. Daarnaast is goed communiceren noodzakelijk op de werkvloer wat soms ontbrak. Bij Integreat heerste een goede werksfeer, wat de kern is van een goede motivatie. Zelfredzamer, zelfdiscipline en assertiviteit zijn noodzakelijk. 44 8 BRONVERMELDING “front-end-en-back-end” [Online].Available: http://www.uptime.nl/2013/02/front-end-en-backend/#.U1EEKfl_uog “Integreat” [Online].Available: http://www.integreat.be/ “XML” [Online].Available: http://nl.wikipedia.org/wiki/XML “Cross-Platform Development with the Portable Class Library” [Online].Available: http://msdn.microsoft.com/en-us/library/gg597391(v=vs.110).aspx “Platform” [Online].Available: http://nl.wikipedia.org/wiki/Platform_(informatica) “JSON” [Online].Available: http://nl.wikipedia.org/wiki/JSON “Wireframe” [Online].Available: http://www.veltenmedia.nl/van-wireframe-tot-website/ “Webservice” [Online].Available: http://nl.wikipedia.org/wiki/Webservice “application programming interface (API)” [Online].Available: http://nl.wikipedia.org/wiki/Application_programming_interface D. De Preester, “MVVM”, 2014, pp. 1- 1
© Copyright 2024 ExpyDoc