BILAN DE STAGE Mathieu POTHIN 1 ère année BTS SIO Interconnexion Sharepoint 2013 Applications Windows 8.1 V1.0 11/07/2014
SOMMAIRE I. CONTEXTE...3 II. ACTIVITÉS...4 2.1. Prise de connaissance lecture de tutoriels...4 2.1. Création d une application Windows store...4 2.1.1. Mode opératoire...4 2.1. Récupération d une liste Sharepoint 2013...5 2.1.1. Mode opératoire...5 2.1. Réhabilitation d un programme existant...8 2.1.1. Mode opératoire...8 III. BILAN...10 2/10
BILAN STAGE I. CONTEXTE Afin de valider ma première année de BTS SIO, un stage en entreprise devait être réalisé. Je l ai effectué au sein de l'entreprise SQLI, Agence de Paris, située à la plaine Saint Denis (93) Sujet du stage : Etudier l interconnexion entre Sharepoint 2013 et des applications Windows 8.1 Maitre de stage : Patrick Jean-François, directeur de l entité Conseil Responsable : Yahia Zerdoumi Durée : 6 semaines, du 02/06/14 au 11/07/14. 3/10
II. II.1. ACTIVITÉS PRISE DE CONNAISSANCE LECTURE DE TUTORIELS Activité + - Lecture de tutoriels parlant des applications pour le Windows store de Windows 8.1. Ces applications sont notamment appelées applications métro. Tutoriels de bonne qualité. Faciles à comprendre. N abordent pas toutes les situations. Cette activité m a pris environ 2 jours. I.1. CRÉATION D UNE APPLICATION WINDOWS STORE Activité + - Création d une application Windows store (peu importait la fonction) pour me familiariser avec l'environnement Visual studio 2013 ainsi qu'avec le langage C# et XAML propre aux applications métro. Dans l'ensemble pas trop de problème de mise en œuvre grâce aux tutoriels fournis précédemment. Blocage (longtemps) sur les achats in-apps. II.1.1. Mode opératoire Pour effectuer l activité demandée, j ai simulé une version d'évaluation de mon application Windows Store et donc des fonctionnalités disponibles à l'achat de l'application (achat simulé lui aussi). Puis j'ai cherché à ajouter des achats faisables une fois l'application achetée. Cependant ces achats ne marchaient toujours pas. Mon erreur était tout simplement d autoriser l affichage de l'option «acheter» des fonctionnalités d une version «payante» dans la version d'évaluation. C est impossible. Ces fonctionnalités ne pouvaient donc pas marcher. Une fois le problème identifié, la solution a vite été trouvée. Cette activité m a pris un peu plus d 1 semaine. 4/10
BILAN STAGE Ma première application regroupant plusieurs fonctionnalités. I.1. RÉCUPÉRATION D UNE LISTE SHAREPOINT 2013 Activité + - Création d une application, métro toujours, qui permettrait de récupérer les éléments d'une liste SharePoint 2013. Tutoriel d affichage de listes. Impossibilité d afficher des images (problème non résolu) II.1.2. Mode opératoire J'ai utilisé le protocole Odata pour réaliser cette activité. Ce web service permet de récupérer les éléments des listes situés dans SharePoint 2013. Ensuite un tutoriel expliquait, assez clairement, comment afficher les listes. J'ai ensuite créé un écran de connexion afin d envoyer le «credential» (regroupant le login, le mot de passe, le domaine, et l url) dans la page de sélection des listes puis dans la page de la liste sélectionnée pour permettre d afficher cette liste et ses éléments. 5/10
J'ai ensuite créé une classe cependant cela n a pas été suffisant. Il a fallu passer le crédential en paramètre dans les différentes pages. Différence de comportement avec le Windows Form par exemple. A noter, il subsiste toujours un problème que je n ai pas réussi à régler : l'affichage d images dans la liste. 6/10
BILAN STAGE L URL de l image qui s affiche est dispatchée de la sorte : UrlDeLImage, DescriptionDeLImage. Un «converter» aurait donc permis l affichage correct de l image mais celui que Yahia m'a aidé à coder ne fonctionnait pas. Yahia m a conseillé alors d aller sur le site MSDN de Microsoft où l on peut trouver des exemples de codes pour y chercher une solution. Je n y ai rien trouvé. J'ai ensuite posté ma question sur différents forums et une des réponses a été d'utiliser la méthode «.split». Il m a été proposé de l utiliser de la sorte : image.split[','] (0) ce qui permet de découper l URL à la virgule et de garder uniquement le premier élément, l élément 0. Cependant, le contrôle listview, qui permettait justement de faire le «binding» (le lien) et d'afficher cette liste, contenait tous les contrôles affichant les éléments de la liste, bloquant l'accès à ces derniers. Je n ai donc malheureusement pas résolu le problème. A cause de ce bug, cette activité aura été celle qui m'a pris le plus de temps durant le stage. 7/10
I.1. RÉHABILITATION D UN PROGRAMME EXISTANT Activité + - Réhabilitation d un programme existant pour faire fonctionner notre liste. Réutilisation d un code existant pour éviter de partir de zéro. Difficulté à relire et modifier le code d un autre. II.1.3. Mode opératoire La 1ere chose à effectuer a été de supprimer la référence du service web précédent puis d'ajouter la nôtre. J ai ensuite enlevé les anciennes références à ce service, comme le crédential pour se connecter au service. Un dernier problème s'est alors produit. Les différentes dll de notre programme étaient situées à deux namespaces différents. Il a fallu mettre à jour une des deux dll, en l upgradant de la version de 5.6 à 5.6.1, puis supprimer l autre qui était en version 5.0. J ai ensuite rajouté les différents types d'éléments (task, calendar ) dans notre liste pour pouvoir évidemment afficher ceux-ci dans le programme. Pour finir j ai modifié les logos de l application et ajouté ceux qui correspondent au contexte. 8/10
BILAN STAGE 9/10
III. BILAN Je suis assez content de mon stage. Le sujet était intéressant et j ai découvert beaucoup de choses que je ne connaissais pas, comme SharePoint, et le XAML ainsi que les applications métros. Je regrette par contre d avoir été bloqué par plusieurs bugs. Hélas, un reste toujours non résolu. Pour les autres, une fois la solution trouvée, j étais vraiment très satisfait d avoir réussi à comprendre pourquoi cela ne marchait pas. 10/10