Avant de créer votre site , il préférable de lire la documentation :Avant de commencer.
L'entité XTEND est la structure de données de type liste de champs, propre à XTEND, qui représente un objet fonctionnel du site web (comme un article, un utilisateur, une adresse, un en-tête ou ligne de commande...).
Les données manipulées par le serveur XTEND proviennent exclusivement de l'appel d'interfaces (web services X3). Il existe deux façons de créer ces données ou entités :
Une entité est toujours le résultat d'un 'mapping' avec la structure de données renvoyée par le web service X3 à savoir :
Ces entités sont créées suite à l'appel, par l'utilisateur, d'une interface de type action via un bouton ou une ancre.
Pour optimiser les temps de réponse et la charge du serveur de web service :
Toutes les entités issues d'un 'mapping' avec une interface de type 'Action' sont stockées en mémoire et disponibles pendant la durée de la session utilisateur.
Dans le cas d'une action sur un objet (comme la validation d'une commande X3), les entités créées représentent généralement un sous-ensemble de la commande X3.
Ces entités (entête et lignes de commande) sont conservées en mémoire pour être :
Dans le cas d'une action de login utilisateur le sous-programme L4G valide les informations de login, et renvoie généralement une structure de données qui contient les informations du compte utilisateur.
Ces données pourront être affichées ou utilisées comme paramètres d'actions (code représentant, code site pour la commande) ou de tokens blocs conditionnés pour gérer l'affichage des pages.
Ces entités sont créées suite à l'appel, par un token bloc inséré dans une page HTML, d'une interface de type accès. Ces entités peuvent être considérées comme de simples enregistrements renvoyés par une requête SQL.
Toutes les entités issues d'un 'mapping' avec une interface de type 'Accès' sont stockées en mémoire et disponibles seulement pendant la durée de construction de la page HTML.
Les données de ces entités peuvent être utilisées comme paramètres d'action ou comme critères de sélection dans les blocs.
Dans ce cas, la valeur est conservée dans le contexte de données associé à la page HTML (et non pas dans le contexte de la session utilisateur).
Ce contexte est stocké dans la page HTML elle même (tag span spécifique) et manipulé par les fonctions JavaScript de la librairie XTEND.
Ce principe assure un bon fonctionnement des pages avec les touches retour (Back) et reload (F5).
Exemple :
Dans le cas d'un catalogue d'articles, le code de l'article, issu d'une requête sur une table X3, est conservé suivant ce principe. Il peut ainsi être passé :
Cette entité est crée au démarrage de la session. Elle permet l'accès à toutes les données de la session utilisateur.
Le paramétrage d'une entité consiste à :
Les champs ont généralement été créés au préalable via la fonction d'aide à la création des champs du menu 'outils' de l'interface.
Le menu Outils\Aide au remplissage propose une aide pour associer les champs à l'entité.
Ce type est réservé et correspond aux entités internes du serveur XTEND.
ASESSION : représente les données de la session utlisateur.
AHTMLFORM : représente le contenu du formulaire HTML de la requête HTTP courante.
AHTTPCOOKIE : représente le contenu des cookies de la requête HTTP courante.
Une entité de type action est créée par une 'action' utilisateur (mapping du résultat de l'appel du web service).
Les entités de type action ne sont rattachées à aucune interface car elle peuvent potentiellement être créées par plusieurs interfaces.
Exemple :
Une entité commande SOH peut être créée par les actions Créer/Modifier/Supprimer.
Ces trois actions feront référence à la même entité dans leur mapping.
1. Identifiez les entités dans la phase de spécification du projet,
2. Créez les web services et interfaces sans forcément développer le code associé,
3. Générez les champs via le menu 'outils' de la fiche interface,
4. Créez les entités et associer les champs.
Il n'existe pas d'outil de création automatique des entités de type action à partir d'une interface.
Lors de la création d'une entité action le moteur XTEND crée un champ 'AID' pour chaque entité qui contient un identifiant unique.
Ce champ peut être utilisé en Scripting serveur par les méthodes removeData et getData de l'interface IXtdJsActEntity.
Entité créée par l'appel d'une interface de type 'Accès données' qui est l'équivalent d'un requête SQL sur la base X3.
Le tableau 'Champs'est utilisé pour déclarer les champs de l'entité et pour effectuer le mapping entre le code du champs XTEND (colonne code) et le nom du paramètre sous-programme ou champ de l'objet X3 (colonne paramètre de l'interface).
On choisit généralement le même nom sauf si il y a conflit avec un autre champ de type différent.
Le groupe de publication de l'interface 'Accès données' qui contient les champs de la requête est fixé à 'RES'.
1.Générez l'interface à partir d'une table X3 ou de la liste gauche d'un objet,
2. Générez les champs via le menu 'outils' de la fiche interface,
3. Créez les entités et associer les champs.
Il n'existe pas d'outil de création automatique des entités de type 'accès données' à partir d'une interface dans la version actuelle.
Champs
Les champs suivants sont présents dans cet onglet :
| Code de l'entité |
| Site Web courant. |
| Permet de définir un intitulé associé à chaque fiche. |
Champs
Les champs suivants sont présents dans cet onglet :
Caractéristiques
|
|
| Code de l'interface |
|   |
|   |
Tableau Champs
| Code du champ XTEND : on choisit généralement le même nom que celui du 'Paramètres dans l'interface' sauf si il y a conflit avec un autre champ de type différent. |
| Mapping entre le code du champ XTEND et le nom du paramètre de l'interface. Il s'agit du code du paramètre du sous-programme (web service sous-programme) ou du code du champ de l'objet X3 (web service Objet X3). On choisit généralement le même nom XTEND/X3, sauf si il y a conflit avec un autre champ de type différent. |
| Code du 'Groupe de publication' de l'interface 'Accès données' qui contient les champs des enregistrements de la requête (fixé à 'RES'). |
Tableau Champs (sélection)
| Code du champ clé. Liste des champs identifiants de l'entité. Une entité est identifiée par une clé dynamique et N clés fixes :
|
|   |
| Valeur de la clé fixes. Liste des champs identifiants de l'entité. Une entité est identifiée par une clé dynamique et N clés fixes.
|
Icône Actions
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 une entité. |
Voir la documentation de prise en main de la fonction.
Cette fonction permet de créer des entités à partir des paramètres d'une interface.
1. Ouvrir la fonction Entité,
2. Créer une nouvelle Entité,
3. Sélectionner le type d'interface,
4. Pour le type 'Accès table' sélectionner l'interface qui sera attachée à l'entité,
5. Activer le menu 'Outils/Aide au remplissage'.
Après avoir sélectionné l'interface, la liste des paramètres regroupés par groupes de publication est affichée :
Colonne | Description |
Paramètre de l'interface | Code du paramètre de l'interface |
Groupe | Groupe de publication (sous-programme) ou code du bloc (objet) |
Intitulé | Intitulé champ pour les objets X3 |
Token champs | Code du token champ XTEND |
Intitulé | Intitulé champ XTEND |
Processus de création :
Il est conseillé de créer tous les champs XTEND au préalable via la fonction utilitaire 'Création des champs'.
Si le champ n'existe pas vous pouvez accéder à la fonction 'Token champ' par F12 pour le créer.
Validation avec une vérification de la cohérence des données du dictionnaire XTEND.