PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Mode d'importation
  • Rubriques de type tableau
  • Format du XML attendu
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
HImporteXML (Fonction)
En anglais : HImportXML
HFSQLHFSQL Client/ServeurDisponible uniquement avec ce type de connexion
Importe un fichier XML dans un fichier de données au format HFSQL Classic ou Client/Serveur (fichier de données décrit sous l'éditeur d'analyses ou déclaré par les fonctions HDéclare, HDéclareExterne ou HDécritFichier).
Remarque : A partir de la version 19, HFSQL est le nouveau nom de HyperFileSQL.
Versions 22 et supérieures
WINDEV MobileiPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
WINDEVWINDEV MobileUniversal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Nouveauté 22
WINDEV MobileiPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
WINDEVWINDEV MobileUniversal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
WINDEV MobileiPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
WINDEVWINDEV MobileUniversal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Exemple
WINDEV
// Importation du fichier "C:\MesFichiers\Client.xml" dans le fichier Client.
// Si le fichier Client existe, ce fichier sera écrasé (constante hImpCréation)
// Une jauge de progression sera affichée dans le champ JAUGE_Jauge1
HImporteXML(Client, "C:\MesFichiers\Client.xml", hImpCréation, JAUGE_Jauge1)
Syntaxe
<Résultat> = HImporteXML(<Nom du fichier> [, <Chemin du fichier XML> [, <Liste des rubriques destination> [, <Liste des attributs XML à importer> [, <Options> [, <Jauge> [, <Noeud racine>]]]]]])
<Résultat> : Booléen
  • Vrai si l'opération a été réalisée,
  • Faux en cas d'erreur. La fonction HErreur permet d'identifier le problème rencontré.
<Nom du fichier> : Chaîne de caractères (avec ou sans guillemets)
Nom logique du fichier de données au format HFSQL dans lequel l'importation doit être réalisée.
<Chemin du fichier XML> : Chaîne de caractères (avec guillemets) optionnelle
Chemin d'accès complet au fichier XML à importer.
<Liste des rubriques destination> : Chaîne de caractères (avec guillemets) optionnelle
Liste des noms des rubriques du fichier de données dans lequel l'importation est effectuée. Les noms peuvent être délimités par des simples quotes et sont séparés par des virgules ou RC. Les noms des rubriques de type clé composée, mémo binaire et de type binaire sont ignorés.
Les rubriques non importées seront initialisées avec leur valeur par défaut décrite dans l'analyse.
Si ce paramètre n'est pas précisé ou correspond à une chaîne vide, toutes les rubriques sont importées (sauf les clés composées, les rubriques binaire et mémos binaire) dans l'ordre physique de description.
<Liste des attributs XML à importer> : Chaîne de caractères (avec guillemets) optionnelle
Liste des noms des rubriques du fichier XML à importer.
Si ce paramètre n'est pas précisé ou correspond à une chaîne vide, tous les noeuds du fichier XML sont importés.
<Options> : Constante ou combinaison de constantes de type Entier (optionnelle)
Paramètre le type d'importation à effectuer :
hImpNormal
(valeur par défaut)
Si le fichier de données d'importation existe déjà, il est complété avec les données importées, sinon le fichier de données est créé.
hImpCréationSi le fichier de données d'importation existe, il est écrasé.
hImpInterruptibleL'importation peut être interrompue par la touche ESC/ECHAP.
Si l'importation est interrompue, les enregistrements importés sont conservés dans le fichier de données.
<Jauge> : Chaîne de caractères optionnelle (avec ou sans guillemets)
  • Nom de la fenêtre dans laquelle la jauge doit être affichée
  • Nom du champ de type Jauge affichant la progression.
<Noeud racine> : Chaîne de caractères optionnelle (avec guillemets)
Noeud du fichier XML à partir duquel l'importation doit être réalisée. Permet d'importer dans le fichier de données HFSQL uniquement une partie du fichier XML. Ce paramètre est du type "racine/clients".
Remarques
WINDEVWEBDEV - Code ServeurAjaxHFSQLHFSQL Client/ServeurProcédures stockées

Mode d'importation

Si la liste des attributs XML est précisée : l'importation recherchera des noeuds XML ayant le même nom que les rubriques.
Exemple : Le fichier de données décrit dans l'analyse contient les rubriques suivantes RUB1, RUB2; ... Le fichier XML devra donc avoir une structure du type ci-dessous :
<FICHIER>
<RUB1>Donnée1</RUB1>
<RUB2>Donnée2</RUB2>
...
</FICHIER>
<FICHIER>
...
Les noms des noeuds du fichier XML qui n'existent pas dans l'analyse ou ne sont pas donnés dans la liste des rubriques seront ignorés lors de l'importation.
Si la liste des attributs XML n'est pas précisée, la valeur des noeuds XML est mise dans la rubrique du fichier de données HFSQL qui porte le même nom que l'attribut XML.
Exemple : Le fichier de données décrit dans l'analyse contient les rubriques suivantes : NOEUD1, NOEUD2, NOEUD3.
Le fichier XML ayant la structure du type ci-dessous, et la liste des rubriques données étant "NOEUD2+NOEUD1" :
<ELEMENT1>
<NOEUD1>Donnée1</NOEUD1>
<NOEUD2>Donnée2</NOEUD2>
<NOEUD3>Donnée3<NOEUD3>
...
</ELEMENT1>
<ELEMENT2> ...
'Données1' sera affectée à 'NOEUD2',
'Données2' sera affectée à 'NOEUD1'
'Données3' sera ignorée car la liste des rubriques " NOEUD2+NOEUD1 " ne contient que 2 rubriques.

Rubriques de type tableau

La fonction HImporteXML permet également d'importer des rubriques de type tableau.
Pour cela, il est nécessaire que les éléments du tableau soit contenus dans des balises filles.
Exemple : Le fichier de données décrit dans l'analyse contient les rubriques suivantes : RUB1, RUB2, RUBTABLEAU. La rubrique RUBTABLEAU est une rubrique tableau.
La liste des rubriques données étant "RUB1+RUB2+RUBTABLEAU" et le fichier XML ayant la structure ci-dessous :
<FICHIER>
<RUB1>Donnée1</RUB1>
<RUB2>Donnée2</RUB2>
<RUBTABLEAU>
<!-- balises filles -->
<RUBTABLEAU_1>TabDonnée1</RUBTABLEAU_1>
<RUBTABLEAU_2>TabDonnée2</RUBTABLEAU_2>
</RUBTABLEAU>
</FICHIER>

...
'Données1' sera affectée 'RUB1',
'Données2' sera affectée 'RUB2',
'TabDonnée1' sera affectée à 'RUBTABLEAU[1]',
'TabDonnée2' sera affectée à 'RUBTABLEAU[2]'.

Format du XML attendu

La fonction HImporteXML attend un fichier XML utilisant une structure précise.
Exemple :
<racine><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
<record>
<rub1>val</rub1>
<rub2>val</rub2>
</record>
<record>
<rub1>val</rub1>
<rub2>val</rub2>
</record>
</racine>
Ce format est également utilisé par la fonction HExporteXML. Si votre fichier XML n’utilise pas cette structure, l'importation pourra ne pas être correctement réalisée. Vous obtiendrez par exemple un enregistrement par rubrique.
Composantes
WINDEVWEBDEV - Code Serveur wd220hf.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire