IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bases de données Delphi Discussion :

Fournir un fichier XML


Sujet :

Bases de données Delphi

  1. #1
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 187
    Points : 90
    Points
    90
    Par défaut Fournir un fichier XML
    Hi,

    Je ne sais pas par où commencer !

    Une administration me demande de lui fournir des données sous format XML. Elle fournit un fichier XSD très conséquent ainsi qu'un glossaire complet (pdf) des données élémentaires (environ 110).

    Les données se trouvent dans ma base de données, mais j'ignore comment procéder pour générer le fichier XML.

    Quelqu'un pourrait-il m'expliquer succinctement les étapes à accomplir (en spécifiant les composants Delphi qui pourraient m'aider dans cette tâche) pour générer ce fichier et pour qu'il soit conforme au XSD.

    Merci.



    JJE

  2. #2
    Membre averti
    Avatar de Pascal Fonteneau
    Profil pro
    gérant
    Inscrit en
    Février 2007
    Messages
    139
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : gérant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2007
    Messages : 139
    Points : 352
    Points
    352
    Par défaut Le plus simple
    BJ

    Il existe différentes possibilités, voici les grandes lignes

    Solution A : A LA MAIN (la plus simple)

    1/ effectuer la ou les requetes SQL (voir une Procedure Stockée) nécessaire(s) pour obtenir une table ou une vue avec TOUTES les données a exporter et TRIEE dans l'ordre ou apparaissent les champs dans le schema a respecter.

    2/ ecrire une moulinette qui confectionne le fichier XML (j'ai QQ exemples simple si besoin) en bouclant sur la table de l'etape 1.

    Solution B : (composants et outils delphi)

    Il est possible d'utiliser le gestionnaire de liaison de Delphi pour la creation d'une ou plusieurs unité .pas et lier ces unites a une form en utilisant un composant TXmlDocument

    Le travaille consitera aussi au requetage dans la BDD (lecture) et l'ecriture dans un fichier Xml par l'intermediaire du TXmlDocument

    3/ Solution C : par BDD uniquement (suivant possibilité du SGBD)

    faire A1 (la même première etape de la solution à la main) et faire ensuite une exportation au format XML avec l'outil XML present dans le SGBD

    en esperant avoir été utile

    a+

  3. #3
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 187
    Points : 90
    Points
    90
    Par défaut
    Merci Pascal pour ta réponse.

    En attendant celle-ci, j'ai continué mes recherches et suis effectivement tombé sur le composant TXMLDocument.
    Ta solution B est donc la plus simple à utiliser, me semble-t-il.

    Je m'étais pris la tête avec ce truc, alors que finalement, ce n'est pas bien compliqué à réaliser.

    Petite question subsidiaire : pourquoi TXMLDocument n'accepte plus "UTF-8" dans sa propriété "Encoding" ? C'est dans ce format de codage que le document doit être transmis à mon Administration. TXMLDocument.Encoding n'accepte plus que "UTF-16" avec Delphi XE !

    Bien à toi.



    JJE

  4. #4
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 187
    Points : 90
    Points
    90
    Par défaut
    Précision qui a son importance :

    Lorsqu'on crée un document XML à l'aide de TXMLDocument et que l'on visualise la propriété TXMLDocument.XML dans un TMemo, il semble que le codage se fasse en UTF-16 même si on a mis la propriété TXMLDocument.Encoding à UTF-8. La mention encoding="UTF-8" n'apparaît donc pas dans le TMemo.

    Par contre, si on sauve le document à l'aide de la méthode TXMLDocument.SaveToFile, le codage UTF-8 est respecté et la mention encoding="UTF-8" apparaît bien dans la première ligne du fichier XML sur disque (vérification du codage effectuée avec NotePad++).

    Ouf !



    JJE

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Recuperation du fichier xml
    Par Geulderack dans le forum XMLRAD
    Réponses: 10
    Dernier message: 28/02/2003, 11h06
  2. Insertion dans un fichier XML
    Par [DreaMs] dans le forum XMLRAD
    Réponses: 4
    Dernier message: 27/02/2003, 17h16
  3. Lire un attribut dans un fichier XML en C++
    Par ti.k-nar dans le forum XML
    Réponses: 2
    Dernier message: 14/10/2002, 15h22
  4. [Kylix] Composant IBM pour fichiers XML
    Par Mister Nono dans le forum EDI
    Réponses: 1
    Dernier message: 29/09/2002, 20h28
  5. Balises HTML dans un fichier XML
    Par Bastet79 dans le forum XML/XSL et SOAP
    Réponses: 12
    Dernier message: 04/09/2002, 15h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo