Eindwerk Wim Proot

Download Eindwerk Wim Proot

Post on 17-Jul-2015

79 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

<p>Eindwerk</p> <p>Studiegebied Bachelor Afstudeerrichting Academiejaar Student</p> <p>Handelswetenschappen en Bedrijfskunde Toegepaste Informatica 2009-2010</p> <p>Wim Proot</p> <p>Thema</p> <p>Onderzoek naar de web services in Microsoft Dynamics NAV 2009Het onwikkelen van een planningsapplicatie op basis van web services</p> <p>Stageplaats</p> <p>Astena NVGentbrugge</p> <p>Howest-de Hogeschool West-Vlaanderen Rijselstraat 5 8200 Brugge T 050 38 12 77 F 050 38 11 71 brugge@howest.be www.howest.be</p> <p>Stage Astena NVWim ProotOnderzoek naar de web services in Microsoft Dynamics NAV 2009 Het ontwikkelen van een planningsapplicatie die gebruik maakt van web services</p> <p>Project aangeboden door Wim Proot voor het behalen van de graad Bachelor in de Toegepaste Informatica Academiejaar 2009 - 2010</p> <p>Astena NV</p> <p>1</p> <p>Astena NV</p> <p>1. Woord voorafAl sinds het begin van de driejarige opleiding Toegepaste Informatica keek ik reikhalzend uit naar de afsluitende stage. Niet omdat deze ook onmiddellijk het einde van de opleiding betekent maar vooral om eindelijk ervaring te kunnen opdoen in de echte wereld. 3 maanden lang aan de slag gaan bij een bedrijf om daar onder begeleiding aan een echt project te kunnen werken. Dagen, weken, maanden, jaren, examens, opdrachten, vlogen voorbij. En toen was de stage eindelijk aangebroken. Met een klein hartje stapte ik in mijn auto en reed ik richting Gentbrugge. Al gauw bleek dat mijn zenuwachtigheid voor niets nodig was. Ik werd met open armen onthaald door alle collegas. Ik kreeg niet enkel de noodzakelijke uitleg over Microsoft Dynamics NAV 2009 en mijn stageopdracht maar kreeg ook een snelcursus koffie zetten. Er is werkelijk een goeie sfeer op mijn stagebedrijf, de potjes manillen over de middag, het bakje friet op vrijdag, het afsluitende pintje op vrijdagavond, Allemaal toffe momenten waar ik met veel plezier naar terug kijk. In de eerste plaats wens ik de heer Patrick Galleyn, zaakvoerder van Astena, te bedanken omdat ik in zijn bedrijf mijn stage mocht lopen, net als Stijn Mattheus die me in contact bracht met Patrick. Mijn dankbaarheid gaat ook uit naar alle collegas bij Astena voor de open ontvangst, alle tips, uitleg en advies, Ook wens ik mijn stagebegeleider, mevrouw Kristien Roels, te bedanken voor het begeleiden van mijn stage, het nalezen van mijn eindwerk, het beantwoorden van alle vragen, de vlotte communicatie, Verder zou ik ook graag mijn vriendin Vicky bedanken voor haar steun, haar luisterend oor en haar bereidheid om me te helpen. Ook mijn vader wil ik bedanken, niet alleen om het voor mij mogelijk te maken deze opleiding te volgen, maar ook voor het nalezen van mijn eindwerk, het leveren van kritisch commentaar, het bespreken van alle aspecten van de stage, de steun tijdens mijn zoektocht naar een job, Als laatste wil ik ook graag mijn mama bedanken. Je dapperheid en doorzettingsvermogen zullen altijd een bron van motivatie en inspiratie zijn voor mij.</p> <p>2</p> <p>Astena NV</p> <p>2. SamenvattingTijdens mijn stage heb ik de web services in Microsoft Dynamics NAV 2009 onderzocht en bestudeerd. Het resultaat van mijn onderzoek is terug te vinden in dit eindwerk. Er wordt besproken hoe de web services geactiveerd worden en hoe je ze kan aanspreken. Ook wordt er besproken welke gegevens via de web services opgevraagd en bijgewerkt kunnen worden, en op welke manier we de web services kunnen manipuleren en uitbreiden. Zo werd er een web service ontworpen die elk veld uit Microsoft Dynamics NAV 2009 kan uitlezen en bijwerken. Rond deze web service wordt een een C#.NET-klasse geschreven die bruikbaar is in allerhande applicaties. Voor de bestudering van de bruikbaarheid wordt er een planningsapplicatie ontwikkeld ter vervanging van de huidige applicatie PlanningPME van de firma Target Skills. Via deze planningsapplicatie kunnen taken op een visuele manier toegewezen worden aan resources. Het doel van deze applicatie is het werk van de planner vereenvoudigen en optimaliseren. Zo werd er veel aandacht besteed aan uitgebreide plannings en filtermogelijkheden. Al snel wordt duidelijk dat vooral de performantie een pijnpunt is van de web services. In dit eindwerk worden dus ook allerhande mogelijkheden besproken om de performantie te verbeteren.</p> <p>Sleutelwoorden: Microsoft Dynamics NAV 2009, code unit, web services, Web Service Connector, C#.NET, C/AL, WBS, Planning Line, plannen, planningstool, Windows Forms, filteren.</p> <p>3</p> <p>Astena NV</p> <p>3. AbstractDuring my internship Ive researched the web services of Microsoft Dynamics NAV 2009. The result of this research is available in this dissertation. Im explaining how to activate the web services en how to use them. Im also describing how to read and update fields, and how to manipulate and expand the web service. Im developing a web service which is able to read every field from Microsoft Dynamics NAV 2009 and update this field. Wrapped arount this web service Ive written a C#.NET-class which can be widely used in all kinds of application. To study the usability Ive designed a planning application to replace the application which is currently being used, PlanningPME from Target Skills. With this application it is possible to visually assign tasks to resources. The purpose of this application is to simplify and optimize the work of a planner. For that reason a lot of attention is given to extensive planning and filter options. Soon became clear that performance is the bottleneck of web service. In this dissertation a lot of possibilities to boost the performance are discussed.</p> <p>Keywords: Microsoft Dynamics NAV 2009, code unit, web services, Web Service Connector, C#.NET, C/AL, WBS, Planning Line, to plan, planningstool, Windows Forms, filtering.</p> <p>4</p> <p>Astena NV</p> <p>Inhoudsopgave1. 2. 3. 4.4.1. 4.2.</p> <p>Woord vooraf ...................................................................................... 2 Samenvatting ...................................................................................... 3 Abstract .............................................................................................. 4 Inleiding ............................................................................................. 7Astena ..........................................................................................................7 ERP ..............................................................................................................8 Wat is ERP? .............................................................................................8 Wat zijn de voordelen van een ERP-pakket? .................................................8 Welke ERP-pakketten zijn er beschikbaar? ...................................................8 Microsoft Dynamics ..................................................................................9</p> <p>4.2.1. 4.2.2. 4.2.3. 4.2.4.</p> <p>5.5.1. 5.2.</p> <p>Stageopdracht (deel 1) ..................................................................... 13Omschrijving ............................................................................................... 13 Onderzoek ................................................................................................... 14 Webservice............................................................................................ 14 Hoe publiceer je een codeunit als webservice in Microsoft Dynamics NAV 2009 16 C/AL ..................................................................................................... 20 C/AL code in een Code Unit...................................................................... 21 Benaderen van de webservice in C#.NET ................................................... 22 Uitwerken van de opdracht ...................................................................... 30 De klasse WebServiceConnector ............................................................... 33</p> <p>5.2.1. 5.2.2. SP1? 5.2.3. 5.2.4. 5.2.5. 5.2.6. 5.2.7.</p> <p>6.6.1. 6.2. 6.3.</p> <p>Stageopdracht (deel 2) ..................................................................... 36Situering ..................................................................................................... 36 Huidige oplossing ......................................................................................... 37 Beknopte omschrijving van de applicatie .......................................................... 38 Deel 1: ................................................................................................. 38 Deel 2: ................................................................................................. 38</p> <p>6.3.1. 6.3.2.</p> <p>7.7.1. 7.2.</p> <p>Onderzoek naar mogelijke controls voor de visualisatie ................... 39Gratis ......................................................................................................... 39 Microsoft Chart Controls .......................................................................... 39 Oplossing 1 ........................................................................................... 40 Oplossing 2 ........................................................................................... 41 Oplossing 3 ........................................................................................... 42 Oplossing 4 ........................................................................................... 43 Netronic VARCHART XGantt ..................................................................... 44 Kroll Software Gantt Control .................................................................... 44 Contacteren firmas ................................................................................ 44 Betalend ............................................................................................... 45 Betalend ..................................................................................................... 40 7.1.1. 7.2.1. 7.2.2. 7.2.3. 7.2.4.</p> <p>7.3.</p> <p>Evaluatie ..................................................................................................... 44</p> <p>7.3.1. 7.3.2. 7.3.3. 7.4. 7.5. 7.4.1.</p> <p>Verder zoeken naar mogelijke controls ............................................................ 45 Besluit ........................................................................................................ 47</p> <p>8.8.1.</p> <p>Analysedossier .................................................................................. 48Omschrijving van de applicatie ....................................................................... 48</p> <p>5</p> <p>Astena NV</p> <p>8.2.</p> <p>Analyse van de back-end ............................................................................... 50 Niet functionele specificaties .................................................................... 50 Functionele specificaties .......................................................................... 50 Objecten ............................................................................................... 51 Implementatie ....................................................................................... 52 Niet functionele specificaties .................................................................... 58 Functionele specificaties Requirements List .............................................. 58 Use Cases ............................................................................................. 59 Plannen ................................................................................................ 59 Filteren ................................................................................................. 60 Views en plannen ................................................................................... 63 Filters op de WBSen ............................................................................... 63 Filters op de resources ............................................................................ 64 Datum navigator en refresh knop ............................................................. 65</p> <p>8.2.1. 8.2.2. 8.2.3. 8.2.4. 8.3. 8.3.1. 8.3.2. 8.3.3. 8.3.4. 8.3.5.</p> <p>Analyse van de front-end (view) ..................................................................... 58</p> <p>9.</p> <p>Bespreking van het programma ........................................................ 629.1.1. 9.1.2. 9.1.3. 9.1.4.</p> <p>10. 11.11.1. 11.2.</p> <p>Performantieproblemen .................................................................... 66 Conclusie ........................................................................................... 68Stageopdracht (deel 1) ................................................................................. 68 Stageopdracht (deel 2) ................................................................................. 68</p> <p>12. 13. 14.</p> <p>Kritische reflectie .............................................................................. 70 Goedkeuring eindwerk ...................................................................... 71 Bijlage 1 Use Cases ........................................................................ 72</p> <p>6</p> <p>Astena NV</p> <p>4. Inleiding4.1. AstenaDe firma Astena is gevestigd in het Trevi-gebouw te Gentbrugge, een deelgemeente van Gent. Astena is een softwarebureau dat zich voornamelijk richt op het aanbieden van bedrijfsoplossingen voor Belgische KMOs. Het bedrijf biedt betaalbare, betrouwbare en kwalitatieve oplossingen aan ter ondersteuning en optimalisering van de dagelijkse bedrijfsvoering. Astena investeerde in de ontwikkeling van een totaaloplossingen voor service en projectbedrijven. Dit resulteerde in standaardoplossingen die volledig aansluiten op de specifieke behoeften van de klant. Het grote voordeel hiervan is dat het bewezen kant-enklare oplossingen betreft die slechts een korte implementatietijd vergen. Alle oplossingen van Astena zijn gebouwd op het Microsoft-platform. Er wordt dus gewerkt met de vertrouwde Microsoft-producten zoals Microsoft Dynamics NAV, Microsoft SharePoint, Microsoft SQL Server,... Dit staat garant voor continuteit en gebruiksvriendelijkheid. De inspanningen van Astena werden erkend door Microsoft. Als Microsoft Gold Partner kreeg Astena de grootste erkenning. Astena maakt deel uit van de overkoepelende CRONOS groep. CRONOS werd in 1991 opgericht door Jef de Wit die nog steeds verantwoordelijk is voor het bedrijf. Het basisidee was om een nieuwe ICT-markt te verkennen en voor deze nichemarkt leider in de dienstverlening te worden. CRONOS probeerde vervolgens om de niche diensten die zij aanboden te verbreden en evolueerden naar een aanbieder van oplossingen. Zodra deze cyclus afgesloten was, pasten ze hetzelfde concept toe op een andere markt. Door de jaren geen verzamelde CRONOS een enorme hoeveelheid ervaring in het ontwerpen, implementeren en ontwikkelen van business en ICT-plossingen voor een breed scala van markten. Met Client/Server Development, Object Oriented Development, Component-Based Development, Multi-Vendor Integration, Legacy Migration &amp; Integration, Product Developmen...</p>