Partage
  • Partager sur Facebook
  • Partager sur Twitter

Convertir excel en xml

Sujet résolu
    2 septembre 2015 à 15:40:59

    Bonjour,

    j'explique le contexte actuel: 
    l'utilisateur de l'application web, en arrivant sur l'application celui-ci va choisir un fichier excel de son ordi qu'il veux envoyer (pour une quelconque raison), une fois le fichier choisi, je dois le changer en XML pour l'envoyer a un WebService, qui de même, le lendemain m'envoie un code XML a convertir en format excel pour que l'utilisateur puisse le récupérer.

    Et donc je ne sais pas trop quel langage utiliser (j'était parti sur du Javascript, mais je n'ai rien trouver qui pourrai m'aider, ou encore Windev mais j'ai un problème de clef), et par ou commencer.

    Je ne cherche pas à ce que vous me le fassiez mais que vous me donniez des conseils/langage/aides

    Merci de votre attention.

    PS: ne faites pas attention aux fautes d’orthographes pls :'( .

    • Partager sur Facebook
    • Partager sur Twitter
      2 septembre 2015 à 15:45:12

      C'est quoi exactement l'objectif de la manoeuvre ? Pourquoi l'envoyer dans un format pour le convertir puis les reconvertir ? Je ne vois pas bien l'intérêt.

      Tu dois le stocker dans une base ? Effectuer des traitement dessus ? Des modifications ? Des calculs spécifiques ?

      • Partager sur Facebook
      • Partager sur Twitter
      Recherche Graphiste - WebDesigner pour projet bénévole. Me MP si intéressé :)
        2 septembre 2015 à 15:49:44

        Hmm je pense que c'est pas la bonne facon de faire.

        Deja oublie Windev, c'est de la merde, c'est pas standard. 

        ____

        Tu dois pouvoir faire une echange de Binary dans ton serveur web.

        En gros dans ta requete tu ne transfere que le contenu du fichier Excel.

        Donc en gros tu auras un truc du genre:

        <element> FKDJSKFJASKJFEIWEasløkfdølskf90238r09328432098hr329h</element>

        ____

        En gros ce que tu fais c'est du transfert de fichier via web service

        Mais ton web service n'a pas besoin de "connaitre" ou de "comprendre" ce qu'il transmet (si ?)...Si j'ai bien compris tout ce que tu veux c'est transferer des donnees, ca pourrait tres bien etre du mp3, des fichiers videos...mais dans ton cas c'est des fichier Excel...mais bon ca reste un fichier..donc pas de souci.

        ____

        Tu peux regarder la:

        https://www.google.fr/?gws_rd=ssl#q=transfert+de+fichier+web+service+php

        DAns le cas ou tu ferais les choses en utilisant PHP

        ____

        Quoi qu'il en soit, le fait de passer par un Web Service n'est pas non plus une obligation

        C'est toi qui en a parlé donc j'ai pris ca comme hypothese de depart

        Mais sinon tu peux tres bien:

        1, recevoir le fichier Excel envoyé par formulaire web par l'utilisateur A

        2. l'utilisateur B se connecte et telecharge le fichier Excel

        Bref...pas besoin de service web dans ce cas la...

        • Partager sur Facebook
        • Partager sur Twitter

        Si y'a pas d'accents dans mes messages c'est parce que je suis sur un clavier norvegien :)

          2 septembre 2015 à 16:21:15

          Dans ce projet je suis obliger d'utiliser le service web dans ce cas la, en gros:

          Via une interface, l’utilisateur pourra se connecter à l’application et sélectionner un fichier (de type Microsoft-excel) en fonction de l’action attendue sur un autre programme. Ce dernier sera contrôlé (maille technique) par l’application qui générera des flux au format XML. Ces flux seront  envoyés de nuit afin d’alimenter la base MySQL de l'autre programme.
          Il n’est pas prévu de base de données pour cette application. Aussi, celle-ci ne conservera aucune information. Le résultat des contrôles (Code retour du Webservice) ainsi que les informations Alizé en retour (paramètres en sortie) seront ajoutées au fichier en entrée. 

          • Partager sur Facebook
          • Partager sur Twitter
            2 septembre 2015 à 16:29:36

            A ce moment-là, il faut savoir une chose : un fichier Excel est un fichier XML, ou plus exactement une archive contenant un fichier XML.

            Du coup, vu l'utilisation que tu souhaites en faire, il est, je pense, possible de ne pas avoir à transcrire ton fichier d'un type à l'autre, mais de directement traiter les informations de l'Excel tel quel.

            Inspire toi peut-être du code de la demande formulée ici, si tu tiens absolument à le faire en Javascript.

            Autrement, tu peux sûrement voir du côté de C++/C# qui sont des langages de Microsoft et qui devraient sans doute mieux s'adapter à ta demande.

            • Partager sur Facebook
            • Partager sur Twitter
            Recherche Graphiste - WebDesigner pour projet bénévole. Me MP si intéressé :)
              2 septembre 2015 à 16:29:49

              Mouais...ca sent la grosse appli avec son vocabulaire bien lourd pour faire 3 fois rien...j'ai bossé sur ce genre de choses y'a longtemps...

              Enfin bon...comme je l'ai dit: le fichier Excel n'a pas besoin d'etre retranscrit en XML ! Son contenu peut tout a fait etre encapsulé dans du XML et envoyé tel quel, et a l'arrivee etre lu pour etre enregistré sous la forme d'un fichier Excel.

              En revanche, si a tout moment ton application a besoin, par exemple, de recuperer une valeur dans le fichier Excel alors la oui, il va te falloir lire le fichier Excel de facon a inter-operer avec lui et a ce moment la tu peux regarder la:

              https://phpexcel.codeplex.com/

              Trouvé la:

              https://www.google.no/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8&client=ubuntu#q=php%20excel

              ____

              EDIT:

              Ah mais ouiiii

              Voca Tinityl a raison...c'est vraiment qu'on est passé dans la periode moderne...roooh faut que je rafraichisse mes connaissances moi

              Oui bref, grace au format adoptés par Microsoft y'a maintenant un bail, un fichier Excel est lisible en XML...c'est beau la vie :)

              -
              Edité par mrjay42 2 septembre 2015 à 16:31:35

              • Partager sur Facebook
              • Partager sur Twitter

              Si y'a pas d'accents dans mes messages c'est parce que je suis sur un clavier norvegien :)

                2 septembre 2015 à 16:45:10

                Voca Tinityl a écrit:

                Du coup, vu l'utilisation que tu souhaites en faire, il est, je pense, possible de ne pas avoir à transcrire ton fichier d'un type à l'autre, mais de directement traiter les informations de l'Excel tel quel.

                Si J'ai bien compris, comme le Excel est aussi du XML, je devrais pouvoir envoyer le fichier Excel au web service sans le convertir en XML?
                Quand j'en ai parler avec les collègues, apparemment c'était vraiment du XML qui est attendu par le web servisse donc de changer le contenue du excel en XML, je me suis peut être mal exprimer en parlant de convertissement de fichier.
                • Partager sur Facebook
                • Partager sur Twitter
                  2 septembre 2015 à 16:54:18

                  Ah donc le webservice existe déjà ? Ca change tout du coup...

                  • Partager sur Facebook
                  • Partager sur Twitter
                  Recherche Graphiste - WebDesigner pour projet bénévole. Me MP si intéressé :)
                    2 septembre 2015 à 16:57:36

                    Oui le web service existe déjà
                    • Partager sur Facebook
                    • Partager sur Twitter
                      3 septembre 2015 à 8:58:03

                      Ca dépend de tellement de chose...

                      Tu veux : 

                      • Une appli web ? Si oui, soit tu fais ca côté client (en Js par exemple) et tu transmet directement le XML au bon format au serveur et tu fais les traitement qu'il te faut dans l'autre sens, soit tu fait ca côté client, tu récupères le fichier complet, tu traites tout en PHP/Java/C#... selon ce que ta boîte utilise comme serveur Web.
                      • Une appli lourde ? Si oui le choix est tien.

                      Perso je créerai un petit module serveur, dans lequel tu stockes le fichier envoyé, tu récupères les infos que tu souhaites et tu les envoies à ton Webservice, puis quand tu as le retour des données tu les réinjectes dans ton fichier et tu le renvoies.

                      Mais le langage... Ca dépend que de ce qui est en place dans ton entreprise...

                      • Partager sur Facebook
                      • Partager sur Twitter
                      Recherche Graphiste - WebDesigner pour projet bénévole. Me MP si intéressé :)
                        3 septembre 2015 à 11:55:15

                        Quand tu parle de module server, le fichier serrai stocker dans une BDD ? Car sinon je partirai comm toi mais dans le projet il n’est pas prévu de base de données et donc ça serrai en javascript ( application web )
                        • Partager sur Facebook
                        • Partager sur Twitter
                          3 septembre 2015 à 11:56:46

                          Non, pas stocker dans une BDD, mais ca serait de réaliser tout les traitements uniquement sur le serveur.
                          • Partager sur Facebook
                          • Partager sur Twitter
                          Recherche Graphiste - WebDesigner pour projet bénévole. Me MP si intéressé :)
                            3 septembre 2015 à 12:03:49

                            Hmm tes messages Francis, me laissent a penser que tu ne comprends pas trop comment fonctionne des applications client-serveurs et particulierement des applications web.

                            Quand on fait du web ca se passe comme ca:

                            • Le client fait des requetes
                            • Le serveur traite ces requetes et renvoie une information
                            • Le client affiche cette information 
                            • Puis, le client fait une requete
                            • etc
                            • etc

                            _____

                            Donc en gros ton process ca va etre ca:

                            • 1. le client accede a une page web ou il peut poster son fichier Excel
                            • 2. le fichier Excel est envoyé au serveur A
                            • 3. le serveur A envoie le fichier a un WebService (dont on ne sait toujours pas ce qu'il fait....)
                            • 4. le lendemain le fichier traité (on ne sait pas comment ni pourquoi) est envoyé au serveur A
                            • 5. le client accede a une page web ou il peut recuperer son fichier Excel qui a ete transformé dont on ne sait quelle maniere, ni pour quelle raison mais bon...
                            • 6. le client clique sur le lien du fichier et le telecharge

                            Si j'ai bon, alors ca veut dire que l'operation d'ouverture du fichier Excel pour trifouiller dans code XML se fait a l'etape 3 (ou l'etape 2,5 si tu preferes).

                            Et ca veut dire que cette operation est faite cote serveur

                            Donc le client ne la VOIT PAS.

                            Donc cette operation est faite dans un langage "serveur": Java, Python, PHP, .NET, C, C++...n'importe quoi...mais tres PROBABLEMENT PAS du Javascript.

                            • Partager sur Facebook
                            • Partager sur Twitter

                            Si y'a pas d'accents dans mes messages c'est parce que je suis sur un clavier norvegien :)

                              3 septembre 2015 à 12:12:20

                              mrjay42 a écrit:

                              Donc cette operation est faite dans un langage "serveur": Java, Python, PHP, .NET, C, C++...n'importe quoi...mais tres PROBABLEMENT PAS du Javascript.

                              Ah ? Et un serveur NodeJS ?

                              La bonne réponse est plutôt : renseigne toi dans ton entreprise sur les différents langages déjà en place, étudie l'ordre des étapes (MrJay42 t'as déjà bien jalonné le parcours) puis vois quel langage parmi ceux de ton entreprise colle le mieux à tes besoins.

                              Parce que certes, on te demande de faire quelques chose, mais des outils sont déjà en place dans ton entreprise et pour un simple appel à un Webservice, il n'est pas nécessaire de mettre en place un serveur d'application et de payer de nouvelles licences pour des serveurs Web propriétaires... Renseigne toi, utilise ce que tu as sous la main et sers-en toi pour faire au plus simple.

                              • Partager sur Facebook
                              • Partager sur Twitter
                              Recherche Graphiste - WebDesigner pour projet bénévole. Me MP si intéressé :)
                                3 septembre 2015 à 12:53:20

                                Après avoir vu avec les collégues, ça partirai sur du node JS en effet.
                                Et en effet mrjay42, le fait de récupérer les données du excel pour les transformer en XML serrai l'étape 2.5 pour ensuite pouvoir les envoyer au Web service. 
                                De son coté le Web service, récupère dans la soirée et traite les données. Après je peut pas trop en dire :x, et le  lendemain, il renvoi un XML que je vais devoir "transformer en excel afin que l'utilisateur récupère les informations.
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  3 septembre 2015 à 13:01:22

                                  Tu peux pas trop en dire...mais faut pas trop flipper non plus...

                                  En meme temps, c'est toi qui utilise, apparemment ton vrai nom sur le forum, la ou tu pourrais utiliser un pseudo :)

                                  Enfin bref: renseigne toi sur la technologie employé dans ta boite et essaye d'expliquer un maximum les choses sans rentrer dans le detail: nous on s'en fout que ton appli gere des tetes nucleaires...au final ca n'empeche pas de dire des choses telles que: le serveur est en Java, la base de donnees est Oracle, le Web Service est en SOAP  etc etc etc 

                                  ___

                                  Par ailleurs, il y a un bug dans ta logique:

                                  Le web service ne recupere pas les fichiers Excel dans la soiree.

                                  C'est pas comme ca que ca marche.

                                  Un web service ca vient pas de lui meme pour faire des trucs.

                                  • En 1: il faut une requete vers ce Web Service
                                  • En 2: il traite les donnees et renvoie une reponse

                                  Donc:

                                  Soit tu as mal compris

                                  Soit tu emploies le mot Web Service de facon abusive: un Web Service c'est quelque chose de tres precis, c'est pas juste un truc qui se passe sur un serveur web.

                                  _____

                                  Donc pour que le traitement "se fasse dans la soiree" (faut definir une heure hein...):

                                  Il faut definir sur le serveur A une "tache cron" ou une "tache planifiée" qui va lancer la ou les requetes vers le Web Service chargé de traiter les fichiers Excel a une heure precise.

                                  • Le serveur A fait ses requetes
                                  • Le serveur B (celui du web service) recoit les requetes traite les donnees et renvoie sa reponse pour chaque requete
                                  • Partager sur Facebook
                                  • Partager sur Twitter

                                  Si y'a pas d'accents dans mes messages c'est parce que je suis sur un clavier norvegien :)

                                    3 septembre 2015 à 13:06:12

                                    Voca Tinityl a écrit:

                                    mrjay42 a écrit:

                                    Donc cette operation est faite dans un langage "serveur": Java, Python, PHP, .NET, C, C++...n'importe quoi...mais tres PROBABLEMENT PAS du Javascript.

                                    Ah ? Et un serveur NodeJS ?

                                    Tu as raison NodeJS est un bon exemple.

                                    Cependant, je suis prêt à parier que ce n'est pas la techno qui est en place dans sa boite...je sais pas pourquoi...question de feeling :)

                                    EDIT

                                    Ooops, desole pour le double post, je sais pas comment j'ai fait Oo

                                    -
                                    Edité par mrjay42 3 septembre 2015 à 13:06:51

                                    • Partager sur Facebook
                                    • Partager sur Twitter

                                    Si y'a pas d'accents dans mes messages c'est parce que je suis sur un clavier norvegien :)

                                    Convertir excel en xml

                                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                    • Editeur
                                    • Markdown