0

6 La navigation dans le manuel de Kentika est réservée aux utilisateurs identifiés



Créer un fichier XML

#XML

Créer un fichier XML par programmation

Préambule

Il existe, grâce aux maquettes, la possibilité de créer des fichiers d'export au format XML. Cependant, il se peut que, dans certains cas de figure, le résultat obtenu par cette option ne corresponde pas à ce qui est recherché. Ce sera en général le cas si vous êtes amené à coder un service web.

Déroulement

Le processus se déroule en trois étapes :

initialisation des tableaux en mémoire ;

alimentation des tableaux ;

conversion des tableaux en un fichier XML.

Exemple de fichier XML

<rss version="2.0">

1 <channel>

2 <title>News</title>

2 <link>http://www.mika-lab.com/RSS/Fil_23.xml&title=News</link>

2 <description/>

2 <language>fr</language>

2 <copyright>MIKA-Lab</copyright>

2 <image type="icone" width="32" height="32">

3 <url>http://www.mika-lab.com/favicon.ico</url>

</image>

2 <item numero="123">

3 <title>Nouveau Middleware</title>

3 <link>http://www.mika-lab.com/Record.htm?record=192412491069</link>

</item>

</channel>

</rss>

Un fichier XML en mémoire est composé de 4 tableaux : étiquette / valeur / attribut / niveau.

Dans l'exemple ci-dessus, le contenu des tableaux serait :

Etiquette Valeur Attribut Niveau

channel 1

title News 2

link http://www.mika-lab.com/... 2

description 2

language fr 2

copyright MIKA_Lab 2

image type="icone" width="32... 2

url http://www.mika-lab.com/... 3

item numero="123" 2

title Nouveau Middleware 3

link http://www.mika-lab.com/... 3

Initialisation

XML_add2Tabs ("";"";"";-1) 

Réinitialise les 4 tableaux (TT_Info1 : etiquettes, TT_Info2 : valeurs, TT_Info3 : attributs, ETx : niveaux).

Alimentation des valeurs

XML_add2Tabs ("Etiquette";"Valeur";"Attributs";Niveau) 

Les attributs sont exprimés sous la forme : nom de l'attribut, signe = puis valeur de l'attribut, sans les doubles guillements. Si plusieurs attributs doivent être spécifiés, ils doivent être séparés par des tabulations : caractere (9).

Cette fonction ne vérifie pas la cohérence des niveaux ni la validité de la syntaxe pour les étiquettes ou les valeurs.

Génération du fichier XML

XML_Tabs2XML ("destination")

Si le tableau des valeurs est vide, cette fonction retourne "#error". Sinon, le contenu xml est généré, la première balise est automatiquement générée : <?xml version="1.0" encoding="UTF-8"?>.

Paramètre : déstination

Blob_http Le résultat est envoyé dans le blob "Blob_http"

Nom de fichier Le chemin d'accès doit correspondre à un dossier existant

"ALTemp" Le fichier est créé dans le dossier ALTemp

"ALTemp\Temp\Process_n\TempXMLm.xml"

Le nom du fichier créé est retourné par la fonction

Nom d'une variable Le résultat est chargé dans la variable texte

Attention à la limite des 32 000 caractères

Nom d'un tableau Alimentation du tableau

Exemples

Tx:=XML_Tabs2XML ("C:\ALTemp\MonFichier.XML")

Le fichier "C:\ALTemp\MonFichier.XML" sera créé et le résultat sera placé dans ce fichier.

Tx:=XML_Tabs2XML ("ALTemp")

Un fichier sera créé dans ALTemp et son nom transmis dans la variable Tx.

Tx:=XML_Tabs2XML ("Txx")

Le résultat sera chargé dans la variable Txx

Tx:=XML_Tabs2XML ("TT_Info10")

Le résultat sera chargé sous forme de lignes dans le tableau TT_Info10.

Exemple de génération d'un fichier XML

Le script ci-dessous génère le fichier XML décrit ci-dessus et l'ouvre ensuite dans le navigateur

XML_add2Tabs ("";"";"";-1)

XML_add2Tabs ("channel";"";"";1)

XML_add2Tabs ("title";"News";"";2)

XML_add2Tabs ("link";"http://www.mika-lab.com/RSS/Fil_23.xml&title=News";"";2)

XML_add2Tabs ("description";"";"";2)

XML_add2Tabs ("language";"fr";"";2)

XML_add2Tabs ("copyright";"MIKA_Lab";"";2)

XML_add2Tabs ("image";"";"type=icone"+Caractere(9)+"width=32"+Caractere(9)+"height=32";2)

XML_add2Tabs ("url";"http://www.mika-lab.com/favicon.ico";"";3)

XML_add2Tabs ("item";"";"numero=123";2)

XML_add2Tabs ("title";"Nouveau Middleware";"";3)

XML_add2Tabs ("link";"http://www.mika-lab.com/Record.htm?record=192412491069";"";3)

Tx:=XML_Tabs2XML ("ALTEMP")

OUVRIR URL WEB (Tx;*)

https://www.kentika.net/WEBTEMP/WRTemp/RES/183312490159/images/docwrite001.jpg

Ouverture du fichier dans un navigateur