DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Gestion des bases de données / HFSQL / Fonctions HFSQL
  • 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/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
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).
Exemple
Syntaxe
<Résultat> = HImporteXML(<Fichier de données> [, <Chemin du fichier XML> , <Rubriques destination> [, <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é.
<Fichier de données> : Chaîne de caractères
Nom 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 optionnelle
Chemin d'accès complet au fichier XML à importer.
<Rubriques destination> : Chaîne de caractères 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.
<Attributs XML à importer> : Chaîne de caractères 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 :
hImpCréationSi le fichier de données d'importation existe, il est écrasé.
hImpInterruptibleL'importation peut être interrompue par la touche Echap du clavier.
Si l'importation est interrompue, les enregistrements importés sont conservés dans le fichier de données.
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éé.
<Jauge> : Nom de champ ou de fenêtre optionnel
  • Nom de la fenêtre dans laquelle la jauge doit être affichée
  • Nom du champ de type Jauge affichant la progression.
WEBDEV - Code Serveur Ce paramètre n'est pas disponible.
<Noeud racine> : Chaîne de caractères optionnelle
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
WEBDEV - Code ServeurAjaxHFSQL ClassicHFSQL 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.
Classification Métier / UI : Code métier
Composante : wd300hf.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 04/06/2024

Signaler une erreur ou faire une suggestion | Aide en ligne locale