Avant de créer votre site , il préférable de lire la documentation :Avant de commencer.
Le lien dynamique est un token qui permet de traiter les clics souris de l'utilisateur sur les zones sensibles de la page HTML que sont les tags <a> ou les tags <input type='button'>.
<input type='button' adx="MyDynamicLink" value="Cliquer ici">
<a adx="MyDynamicLink">Cliquer ici</a>
Les trois paramètres principaux d'un lien dynamiques sont :
1. l'action Web,
2. la page Web de destination,
3. la sélection.
L'ordre de la liste est l'ordre suivant lequel ces paramètres sont traités par le serveur XTEND.
Il existe deux types d'action qui sont:
Chaque action est déclarée dans le dictionnaire par une fiche de paramétrage.
Il s'agit de la page affichée en retour de la requête postée sur le serveur.
Chaque page est déclarée dans le dictionnaire par une fiche de paramétrage.
La page de destination peut être modifiée par l'action.
Pour modifier la page de destination par programme (L4G), utilisez l'enchainement (enchainement programmé) de liens dynamiques :
Valorisez un paramètre du sous-programme avec le code du lien dynamique (avec ou sans action/sélection) qui pointe vers la page de destination.
Le lien dynamique peut poster une sélection à destination du bloc principal de la page cible pour en modifier les critères de sélection.
La sélection permet de gérer le lien liste détail, le tri des tableaux ou le raffinement des requêtes.
Pour plus d'informations, voir la documentation sur les Tokens Blocs.
Les paramètres suivants sont pris en compte par les liens dynamiques.
Code | Paramètres | Description |
xacceptreload | Aucun | Force l'action du lien dynamique à s'exécuter sur rechargement de la page HTML (F5) même si le rechargement est bloqué dans le paramétrage de l'action ('Actif sur reload') |
xparams | QueryString | Ajoute des paramètres dans l'URL du lien dynamique |
<a adx="MyDynLink:xacceptreload&xparams=?PARCOD1=VAL1~PARCOD2=VAL2#xtdbottom">
Cet exemple :
Exemple montrant comment effectuer un positionnement à l'intérieur de la page de destination (via le paramètre HTML xparams) lorsque l'utilisateur clique sur un lien dynamique :
<!--Lien dynamique dans la page origine-->
<input type="button" value="Cliquer ici" adx="MYDYNLINK:xparams=#signet">
<a adx="MYDYNLINK:xparams=#signet">Cliquer ici</a>
<!--Page de destination-->
<body>
<!--Code HTML -->
<a name="signet">
<!--Positionnement de la page lorsque l'utilisateur clic sur le bouton ci-dessus-->
<!--Code HTML -->
</body>
Exemple valorisant les variables utilisateur PARCOD1 et PARCODE avec VAL1 et VAL2 (via le paramètre HTML xparams) lorsque l'utilisateur clique sur un lien dynamique :
<!--Lien dynamique dans la page origine-->
<input type="button" value="Cliquer ici" adx="MYDYNLINK:xparams=?PARCOD1=VAL1~PARCOD2=VAL2">
<a adx="MYDYNLINK:xparams=?PARCOD1=VAL1~PARCOD2=VAL2">Cliquer ici</a>
Le lien liste détail consiste à définir un lien pour accéder au détail d'une entité affichée dans une liste.
Par exemple : accéder au détail de l'article à partir du catalogue.
La page détail contient généralement des informations complémentaires provenant d'autres tables que celle utilisée pour afficher la liste.
Par exemple : la fiche de description riche d'un produit ou les produits associés (cross-selling).
Inversement l'utilisateur devra pourvoir retourner vers la liste à partir de la page détail sans perdre le contexte de la liste (critères de sélection, pagination...).
Le lien dynamique sélectionne une entité telle que le code est égal à celui de la ligne courante.
La ligne courante est identifiée par le bloc ACURRENT (sommet de la pile du contexte de données).
Le lien 'Remplace la sélection du bloc principal'.
<table>
<tr>
<th><b>Code</b></th>
<th><b>Libellé</b></th>
</tr>
<!--Bloc liste-->
<!adx="BLKITMLST">
<tr>
<!--Lien vers détail-->
<td><a adx="DLKDETAIL"><span adx="CODE"></span></td>
<td adx="DESCR"></td>
</tr>
<!adx="BLKITMLST">
</table>
Le bloc mono-enregistrement a une sélection de type 'Dernier lien cliqué' pour qu'il utilise les critères de sélection du lien dynamique cliqué par l'utilisateur (celui créé précédemment avec la sélection sur ACURRENT.CODE).
<!--Bloc détail-->
<!adx="BLKDETAIL">
<b>Code </b><span adx="CODE"></span><br>
<b>Libellé </b><span adx="DESCR"></span><br>
<b>Prix </b><span adx="PRIX"></span><br>
<b>Stock </b><span adx="STOCK"></span><br>
<!adx="BLKDETAIL">
<!--Retour vers la liste-->
<a adx="DLKRETOURLISTE">retour liste</a>
Pour afficher des données complémentaires issues d'une autre table ou vue (par exemple une description riche d'un article ou des produits associés) :
Le lien dynamique ADLKRETURN permet d'effectuer un retour arrière sur les pages XTEND qui ont été consultées.
Exemple :
Si on pagine sur un catalogue d'articles le lien ADLKRETURN affichera la page qui a précédé l'affichage du catalogue sans tenir compte des actions de pagination contrairement à la touche back du navigateur.
Le moteur XTEND gère une pile de pages consultées par session utilisateur dont la taille est paramétrable via le paramètre de configuration :
xtend.server.gensetup.misc.rtnstacksize (20 par défaut).
Code | Paramètres | Action | Description |
ADLKFIRSTPAGE | Non | ABLKFIRSTPAGE | Affiche la première page d'un bloc |
ADLKNEXTPAGE | Non | ABLKNEXTPAGE | Affiche la page suivante d'un bloc |
ADLKLASTPAGE | Non | ABLKLASTPAGE | Affiche la dernière page d'un bloc |
ADLKSELECT | Non | ABLKSELECT | Sélectionne la ligne d'un bloc |
ADLKUNSELECT | Non | ABLKUNSELECT | Déselectionne la ligne sélectionnée d'un bloc |
ADLKRESTOREFORM | Non | ARESTOREFORM | Restaure un formulaire HTML avec les valeurs initiales |
ADLKRESTORESESSION | Non | ARESTORESESSION | Affiche la dernière page ouverte avant fermeture du navigateur |
ADLKLOGIN | Oui | ASESSLOGIN | Login de l'utilisateur |
ADLKLOGOUT | Non | ASESSLOGOUT | Déconnecte l'utilisateur |
ADLKSWITCHCOOKIES | Non | ASESSSWITCHCOOKIES | Permute le mode 'sans cookies' et le mode 'avec cookies' |
ADLKTRACESET | Non | ATRACESET | Mise à jour de la trace XTEND |
ADLKRETURN | Non | Non | Retour à la page précédente |
ADLKPOSTPAGE | Non | Non | Poste le formulaire de la page courante et retour sur la même page |
ADLKSWITCHSITE | Oui | Non | Ouvre un autre site XTEND |
ADLKSWITCHLANG | Oui | Non | Non Changement de langue utilisateur |
Champs
Les champs suivants sont présents dans cet onglet :
| Code du lien dynamique. |
| Site Web courant. |
| Permet de définir un intitulé associé à chaque fiche. |
Fermer
Présentation
Paramètres généraux du lien dynamique.
Le Tableau "Param. Accès sous-programme" est alimenté si on a les conditions suivantes :
Lorsque ce tableau est non vide, il permet de définir une selection sur ces paramètres.
Fermer
Champs
Les champs suivants sont présents dans cet onglet :
Suivi
| Sélectionnez 'oui' pour tracer les appels au lien dynamique dans le log du serveur XTEND. |
| Sélectionnez 'oui' pour utiliser la méthode HTTP GET ; le lien doit être pris en compte par les moteurs de recherches (web crawlers). Seuls les liens qui n'ont pas de paramètre contextuel pour la sélection et/ou l'action sont compatibles avec la méthode HTTP GET. |
Destination
| Sélectionnez :
|
| Page de destination. |
Dynamisme
| Code de l'entité sélectionnée si le lien dynamique poste une sélection pour le bloc principal de la page de destination. L'entité est utilisée pour l'aide à la saisie des critères de sélection dans l'onglet sélection. |
| Il existe trois types de modification des critères d'un bloc par un lien dynamique. 1. Les critères du lien dynamique 'Remplace la sélection du bloc principal'SELECTION DU BLOC = CRITERES DE SELECTION DU LIEN 2. Les critères du lien dynamique 'S'ajoute à la sélection du bloc principal'Effectue un raffinement de la requête du bloc avec le critères du lien. 3. Les critères du lien dynamique 'Se cumule à la sélection en-cours du bloc principal'Effectue un raffinement de la requête du bloc en ajoutant (ET logique) la sélection du lien dynamique à la requête courante du bloc. Restriction : |
| Code de l'action web si le lien dynamique a une action. Les paramètres de l'action sont affichés automatiquement dans le bloc Paramètre de l'onglet Avancé pour indiquer la manière dont ils vont être valorisés. |
| Cochez la case pour que les paramètres de l'action déclarés comme 'Champs web obligatoires_' soient automatiquement contrôlés par XTEND. |
Tableau Param. Accès sous-programme
| Code du paramètre sous-programme. |
|
|
|
|
| Code du bloc pour l'origine 'Token champ'. |
| Entité du bloc pour l'origine 'Token champ'. |
| Code du champ pour l'origine 'Token champ'. |
Fermer
Champs
Les champs suivants sont présents dans cet onglet :
Tableau Paramètres
| Code du paramètre de l'action. |
|
|
|
|
| Code du bloc pour l'origine 'Token champ'. |
| Entité du bloc pour l'origine 'Token champ'. |
| Code du champ pour l'origine 'Token champ'. |
Enchaînement
| Il s'agit de la page qui sera affichée si l'action sort en erreur. Le moteur XTEND considère qu'une action a échoué si le web service invoqué a renvoyé au moins un message d'erreur. |
| 'Oui' pour indiquer que c'est le traitement L4G qui renvoie le code du lien dynamique dans un paramètre du sous-programme. Enchainement dynamique défini par le traitement L4GLe traitement L4G peut décider du lien dynamique à enchainer en renvoyant le code du lien dans un paramètre du sous-programme.
Le code du lien dynamique peut aussi être stocké dans une variable session (variable utilisateur).
La page affichée suite à l'enchainement de plusieurs liens dynamiques est la page web associée au dernier lien dynamique traité. |
|   |
|   |
Tableau Liens
| Code du lien dynamique à exécuter. Liste des liens dynamiques : les liens dynamiques saisis dans la liste seront exécutés séquentiellement tant qu'aucune erreur n'est renvoyée par le web service. |
Fermer
Présentation
Le lien dynamique a la capacité de poster une sélection à destination du bloc principal (AMAIN) de la page de destination. Si la sélection du bloc est 'altérable' et si les entités sélectionnées sont identiques, le bloc effectuera la sélection postée par le lien dynamique (en fonction du paramètre 'Application sélection').
Les champs de cet onglet sont actifs uniquement si un code entité a été sélectionné dans le champ 'Sélection sur l'entité' de l'écran 'Général'.
Fermer
Champs
Les champs suivants sont présents dans cet onglet :
Caractéristiques
| Aucune : sélection de tous les les enregistrements. Requête : application des critères de sélection du bloc. Dernier lien cliqué : application des critères de sélection du lien dynamique qui a été cliqué pour accéder à la page qui contient le bloc. |
| Non : la requête SQL associée au bloc ne peut pas être modifiée par celle d'un lien dynamique. Oui : la requête peut être modifiée par celle associée à un lien dynamique. La requête du bloc est la requête par défaut. |
| Choix de l'optimisation proposée par l'interface. Aucune : Aucune optimisation Pas de blob : l'interface ne renvoie pas le champs de type blob Pas de clob : l'interface ne renvoie pas le champs de type clob Ni clob, ni blob : l'interface ne renvoie pas le champs de type blob et clob |
Synthèse sélection
| Requête du bloc au format texte |
Tableau Critères de sélection
| Opérateur logique d'enchainement des opérations. |
| Parenthèses ouvrantes. |
| Champ de l'entité dont la valeur est le premier opérande de l'opération. |
| Opérateur de comparaison. |
|
|
| On saisit ici la valeur du paramètre. Celle-ci est saisie selon les cas comme un nombre, une date, ou un code alphanumérique. Lorsque le paramètre est de type menu local, on peut au choix saisir le début de l'intitulé, ou la valeur numérique correspondant au rang de l'intitulé dans la liste. Lorsque le code est contrôlé par une table annexe, une touche de sélection est utilisable pour le choisir. |
| Code du bloc pour l'origine 'Token champ'. |
| Entité du bloc pour l'origine 'Token champ'. |
| Code du champ pour l'origine 'Token champ'. |
| Parenthèses fermantes. |
|
|
|   |
Entité
| Indique les entités qui seront créées à partir du résultat de la requête. |
| Interface de type 'Accès données' qui sera appelée. |
| Type d'interface 'Accès données' qui sera appelée. |
Fermer
Champs
Les champs suivants sont présents dans cet onglet :
Caractéristiques
| Sélectionnez un type de tri :
|
|
|
Tableau Tri
| Nom du champ pour l'origine 'Token champ'. |
| Orde de tri Ascendant/Descendant. |
Fermer
Par défaut, les états suivants sont associés à la fonction :
PRTSCR : Impression écran
Mais ceci peut être modifié par paramétrage.
Ce bouton permet de copier un lien dynamique. |
Un token lien dynamique est toujours inséré comme attribut d'un tag HTML <a> ou <input type='button'>.
Lorsqu'un le serveur XTEND construit dynamiquement la page HTML : il génère, à l'emplacement des tokens lien dynamique, un appel à une fonction JavaScript de la bibliothèque XTEND (xtdDoDlk) sur l'événement onClick.
Les paramètres de la fonction xtdDoDlk sont contextuels et vont permettre à la bibliothèque XTEND de constituer les données (xml) à envoyer au serveur XTEND pour traiter l'action et la sélection.
<a href="javascript:xtdDoSubmit('MYDLK',null);"
onclick="xtdDoDlk(this,'MYDLK',null,null,'XAA',0,null,event,false,'_1',false,null,false);">
<input type="button"
onclick="xtdDoDlk(this,'MYDLK',null,'MYBLOCK','XA',0,null,event,true,'',false,null,true);"
value="Add to cart"/>
Lorsque l'utilisateur clique sur un lien dynamique, le contexte de données de la page n'existe plus sur le serveur.
Il a existé pendant la construction de la page puis a été supprimé.
Le serveur XTEND stocke, dans la page HTML (tag <span id="xtdctx">), le contexte de données nécessaire au traitement à posteriori des sélections et actions des liens dynamiques.
L'un des rôles de la fonction JavaScript xtdDoDlk est de retrouver le contexte de données associé au lien dynamique pour le renvoyer au serveur.
Exemple :
Pour un lien liste/détail (catalogue) on veut afficher dans la page 'détail' l'objet (article) sur lequel on a cliqué. Cette opération consiste, pour le serveur XTEND :
Le fait de stocker le contexte dans la page HTML assure un bon fonctionnement d'XTEND avec la touche Back du navigateur.
Pour appeler un lien dynamique par programme en JavaScript (non généré par XTEND), utilisez la fonction ci-dessous :
//aElmt est l'élément du DOM sur lequel on a cliqué
//aDlk est le code du lien dynamique à appeler
//aParams est optionnel et contient les paramètres de l'url (query string)
function xtdCallDlk(aElmt,aDlk,aParams){}
Cette fonction ne peut être utilisée que si le lien dynamique n'a aucune référence à des champs XTEND dans les critères de sélection ou les paramètres de l'action.
Seuls les critères ou paramètres de type 'Champ web' sont pris en compte.
Dans certains cas, le développeur peut être amené à intercepter le clic pour effectuer des contrôles.
Déclarez une fonction JavaScript de nom xtdDoMyDlk pour que la bibliothèque (XtendLib.js) l'appelle en passant en paramètre l'objet contextuel aDomOut (classe CXtdDomOut) qui permet d'accéder à toutes les informations sur le lien dynamique.
Cette fonction renvoie 'false' pour interrompre le traitement.
function xtdDoMyDlk(aDomOut)
{
if (aDomOut.isDlk("MyDynLink"))
{
// L'utilisateur a cliqué sur le lien MyDynLink
return confirm("Confirmer votre action");
}
return true;
}
Vous pouvez aussi intercepter le processus juste avant l'envoie du formulaire vers le serveur (submit) en créant une fonction JavaScript xDoMySubmit dans la page :
function xDoMySubmit(aDlk,aDomOut){
// Renvoie false pour interrompre le processus
return true;
}
Classe du paramètre aDomOut qui donne accès au contexte du lien dynamique.
// Renvoie la valeur de la variable utilisateur aKey
aDomOut.getUserVar(aKey);
// Renvoie le code du lien dynamique sur lequel l'utilisateur a cliqué
aDomOut.getDynLinkId();
// Renvoie l'index de la ligne (0 à N) si l'utilisateur a cliqué
// sur un lien qui est dans un bloc tableau'
aDomOut.getCurLineIdx();
// Renvoie true si l'utilisateur a cliqué sur le lien aArg
// aArg est soit un tableau de liens soit une String
aDomOut.isDlk(aArg);
if (aDomOut.isDlk("DLK1","DLK2")){
// Code si l'utilisateur a cliqué sur "DLK1" ou "DLK2"
}
// Renvoie la liste des paramètres web (Class CXtdDlkWebParamsOut)
aDomOut.getWebParameters();
// Pour connaitre la valeur du paramètre web aName
// aIdx est l'index de la valeur si valeur multiple
aDomOut.getWebParameters().getParamValue(aName,aIdx)
// Renvoie un Array qui contient les valeurs du paramètre web aName
aDomOut.getWebParameters().getParamValues(aName)
// Renvoie la valeur d'un critère de sélection ou paramètre d'action
// aFieldName est le nom du champ XTEND utilisé pour le mapping
aDomOut.getDlkParamValues(aFieldName);
// Idem getDlkParamValues - aParamId est l'ID du paramètre dans mapping
// - Pour un critère de sélection l'ID est SEL + rang du critère (1-N)
// - Cette est plus exacte que getDlkParamValues car l'ID contrairement au nom du champ XTEND
aDomOut.getDlkParamValuesById(aParamId);
Lorsqu'un paramètres d'action est déclaré comme 'Champ web obligatoire' la bibliothèque contrôle automatiquement :
Pour ajouter des contrôles supplémentaires sur les paramètres web, ajoutez la fonction xtdWebParamCheckValue ci-dessous dans la page HTML.
Cette fonction est appelée pour chaque paramètre web de l'action associée au lien dynamique et renvoie true pour valider la saisie.
Voir l'exemple dans la saisie du formulaire du site ASAMPLE.
Paramètres :
function xtdWebParamCheckValue(aWebParamOut,aInputFieldName,
aInputFieldIndex,aInputFieldValue){
// Exemple : Contrôle du format du email sur le champ MAICOD
if (aInputFieldName=="MAICOD"){
var wEmail=xtdCheckEmail(aInputFieldValue);
if (wEmail && wEmail!=aInputFieldValue){
//Format OK
//On met à jour la valeur avec le format calculé par xtdCheckEmail
aWebParamOut.setValue(aInputFieldIndex,wEmail);
}
//True pour valider la saisie - False pour invalider
return wEmail!=null;
}
}
// Renvoie True si paramètre obligatoire
aWebParamOut.isMandatory();
// Renvoie l'iIndex du champ dans le formulaire HTML
// -> Il peut y avoir plusieurs champ de même nom dans un formulaire (tableau)
aWebParamOut.getIndex();
// Renvoie l'élément DOM
aWebParamOut.getElement(aIdx)
//aValue est un Array
aWebParamOut.setValues(aValue);
//aIdx est l'index (0 - N) de la valeur
aWebParamOut.setValue(aIdx,aValue);
// Renvoie la valeur d'un autre paramètre Web
// -> Utile si le contrôle la valeur d'un paramètre dépend d'autres paramètres
aWebParamOut.getParamValue(aName,aIdx);
// Renvoie la valeur dans un Array
aWebParamOut.getValues();
// Renvoie la valeur d'index aIdx
aWebParamOut.getValue(aIdx);
// Renvoie la valeur d'index 0
aWebParamOut.getFirstValue();
// Renvoie l'attribut name
aWebParamOut.getName();
// Renvoie le type de paramètre défini dan le dictionnaire XTEND
aWebParamOut.isInteger();
aWebParamOut.isX3Menu();
aWebParamOut.isDecimal();
aWebParamOut.isCurrency();
aWebParamOut.isDate();
aWebParamOut.isString();
aWebParamOut.isNumeric();
// Renvoie le type d'élément du DOM du paramètre
aWebParamOut.isHidden(aIdx);
aWebParamOut.isInputText(aIdx);
aWebParamOut.isCheckBox(aIdx);
aWebParamOut.isRadio(aIdx);
aWebParamOut.isTextArea(aIdx);
aWebParamOut.isSelect(aIdx);
Si la fonction xtdWebParamCheck est présente dans la page, la bibliothèque XTEND appelle cette fonction avant d'effectuer le contrôle du paramètre.
Cette fonction renvoie 'true' pour effectuer le contrôle de la valeur et false pour bloquer le contrôle.
Elle est particulièrement utile dans les listes de picking avec sélection des lignes par une case à cocher. Elle permet de filtrer les lignes pour effectuer le contrôle uniquement sur les lignes qui sont cochées.
Voir l'exemple dans la saisie du formulaire du site ASAMPLE.
Paramètres :
var gNbChecked=0;
// Renvoie true si le paramètre web aInputFieldName/aInputFieldIndex doit être contrôlé
function xtdWebParamCheck(aWebParamsOut,aInputFieldName,aInputFieldIndex){
/*
Exemple pour une liste de picking avec checkboxes (ASELECTED) pour sélectionner les lignes.
On ne contrôle pas le champ AQUANTITY si la ligne n'est pas sélectionnée
*/
if (aInputFieldName=="AQUANTITY"){
// gNbChecked est un compteur des lignes sélectionnées
// Il permet de bloquer l'action si aucune ligne n'est sélectionnée
if (aInputFieldIndex==0) gNbChecked=0;
// Ligne sélectionnée si la valeur de ASELECTED est égale à 1
if (aWebParamsOut.getParamValue("ASELECTED",aInputFieldIndex)=="1"){
gNbChecked++;
return true;
}
return false;
}
return true;
}
Les CheckBoxes ont la particularité de ne pas être renvoyées dans le formulaire HTML si elles ne sont pas cochées.
Ce comportement n'est pas compatible avec le moteur XTEND qui se base sur l'index du champ dans le formulaire HTML pour associer les données saisies dans une même ligne d'un tableau.
Pour faire en sorte qu'une CheckBoxes soit renvoyée même si elle n'est pas cochée la bibliothèque, XTEND remplace les CheckBoxes non cochées par un champ 'input hidden' de même nom juste avant d'envoyer le formulaire vers le serveur (xtdProcessCheckBoxes).
La valeur utilisée pour valoriser les CheckBoxes non cochée est donnée par la variable globale gXtdCBUnSelelectedValue qui est vide par défaut (var gXtdCBUnSelelectedValue="").
Pour modifier la valeur :
<script>
// Page onLoad event
function xBodyOnLoad()
{
// Set '0' value for unselected checkboxes
xtdSetUnSelelectedValue('0');
// Page initialization code
}
</script>
<body onLoad="xBodyOnLoad();">
<form>
//Html code
</form>
</body>
Lors du parsing de la page, XTEND détecte toutes les CheckBoxes qui ont un token adx et constitue une liste qui est envoyée vers le client dans le contexte de données de la page. Ce sont les CheckBoxes de cette liste qui sont prises en compte par la fonction xtdProcessCheckBoxes.
Le serveur XTEND envoie au navigateur, dans le contexte de données de la page, les informations sur les 'Regional Settings' correspondants à la langue courante.
Pour accéder a ces informations :
var wRegSettings=gXtdDOMFactory.getXtdDomIn().getRegionalSettings();
// Séparateur de décimales
wRegSettings.getDecimalSep();
// Séparateur de milliers
wRegSettings.getThousandSep();
// Ordre de la date - MDY=0 - DMY=1 - YMD=2
wRegSettings.getDateOrder();
// Date pivot pour le calcule des dates X3
wRegSettings.getDatePivot();
Les fonction ci-dessous permettent d'ajouter/supprimer des variables et critères utilisateur.
Les fonction xtdAjax* mettent à jour les variables sur le serveur via une requête Ajax, sans soumettre le formulaire HTML.
Les autres fonctions (hors xtdGetUserVar) soumettent le formulaire HTML.
// ---------------------------------------------------------------
function xtdRemoveUserVar(aId);
function xtdSetUserVar(aId,aValue);
function xtdGetUserVar(aId);
function xtdRemoveUserCrit(aId);
// ---------------------------------------------------------------
function xtdAjaxRemoveUserVar(aId);
function xtdAjaxRemoveAllUserVar();
function xtdAjaxSetUserVar(aId,aValue);
function xtdAjaxRemoveUserCrit(aId);
function xtdAjaxRemoveAllUserCrit();
function xtdAjaxSetUserCrit(aId,aValue);
function xtdRemoveAllUserCrit();
La fonction ci-dessous affiche un message calculé par le serveur XTEND.
Le message est renvoyé dans la langue courante du site.
Paramètres :
function xtdAlert(aId,aP1,aP2,aP3,aP4);
// L'exemple ci dessou affiche
// 'Vous êtes connecté à l'application avec le code utilisateur DIS001'
xtdAlert("ASESSLOGIN2","DIS001");
La classe ci-dessous donne accès au contexte d'appel de la page pour connaitre le résultat d'une action :
var wCallCtx==gXtdDOMFactory.getXtdDomIn().getCallingCtx();
// ---------------------------------------------------------------
// CLASS CXtdCallingCtx
// ---------------------------------------------------------------
// Lien dynamique utilisé pour afficher la page courante
wCallCtx.getDynLink();
// True si la page est le résultat d'une action
wCallCtx.hasAction();
// Code de l'action
wCallCtx.getAction();
// True si l'action s'est bien déroulée - False si erreur
wCallCtx.getActionResult();