Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
1
RAPPORT DE STAGE D’ETE
Spécialité : Informatique
Option : Ingénierie Informatique
Par
Rawdha MABROUKI
Entreprise d’accue...
ii
Remerciements
Mes remerciements les plus distingués sont adressé au membre des jurys qui m’ont fait
l’honneur de bien v...
iii
Sommaire
Introduction générale...........................................................................................
iv
2.4 Environnement de développement........................................................................... 20
MorphX...
iv
Liste des figures
Figure I-1 : Les différentes vues du langage UML .......................................................
v
Liste des tableaux
Tableau I-1 : Modèle de couches de Dynamics Ax..........................................................
1
Introduction générale
Un système d'information est un ensemble organisé de ressources qui permet de collecter,
regrouper...
2
nommé Dynamics tel que Microsoft Dynamics Navision pour petites et moyennes entreprises
et Dynamics Axapta pour les entr...
3
Chapitre I. Contexte de Projet
1.1 Introduction
Dans ce chapitre nous présenterons le contexte général du projet. Nous c...
4
1.3 Présentation du projet
L’objectif du stage consiste à développer un module de gestion des visas des employés dès
l’é...
5
1.5 Etat de l’art
Dans cette partie nous allons présenter l’état de l’art de notre projet. Donc cette partie nous
allons...
6
Architecture fonctionnel de Dynamics AX
La solution Microsoft Dynamics AX est un progiciel de gestion intégré PGI (ERP E...
7
Architecture en couches de Dynamics Ax
Le tableau I-1 illustre chaque couche dans Microsoft Dynamics Ax. Nous allons cré...
8
Niveau présentation
Le niveua présentation est constitué du client Windows et Entreprise Portal. Le Client Windows
exécu...
9
Chapitre II. Mise en œuvre
2.1 Introduction
Dans ce chapitre nous allons détailler le design de notre application en met...
10
La figure ci-dessus illustre le diagramme de cas d’utilisation générale.
Figure II-1 : Diagramme de cas d'utilisation g...
11
Prototypes
Afin de développer un prototype nous avons choisi GUI design Studio. C’est un logiciel
professionnel qui per...
12
La figure ci-dessus illustre le prototype du document de demande de visa de sortie terminale.
Figure II-3 : Prototype d...
13
La figure ci-dessus illustre le prototype de la demande d’une entrée et sortie pour plusieurs
voyages.
Figure II-4 : Pr...
14
La figure ci-dessus illustre le prototype converti du document d’une demande de visa pour une
mission temporaire.
Figur...
15
La figure ci-dessus illustre le prototype converti du document demande de visa pour une entrée
et sortie pour un seul v...
16
La figure ci-dessus illustre le prototype converti du document d’une demande de visa pour une
résidence temporaire.
Fig...
17
2.3 Conception
Afin de concevoir notre module, nous avons créé le modèle conceptuel de données avec la
spécification de...
18
Nous avons défini le diagramme de classe avec une précision de nouvelles classes. Nous avons
ainsi ajouté la classe Vis...
19
Nous avons transformé le modèle orienté objet en modèle physique de données. Notamment le
modèle physique de données pe...
20
la figure ci-dessus illustre la table HCMWorker.
2.4 Environnement de développement
Microsoft Dynamics AX comprend un e...
21
de l'application AOT (Application Object Tree). Ainsi qu’il permet de réaliser des
personnalisations faites graphiqueme...
22
 DetailsFormMaster
 DetailsFormTransaction
 SimpleListDetails
 SimpleList
 TableOfContents
 Dialogue
 DropDialog...
23
2.6 Réalisation
Dans cette phase, les concepts et les objectifs sont traduits en actions concrètes, et en
conséquence, ...
24
Le premier formulaire qui s’affiche dans l’application est le List Page. Il fournit une vue simple
et ergonomique.
Nous...
25
Si l’utilisateur a choisi de modifier les enregistrements il peut ouvrir la grille de modification
pour éditer les enre...
26
La figure ci-dessus illustre l’interface de gestion des demandes de type Transactional détails.
Ce formulaire à deux pa...
27
2.7 Conclusion
Dans ce chapitre nous avons réussi à définir exactement les besoins fonctionnels de notre
application en...
28
Conclusion générale
Ou cour de ce stage d’été nous avons bénéficié d’une expérience enrichissante du milieu
professionn...
Bibliographies
[1] Enterprise Resource Planning by Alexis Leon L&L Consultancy Services Prt Ltd Chennao
Tata McGraw-Hill P...
Webographies
[W1] https://msdn.microsoft.com Consulter le 29/07/2015
[W2] https://community.dynamics.com/ Consulter le 31/...
Conception et développement de la gestion de visa sous Dynamics Ax R2
Upcoming SlideShare
Loading in …5
×

Conception et développement de la gestion de visa sous Dynamics Ax R2

469 views

Published on

gestion des dossiers de Visa des employés

Published in: Software
  • Be the first to comment

  • Be the first to like this

Conception et développement de la gestion de visa sous Dynamics Ax R2

  1. 1. 1 RAPPORT DE STAGE D’ETE Spécialité : Informatique Option : Ingénierie Informatique Par Rawdha MABROUKI Entreprise d’accueil Encadrant professionnel Madame Malek MOKLINE Année universitaire 2015/2016 Année universitaire 2015/2016 Conception et Développement d’un Module Dynamics Ax de Gestion de Visa
  2. 2. ii Remerciements Mes remerciements les plus distingués sont adressé au membre des jurys qui m’ont fait l’honneur de bien vouloir accepter d’évaluer ce modeste travail et d’avoir accepté de rapporter ce modeste travail et d’avoir trouvé la force de lire, corriger et critiquer. Enfin je remercie madame Safa RAFAI rapporteur pour les critiques relatives au rapport. Je tiens à exprimer toutes mes gratitudes à Mme Malek Mokline pour avoir supervisé le cheminement de ce travail, aussi pour ses encouragements et surtout pour ses conseils et ses orientations précises émanant d’une rigueur et d’une expérience précieuse.
  3. 3. iii Sommaire Introduction générale............................................................................................................... 1 Chapitre I. Contexte de Projet............................................................................................ 3 1.1 Introduction ................................................................................................................ 3 1.2 Présentation de l’entreprise d’accueil ........................................................................ 3 Objectifs ................................................................................................................. 3 Domaines d’activités.............................................................................................. 3 1.3 Présentation du projet................................................................................................. 4 Motivations............................................................................................................. 4 Objectif du projet ................................................................................................... 4 1.4 Méthodologie et formalisme adoptées ....................................................................... 4 1.5 Etat de l’art................................................................................................................. 5 Entreprise Ressource Planning............................................................................... 5 Microsoft Dynamics............................................................................................... 5 Architecture fonctionnel de Dynamics AX............................................................ 6 Architecture en couches de Dynamics Ax ............................................................. 7 Architecture Technique de Dynamics Ax .............................................................. 7 Niveau accès aux données...................................................................................... 7 Niveau intermédiaire.............................................................................................. 7 Niveau présentation................................................................................................ 8 1.6 Problématiques........................................................................................................... 8 1.7 Conclusion.................................................................................................................. 8 Chapitre II. Mise en œuvre............................................................................................... 9 2.1 Introduction ................................................................................................................ 9 2.2 Spécification des besoins ........................................................................................... 9 Diagramme de cas d’utilisation générale ............................................................... 9 Prototypes............................................................................................................. 11 2.3 Conception ............................................................................................................... 17
  4. 4. iv 2.4 Environnement de développement........................................................................... 20 MorphX IDE ........................................................................................................ 20 Langage X++........................................................................................................ 21 Pattern de formulaire de Dynamics Ax ................................................................ 21 Service de reporting ............................................................................................. 22 2.5 Architecture de l’application.................................................................................... 22 2.6 Réalisation................................................................................................................ 23 2.7 Conclusion................................................................................................................ 27 Conclusion générale ............................................................................................................... 28 Bibliographies............................................................................................................................i Webographies ...........................................................................................................................ii
  5. 5. iv Liste des figures Figure I-1 : Les différentes vues du langage UML .................................................................... 5 Figure I-2 : Architecture fonctionnel d’AX [W1]...................................................................... 6 Figure I-3 : WorkerList Page ..................................................................................................... 6 Figure I-4 : Architecture technique d’AX.................................................................................. 8 Figure II-1 : Diagramme de cas d'utilisation générale ............................................................. 10 Figure II-2 : Prototype List Page.............................................................................................. 11 Figure II-3 : Prototype demande de visa de sortie terminale ................................................... 12 Figure II-4 : Prototype demande de visa entré sortie pour plusieurs voyages ......................... 13 Figure II-5 : Prototype Demande de visa pour une mission Temporaire................................. 14 Figure II-6 : Prototype demande de visa pour une entré sortie un seul voyage ....................... 15 Figure II-7 : Prototype Demande de visa pour une résidence temporaire................................ 16 Figure II-8 : Modèle conceptuel de données............................................................................ 17 Figure II-9 : Diagramme de classe ........................................................................................... 18 Figure II-10 : Schéma relationnel de la base de données......................................................... 19 Figure II-11 : Table HCMPerson Private Details..................................................................... 19 Figure II-12 : MorphyX le Developper Workspace................................................................. 20 Figure II-13 : MorphX IDE éditeur de code X++ .................................................................... 21 Figure II-14 : Architecture d'une Business Application........................................................... 22 Figure II-15 : Interface Visa Request List page ....................................................................... 24 Figure II-16 : Interface Visa Request Master Détails Page...................................................... 24 Figure II-17 : Interface Master Détails page de gestion de visa pour un employé................... 25 Figure II-18 : Interface de grille de Modification de demande de Visa................................... 25 Figure II-19 : Interface vue en tête de la page Transactional détails d'ajout de demande ....... 26 Figure II-20 : Interface transactionnel Détails Page vue ligne................................................. 26
  6. 6. v Liste des tableaux Tableau I-1 : Modèle de couches de Dynamics Ax.................................................................... 7 Tableau II-1 : Liste des classes................................................................................................. 18
  7. 7. 1 Introduction générale Un système d'information est un ensemble organisé de ressources qui permet de collecter, regrouper, classifier, traiter et diffuser de l'information sur un environnement donné. C’est un système dédié et ouvert sur son environnent. Il produit des informations en utilisant le cycle de sortie du processus d’entrée. L'élément le plus important dans un système d'information est ces données. Les systèmes d'information traditionnels présentent un inconvénient majeur. En effet, ces systèmes ne donnent que les informations, qui ont été conçus d’être produites au moment où ils ont été construits. Or dans une entreprise, les employés appartenant à un département donné ne disposent pas d'information sur les autres départements. Au niveau de la direction, les rapports de synthèses sont distribués à tous départements, mais ces rapports ne permettent pas de capter l’image réelle sur l’état globale de l’entreprise. D’où vient le besoin d’avoir une vue globale sur différents départements d’une entreprise. De nombreuses grandes entreprises utilisent les systèmes d’informations appelées progiciel de gestion d’entreprise ou Entreprise Ressources Planning (ERP), car ils fournissent un soutien rentable pour les employés, superviseurs, chef de projet et gestionnaires de l'entreprise. L’ERP est prévu d'améliorer le flux de l'information et de formaliser, intégrer et automatiser tous les processus et les flux de travail qui existent dans une organisation. L’ERP peut exécuter des fonctions effectuées par les employés comme l’enregistrement des données, le contrôle des procédures, les calculs ou la préparation des rapports. Les ERP sont des applications permettant de coordonner l'ensemble des activités d'une entreprise (activités dites verticales telles que la production, l'approvisionnement ou bien horizontales comme le marketing, les ventes, la gestion des ressources humaines, etc.) autour d'un même système d'information. Ils offrent à l'entreprise, une solution globale et transversale [1]. Notamment, il garantit la fiabilité la non redondance et non modification non permise des informations ainsi qu’il permet la visibilité en temps réel des activités et d’éviter la double saisie. Les principaux éditeurs des ERP propriétaires du marché on peut citer SAP (leader mondiale), Oracle/People Soft, Sage ADONIX, Microsoft, SSA Globale etc. Microsoft vend des ERP,
  8. 8. 2 nommé Dynamics tel que Microsoft Dynamics Navision pour petites et moyennes entreprises et Dynamics Axapta pour les entreprises de grande taille. Dans le cadre de stage d’été de la deuxième année ingénierie informatique, nous avons visité une société travaillant dans le consulting ERP Microsoft. ODI.C Sarl est spécialisée dans le domaine du consulting, sur les deux solutions de Microsoft Dynamics Navision et Axapta. Elle prend en charge l’intégration ERP, la réalisation d’audit, le suivie des spécifications, la formation des utilisateurs support clients et le suivie des projets. Les consultants en entreprise sont des professionnels, qui se spécialisent dans le développement de techniques et de méthodes pour faire face à la mise en œuvre et les différents problèmes. Ils sont experts dans l’administration, la gestion et le contrôle des projets. Le projet tel qu’il m’a été présenté à ODI.C consiste à développer une application sur Dynamics Ax, permettant de gérer la totalité des dossiers de demande de Visa des employés d’une compagnie libyenne d’activité pétrolière. Ce projet devra inclure la traduction des documents en arabes à des prototype puis la conception et création des formulaires Dynamics Ax. Afin de réaliser ces tâches, il sera nécessaire de définir les besoins fonctionnels ou cas d’utilisation, et créer une nouvelle table dite VisaRequest. Ce travail sera traité en deux chapitres. Le premier sera consacré à étudier l’environnement de travail professionnel et technique ce qui inclut une étude de l’aspect technique et fonctionnel de l’ERP Dynamics Ax. Le deuxième se penchera sur l’analyse et la conception de la solution adéquate. En fin, nous montreront les formulaires que nous avons réussi à développer et nous finirons par une conclusion rappelant les travaux réalisés.
  9. 9. 3 Chapitre I. Contexte de Projet 1.1 Introduction Dans ce chapitre nous présenterons le contexte général du projet. Nous commencerons par présenter la société « ODIC ». Nous allons détailler les services qu’elle offre ainsi que les domaines de compétences qui font sa renommée. Ensuite, nous introduisions le cadre général de notre travail. Enfin nous présentant l’état de l’art et le problématique. 1.2 Présentation de l’entreprise d’accueil Ce projet a été réalisé au sein de la société « Organisation Développement Intégration et Consulting » ou « ODI.C » qui peut se targuer d’être le leader en Tunisie dans le domaine d’intégration des progiciels centralisant les données et les fonctions de gestion de l'entreprise dit « Progiciel de Gestion Intégrer » ou encore PGI de type « Microsoft Dynamics Axapta » ODI.C une société de conseil en informatique spécialisée dans la mise en œuvre d’E.R.P. ODIC Sarl est fondée en 2007 en Tunisie, ayant un effectif de 20 collaborateurs. Elles offrent des solutions pour plus de 20 clients en Tunisie et à rangé pour les domaines d’industrie, textiles et pétrole. Objectifs Les objectifs d’ODI.C se résument dans l’assistance des clients dans la définition de leur politique informatique. Puis l’accompagnement des clients dans le développement de leur système d’information, Anticipation des évolutions. Enfin le support des clients lors de la gestion de leurs données. Domaines d’activités ODIC travaille dans trois domaines d’activités, ce sont : le consulting organisationnel, la mise en place de système d’informations et l’analyse et exploitations des bases de données. Le consulting est constitué des activités de la mise en place et suivi de l’application, les méthodes de gestion ; stocks, ventes et approvisionnement …la mise en place de système d’information consiste à l’assistance au déploiement d’ERP, la maîtrise d’ouvrage sur des projets ERP et infrastructure, la gestion de projets, l’intégration et le développement de l’ERP Dynamics Navision et Dynamics Axapta. En fin l’analyse des données consiste à développer le reporting et business intelligence spécifique en utilisant les outils les outils BI de Microsoft.
  10. 10. 4 1.3 Présentation du projet L’objectif du stage consiste à développer un module de gestion des visas des employés dès l’élaboration d’une demande vers la clôtures de leurs visas. Dans cette partie nous allons présenter les motivations de choix du sujet et l‘objectif du projet. Motivations Le choix du projet de stage d’été est une étape délicate, puisqu’elle matérialise la transaction entre l’environnement éducationnel et la vie professionnelle. Plusieurs motivations ont orienté notre choix :  En premier lieu, notre sujet fait le lien entre nos atouts qui sont l’informatique et la gestion.  En second lieu, l’ERP est devenu un sujet très important voire un sujet d’actualité. Il est au cœur des préoccupations de toutes les entreprises qui cherchent à automatiser ses processus métiers.  En troisième lieu, il nous permet d’approfondir encore plus nos connaissances en matière d’ingénierie informatique en ayant l’occasion de travailler avec des technologies innovantes telle que la technologie MorphX et SQL Server 2012. Objectif du projet Le travail demandé consiste à concevoir et à implémenter un module de gestion et suivi de visa des employés d’une entreprise travaillant dans le domaine de production pétrolière. Notre objectif est de développer une application Dynamics Ax qui permet le suivie des dossiers de demande de visa en traduisant les documents de demande de visa en arabe en des formulaires. 1.4 Méthodologie et formalisme adoptées Le plus grand avantage d’une méthode orientée objet est qu’elle permet de structurer un système sans centrer l’analyse uniquement sur les données ou uniquement sur les traitements mais sur les deux à la fois. Une telle approche a pour but de modéliser les propriétés statiques et dynamiques de l’environnement du système. Elle met en correspondance le problème et la solution, en préservant la structure et le comportement du système analysé. Ceci, nous a conduit à adopter l’approche orientée objet pour modéliser notre système en se basant sur les diagrammes UML [3]. La figure I-1 illustre les diagramme d’UML. Nous allons utiliser le diagramme de classe afin de modéliser l’aspect statique du module, le diagramme de cas d’utilisation afin de modéliser l’aspect fonctionnel.
  11. 11. 5 1.5 Etat de l’art Dans cette partie nous allons présenter l’état de l’art de notre projet. Donc cette partie nous allons détailler le système existant (l’ERP Dynamics Ax). Ainsi que nous allons présenter la problématique du projet. Entreprise Ressource Planning Un ERP est un « logiciel qui permet de gérer l’ensemble des processus d’une entreprise en intégrant l’ensemble des fonctions de cette dernière comme la gestion des ressources humaines, la gestion comptable et financière, l’aide à la décision, et aussi la vente, la distribution, l’approvisionnement, la commerce électronique ». Microsoft Dynamics Dynamics est une gamme de progiciels de gestion d’entreprise conçue par Microsoft. Cette gamme, qui fut également connue sous le nom de Project Green. Il est le successeur de l’ancienne famille de logiciels destinée à la gestion d’entreprise, Microsoft Business Solutions. Il est présent dans 28 pays pour un effectif de 4 000 salariés. Il inclut les logiciels suivants, Dynamics Ax, Dynamics GP (anciennement Great Plains), Dynamics NAV (anciennement Navision) et Dynamics SL (anciennement Solomon). Étude fonctionnelle de Dynamics Ax. Ax est un ERP générique conçu pour les entreprises de 200 à 7500 utilisateurs. Il soutient les organisations mondiales en gérant plusieurs sites opérationnels par le biais de Master data et les processus métier. Ainsi que les capacités propres à chaque pays sont gérées en une seule instance. Figure I-1 : Les différentes vues du langage UML
  12. 12. 6 Architecture fonctionnel de Dynamics AX La solution Microsoft Dynamics AX est un progiciel de gestion intégré PGI (ERP Entreprise Resource Planning) qui intègre la gestion des ressources financière, la gestion de la chaine de production, et le processus de gestion des ressources humaines (cf. figure I-2). Dynamics AX inclut des fonctionnalités embarquées pour les secteurs de l’industrie, de la distribution, des services, du commerce et y compris le secteur public [2]. La figure ci-dessus illustre un aperçu sur l’architecture fonctionnel de Dynamics Ax. Cette architecture englobe aussi les fonctions de vente et marketing, des outils de reporting et l’informatique décisionnel ainsi que le workflow et l’espace de travail collaboratif. Enfin nous avons fait une étude sur le module gestion des ressources humaine existants tels que List Page Workers. La figure ci-dessus illustre la page liste des employées. Nous allons personnaliser cet interface. MS Dynamics AX Gestion Financiére production Approvisionneme nt Marketing et VentesGestion de projet et comptabili té Gestion des Ressources Humaine Décisionnel et reporting Espace de travail collaboratif Figure I-2 : Architecture fonctionnel d’AX [W1] Figure I-3 : WorkerList Page
  13. 13. 7 Architecture en couches de Dynamics Ax Le tableau I-1 illustre chaque couche dans Microsoft Dynamics Ax. Nous allons créer notre module sur la couche VAR. Tableau I-1 : Modèle de couches de Dynamics Ax Architecture Technique de Dynamics Ax L'architecture logique du système est une architecture 3tier (cf. figure I-4). Divisée en trois niveaux ou couches : niveau Accès aux données, niveau intermédiaire, niveau présentation. Niveau accès aux données La base de données est gérée par MS SQL Server 2012. Le serveur de base de données héberge le contenu SharePoint Server et la configuration des bases de données, la base de données de l’application, la base de données de SSRS et la base de données SSAS. Enfin les relations entre les tables de la base de données sont gérées coté AOS (Application Object Server). Niveau intermédiaire Le niveau intermédiaire comprend le serveur Application Object Server. L’AOS est le serveur d’application de MS Dynamics Ax. C’est là où le logique métier s’exécute. Notamment l’AOS permet d’exécuter des services d'application MorphX. Les services sont invoqués par la technologie RPC et Windows Communication Foundation (WCF) dans le .NET Framework. L’AOS peut être hébergé sur un ordinateur, mais il peut aussi évoluer sur de nombreux ordinateurs lorsque des sessions utilisateur simultanées supplémentaires ou des serveurs dédiés sont nécessaires. Couche Description USR User layer : La couche d’utilisateur pour les modifications réalisé par l’utilisateur, tels que les rapports. CUS Customer layer : La couche de client permet d’apporter des modifications qui sont spécifiques à une entreprise. VAR Value Reseller layer : Revendeurs à valeur ajoutée (VAR) peut apporter des modifications ou de nouveaux développements de la couche VAR comme spécifié par les clients ou comme une stratégie de création d’une solution spécifique de l’industrie. ISV Independent software vendor layer : Quand un fournisseur indépendant de logiciels (ISV) crée sa propre solution, les modifications sont enregistrées dans la couche ISV. SLN Solution layer : La couche de solution est utilisée par les distributeurs à mettre en œuvre les solutions des partenaires verticaux. FPK Feature Pack layer : La couche FPK est une couche de brassage de l’objet de l’application réservée par Microsoft pour les mises à jour. GLS Globalisation layer : Lorsque l’application est modifiée en fonction de besoins juridiques propres à chaque pays ou région, ces modifications sont enregistrées dans la couche GLS. SYS System layer : L’application standard est mise en œuvre au niveau le plus bas, dans la couche SYS. Les objets d’application dans la couche SYS ne peuvent jamais être supprimés.
  14. 14. 8 Niveau présentation Le niveua présentation est constitué du client Windows et Entreprise Portal. Le Client Windows exécute les applications Microsoft Dynamics AX et .NET développées dans MorphX et Visual Studio. L'application client communique avec l'AOS principalement en utilisant RPC (cf. Figure I-4). Client Workspace ou Rich Client présente deux parties : navigation pane et content pane. Navigation pane est le menu à gauche qui affiche tous les modules accessibles par l’utilisateur selon son rôle défini. Le content Pane affiche tous les données spécifiques (reports, alerts, tasks …) d’un module selon le rôle de l’utilisateur. Ils existent des patterns d’interface de Dynamics Ax : nous allons utiliser seulement : ListPage, MasterDétails, Transactional Détails. 1.6 Problématiques La gestion de demande de visa doit comprendre les demandes pour une mission temporaire, demande de résidence temporaire, le renouvellement d’un visa de résidence temporaire, l’extension d’un visa, la demande de sortie et entré etc. Le problème des systèmes de gestion de visa c’est qu’il coute très cher. En fait ces applications ne permettent pas une interopérabilité avec les autres modules de Dynamics ax tel que le module de gestion de ressources humaines. Puis ces systèmes n’offrent pas la fonctionnalité de traduction vers d’autre langue tel que l’arabe. Donc le développement d’un nouveau module Dynamics Ax de gestion de visa est nécessaire afin de garantir les besoins de l’entreprise cliente. 1.7 Conclusion Dans ce chapitre nous avons introduit la technologie d’ERP Dynamics AX de Microsoft. Nous avons détaillé l’aspect fonctionnel et technique de cet ERP. Nous avons présenté les outils de développement que nous allons utiliser afin d’implémenter notre application. Ainsi que nous avons présenté les différents outils de Reporting utilisé au niveau de Dynamics Ax. Plus précisément l’outil de SSRS qui sera la suite de notre projet si enfin nous avons terminé avec les formulaires. Figure I-4 : Architecture technique d’AX
  15. 15. 9 Chapitre II. Mise en œuvre 2.1 Introduction Dans ce chapitre nous allons détailler le design de notre application en mettant en œuvre l’expérience utilisateur. Afin de concevoir une application en suivant les patterns de Dynamics Ax nous allons réaliser le prototypage. Avons tous nous allons définir les besoins de l’utilisateur puis concevoir la structure de données. Enfin nous allons réaliser les interfaces utilisateurs. 2.2 Spécification des besoins Afin de dégager les besoins de notre application nous avons examiné les différents documents (version papier) de demande de visa d’une employée. Nous avons convertie chaque document en un prototype. Diagramme de cas d’utilisation générale Cette étude nous a donné les cas d’utilisation suivant :  Demander visa pour une mission temporaire  Demander visa de résidence temporaire  Renouveler un visa de résidence temporaire  Extension d’un visa  Demander visa de sortie et entré pour un seul voyage  Demander visa de sortie et entré pour plusieurs voyages  Déclarer un changement de données  Demander visa de sortie finale  Demander visa business trip  Choisir catégorie de visa  Imprimer information Chaque cas d’utilisation peut être fini par l’exécution d’un cas d’utilisation de reporting imprimer information (cf. Figure II-1).
  16. 16. 10 La figure ci-dessus illustre le diagramme de cas d’utilisation générale. Figure II-1 : Diagramme de cas d'utilisation générale
  17. 17. 11 Prototypes Afin de développer un prototype nous avons choisi GUI design Studio. C’est un logiciel professionnel qui permet de crée des maquettes pour le design des interfaces graphique des utilisateurs pour les applications windows. GUI design studio permet de vérifier le design, documenter la spécification des besoins, évalué les différents scénarios et démontrer les prototypes. Afin de convertir les informations citées sur les papiers de visa en arabe à des informations numérique en anglais, nous avons créé pour chaque document un prototype. La figure ci-dessus illustre le prototype de la page de type List Page. Nous envisageons à afficher les détails d’une demande et les informations du demandeur. Figure II-2 : Prototype List Page
  18. 18. 12 La figure ci-dessus illustre le prototype du document de demande de visa de sortie terminale. Figure II-3 : Prototype demande de visa de sortie terminale
  19. 19. 13 La figure ci-dessus illustre le prototype de la demande d’une entrée et sortie pour plusieurs voyages. Figure II-4 : Prototype demande de visa entré sortie pour plusieurs voyages
  20. 20. 14 La figure ci-dessus illustre le prototype converti du document d’une demande de visa pour une mission temporaire. Figure II-5 : Prototype Demande de visa pour une mission Temporaire
  21. 21. 15 La figure ci-dessus illustre le prototype converti du document demande de visa pour une entrée et sortie pour un seul voyage. Figure II-6 : Prototype demande de visa pour une entré sortie un seul voyage
  22. 22. 16 La figure ci-dessus illustre le prototype converti du document d’une demande de visa pour une résidence temporaire. Figure II-7 : Prototype Demande de visa pour une résidence temporaire
  23. 23. 17 2.3 Conception Afin de concevoir notre module, nous avons créé le modèle conceptuel de données avec la spécification des relations et clé primaires. En effet un employé inscrit dans les activités de l’entreprise peut être affecté à une nouvelle demande de visa.  Une demande de visa est relative à un et un seul employé  Un employé peut être affecté à un ou plusieurs demandes de visa La figure ci-dessus illustre le modèle conceptuel de données qui permet de convertir les Business rules à des entités et relations. VisaRequest # o o o o o o o o o o NumVisa ResidenceN DateExpiration ResidenceType Travel to ReasonOfTrip DateOFTrip PasseportNum ExpirationPasseport DateIssue PlaceIssue Number Number Date Text Text Text Date Number Date Date Text Person # o o o PersonID FirstName LastName PersonBirthCountryRegion Number Text Text Text HCMWorker # o o o reqId coût($/H) Partitien PersonelNumber Integer Number Variable characters (254) Variable characters (254) HCMPersonPrivateDetails o o o o o o o o o o o BirthDate CitizenshipCountryRegion DeceasedDate DisabledVerificationDate Education EthnicOrigin FatherBirthCountryRegion Gender IsDisabled IsFullTimeStudent NativeLanguage Date Text Date Boolean Text Text Text Short integer Boolean Boolean Text demander pour 1,1 0,n détail 1,1 0,n identifier par 1,1 0,n Figure II-8 : Modèle conceptuel de données
  24. 24. 18 Nous avons défini le diagramme de classe avec une précision de nouvelles classes. Nous avons ainsi ajouté la classe VisaRequest dans le systéme existant. La figure ci-dessus le diagramme de classe de module. Tableau II-1 : Liste des classes Classe Détails HCMPersonPrivateDetails Permet de stocker les information privées d’un employé afin de l’utiliser dans la demande de visa. HCMWorker Permet d’explorer la liste des employé inscrit dans l’entreprise, qui peuvent être candidatas d’une acceptation de visa Person Permet de stocker les détails d’une personne VisaRequest Créer afin de stocker les informations relatives à une demande de visa pour un employé candidat d’une sortie Le tableau ci-dessus illustre les détails des classes du module. VisaRequest + + + + + + + + + + + NumVisa ResidenceN DateExpiration ResidenceType Travel to ReasonOfTrip DateOFTrip PasseportNum ExpirationPasseport DateIssue PlaceIssue : double : double : Date : String : String : String : Date : double : Date : Date : String + + + Add () Update () Delete () Person + + + + PersonID FirstName LastName PersonBirthCountryRegion : double : String : String : String HCMWorker + + + + reqId coût($/H) Partitien PersonelNumber : int : double : String : String HCMPersonPrivateDetails + + + + + + + + + + + BirthDate CitizenshipCountryRegion DeceasedDate DisabledVerificationDate Education EthnicOrigin FatherBirthCountryRegion Gender IsDisabled IsFullTimeStudent NativeLanguage : Date : String : Date : boolean : String : String : String : short : boolean : boolean : String Figure II-9 : Diagramme de classe
  25. 25. 19 Nous avons transformé le modèle orienté objet en modèle physique de données. Notamment le modèle physique de données permet de valider le schéma de la base de données en spécifiant les clés étrangères à partir des cardinalités et relations entre classes. Afin de créer la table VisaRequest nous avons utilisé les champs des tables HCMWorker, HCMApplicant (candidature) et HCMPerson. La figure ci-dessus illustre la table existante HCMPersonPrivateDetails et la table DirPerson. VisaRequest NumVisa reqId ResidenceN DateExpiration ResidenceType Travel to ReasonOfTrip DateOFTrip PasseportNum ExpirationPasseport DateIssue PlaceIssue numeric int numeric datetime varchar(254) varchar(254) varchar(254) datetime numeric datetime datetime varchar(254) <pk> <fk> Person PersonID FirstName LastName PersonBirthCountryRegion numeric varchar(254) varchar(254) varchar(254) <pk> HCMWorker reqId PersonID coût($/H) Partitien PersonelNumber int numeric numeric varchar(254) varchar(254) <pk> <fk> HCMPersonPrivateDetails PersonID BirthDate CitizenshipCountryRegion DeceasedDate DisabledVerificationDate Education EthnicOrigin FatherBirthCountryRegion Gender IsDisabled IsFullTimeStudent NativeLanguage numeric datetime varchar(254) datetime bit varchar(254) varchar(254) varchar(254) smallint bit bit varchar(254) <fk> reqId = reqId 0..* PersonID = PersonID 0..* PersonID = PersonID0..* Figure II-11 : Schéma relationnel de la base de données Figure II-10 : Table DirPerson et HCMPersonProvateDetails
  26. 26. 20 la figure ci-dessus illustre la table HCMWorker. 2.4 Environnement de développement Microsoft Dynamics AX comprend un ensemble d'outils de développement ou IDE, que nous pouvons utiliser pour construire et modifier notre application. La figure ci-dessus illustre le workspace développeur nommé MorphyX. Nous avons utilisé cet outil afin de créer les tables, les énumérations, les type de données étendues dans le dictionnaire de donnes et les formulaires. MorphX IDE MorphX est un environnement intégré de développement dans Microsoft Dynamics AX qui permet de développer des modèles de données et des codes en utilisant un outil de modélisation Figure II-13 : MorphyX le Developper Workspace Figure II-12 : Table HCMWorker
  27. 27. 21 de l'application AOT (Application Object Tree). Ainsi qu’il permet de réaliser des personnalisations faites graphiquement pour concevoir des types de données, des tables, des requêtes, des formulaires, des menus et des rapports. Cet environnement de développement accède aux services de serveur d'applications AOS grâce à RPC (Remote Procedure Call) [2] L’AOT est le point principal pour l’activité de développement. Il permet de parcourir le référentiel (repository) de tous les éléments qui composent l’application. Nous pouvons utiliser l’AOT pour invoquer des autres outils et d'inspecter et de créer des formulaires, des Rapports et des Requêtes. Langage X++ Le langage utilisé pour développer des applications Dynamics AX se nomme X++. Il s’agit d’un langage respectant les principes de la programmation orientée objet tels que l’encapsulation, l’héritage, les classes, les objets, les méthodes et les propriétés. La syntaxe du langage X++ est proche de celle du langage C# ou java. Ajoutons aussi que X++ permet la manipulation des données par l'intermédiaire du langage SQL [2]. La figure ci-dessus illustre l’éditeur de code X++ sous MorphX. Pattern de formulaire de Dynamics Ax Les formulaires sont créés de telle sorte que l'utilisateur final peut entrer et afficher des données de manière flexible. Les patterns de formulaires permettent la navigation plus facile pour l'utilisateur final, les menus et les options de menu sera créé sur tout type de formulaire. Type des formulaires  List Page Figure II-14 : MorphX IDE éditeur de code X++
  28. 28. 22  DetailsFormMaster  DetailsFormTransaction  SimpleListDetails  SimpleList  TableOfContents  Dialogue  DropDialog Service de reporting Le terme "reporting" désigne une famille d'outils de business intelligence destinés à assurer la réalisation, la publication et la diffusion de rapports d'activité selon un format prédéterminé. [W6]. Le reporting permet de prendre des décisions stratégiques ou des actions sur la base des connaissances acquises (analysis) à partir de sources de données. Il permet donc de réduire la charge du service informatique grâce à l’auto-génération de rapports. SQL Server Reporting Services crée des rapports standards ou personnalisables. [W1] Microsoft SQL Server Reporting Services est la plateforme basique de reporting dans Microsoft Dynamics AX. 2.5 Architecture de l’application Elle est constituée généralement de trois niveaux : l’interface utilisateur, le logique métier et la structure de donnée (cf. figure24). Nous allons développer des formulaires et des menus constituant l’interface utilisateur. Puis nous allons attacher pour chaque interface des classes constituant le logique métier de notre module. Mais avons tous allons créer une table constituant la structure de données de notre module. User Interaction (Layout) Forms Menus Business Logic Classe Méthode Data Structures Data Dictionnary Tables Filds Figure II-15 : Architecture d'une Business Application
  29. 29. 23 2.6 Réalisation Dans cette phase, les concepts et les objectifs sont traduits en actions concrètes, et en conséquence, il est peut-être l’une des phases les plus difficiles du projet. Nous décrivons brièvement les interfaces créées.
  30. 30. 24 Le premier formulaire qui s’affiche dans l’application est le List Page. Il fournit une vue simple et ergonomique. Nous pouvons ajouter une nouvelle demande de visa en cliquant sur le boutant new ou nous pouvons modifier un enregistrement sélectionné. La figure ci-dessus illustre l’interface listPage de demande de visa. La figure ci-dessus illustre la page de type master détails de gestion de demande de visa. Figure II-17 : Interface Visa Request Master Détails Page Figure II-16 : Interface Visa Request List page
  31. 31. 25 Si l’utilisateur a choisi de modifier les enregistrements il peut ouvrir la grille de modification pour éditer les enregistrements. La figure ci-dessus illustre la page de modification de la demande sur la grille. La figure ci-dessus illustre l’interface master détails de gestion de gestion d’un visa. Or, si l’utilisateur a choisi de modifier un enregistrement particulier il peut continuer avec le formulaire type détails page et modifier sur la grille. La figure ci-dessus illustre l’interface de modification dans la grille. Figure II-19 : Interface de grille de Modification de demande de Visa Figure II-18 : Interface Master Détails page de gestion de visa pour un employé
  32. 32. 26 La figure ci-dessus illustre l’interface de gestion des demandes de type Transactional détails. Ce formulaire à deux pages : en tête et ligne. La figure ci-dessus illustre la vue en tête de la page Transactional détails d’ajout d’une demande. Dans cette page l’utilisateur peut ajouter les dépendants d’un demandeur de visa dans la grille. Figure II-21 : Interface transactionnel Détails Page vue ligne Figure II-20 : Interface vue en tête de la page Transactional détails d'ajout de demande
  33. 33. 27 2.7 Conclusion Dans ce chapitre nous avons réussi à définir exactement les besoins fonctionnels de notre application en utilisant le diagramme de cas d’utilisation et les prototypes. Puis nous avons réussi à concevoir le module en utilisant le diagramme de classe et les modèles physique et conceptuel. Ainsi que nous avons présenté les différents formulaires que nous avons réussis à implémenter.
  34. 34. 28 Conclusion générale Ou cour de ce stage d’été nous avons bénéficié d’une expérience enrichissante du milieu professionnel. Nous avons profité d’une expérience théorique et pratique afin de saisir les différents aspects technique et fonctionnels d’un ERP Puissant : Dynamics Ax. Alors, Nous avons eu deux semaines pour la recherche des informations relatives à cet ERP. Puis nous avons eu deux autres semaines pour faire des études pratiques des différents composants et outils de développement sur Dynamics Ax. Nous avons réalisé la spécification des besoins en deux semaines et une autre pour la conception. Afin de réaliser la spécification des besoins nous avons converti les documents de visa en arabe en des prototype en anglais. Puis nous avons réalisé les interfaces dans une semaine. Enfin, nous avons réussi à concevoir et à implémenter un module de gestion des demandes de visa sous les exigences demandés et les standards de Microsoft Dynamics Ax. Notre module nécessite d’autre amélioration en termes de navigation entre formulaires et design de l’expérience utilisateur. Ainsi qu’une extension de ce module peut être le sujet d’une perspective. Nous pouvons donc développer une application mobile qui permet de gérer les visas en communiquant avec notre module.
  35. 35. Bibliographies [1] Enterprise Resource Planning by Alexis Leon L&L Consultancy Services Prt Ltd Chennao Tata McGraw-Hill Publishing Company Limited New Delhi [2] Inside Microsoft Dynamics® AX 2012, by the Microsoft Dynamics AX Team, Published by Microsoft Press [3] Microsoft Dynamics AX 2012 – Une nouvelle génération de système ERP AD Ultima Group [4] Microsoft System Center Reporting Cookbook Samuel Erskine Dieter Gasser Kurt Van Hoecke Nasira Ismail BIRMINGHAM - MUMBAI
  36. 36. Webographies [W1] https://msdn.microsoft.com Consulter le 29/07/2015 [W2] https://community.dynamics.com/ Consulter le 31/7/2015 [W3] https://technet.microsoft.com Consulter le 30/7/2015 [W4] http://www.ignify.com/axapta.asp Consulter le 30/7/2015 [W5] http://blogs.adobe.com/ consulter le 31/07/15 [W6] http://www.piloter.org/ consulter le 03/08/2015 [W7] https://www.youtube.com/ Consulter le 16/08/2015

×