Entité
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...).
Prise en main
Création
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 :
- soit par une action utilisateur,
- soit par un accès aux données.
Une entité est toujours le résultat d'un 'mapping' avec la structure de données renvoyée par le web service X3 à savoir :
- Les champs d'un 'groupe de publication' pour un sous-programme L4G,
- Les champs d'un 'bloc écran' pour un objet X3.
Entités créées par une action
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 :
- Cumulez l'action utilisateur et la création d'entités en retour dans une même appel de web service plutôt que d'appeler deux web services.
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 :
- affichées,
- passées en paramètre d'une autre action (confirmation de la commande)
- ou bien utilisées comme critères de sélection (détail des articles).
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.
Entités créées par un accès aux données
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é :
- en paramètre du bloc qui affiche le détail de l'article
- ou bien en paramètre de l'action qui l'ajoute au panier.
Entité ASESSION
Cette entité est crée au démarrage de la session. Elle permet l'accès à toutes les données de la session utilisateur.
Paramétrage
Le paramétrage d'une entité consiste à :
- associer une interface,
- saisir la liste des champs.
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é.
Entité de type session
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.
Entité de type action
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.
Processus de création des entités action
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.
Identifiant
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é de type 'accès données'
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'.
Processus de création des entités action
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.
Gestion de l'écran
En-tête
Entité (champ ENTCOD) |
Code de l'entité |
Site (champ FCYLIB) |
Site Web courant. |
Intitulé (champ INTIT) |
Permet de définir un intitulé associé à chaque fiche. |
Onglet Généralités
Caractéristiques
Type (champ TYP) |
|
Interface (champ INTCOD) |
Code de l'interface |
Type d'interface (champ INTTYP) |
Nom de publication (champ INTWSRC) |
Tableau Champs
Code (champ FIECOD10) |
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. |
Paramètre de l'interface (champ DSCCOD10) |
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. |
Groupe (champ DSCGRP10) |
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 (champ FIECOD30) |
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 :
|
Type (champ VALTYP30) |
Valeur (champ VALEUR30) |
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.
|
Aide à la création |
Voir l'aide de l'outil 'Aide au remplissage'. |
Etats
Par défaut, les états suivants sont associés à la fonction :
PRTSCR : Impression écran
Mais ceci peut être modifié par paramétrage.
Boutons spécifiques
Copie |
Ce bouton permet de copier une entité. |
Barre de menus
Aide à la création des entitésVoir 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 :
Une entité XTEND est généralement associée à un groupe de publication (colonne groupe) (qui représente un bloc écran pour un objet X3). 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'. Outils / Validation avec vérificationValidation avec une vérification de la cohérence des données du dictionnaire XTEND. |