Exemple : Utiliser les noms de fichier en tant que paramètres de mappage
Cet exemple vous guide dans les étapes nécessaires pour exécuter un mappage qui prend les paramètres d'entrée lors du runtime. Le fichier de conception de mappage utilisé dans cet exemple est disponible dans le chemin suivant : <Documents>\Altova\MapForce2025\MapForceExamples\FileNamesAsParameters.mfd.
Ce mappage lit des données depuis un fichier XML de source et l'écrit dans un fichier XML cible. Les données sont écrites dans le fichier cible de manière presque inchangée ; seuls les attributs PrimaryKey sont Name remplis avec des valeurs constantes depuis le mappage. L'objectif principal du mappage est de permettre à l'appelant de spécifier le nom du fichier d'entrée, en tant que paramètres de mappage, au moment du runtime du mappage.
Pour ce faire, le mappage a deux composants d'entrée : InputFileName et OutputFileName. Ceux-ci apportent le nom d'entrée du fichier (et le nom du fichier de sortie respectivement) du fichier XML de source et de cible. Pour cette raison, ils sont connectés à l'item Fichier : <dynamic>. Vous pouvez passer un composant dans ce mode en cliquant sur la touche File ( ) , et en sélectionnant Utiliser Noms de fichier dynamique fournis par le mappage.
FileNamesAsParameters.mfd (MapForce Enterprise Edition)
Si vous double-cliquez sur la barre de titre du composant InputFileName ou OutputFileName, vous pouvez consulter ou éditer leurs propriétés. Par exemple, vous pouvez spécifier le type de données du paramètres d'entrée ou changer le nom de paramètre d'entrée, comme décrit dans Paramètres de composant d'entrée simple. Dans cet exemple, les paramètres d'entrée et de sortie sont configurés comme suit :
•Le paramètre InputFileName est de type "string" et il a une valeur par défaut fourni par une constante définie dans le même mappage. La constante est de type "string" et sa valeur est "Altova_Hierarchical.xml". Ainsi, lorsque ce mappage est exécuté, il tentera de lire des données depuis un fichier nommé "Altova_Hierarchical.xml", en partant du principe que vous ne fournissez pas d'autres valeurs en tant que paramètre.
•Le paramètre OutputFileName est de type "string" et il a aussi une valeur par défaut fournie par une constante définie dans le même mappage. La constante est de type "string" et sa valeur est "Altova_Hierarchical_output.xml". C'est pourquoi le mappage créera un fichier de sortie XML appelé "Altova_Hierarchical_output.xml" lorsqu'il est exécuté, en partant du principe que vous ne fournissez pas d'autres valeurs en tant que paramètres.
Les sections suivantes illustrent comment exécuter le mappage et fournir des paramètres dans les langages de transformation suivants :
•XSLT 2.0, utiliser RaptorXML Server
XSLT 2.0
Si vous générez du code dans XSLT 1.0, XSLT 2.0 ou XSLT 3.0, un fichier batch DoTransform.bat est généré dans le répertoire de cible choisi, en plus du fichier XSLT. Le fichier DoTransform.bat vous permet d'exécuter le mappage avec RaptorXML Server, voir Automatisation avec RaptorXML Server.
Pour utiliser un fichier d'entrée (ou de sortie) différent, éditer le fichier DoTransform.bat pour inclure les paramètres requis, comme suit :
1.Tout d'abord, générer le code XSLT. Par exemple, pour générer XSLT 2.0, sélectionner la commande de menu Fichier | Générer du Code dans | XSLT 2.0.
2.Copier le fichier Altova_Hierarchical.xml depuis <Documents>\Altova\MapForce2025\MapForceExamples\ dans le répertoire où vous avez généré le code XSLT 2.0 (dans cet exemple, c:\codegen\examples\xslt2 ). Comme indiqué précédemment, le mappage tentera de lire ce fichier si vous ne fournissez pas de valeur personnalisée dans le paramètre InputFileName.
3.Éditer DoTransform.bat pour inclure le paramètre d'entrée personnalisé soit avant soit après %*. Veuillez noter que la valeur de paramètre est contenue entre des guillemets simples. Les paramètres d'entrée disponibles sont recensés dans la section rem (Remarque). Supposons que vous souhaitez générer un fichier de sortie appelé output.xml. Pour ce faire, changer le fichier DoTransform.bat comme suit :
@echo off
RaptorXML xslt --xslt-version=2 rem --param=InputFileName: rem --param=OutputFileName: IF ERRORLEVEL 1 EXIT/B %ERRORLEVEL%
|
Lorsque vous exécutez le fichier DoTransform.bat, RaptorXML Server termine la transformation en utilisant Altova_Hierarchical.xml en tant que paramètres d'entrée. Si vous avez suivi les étapes ci-dessus, le nom du fichier de sortie généré sera output.xml.