Mise en place des fonctions XQuery réutilisables sous JDev 12c

Lors de mes développements sur Jdev 12c, je me suis rendu compte qu’il était possible de regrouper des fonctions XQuery dans un seul et même fichier afin de les réutiliser dans divers composants (assign, replace, …).

Le but de cet article est donc de vous montrer comment mettre en place et utiliser ces fonctions personnalisées.

Tout d’abord, commençons par créer une Xquery nommée « RequestLib.xqy » :

 

Comme vous pouvez le voir, cette Xquery contient une fonction « nullOrEmpty », dont le but sera de vérifier si la donnée en entrée est null ou vide et en fonction de cela retournera un booléen.

Ensuite, nous allons ajouter un composant « Assign » dans le pipeline « REST_Email » :

 

Au niveau du champ « value », il faut cliquer sur la calculatrice qui va nous ouvrir une nouvelle fenêtre « XQuery Expression Builder » :

Ensuite, allez dans l’onglet « Functions » et cliquez sur la croix verte qui se trouve en haut à droite.

Une nouvelle pop-up s’ouvre. Dans la partie « Application », vous trouverez notre fichier. Sélectionnez-le et appuyez sur OK :

Maintenant, notre fichier fait partie de la liste des fonctions disponibles. Double-cliquez sur la fonction « nullOrEmpty ». Elle apparaîtra dans le bloc Expression :

Et voilà, vous pouvez à présent ajouter autant de fonctions que vous le souhaitez !

Si vous souhaitez utiliser cette fonction à nouveau dans un autre composant, la fonction sera déjà présente comme dans cet exemple :

Ici, je n’ai utilisé qu’une fonction, mais évidemment, on peut en ajouter autant que nous le souhaitons :

 

Nous avons à présent 2 fonctions au sein d’un seul fichier Xquery.

Pour que la nouvelle fonction soit prise en compte, il suffit de rouvrir la liste des fonctions, de supprimer la Xquery que l’on venait d’importer afin de la réimporter et la nouvelle fonction apparaîtra :

 

About Gregory

Grégory Leclerc has written 1 post in this blog.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

%d blogueurs aiment cette page :