Balises Jelly
Utilisez Jelly pour transformer XML en HTML.
Regardez ces vidéos d’introduction pour en savoir plus sur l’utilisation de Jelly dans le ServiceNow AI Platform.
Balises Jelly
- if
- Description : La balise
ifest exactement ce à quoi elle ressemble, une baliseif. C’est comme une instructionifdans n’importe quel langage de programmation, mais gardez à l’esprit qu’il n’y a pas de baliseelseifet aucune baliseelseif. Si vous voulez créer ce type de structure, essayez la syntaxechoose/when/otherwise. - Paramètres :
test : lacondition à évaluer afin de déterminer si le bloc s’exécutera. - Exemple :
<g:evaluate var="jvar_now_GR" object="true"> var now_GR = new GlideRecord("incident"); now_GR.addQuery("active", true); now_GR.query(); now_GR; </g:evaluate> <j:if test="${!jvar_now_GR.hasNext()}"> We did not find any active incidents. </j:if> <j:if test="${jvar_now_GR.next()}"> We found ${jvar_now_GR.getRowCount()} active incidents. </j:if>
- Description : La balise
- tandis que
- Description : La balise
whileeffectue une boucle while. - Paramètres :
test: condition à évaluer afin de déterminer si l’instruction va se boucler. Il doit s’agir d’une expression entourée de${}ou$[]qui est évaluée à vrai ou faux. - Exemple :
<g:evaluate var="jvar_now_GR" object="true"> var now_GR = new GlideRecord("incident"); now_GR.addQuery("active", true); now_GR.query(); now_GR; </g:evaluate> <j:while test="${jvar_now_GR.next()}"> <a href="incident.do?sys_id=${jvar_now_GR.getValue('sys_id')}">${jvar_now_GR.getValue('number')}</a> </j:while>
- Description : La balise
- définir
- Description : la balise
setdéfinit une variable. - Paramètres :
var: variable à définir. Souvent, le système fait précéder ces variables dejvar_par souci de cohérence.value: valeur à laquelle lavariabledoit être définie. Il s’agit souvent d’une expression comprise entre${}ou$[].defaultValue: si la valeur est nulle ou vide, cette valeur est placée dans lavariable.
- Exemple :
<j:set var="jvar_incident_number" value="${jvar_now_GR.getValue('number')}"/>
- Description : la balise
- set_if
- Description : la balise
set_ifdéfinit une variable basée sur un test. Cette balise est similaire à l’opérateurternairedans d’autres langages de programmation (var = <test> ? <if_true> : <if_false>). - Paramètres :
var: variable à définir. Souvent, le système fait précéder ces variables dejvar_par souci de cohérence.test: condition à évaluer afin de déterminer si l’instruction évaluera la valeur vraie ou la valeur fausse. Il doit s’agir d’une expression entourée de${}ou$[]qui est évaluée à vrai ou faux.vrai: valeur sur laquelle définir la variable si letestest évalué survrai. Ce paramètre est facultatif, donc si le champ est vide et si le test est évalué comme vrai, la variable est laissée vide.faux: la valeur sur laquelle définir la variable si letestest évalué sur faux. Ce paramètre est facultatif, donc si le champ est vide et si le test est évalué comme faux, la variable sera laissée vide.
- Description : la balise
- Choisir
- Description : La balise
choosecommence un bloc de code de choix. Ceci est similaire au type de syntaxeif-elseif-elsedans la plupart des langages de programmation. Avec une balisede choix, vous pouvez utiliser des baliseswhenetelsepour spécifier d’autres blocs de code. - Paramètres : aucun
- Exemple :
<j:choose> <j:when test="${jvar_now_GR.getRowCount() ${AMP}lt; 1}">We found multiple records!</j:when> <j:when test="${jvar_now_GR.next()}">We found record ${jvar_now_GR.getValue('number')}</j:when> <j:otherwise>Sorry, we could not find the record you specified.</j:otherwise> </j:choose>
- Description : La balise
- quand
- Description : la balise
« when» est utilisée dans un bloc de sélection pour indiquer une condition. Cette balise est similaire à unifou unelseifen ce sens qu’elle spécifie une condition, exécute le contenu interne, puis implique une pause à la fin pour quitter la constructionif-elseif. - Paramètres :
test: condition à évaluer afin de déterminer si l’instruction va se boucler. Il doit s’agir d’une expression entourée de${}ou$[]qui est évaluée à vrai ou faux. - Exemple :
<j:choose> <j:when test="${jvar_now_GR.getRowCount() ${AMP}lt; 1}">We found multiple records!</j:when> <j:when test="${jvar_now_GR.next()}">We found record ${jvar_now_GR.getValue('number')}</j:when> <j:otherwise>Sorry, we could not find the record you specified.</j:otherwise> </j:choose>
- Description : la balise
- sinon
- Description : La balise
otherwiseest utilisée dans un blocchoose/when/otherwise, et est comme le caselseoudefault. - Paramètres : aucun
- Exemple :
<j:choose> <j:when test="${jvar_now_GR.getRowCount() ${AMP}lt; 1}">We found multiple records!</j:when> <j:when test="${jvar_now_GR.next()}">We found record ${jvar_now_GR.getValue('number')}</j:when> <j:otherwise>Sorry, we could not find the record you specified.</j:otherwise> </j:choose>
- Description : La balise
Balises Glide
- Évaluer
- Description : la balise
evaluateévalue le code JavaScript (côté serveur) et rend les variables visibles pour le code futur. Contrairement aux autres balises, la baliseevaluateévalue le contenu qui se trouve à l’intérieur de la balise en tant que JavaScript côté serveur.Le contexte est le même que celui des includes de script dans le système. D’autres includes de script, règles métier globales, variables GlideRecord, GlideSystem et Jelly (précédées de jelly. si le paramètre
jelly="true »est défini) sont disponibles. - Paramètres :
var: le nom de la variable qui est définie sur le résultat du script.object: si la valeur est définie surtrue, le résultat de l’expression est traité comme un objet et non comme une variable primitive (valeurs de variables de chaîne ou d’entier).jelly: si la valeur est définie survrai, les variables de contexte Jelly peuvent être référencées dans le script.expression: il s’agit d’une expression à exécuter pour la valeur àmettre dans var. L’expression peut être l’un des deux endroits suivants. Tout d’abord, il peut s’agir d’un attribut sur la balised’évaluationelle-même. Sinon, le contenu entre la balise de début et la balise de fin est l’expression. La dernière ligne de l’expression est la valeur réelle transmise dansvar.
- Exemple :
<g:evaluate var="jvar_now_GR" object="true"> var now_GR = new GlideRecord("incident"); now_GR.addQuery("active", "true"); now_GR.query(); now_GR; // this is the variable put into the variable jvar_now_GR </g:evaluate><g:evaluate var="jvar_now_GR" object="true" expression=" var now_GR = new GlideRecord('incident'); now_GR.addQuery('active', 'true'); now_GR.query(); now_GR; // this is the variable put into the variable jvar_now_GR" />
- Description : la balise
- messages
- Description : la balise
messagesaide à la traduction. Lorsque gs.getMessage() est appelé n’importe où sur une page, il y a deux endroits possibles où la traduction est trouvée. Tout d’abord, la page vérifie un cache local de traductions. Deuxièmement, la page effectue un appel AJAX au serveur pour trouver la traduction. Ce quefait g :messages, c’est permettre aux pages de mettre en cache certains messages. - Paramètres : aucun
- Exemple :
<g:messages> Yes No Cancel </g:messages>
- Description : la balise
- Point d’arrêt
- Description : Lorsque la balise
de point d’arrêtest appelée, elle imprime une liste de toutes les variables de Jelly à l’instant présent, avec leurs valeurs respectives. Si une variable est spécifiée, elle imprime la variable demandée et sa valeur. La sortie est placée dans le journal système. - Paramètres :
var: (facultatif) variable pour laquelle consigner la valeur.Si varn’est pas spécifié, toutes les variables sont déversées dans le journal. - Exemple :
<g:breakpoint /><g:breakpoint var="sysparm_view"/>
- Description : Lorsque la balise
- no_escape
- Description : le système utilise par défaut la sortie échappée comme mesure de sécurité. La sortie placée à l’intérieur des balises no_escape n’est pas échappée avant
lasortie. Soyez prudent lorsque vous utilisez ces balises, car si l’entrée de l’utilisateur est affichée ici, elle peut ouvrir une faille de sécurité sur la page. - Paramètres : aucun
- Exemple (phase 1) – Désactive l’échappement automatique de sortie de toutes les expressions ${} contenues :
<g:no_escape> ${jvar_raw_html_data} </g:no_escape> - Exemple (phase 2) – Utilisez
NOESCpour désactiver l’échappement pour la chaîne spécifiée. Cela implique que l’expression doit être évaluée à une chaîne.<g:no_escape>$[NOESC:jvar_expr]</g:no_escape>Pour plus d’informations sur l’évaluation de la phase 1 et de la phase 2, reportez-vous aux vidéos d’introduction de Jelly répertoriées au début de cette section.
- Description : le système utilise par défaut la sortie échappée comme mesure de sécurité. La sortie placée à l’intérieur des balises no_escape n’est pas échappée avant
- macro_invoke
- Description : la balise
macro_invokeappelle une macro d’interface utilisateur que vous avez spécifiée dans la base de données. Vous pouvez également appeler une macro d’interface utilisateur en la spécifiant dans le nom de la balise. Par exemple, si vous avez une macro d’interface utilisateur nommée my_macro, vous pouvez l’appeler avec la balise<g :my_macro/>. (pour en savoir plus, consultez Macros d'interface utilisateur) ; - Paramètres :
macro: le nom de la macro d’interface utilisateur à exécuter. Si le nom de votre balise estg :macro_invoke, l’attribut macro spécifie le nom de la macro. Si le nom de la balise inclut le nom de la macro, il n’est pas nécessaire d’inclure un attribut de macro.- Autres attributs : pour chaque attribut que vous spécifiez, une variable portant ce nom sera disponible dans le contexte de la macro d’interface utilisateur, précédée
d’un jvar_.
- Exemple :
<!-- Will invoke the contents of the UI macro named "sample_macro", which will have the variable jvar_message available within it--> <g:macro_invoke macro="sample_macro" message="This is a sample macro variable." /><!-- Will invoke the contents of the UI macro named "sample_macro", which will have the variable jvar_message available within it--> <g:sample_macro message="This is a sample macro variable." />
- Description : la balise
- if_polaris
- Description : la balise
if_polarisvérifie si Next Experience elle est activée pour la page actuelle. Il doit inclure au moins une des balises enfants<g :then />oug :else />. - Paramètres : aucun
- Exemple :
<g:if_polaris> <g:then><g:inline template="polaris_nav"/></g:then> <g:else><g:inline template="classic_nav"/></g:else> </g:if_polaris> <g:if_polaris> <g:then><a href="…">Click here to see what’s new!</a></g:then> </g:if_polaris> <g:if_polaris> <g:else>Core UI only code here!</g:else> </g:if_polaris>
- Description : la balise
- puis
- Description : la balise
thenest utilisée dans un blocif_polarispour définir le contenu de la page lorsqu’elle Next Experience est activée. - Paramètres : aucun
- Exemple :
<g:if_polaris> <g:then><g:inline template="polaris_nav"/></g:then> <g:else><g:inline template="classic_nav"/></g:else> </g:if_polaris> <g:if_polaris> <g:then><a href="…">Click here to see what’s new!</a></g:then> </g:if_polaris> <g:if_polaris> <g:else>Core UI only code here!</g:else> </g:if_polaris>
- Description : la balise
- sinon
- Description : la balise
elseest utilisée dans un blocif_polarispour définir le contenu de la page lorsqu’elle Next Experience n’est pas activée. - Paramètres : aucun
- Exemple :
<g:if_polaris> <g:then><g:inline template="polaris_nav"/></g:then> <g:else><g:inline template="classic_nav"/></g:else> </g:if_polaris> <g:if_polaris> <g:then><a href="…">Click here to see what’s new!</a></g:then> </g:if_polaris> <g:if_polaris> <g:else>Core UI only code here!</g:else> </g:if_polaris>
- Description : la balise