Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Sage ERP X3
Support de formation
Outils Communs
« Tous droits réservés. Toute reproduction, même partielle, est interdite sans notre autorisation ».
Sage ERP X3 – Outils communs
Sommaire
1. GENERALITES .............................................................................................................................. 4
1.1. ERGONOMIE ......................................................................................................................... 4
1.2. LA FENETRE ET SON ORGANISATION ...................................................................................... 7
2. LA GESTION DES DOSSIERS .................................................................................................... 16
2.1. DEFINITION D‟UN DOSSIER .................................................................................................. 16
2.2. DOSSIER ET HERITAGE ....................................................................................................... 19
2.3. LES FICHIERS STRATEGIQUES ............................................................................................. 32
2.4. UTILITAIRES DE GESTION DES DOSSIERS .............................................................................. 33
2.5. REALISER UNE EXTRACTION DE DONNEES ............................................................................ 35
2.6. UTILITAIRE D‟INTEGRATION DE DONNEES.............................................................................. 37
2.7. CONSOLE X3 : IMPORTER UN DOSSIER ................................................................................ 38
2.8. ARCHITECTURES ................................................................................................................ 45
2.9. AIDE EN LIGNE.................................................................................................................... 48
3. CONCEPTION D’UN OBJET SIMPLE......................................................................................... 49
3.1. LES TABLES ....................................................................................................................... 52
3.2. LES ECRANS ...................................................................................................................... 57
3.3. LES OBJETS ....................................................................................................................... 65
3.4. LES FENETRES ................................................................................................................... 71
4. INTRODUCTION AUX FORMULES X3 ....................................................................................... 77
4.1. LES FORMULES X3 ............................................................................................................. 77
4.2. LES FORMULES SIMPLES ..................................................................................................... 78
4.3. LES VARIABLES .................................................................................................................. 79
4.4. RAPPEL : L‟EDITEUR DE FORMULES ..................................................................................... 80
4.5. CONTEXTE ASSISTANT DE FORMULES .................................................................................. 82
4.6. NOTE SUR LES TABLEAUX DE VARIABLES.............................................................................. 83
4.7. FONCTIONS X3 DANS LES FORMULES .................................................................................. 84
5. LES UTILISATEURS ET LEURS HABILITATIONS .................................................................... 87
5.1. LES 4 CONCEPTS-CLES DE LA TECHNOLOGIE SAGE X3 ......................................................... 87
5.2. LA FICHE UTILISATEUR ........................................................................................................ 88
5.3. LES PROFILS FONCTIONS .................................................................................................... 93
5.4. HABILITATION FONCTIONNELLE ............................................................................................ 94
5.5. CODES D‟ACCES : AFFINER LES CONTROLES ........................................................................ 95
5.6. AFFECTATION DES CODES D‟ACCES AUX ECRANS ................................................................. 97
5.7. PROFILS MENUS : NAVIGATION DANS X3 .............................................................................. 98
5.8. ROLES : FILTRER LES DONNEES DE FAÇON PLUS FINE ......................................................... 100
5.9. SCHEMA RECAPITULATIF ................................................................................................... 102
5.10. DELEGUER LA CREATION D‟UTILISATEURS .......................................................................... 103
5.11. LA GESTION DES MOTS DE PASSE ...................................................................................... 104
5.12. NOTES TECHNIQUES ......................................................................................................... 106
6. PARAMETRAGE DE BASE ....................................................................................................... 108
6.1. LES PARAMETRES GENERAUX ........................................................................................... 109
6.2. LES MENUS LOCAUX ET TABLES DIVERSES ......................................................................... 115
6.3. LES COMPTEURS .............................................................................................................. 120
7. PARAMETRAGE DES FONCTIONS ......................................................................................... 126
7.1. PARAMETRAGE DES OBJETS : PROPRIETES ........................................................................ 126
7.2. PERSONNALISATION D‟UN OBJET ....................................................................................... 129
7.3. LES TRANSACTIONS DE SAISIE ........................................................................................... 133
1. GÉNÉRALITÉS
1.1. ERGONOMIE
L‟interface permet une saisie classique « Windows » des caractères numériques et alphanumériques.
Il est possible de réaliser des copier / couper / coller, des insertions, des remplacements par sélection,
des suppressions.
Notes sur les saisies :
Un champ incorrect du point de vue format (ou trop long…) est souligné en rouge.
Le déplacement sur une zone ou un onglet peut être refusé si des valeurs précédentes (dans l‟ordre
de la saisie) sont incorrectes ou ne sont pas renseignées.
Champs de texte
Combo-box
Case à cocher
Boutons radio
Les actions possibles sur un champ dépendent du type de ce dernier. Ces actions sont accessibles en
se positionnant sur le champ et en réalisant un clic droit afin de faire apparaître le menu contextuel
associé.
2
1 3
4
7
Le menu contextuel permet de faire apparaître un :
Les fonctions génériques sont liées au fait qu‟une table (un objet) gère les valeurs de code saisies
dans le champ.
Onglets
Zone d‟information
En client serveur on retrouve une barre d‟outils
Ascenseur pour accéder aux occurrences précédentes ou suivantes de la liste gauche
F1, Shift + F1, Ctrl + F1, Alt + F1 Affiche l‟aide sur champ, fonction, masque, fiche
F4 ou clic droit sur le champ Affiche le menu contextuel
F7 Aller à la fonction
F5 Rafraîchit la liste gauche
F6 Affiche les informations caractérisant le champ et l‟écran
F9 Appel du tunnel
F12 Appel la liste de sélection
Ctrl Alt K Appel à la calculatrice
Le picking en phase de création de document se fait par la sélection des boules incolores.
La sélection les colorise en bleu.
1
2
3
Entête
Onglet
Leur nombre varie selon les fonctions et leur paramétrage
Tableau
Chaque ligne est gérée en fonction de son contenu et les clicks droits contextuels peuvent
être différents d‟une ligne à l‟autre
Les tableaux sont classables par le click souris sur l‟entête de colonne
Zones d‟information
Bloc divisés en 3 parties
a. Informations applicatives
b. Etat de l‟interface
c. Icônes :
1 2 3 4 5 6 7 8 9 10
Nouveau
Impression / e-mail
Boutons magnéto
Pièces jointes
Saisie d‟un commentaire
Edition
Mise en page
Lancement d‟une session secondaire
Aide contextuelle
Sommaire général d‟X3
Un objet correspond à la gestion complète des fiches d'une table ou d'un groupe de tables
(création, consultation, modification, annulation le cas échéant...). La gestion des clients, la gestion
des factures, la saisie des écritures... sont implémentées dans le progiciel sous la forme d'objets.
Une fenêtre composée d'un en-tête et d'un ou plusieurs onglets situés sur la partie droite et de
listes de sélection situées à gauche « browser ». Un enregistrement est géré à la fois.
Une fenêtre composée d‟un écran unique contenant la liste des enregistrements de la table.
Un objet permet de gérer un enregistrement dans une table (une fiche tiers, par exemple) ou dans
plusieurs tables (l'en-tête de commande et les lignes correspondantes).
En plus de la liste gauche principale de l‟objet, il est possible de définir d‟autres listes gauches par la
déclaration d‟un objet de type « browser ».
Lorsqu‟on crée l‟objet de code XXX par la gestion des objets, le superviseur crée automatiquement
une fonction dont le nom est GESXXX. Les fonctions de consultation sont nommées CONSXXX où
XXX est le code de consultation.
Ainsi, si tout objet correspond à une fonction, la réciproque n‟est pas vraie (outre les menus, il existe
un ensemble de fonctions appelant des traitements qui ne correspondent pas à des objets).
De 3 types principaux
objets [V]GFONCTION=GESXXX Exemple GESBPC pour l‟objet BPC de
gestion des clients
consultations [V]GFONCTION=CONSXXX Exemple CONSBAL pour la consultation des
balances
traitements [V]GFONCTION quelconque Exemple FUNPIH pour la validation des factures
d‟achat.
Les modèles sont très importants car ils normalisent le fonctionnement d‟un progiciel, et permettent
facilement de voir quels sont les possibilités de paramétrage générique associées
Actuellement, on a environ :
1.2.4. Le menu
Une fois connecté, l‟utilisateur accède à des pages html qui forment une arborescence de menus
pointant sur des fonctions du progiciel. L‟arborescence du menu dépend notamment des droits
accordés à l‟utilisateur.
Le click droit Ajouter aux favoris permet de se constituer ses favoris : ici « Factures » est envoyé vers
la zone de favoris. Les favoris sont définis par codes USER.
L‟accès au menu peut se faire également par appel au nom de la fonction désirée :
Cette fonction permet de créer et de mettre à jour un dossier. Un dossier est un référentiel complet,
identifié par un code, dans lequel on retrouve tous les paramètres et règles de gestion et toutes les
données utilisées.
La création d'un dossier est un préliminaire indispensable avant de pouvoir commencer à paramétrer
et /ou à saisir des données. Cette opération est relativement longue. Autant il est courant de revalider
un dossier en cours de paramétrage lorsque les paramètres de configuration sont affinés, autant on
essaiera de créer directement avec les bons paramètres le ou les dossiers qui seront utilisés en
exploitation. En effet, cette phase conditionnera le bon dimensionnement de la base et évitera le
recours ultérieur aux outils d'exploitation de la base pour redimensionner.
Sur un dossier en exploitation, une revalidation peut être une opération longue et nécessite que
personne ne soit connecté sur le dossier traité.
La description externe des tables permet de les créer et de les modifier : à partir de cette description
(gérée par ailleurs dans un dictionnaire), le moteur est capable de créer et de modifier la structure des
tables (outil valfil).
Au niveau technique, un dossier est composé d‟un utilisateur au niveau base de données, auquel sont
rattachés :
des tables stockant les paramètres et les données d‟index, de séquences…
d‟un répertoire situé sur le serveur d‟application contenant, dans des sous-répertoires :
des descriptions d‟écrans et de fenêtres
la description externe des tables de la base
du code exécutable par le moteur
des états Crystal Reports
La description externe des tables permet de les créer et de les modifier : à partir de cette description
(gérée par ailleurs dans un dictionnaire), le moteur X3 est capable de créer et de modifier la structure
des tables (outil valfil).
On part toujours d'un dossier de référence pour pouvoir créer un dossier. L'intérêt d'utiliser un dossier
de référence est de pouvoir utiliser un paramétrage de base pour générer le nouveau dossier. Le
dossier superviseur, qui peut servir de dossier de référence, et qui contient l'ensemble des paramètres
relatifs à la législation courante, est livré avec le progiciel, mais n'importe quel autre dossier peut
servir de référence.
Deux architectures sont possibles : soit celle à deux niveaux, soit celle à trois niveaux.
Celle à deux niveaux est plus facile à gérer, est recommandée dans la plupart des cas.
L‟architecture à 3 niveaux, plus complexe à maintenir, sert essentiellement lorsqu‟on gère des
développements spécifiques à plusieurs niveaux (spécifique, vertical)
Il est à noter que les dossiers de référence sont définis par des variables système.
- adxmother(0) donne le nom du dossier de référence d‟un dossier
- adxmother(1) donne le nom du dossier de niveau au-dessus.
Dans le cas d‟une architecture à deux niveaux, ces deux valeurs sont égales à X3.
Dans le cas d‟une architecture à trois niveaux, adxmother(0) est égal au nom du dossier de
développement, et adxmother(1) est égal à X3.
On retrouve l‟affectation de ces variables, ainsi que d‟autres, dans un fichier nommé APL.ini, qui se
trouve sur le serveur d‟application, dans le répertoire de base du dossier.
La mise en œuvre d‟un dossier Historique est une option permettant de transférer des données figées
dans une instance de la base de données avant épuration de la base de production.
Remarques :
Dans le cas d‟une architecture à deux niveaux, le dossier X3 est le dossier de référence.
Dans le cas d‟une architecture à trois niveaux, un dossier de développement s‟intercale entre le
dossier final et le dossier X3. Mais ce dossier de développement a lui-même X3 comme dossier mère.
Un dossier est d‟abord décrit par une fiche dossier stockée dans le dossier X3, elle décrit les
paramètres de base du dossier
Sa validation va provoquer la création du dossier, c‟est-à-dire :
o Créer les répertoires du dossier sur le serveur.
o Créer un user dans la base de données.
o Ajouter une ligne dans le fichier de configuration des dossiers (x3appli.ini).
o Transférer et valider le dictionnaire des objets à partir du dossier de référence.
o Copier certaines données de base à partir du dossier de copie.
Sa revalidation va permettre de :
o Mettre à jour le dictionnaire des objets à partir du dossier de référence (en protégeant
les éléments spécifiques).
o Revalider les dictionnaires (tables, écrans, objets…)
Type de base : Définit le type de la base utilisée pour créer le dossier. Cette base peut être SQL
SERVER ou ORACLE. En fonction de la licence qui est utilisée, ce choix sera possible ou imposé.
Volume : Ce numéro de volume "adonix" correspond au répertoire à partir duquel les fichiers
physiques décrivant les objets du dossier sont implantés sur le serveur de traitement. Les volumes
adonix sont définis dans le fichier "adxvolumes" sous le répertoire d'installation (contenu dans la
variable d'environnement ADXDIR). Le volume par défaut est A, mais d'autres peuvent avoir été
définis lors de l'installation du progiciel. La touche fonction F12 affiche la liste des volumes
disponibles.
Taille données & Index : Ces valeurs permettent de dimensionner les fichiers données et index de la
base pour une base Oracle. La taille est exprimée en Méga-octets. Ces valeurs n'ont d'intérêt que
pour la création d'un dossier, et elles seront saisies en fin de définition des paramètres du dossier,
juste avant la création effective d'un dossier. Après l‟utilisation de l‟option permettant d‟évaluer la taille
de la base.
Format : Définit si le jeu de caractères utilisé pour stocker les champs caractères dans la base de
données, le format ASCII correspond à la gestion des langues européennes: chaque caractère est
stocké sur un octet, les caractères accentués étant stockés sur des valeurs supérieures à 128.
Le format UNICODE n'est utile que lorsqu'on veut gérer des langues dont le jeu de caractère
nécessite plus de 256 combinaisons. C'est le cas du chinois, par exemple.
Groupe fichier : Cette option est utilisée pour une base SQL server. Elle permet de définir si on crée
ou pas des fichiers séparés pour stocker les index et les données. Pour des bases conséquentes,
c'est en général le cas.
Tableau des Modules : Ce tableau contient les modules retenus pour le dossier à générer. Seules
les fonctions et les tables associées à des modules activés seront utilisables dans le dossier une fois
qu'il aura été créé.
Il est recommandé de ne prendre que les modules réellement utiles. En effet, ceci permet de ne créer
que les tables et objets réellement utilisés et diminue donc le temps de création et la place prise. Il est
toujours possible d'ajouter des modules ultérieurement.
Les dépendances entre modules définies en début du cours doivent êtres respectées. Il est par
ailleurs recommandé de positionner le module Développement à Oui même si aucun développement
ne doit être fait sur le dossier, sinon on s‟interdira l‟accès à un certain nombre de fonctions de
maintenance.
Dossier de référence : Le dossier de "référence" est un dossier existant, dont les données du
dictionnaire seront utilisées lors de l'initialisation du dossier. Un lien de filiation entre un dossier et le
dossier de référence est permanent.
Dossier de copie Le dossier de copie, qui doit avoir été créé au préalable, est le dossier à partir
duquel les données définies par l'onglet Init seront copiées. Ce dossier peut être le dossier de
référence ou un autre dossier de structure identique. Il est important que la structure du dossier de
copie soit équivalente. Aucun contrôle ne peut être fait lors de la génération, mais des erreurs
pourraient se produire lors de la copie si ce n'est pas le cas.
Dossier historisé : La déclaration de ce dossier peut être réalisée ultérieurement. Il est renseigné
lorsqu'un dossier historique est créé par la fonction correspondante.
Date de début : Cette date permet de définir la date de premier exercice comptable d'un nouveau
dossier. Cette date est fondamentale, car elle ne pourra plus être changée après la création.
Dossier test : Cet indicateur signifie que ce dossier a vocation à recevoir une copie des traitements
standards présents dans un patch si celui est exécuté sur le dossier. Un dossier en exploitation
réelle ne doit pas avoir cet indicateur positionné à Oui.
Si l‟indicateur Test est à Oui il est possible d‟installer des patchs standards directement sur le dossier
en question. On n‟hérite alors plus de ceux qui se trouvent dans le dossier X3
Dossier spécifique : Cette case à cocher signifie que les traitements spécifiques présents dans un
patch seront installés sur le dossier même s'ils n'existaient pas auparavant. Si cet indicateur n'est pas
positionné, seuls les traitements spécifiques précédemment existants sont remplacés dans le dossier
par une nouvelle version présente dans un patch.
Lng tables diverses : Ce paramètre définit la longueur maximale pour les codes dans les tables
diverses. Par défaut, la longueur est de 3, mais on peut aller jusqu'à 10.
Taille images : Ce champ détermine la taille maximale prise par défaut dans les champs de type blob
(binary large objects). Ce champ est défini comme une puissance de 2 : 1 équivaut à 2 Ko, 2 à 4 Ko,
3 à 8 Ko . Le maximum est de 1Go soit la valeur 20.
Taille textes : Ce champ détermine la taille maximale prise par défaut dans les champs de type Clob
(character large objects). Ils correspondent notamment aux textes stockés dans la base de données.
Ce champ est défini comme une puissance de 2 : 1 équivaut à 2 Ko, 2 à 4 Ko, 3 à 8 Ko . Le maximum
est de 1Go soit la valeur 20.
Remarques :
Le codage de la base peut être ASCII (8 bits, c‟est normalement le cas pour les langues
européennes), UTF8 ou UCS2 (codages sur plusieurs octets). Avec SQL server, le seul codage
Unicode possible est UCS2, avec Oracle, on a le choix.
Le dossier de référence est soit X3, soit un dossier dépendant de X3
La date de début d‟exercice est importante, car elle ne pourra plus être changée. Il est recommandé
de tenir compte de la reprise des historiques pour la définir.
Il permet d‟activer ou de désactiver des codes activité qui définissent des champs et fonctions
optionnelles du progiciel. On distingue :
D‟une part les options
D‟autre part les localisations.
Remarques :
De façon générale, tout changement de valeur d‟un code activité suppose une revalidation de dossier
pour être prise en compte (certaines exceptions peuvent être traitées par des utilitaires, mais ceci
suppose d‟avoir les connaissances requises en développement).
Remarques :
Les codes activités qui structurent la base de données caractérisent des champs « dimensionnés »
dans la table. Il s‟agit de champs multiples, stockés de façon dé normalisée dans la base de données.
Un champ nommé par exemple CCE et dimensionné à 9 par le biais d‟un code activité CCE sera
stocké dans une table sous la forme de neufs champs nommés CCE_0, CCE_1,… CCE_8.
Les codes activités dimensionnant un nombre maximum de lignes dans un document permettent
uniquement de définir des dimensionnements de tableaux de saisie en mémoire (chaque ligne de
document correspond à une ligne dans une ou plusieurs tables).
Les nombres minimum et maximum donnés ici doivent s‟interpréter de la façon suivante : La valeur
minimale est celle qui sera de toutes les façons gérée par la table. Il n‟est pas interdit de descendre en
dessous, car la dimension donnée structurera l‟écran. Les dimensions supérieures à la dimension
donnée, mais inférieures à la dimension de la taille, resteront stockées dans la base mais ne seront
pas renseignées puisque non saisies. La raison de cette valeur minimale est liée à Crystal Reports.
En effet, autant SAGE X3 sait gérer des champs optionnels dans la base, autant un état Crystal
Reports référençant un champ inexistant dans la base ne pourra pas fonctionner. Les valeurs
minimales ont ainsi été faites pour que les états livrés en standard fonctionnent quoi qu‟il arrive.
Lorsque valeur minimale et maximales sont identiques (ou non renseignées, ce qui signifie qu‟aucune
incidence n‟existe sur la structure de la base), la dimension permet uniquement de faire varier le
nombre de colonnes ou de lignes présentes à l‟écran.
Lorsque la dimension saisie est supérieure à la valeur minimale, c‟est la dimension saisie qui est
utilisée pour définir à la fois les champs de la table et les écrans.
Les paramètres de dimensionnement saisis dans la fiche dossier sont utilisés dans des formules de
dimensionnement.
Les paramètres et les formules sont modifiables dans le dictionnaire de données, ce sont des actes de
développement.
Remarques :
Les paramètres de dimensionnement (Dictionnaire de données / Eléments de dimensionnement)
définissent le nom des variables utilisées, et les formules de dimensionnement (Dictionnaire de
données / Formules de dimensionnement) associent à chaque table une formule permettant de
calculer un nombre de lignes prévisionnel.
On saisit dans cet onglet la valeur des variables de dimensionnement (telles VOUCHER). Ces
variables sont utilisées pour dimensionner chaque table
Remarques :
L‟objectif de cet onglet est de permettre, lors de la création de la base de données, de savoir comment
dimensionner (cf. premier onglet) les tablespaces ou des volumes de la base (ceci est fait lors de la
création).
Par ailleurs, chaque table du dossier ainsi créé est pré dimensionnée en fonction de la taille calculée
ici (ceci a une influence importante, notamment pour oracle, sur les dimensionnements d‟extents, mais
il est possible, après la création, de créer des fichiers de configuration associés à chaque table pour
définir plus finement la façon dont la table est gérée. Il ne s’agit donc ici que de valeurs par défaut
utilisées en l’absence de fichiers de configuration.
Les tailles obtenues dépendent à la fois des valeurs associées aux codes activité et des valeurs
données ici.
Il est conseillé de tenir compte de l‟historique que l‟on souhaite avoir en ligne (hors dossier archivage)
pour donner des valeurs aux dimensions.
Remarques :
Les cases à cocher Mise à jour sont toujours forcées à Oui et ne peuvent pas être décochées sauf en
cas de maintenance particulière. Les transactions sont validées si les écrans qui leur servent de base
ont subi des modifications, mais on peut les forcer.
L‟ajout d‟une langue est toujours possible, moyennant revalidation de dossier. A la génération, une
partie des éléments techniques de la fenêtre sont validés en fonction de la langue.
Les codes activité sont des codes sur cinq caractères, affectés à des éléments des dictionnaires X3
pour les activer, les désactiver ou les dimensionner. Cet onglet permet de gérer les codes activité
spécifiques :
o Actif (Oui/Non)
o ou en dimension selon les cas
Les codes activité d'un dossier donné sont stockés dans la table ADOSACT dans le dossier X3, et
dans la table ACTIV dans le dossier même.
À partir d'X3 : Dossiers / Dossiers.
À partir du dossier fille : Développement / Dictionnaire données / Codes activité
L‟indicateur Vertical signifie que le spécifique est défini dans un dossier intermédiaire et est remis à
jour à chaque revalidation de dossier à partir du dossier de référence.
Lorsque l‟indicateur Vertical est égal à Non, on considère, à la revalidation de dossier, que tous les
éléments marqués par ce code activité doivent être respectés et donc non modifiés.
Remarques :
On définit ici des paramètres techniques dont les valeurs (sauf exception) ne doivent pas être
modifiées.
Elles sont stockées dans le fichier apl.ini qui initialise certaines variables X3.
à la validation (ou revalidation) du dossier, le fichier apl.ini est mis à jour avec ces valeurs.
Les caractéristiques de connexion au dossier, et notamment les informations se trouvant dans la boîte
de connexion du poste client, lorsqu'on établit une connexion au dossier. Le fait de les renseigner ici
permet de mettre à jour un fichier de configuration situé sur le serveur, dans le répertoire de base du
dossier superviseur, et nommé X3APPLI.ini. Ce fichier peut être téléchargé sur les postes clients à
l'aide du bouton idoine, à partir de la boîte de définition des paramètres de connexion.
Permet de définir le code des dossiers de la solution sur lesquels on veut autoriser un accès aux
tables à partir du dossier que l'on paramètre. Ce tableau ne peut être saisi que si on est connecté sur
le dossier racine de la solution (ERP, paie et ressource humaines, gestion des immobilisations, ou
gestion d'entrepôt selon le progiciel en technologie X3 utilisé), et en cours de paramétrage des
caractéristiques d'un dossier autre. Ceci n'est nécessaire que pour les tables qui ne sont pas
déclarées en accès sécurisé. Il est à noter qu'un dossier parent à accès par défaut aux tables de ses
dossiers fils. Ce n'est que donc dans le cas où un lien de filiation n'existe pas qu'il est nécessaire de
définir des droits accès éventuels.
es autorisations d'accès sont :
o Aucunes
o Lectures
o Toutes
Des liens du dossier vers des dossiers situés dans d'autres solutions, c‟est à dire sur un autre serveur,
ou un autre service de connexion. Ces liens permettent de simplifier la mise en œuvre de connexions
entre progiciels en technologie X3 lorsqu'ils doivent partager ou mettre à jour des données
communes. L'exemple classique de ce type de coopération est le cas d'un progiciel qui doit mettre à
jour une comptabilité située dans un dossier distant.
De façon technique, un programme situé dans un dossier DOSSIER1 est susceptible d'ouvrir des
tables dans un dossier distant nommé DOSSIER2 par l'intermédiaire d'une syntaxe de type :
File ="serveur:service@DOSSIER2.TABLE"
Lorsque ceci arrive, un processus d'accès aux données est ouvert sur le serveur distant ( nommé
sadora ou sadoss selon le type de la base de données, et cherche à se connecter à la base de
données avec un nom d'utilisateur par défaut (au sens base de données) égal au code DOSSIER1 du
dossier d'où la requête est lancée.
S'il existe, pas de problèmes, mais il faut faire en sorte que les privilèges d'accès aux tables du
dossier DOSSIER2 soient suffisantes.
Si un dossier de nom DOSSIER1 n'existe pas sur le serveur distant, aucun accès ne sera possible,
sauf si on a défini, sur le serveur distant, un répertoire DOSSIER1 contenant un nombre minimum de
fichiers stratégiques utilisés lors du démarrage d'un processus de ce type (les fichiers .users,
.password, APL.ini, adxora).
Le fichier adxora stocke notamment, sous forme codée, le code user sous lequel le processus d'accès
aux données se connectera, et le mot de passe correspondant.
C'est pourquoi on saisira dans cet onglet un tableau de liens avec les paramètres suffisants pour
permettre la création des fichiers autorisant la connexion distante. Cette création n'aura pas lieu lors
de la saisie de la ligne, mais elle sera déclenchée lorsqu'on aura activé le lien (fonction accessible via
clic droit sur la ligne).
Il est à noter que les liens peuvent être caractérisés fonctionnellement : un Lien comptable, par
exemple correspond à un lien permettant à un progiciel d'accéder à une comptabilité distante. Un seul
lien caractérisé de chaque type est possible par dossier, et dans ce cas, il faudra préciser les
caractéristiques complètes du dossier distant auquel on se connecte. L'intérêt de ces liens
caractérisés est qu'ils sont gérés par les progiciels qui les supportent (une opération de
comptabilisation dans un progiciel sans comptabilité recherchera explicitement un lien comptable pour
savoir s'il doit accéder à une comptabilité distante).
Il existe également des liens de type Divers : il peut y en avoir plusieurs de ce type pour un dossier
donné (sachant que le nombre total de liens tous types confondus est limité à 5). Ils sont supposés
être gérés dans des traitements spécifiques. Un lien de ce type ne référence pas forcément un dossier
particulier, mais il peut simplement correspondre à un environnement donné. Dans ce cas, les
connexions auront lieu avec un code user base de données à préciser.
Lors de la saisie de lignes de liens, le traitement recherche quelle est la version du progiciel Sage X3
installée dans l'environnement cible. Il détecte notamment la présence d'un fichier solution.xml, ce
qui permet de déduire un certain nombre de valeurs par défaut lors de la saisie d'une ligne.
Si le répertoire existe déjà, et correspond à un répertoire d'un "vrai" dossier distant (on vérifie si un
sous-répertoire TRT s'y trouve), rien n'est modifié, pour éviter de perturber les connexions au dossier
sur le serveur d'origine. Mais dans ce cas, il n'y a de toutes les façons rien à faire, puisque la
connexion pourra se faire à distance (avec les privilèges de l'utilisateur BDD correspondant au code
du dossier).
Test lien : Permet, une fois que le lien a été activé, de vérifier qu'une connexion est possible (on
cherche à ouvrir une des tables du superviseur).
Attention, cette fonction n'est possible que si le code du dossier dont on paramètre les liens
est le dossier courant.
La barre de menu
La barre des menus permet d‟accéder aux options suivantes
L‟option Taille permet d‟activer la fonction d‟estimation de la taille du dossier dans la base des
données.
L‟option Trace permet de consulter la trace suite à une opération de validation ou de revalidation. Il
est important de toujours vérifier la trace de dernière validation !
La revalidation d‟un dossier permet de mettre à jour une version.
De transférer les développements verticaux d‟un dossier de développement vers un dossier qui en
dépend. Dans une architecture à 3 niveaux, pour appliquer des évolutions standard : On revalide
toujours le dossier intermédiaire en premier puis les dossiers fils.
Le fichier param.ini est stocké sur le serveur d‟application dans le répertoire du dossier et mis à jour à
chaque validation de dossier, il permet de retrouver les paramètres du dossier en cas de transfert par
l‟option d‟import.
Le fichier APL.ini Permet de définir les paramètres de base d‟initialisation des sessions utilisateur
Le fichier Solution.xml : défini le contexte dans lequel le dossier est installé. Ce fichier est commun à
l‟ensemble des dossiers qui appartiennent à une installation X3.
Cette fonction permet de remettre à zéro les mouvements d'un dossier ; elle peut être utile dans les
cas où :
après un démarrage en test et une reprise des données permanentes des dossiers (plan comptable,
clients, articles…), on désire épurer la base des mouvements créés dans la phase de test, juste avant
l'import des mouvements réels et le démarrage opérationnel d'un dossier.
Pour réinitialiser un dossier de test.
La fonction de gestion des dossiers stocke les paramètres de configuration d'un dossier dans les
tables ADOSSIER, ADOSPAR, ADOSDIM (tables située dans le dossier X3). Lorsqu'on désire
transférer un dossier d'un serveur vers l'autre, il faut donc transférer :
Le transfert global d'un user de base de données, ou d'un répertoire avec l'ensemble de ses sous-
répertoires, est relativement aisé à faire. Le transfert d'une partie d'une table est plus délicat à réaliser.
Pour pallier ce problème, on stocke également les paramètres de configuration du dossier dans un
fichier PARAM.ini situé dans le répertoire de base du dossier (ce double stockage n'est possible
qu'une fois que le dossier a été créé).
Ainsi, lorsqu'on a transféré le dossier sur un nouveau serveur, on peut remettre à jour les tables
ADOSSIER, ADOPAR, ADOSDIM par lecture du fichier PARAM.ini. C'est l'import de dossier qui
réalise cette opération.
Attention, ce type de fonction est une fonction de maintenance liée au moteur Sage X3 et non aux
bases de données.
o Il faut s'assurer qu‟aucun utilisateur n'est connecté sur le dossier durant l'extraction.
o Elle peut conduire à une incohérence de structure de la base de données si des mises à jour
par patch ont été réalisées entre la sauvegarde et sa restauration.
Cette possibilité offerte permet néanmoins de réaliser une sauvegarde de manière autonome :
o Ne nécessite pas de connaissances en administration de base de données.
o La présence de l‟administrateur de la base de données n‟est pas requise.
o Les tables peuvent être intégrées dans un autre dossier (dossier de même niveau de version
et de patch).
Copie fichiers de configuration. Lorsque cette case est cochée, le fichier d'extension cfg présent
dans le répertoire FIL est copié dans le répertoire d'extraction.
Taille réelle dans le srf. Lorsque cette case est cochée, le fichier d'extension srf, qui contient des
éléments de dimensionnement de la table, est créé en tenant compte de la taille courante de la table,
et non pas de la taille prévue à terme pour la table (telle qu'elle est définie par les variables et les
formules de dimensionnement en gestion de dossier).
Attention pour conserver une sauvegarde et en réaliser une seconde, il est nécessaire de procéder à
une sauvegarde manuelle du répertoire SVG, notamment en zippant ce répertoire (exemple :
SVG2006_10_27.zip). Il est nécessaire d‟avoir les droits d‟accès réseau aux répertoires applicatifs.
TABLE.blb : données de type blobs ou clobs (images, textes) stockés dans la table. Présent si la table
contient ce type de champs.
TABLE.cfg : configuration de la table dans la base de données si elle existe
L‟extraction ou l‟intégration se fait dans ou depuis un répertoire du serveur d‟application qui doit
forcément être sur le même volume que le répertoire du dossier qui est par défaut le répertoire SVG.
Remarques :
La limite concernant le volume est une limite technique de l‟outil d‟extraction (qui s‟appelle valfil et qui
pilote par ailleurs les changements de structure des tables : cet exécutable livré avec le moteur
d‟exécution adonix est appelé de façon transparente par X3).
Le fichier d‟extension cfg est optionnel; il contient des directives liées à la base de données, et est
aussi stocké (s‟il existe) dans le répertoire FIL du dossier.
Sous oracle, ce peut être des directives de dimensionnement d‟extents ou de répartition sur différents
tablespaces (partitionnement d‟une table par exemple)
Sous SQL serveur, ce peut être des directives de définition du volume, utiles lorsque différents
volumes sont utilisés.
Ces directives sont transmises à la base qui les respecte strictement lors de l‟intégration, ainsi qu‟à
chaque revalidation de table. Elles permettent d‟utiliser des configurations différentes de celles
proposées par défaut.
Si on extrait le fichier d‟extension cfg, et si on le transfère avec les autres fichiers dans
l‟environnement d‟intégration, les mêmes directives vont également s‟appliquer dans l‟environnement
en question. Si on veut ne pas en tenir compte, il suffit de ne pas transférer ce fichier dans
l‟environnement d‟intégration. Le fait qu‟il ne soit pas présent signifie que les règles de
dimensionnement par défaut vont s‟appliquer. Ces règles s‟appuient simplement sur la taille d‟une
ligne de la base et le nombre de lignes prévues dans la table. Une information de taille de table,
calculée à partir de ces éléments, est présente dans le fichier .srf et dans son équivalent compilé
d‟extension .fde.
Ce type de fonction est une fonction de développement dont l'utilisation est interdite dans le
cadre d'une exploitation normale. Les conséquences légales de l'utilisation d'outils de
développements sur des bases de données contenant des données dont la loi interdit
l'altération sont de l'entière responsabilité du client. Cette fonction ne peut remplacer une
véritable sauvegarde de la base de données.
Si un dossier doit être envoyé à la hot-line Sage pour analyse approfondie, on utilisera l‟outil
d‟extraction de données en le lançant sur toutes les tables de la base (*), puis en sauvegardant
l‟ensemble du répertoire du dossier sur bande ou sur CD-ROM.
Il est dans ce cas impératif de cocher l‟indicateur Taille réelle dans srf afin de pouvoir remonter le
dossier dans une base de donnée de taille raisonnable. Pour autant, on peut quand même extraire les
fichiers .cfg (leur examen peut permettre d‟analyser des problèmes de performance).
Paramètres d‟intégration :
Répertoire de sauvegarde : Code du répertoire dans l‟arborescence du dossier contenant les fichiers
séquentiels (dat, srf, fde, cfg etc..) à intégrer.
Tables à intégrer : Code X3 des tables à intégrer. La valeur peut être générique, par exemple A*
permet d‟intégrer toutes les tables dont le code commence par la lettre A.
Fichiers de config d’origine : Permet d‟ignorer le fichier .cfg présent dans le répertoire de
sauvegarde
Utile par exemple pour remonter dans un environnement d‟exploitation correctement dimensionné des
données issues d‟un environnement de test et de reprise
Taille d’origine : Permet d‟ignorer la taille de la table déclarée dans le fichier .srf au profit de celle de
la table d‟origine. Si elle existait avant l‟intégration.
Cette fonction est liée au moteur adonix et non aux bases de données standard. En conséquence, elle
ne doit pas non plus être utilisée dans le cadre d'une procédure habituelle de sauvegarde, dont elle ne
possède pas les garanties de sécurité ni de performance. Une sauvegarde avec les outils standards
de la base est fortement recommandée avant toute utilisation de ce type de fonction.
Parmi les limitations de ce type de fonction, il convient de noter que, si elle est lancée sur plusieurs
tables de la base, elle peut conduire à une image de la base qui n'est pas globalement cohérente si
des mises à jour ont lieu durant l'import (contrairement aux outils standard associées aux bases de
données). Si on désire se servir de cette fonction pour importer un ensemble de tables exportées de
façon cohérente, il faut donc s'assurer que personne d'autre n'est connecté sur le dossier durant
l'intégration.
Cette fonction peut être lancée en batch. La tâche standard DOSREC est prévue à cet effet.
La méthodologie présentée se base sur le fait que le dossier à importer a été extrait puis copié dans
l‟arborescence des dossiers applicatifs.
Le dossier à dupliquer
Le répertoire de sauvegarde
Remarques :
- La console ne peut importer que les dossiers importés sur le même que le dossier racine (référence
à l‟ADXVOLUMES).
- La console ne prend pas en compte l‟option « Taille réelle dans srf » disponible lors de l‟extraction
des dossiers. Pour bénéficier de cette optimisation, il faut importer le dossier via le client X3.
Pour importer un dossier, il faut lancer la console de configuration Sage X3 puis cliquer sur le bouton
Importer dans l‟onglet Dossiers de la solution.
Création du dossier
Création du dossier
Création du dossier
Hiérarchisation du dossier
Pour l‟import de dossier dans une base de données Oracle, la console permet de spécifier la taille des
tablespaces.
Pour l‟import de dossier dans une base de donnée SQL Server, la console permet de spécifier que
l‟import du dossier se fera dans un nouveau groupe de fichiers :
Utiliser les groupes de fichiers (coché) : l‟import du dossier va créer deux fichiers Sql Server
[NomDeLaBase]_[NomDuDossier]_DAT.ndf pour stocker les données
[NomDeLaBase]_[NomDuDossier]_IDX.ndf pour stocker les index.
Ne pas utiliser les groupes de fichiers (non coché) : l‟import du dossier va se faire dans le fichier de
donnée primaire ([NomDeLaBase]_data.mdf.
Paramètres d’import
La console est capable de prendre en charge certaines initialisations du dossier importé. Pour ce faire,
il faut fournir un utilisateur de connexion de l‟application, la console enregistrera avec cet utilisateur la
nouvelle fiche dossier importée.
Les paramètres « Dossier de référence » et « Dossier de copie » montre les anciens paramètres du
dossier que l‟on souhaite importer. Il est possible de choisir les paramètres parmi la liste des dossiers
existants dans l‟application, avant de valider l‟exécution de l‟import.
Une fois l‟import terminé dans la console, il faut revalider le dossier importé depuis le dossier mère. A
l‟issue de cette action, le dossier apparaîtra dans la liste des dossiers applicatifs de la solution.
Remarque : ne pas importer un dossier d‟une version supérieure ou de niveau de patch supérieur.
Un serveur d’application qui donne accès à l‟ensemble des éléments (traitements, écrans,
états…) qui constituent les applications. Ces éléments sont organisés en répertoires par
dossier et ne sont répétés d‟un dossier mère à un dossier fille que s‟ils sont effectivement
propres au dossier fille, sinon c‟est l‟élément du dossier mère qui est utilisé, sachant que l‟on
gère ainsi un maximum de 3 niveaux de dossier. Un sous-ensemble des éléments d‟un
serveur d‟application sont publiés via un serveur http appelé serveur de publication de la
solution.
traitements que nécessaire, sachant que l‟utilisateur devra préciser dans la configuration de
son poste, le serveur de traitements qu‟il prévoit d‟utiliser.
Les traitements de présentation des applications sont assurés soit directement par le client
Windows, soit par un serveur de présentation Web qui dialogue avec un navigateur.
Comme un client Windows, un serveur de présentation Web n‟est en fait pas attaché à une
solution mais peut être utilisé dans le cadre de N solutions dans la mesure où elles respectent
le bon niveau technique. Inversement on peut disposer de plusieurs serveurs de présentations
pour un même serveur de traitements.
Il y a deux façons de lancer des impressions, soit directement sur le poste de l‟utilisateur qui
la demande, soit via un serveur d’édition qui est obligatoirement un poste Windows, sachant
que la 1ère façon n‟existe que pour un poste utilisant le client Windows et n‟existe pas pour un
poste utilisant un navigateur.
Ces serveurs sont des serveurs logiques, qui peuvent être tous installés sur un même serveur
physique ou au contraire être répartis sur plusieurs.
Il est souhaitable de disposer de liaisons « haut débit » entre les serveurs de données, d‟application et
de traitements.
Inversement, on peut accepter du plus bas débit et donc des plus grandes distances avec les postes
de travail ou même entre serveur de traitement et serveur de présentation Web.
L‟ensemble des composantes contribuant au fonctionnement d‟une solution est décrit dans un fichier
unique du serveur d‟application.
Il est à noter que les serveurs de présentation Web et les serveurs d‟édition peuvent être partagés par
plusieurs solutions, que ces solutions fassent référence au même progiciel ou non.
ECR : il y figure la description des écrans et fenêtres pour que les serveurs web puissent les convertir
en page html.
FIL : il y figure la description des tables permettant aux processus adonix de communiquer avec le
moteur de base de données. L‟extension .fde est la description compilée. L‟extension .srf représente
le source indépendant de la version du moteur de la base de données (on sait migrer de oracle vers
Sql). L‟extension .cfg représente la configuration de la table dans la base.
MFRA : menu par langue utilisateur. C‟est ce que le poste client va chercher pour connaitre ses
menus.
X3_PUB : représente le lien entre les serveurs d‟application et les serveurs web (par rapport aux
validations des écrans et fonction). Il sert pour récupérer les dossiers (SVG + TRT + X3_PUB).
Egalement si on veut utiliser la documentation en ligne en format html.
Report : on aura un répertoire par langue. C‟est là ou on met les états spécifiques.
2.8. ARCHITECTURES
TCP
/IP
Client Windows
Windows 2000/XP/2003
P
/I Serveur X3
Client Web C P
• Windows T
• IE >= 6.028
• Windows 2000/2003
• Unix (AIX 5.2)
• Linux (Red Hat V4 )
TCP / Serveur Web
IP
• Windows ou Linux
• Apache
Réseau local
LAN
/ WA
N
Client Windows
P Serveur
/I Serveurs
Client Web
T CP d’application de traitement
Serveur
de données
Base de données
TCP /
IP • MS SQL Server 2005
• Oracle 10g
Serveurs web
La connexion en client-serveur depuis le client Sage X3 nécessite une connexion à partir d‟un poste
« Windows ». Elle peut être faite directement sur le serveur d‟application, ou sur un serveur de
traitement distinct.
Chaque serveur d‟application peut gérer plusieurs environnements Sage X3, qui contiennent chacun
plusieurs dossiers.
Clients X3
Serveur X3
ERP X3
Règles de
transformation
Base de données
Business Intelligence
Serveur batch (DATAWAREHOUSE)
- on ne se connecte pas sur un site (le site est saisi dans les documents où il intervient)
- mais on a des sites par défaut par module (qui dépendent du profil de l‟utilisateur)
L‟aide en ligne se présente sous forme HTML ou sous forme d‟archive (chm)
Intérêt du chm :
Onglet sommaire
Onglet recherche
Impression directe par bouton
L‟aide en ligne fonctionnelle est liée aux autres aides par des liens hyper-textes.
Structure X3 :
DOSSIER
SOCIETE
SITE
UTILISATEUR
ECRAN ECRAN
OBJET OBJET
ACTION ACTION
EDITION EDITION
TRAITEMENT POINT
D’ENTREE
Ou
TRANSACTION TRAITEMENT
Variante de l’objet SPECIFIQUE
CONSULTATION
Variante de la
consultation
SPECIFIQUE
Le même appel est possible depuis la calculatrice click droit classe des variables :
Note sur la notion d‟objet dans X3 : la gestion des objets est à la base de la plupart des fonctions du
produit. Un objet correspond à la gestion complète des fiches d‟une table (Création, consultation,
modification, annulation, …). Par exemple la gestion des clients ou la gestion des factures sont
implémentées dans le produit sous la forme d‟objets.
Barre d’état
Code table
Axxxxxxx / X, Y, Zxxxxxxx table superviseur / table spécifique
Abréviation
Axx / X, Y, Zxx table superviseur / table spécifique
Champs Intitulés
Identification des champs d‟intitulé long et court dans les traitements superviseur.
Permet l‟affichage automatique de ces libellés dans les écrans, les changements de
code.
Type de base
Le type de base « Dossier » par défaut permet d‟indiquer au programme de gestion
des dossiers de générer la table dans le type de base retenu dans la fiche dossier.
Nombre de fiches
Déterminera la taille de la table à créer.
Les textes traduisibles sont générés dans des fichiers séquentiels (textrafra,
textraeng, etc) utilisés dans l'état Crystal par la fonction X3TranslatedText.
Pour tous les autres champs, laisser la valeur par défaut proposée.
Zone
On définit dans cette zone le nom de la colonne.
X_,Y_,Z_xxxxxxx pour le spécifique.
- le contrôle d‟existence
- les fenêtres de sélection
- la possibilité d‟un tunnel vers la gestion de l‟objet
Outre les types de données (BPC pour un code client, ITM pour un code article, etc.),
il existe des types génériques.
- L est un entier long dont la longueur est définie dans le champ Long.
Act
Intitulé Normal (20 car.) / Abrégé (12 car.) / Long (35 car.)
Ces 3 colonnes définissent les noms des champs tels que proposés dans les écrans
en fonction de la place disponible.
Ce sont des textes traduisibles. Le numéro de texte est stocké dans la table
ATABZON, le texte est stocké dans la table ATEXTE.
Options
Options par défaut applicables à la saisie du champ (proposées par défaut dans le
dictionnaire des écrans).
Fonction du type interne.
Remarque : une table est limitée à 255 champs et 512 colonnes (champ * dim).
Cet onglet permet de paramétrer les différents index à générer dans la base.
Code index
Ce champ correspond au nom sous lequel l‟index est connu dans la base de
données.
Norme : abréviation de la table, suivi de 0 pour la clé principale, 1 pour la clé
secondaire, etc.
Exemple : SOH0, SOH1
Descripteur index
On saisit ici la liste des champs composant l‟index, séparés par le caractère „+‟.
Exemple : ORDSTA+BPCORD
Le premier champ d‟un index est obligatoirement ascendant.
Un champ trié en descendant est précédé d‟un signe „-„.
er
Remarque : la clé primaire est le 1 index saisie. Elle doit être unique.
Homonyme
Permet de préciser si la clé autorise ou pas des homonymes.
Activité
Permet de définir une clé spécifique.
Si cette zone n‟est pas précisée, l‟index sera toujours présent.
Si le code activité renseigné n‟est pas actif, l‟index ne sera pas généré.
Objectif
Trace de création, modification, et suppression d‟enregistrement.
CREDAT et UPDDAT
Alimentés par la date système donnée par la fonction date$.
CRETIM et UPDTIM
Alimentés par l‟heure système donnée par la fonction time.
EXPNUM
Alimenté par le compteur d‟export [C]EXPORT.
Ce champ est utilisé par le superviseur pour n‟exporter que les enregistrements créés
ou modifiés depuis le dernier export.
Validation
Cette fonction permet de mettre à jour ou de créer la structure de la table dans la
base de données.
L‟option de validation forcée permet la revalidation complète des données et des
index. Si cette option n‟est pas spécifiée et que la structure de la table est identique,
seuls les index sont recréés.
Dictionnaire
Définition de la table
Répertoire Fil
*.srf
*.fde
Supprimer
Cette fonction permet de supprimer la table dans le dictionnaire, ainsi que dans la
base de données.
Un écran est un onglet ou la partie supérieure d‟une fenêtre sous laquelle se trouvent
plusieurs onglets.
Description d‟un écran dans le dictionnaire des écrans
Création d‟un écran dans le répertoire des écrans par validation de sa description.
Fonction
Action
Table
Fenêtre
Objet Boutons
Menus Ecran
Browsers
Chaque écran est organisé en blocs, et chaque bloc contient une ou plusieurs zones. Une
zone est un champ qui peut être Saisi, Affiché ou Invisible.
Grille maxi :
9 lignes
9 colonnes
Un écran est défini par son code et une abréviation. Autant le code est unique dans le
dossier, autant l‟abréviation peut ne pas l‟être ; il faut néanmoins faire attention au fait qu‟il
ne sera pas possible d‟ouvrir simultanément deux écrans de même abréviation.
Bloc 1
Activité
Si cette zone n‟est pas renseignée, l‟écran sera toujours généré. Si cette zone
correspond à un code activité inactif, l‟écran ne sera pas généré.
Module
Module d‟appartenance du paramétrage.
Taille
L‟écran est tout d‟abord défini par son type :
- Plein écran est utilisé sur un objet tableau et un modèle Saisie fenêtre.
- Plein écran avec liste est utilisé sur un objet simple avec un seul écran et
un modèle Saisie fenêtre.
Bloc 2
Traitement standard
Traitement dans lequel sont recherchées les actions dites « Standard ».
La norme retenue pour les objets, est de nommer les traitements SUBxxx, où xxx est
le code de l‟objet.
Cette norme est fortement conseillée mais pas obligatoire.
Traitement vertical
Traitement dans lequel sont recherchées les actions dites « Verticales » (Facultatif).
Norme : SPVxxx
Traitement spécifique
Traitement dans lequel sont recherchées les actions dites « Spécifiques ».
Norme : SPExxx
Bloc 3
Titre du bloc
Facultatif.
Apparaît sur la partie supérieure du cadre.
Type
Définit la présentation à l‟intérieur d‟un bloc.
Types les plus courants :
Hauteur, Largeur
Nombre minimal de lignes ou de colonnes des blocs de type Tableau (Facultatif).
Rang
Donne l‟ordre de saisie des blocs.
Long
Donne la taille de l‟intitulé des champs des blocs de type Liste.
Act
Sur les blocs de type Tableau, la dimension du code activité donne le nombre de
lignes.
Ligne
Donne le nombre de lignes des blocs de type Tableau.
Options
Utilisées sur les blocs de type Tableau (Annulation, Insertion, …).
Paramètre
Pour les blocs de type Tableau, cette zone contient le nom d‟une variable technique
stockant le nombre de lignes réellement saisies.
Elle est définie dans l‟onglet des champs, numérique, saisie, de type ABS.
Bloc 4
La liste des tables de référence permet seulement l‟aide à la création des champs.
Champ
X_, Y_, Z_xxxxxx pour le spécifique.
Bloc
Indiquer le numéro du bloc où doit se positionner la zone.
Pos
Indiquer le numéro de la zone.
Bloc tableau : les champs sont placés dans l‟ordre croissant du numéro (de gauche à
droite).
Bloc Liste : le numéro de ligne indique la ligne dans le bloc. Pour placer plusieurs
champs sur la même ligne, il suffit d‟indiquer l‟ordre en partie décimale (ex. : 1,2).
Intitulé
Intitulé court, normal, long de la table ou intitulé évalué.
Col
Nombre de colonnes pour le placement du champ.
Saisie
Détermine si le champ est saisi, affiché, invisible ou technique.
Mode
Mode de saisie d‟un champ d‟un bloc tableau : fiche, tableau, ou les 2.
Dim
Dimension d‟un champ dans un bloc Liste ou Tableau.
Oblig
Saisie obligatoire du champ : Oui ou Non.
Tunnel
Lien
Possibilité de définir un affichage automatique du libellé court ou long défini dans la
table liée à l‟objet rattaché au type de données utilisé.
Champs de paramétrage
Certains champs de l‟écran sont maintenant considérés comme du paramétrage.
La mise à jour de ces champs ne nécessite donc plus de code activité spécifique (ils
ne seront pas écrasés).
Le traitement spécifique
N‟est jamais écrasé par le standard.
Ce sera le cas pour tous les dictionnaires.
Statistiques
Permet d‟activer le bouton Statistiques dans l‟objet.
Suppression différée
Le superviseur autorisera ou pas les suppressions différées sur la table principale
ainsi que les tables secondaires gérées par l‟objet.
Utile pour les utilisateurs paramétrés en confirmation de suppression.
Import
Permet d‟indiquer que l‟objet est importable par la fonction d‟import-export.
Options de sélection
Déclaration de filtres utilisables ou non lors de l‟appel à cet objet (options à définir sur
les types de données dans la définition des champs des écrans).
Code : toutes les lettres majuscules.
Ecran de sélection
- Index
er
Si non renseigné, 1 index ascendant
- Option de sélection
- Liste hiérarchisée
- Nb caractères
Lien
Clé primaire par défaut.
Si renseignée, doit être une clé sans homonyme.
Expression de lien
Lien entre la table principale et la table décrite ici.
Utilisée pour les champs de la liste gauche.
Utilisée pour les statistiques liées à l‟objet.
Nombre de tables ouvertes simultanément limitées à 255 max (peut être réduit par
paramétrage dans la gestion dossier).
L‟ouverture et la fermeture des tables sont générées dans le traitement WOxxx (xxx étant
le code de l‟objet).
Import
On précise chaque table de l‟objet devant être mise à jour par import.
Pour chacune des tables, on précise le ou les écrans qui la gèrent.
Au besoin, on précise la variable de bas de tableau.
Cet onglet permet de définir un ensemble de vues (jusqu‟à 10) nécessaires à l‟exécution
de la fonction. Ces vues sont ouvertes et fermées à l‟exécution du traitement généré lié à
l‟objet (WOxxx).
Stockage de ces informations dans la table AOBJET.
Si l‟abréviation n‟est pas renseignée, la vue est ouverte sous l‟abréviation dictionnaire.
Le nom et l‟abréviation d‟une table ou d‟une vue doit être unique sur l‟ensemble (table &
vue).
Dictionnaire Dictionnaire
objet fonction
Traitement WOxxx
Validation de l’objet
Bouton Suppression
Type fenêtre : objet, consultation, fenêtre critères consultation, et divers pour tout
autre contexte d‟appel de fenêtre
Affichage
- Plein écran
- Boîte message : fenêtre indépendante, sans menu, sans liste gauche. Exemple :
la calculette.
Objet
Renseigné, si la fenêtre est de type objet.
Transaction
Code de la transaction pour les fenêtres issues des transactions de saisie.
Consultation
A renseigner si la fenêtre est de type consultation, ou critère de consultation.
Ecran entête
Obligatoire si plusieurs onglets.
Onglets
- Rang
Flag Oui/Non
Permet de rendre présent ou pas un bouton banalisé.
Raccourcis créés automatiquement sur les boutons et les menus en fonction des
caractères disponibles de leur texte.
Actions
Facultatif.
Action dictionnaire : lorsque l‟on veut ouvrir une fenêtre.
ère
Derniers lus : présence ou pas, puis placement ou non en 1 position
- Expression de lien : expression nécessaire pour les listes récursives afin de faire
le lien entre l‟enregistrement mère et fille.
Dictionnaire
fenêtre
xxxxxxx
VALIDATION
WGxxxxxxx
Entièrement généré
Validation :
Pour accéder à la calculatrice utiliser le menu d‟aide symbolisé dans la barre des menus par le point
d‟interrogation et l‟aide au diagnostic qui donne accès à cet outil.
Les constantes
Valeur numérique signée ou non
3.1415926 , -273
Chaîne de caractères :
"Aujourd’hui" , "Sage X3"
Date
[29/05/1959]
Condition
Toute valeur numérique non nulle est considérée comme vraie,
Le résultat d‟une comparaison renvoie 1 si la comparaison est vérifiée.
Toute valeur numérique nulle est considérée comme fausse
Les opérateurs
numériques
+ - * / ^
Date
Date – date
Date + nombre
Date – nombre
Caractères
Chaine + Chaine
Chaine - Chaîne
Elles dépendent du contexte d‟exécution. Une variable possède une classe définie entre crochets
Une des difficultés que l‟on peut avoir est de connaître le contexte dans lequel on se trouve dans une
fonction donnée.
Peut être utilisé chaque fois qu‟une formule de calcul peut être saisie dans un champ de l‟application.
L‟éditeur de formule propose par défaut une liste de classes de variables en ligne dans le contexte
défini par le paramétrage.
Un clic droit sur un champ pouvant contenir une formule ouvre une fenêtre de sélection des outils de
gestion des formules
L‟assistant de formule, permet de retrouver les champs des tables et des écrans liés au contexte.
La fonction d‟analyse de la formule donne une interprétation un peu plus explicite des variables
La fonction analyse des messages permet de visualiser les messages contenus dans une formule.
Une fonction permet d‟enrichir l‟assistant de formules avec pour objectif de rendre celles-ci plus
compréhensibles aux utilisateurs Sage X3 non expérimentés
Certains écrans X3 contiennent des tableaux. Les champs sont alors indicés (ex : factures d‟achat).
Tout tableau dans un écran possède une variable associée (déclarée dans la définition du bloc, de
type ABS) qui contient le nombre de lignes réellement saisies. F6 permet de connaître son nom quand
on a le « focus » sur le tableau sans être en saisie.
Dans ce chapitre nous présentons quelques fonctions utilisables dans les formules. Avec l‟aide en
ligne le chapitre L4G présente chaque fonction disponible avec des exemples. La recherche par
index permet de retrouver une fonction. La connaissance des fonctions présentées ci-dessous couvre
largement les besoins pour les opérations de paramétrage.
Dates
date$ date du jour
addmonth(D,N) ajoute un nombre de mois à un jour
eomonth(D) le dernier jour du mois
gdat$(N,M,P) date à partir de jour, mois, année
…
Caractères
string$(N,C) répète N fois une chaîne
num$(N) transforme un nombre en chaîne
chr$(N) crée une chaîne à partir d‟un code ascii
left$(C,N) extraient des sous-chaînes d‟une chaîne en fonction de positions
numériques
right$(C,N) extraient des sous-chaînes d‟une chaîne en fonction de positions
numériques
seg$(C,N,M) extraient des sous-chaînes d‟une chaîne en fonction de positions
numériques
mid$(C,N,M) extraient des sous-chaînes d‟une chaîne en fonction de positions
numériques
format$(C,X) formate une expression quelconque en chaîne de caractères
space$(N) construit une chaîne de N espaces
vireblc(C,N) supprime les espaces dans une chaîne (plusieurs options)
ctrans(C,C,C) transcode des chaînes
…
diverses
sigma(N,N,N) permet de trouver la somme d'une série d'expressions numériques ou
la concaténation d'une série d'expressions alphanumériques
dépendant d'un indice, cet indice variant entre deux bornes avec un
pas de 1.
evalue(C) Evalue une formule contenue dans une chaîne de caractères
parse(C) Analyse syntaxique d‟une expression contenue dans une chaîne de
caractères
filpath(C,C,C,C) Permet de construire le chemin d'accès à un fichier en tenant compte
des applications de références et des volumes
…
Le traitement standard AFNC donne accès à un ensemble de fonctions particulièrement utiles dans
des formules de calcul (notamment pour les pièces automatiques et le Workflow). A noter qu‟une
fonction de ce type renvoie un argument de type constant; ainsi, PARAM et PARAMUTIL renvoient les
paramètres sous forme d‟une chaîne de caractères. Pour connaître les fonctions disponibles dans un
environnement Sage X3, utiliser le dictionnaire des traitements
Développement \ Dictionnaire des traitements \ Sous Programmes
Ici il y a un abus de langage au sens X3 dans l‟utilisation du terme fonction. Du point de vue
technique, il s‟agit ici de l‟utilisation de sous programmes prévus pour renvoyer une(des) valeur(s)
dans une(des) variable(s) . Ces sous programmes sont construits pour pouvoir être utilisés dans les
formules en respectant les paramètres d‟appel.
Pour obtenir de l‟information sur l‟utilisation ces sous programmes utiliser la fonction suivante en
sélectionnant le traitement AFNC.
Cette fonction présente la liste des paramètres à renseigner pour activer la fonction.
Afin de gérer les données avec la plus grande confidentialité, le progiciel Sage X3 sécurise l‟accès
aux informations grâce à plusieurs concepts permettant de définir différents niveaux d‟accès. Ceux-ci
habilitent ou restreignent les gestionnaires aux fonctions du logiciel et aux données contenues dans la
base de données.
1. Les paramètres utilisateurs définissent des privilèges transversaux aux différentes fonctions
2. Les profils fonction sont à la base de l‟habilitation fonctionnelle. Ils contrôlent l‟accès à chaque
fonction avec des restrictions :
- aux données gérées par les fonctions selon les sites et/ou sociétés concernées
- à l‟accès aux opérations (lecture, écriture, exécution de certaines sous-fonctions)
- à certaines transactions
- à des champs dans les écrans
- à des filtres dans la base
Ce super administrateur est mémorisé dans la variable superviseur GSUPER. Elle est accessible à
tous les processus Sage X3, quelque soit le code de l‟utilisateur ayant activé ces processus.
Flag connexion : s‟il est inactif, l‟utilisateur pourra être saisi mais aucune connexion ne sera possible
Login saisi dans la boîte de connexion d‟X3
Interdit (momentanément ou définitivement) la connexion d‟un utilisateur
Profils menu et fonction associés
Destination d‟impression par défaut : soit l‟utilisateur a les siennes soit il les hérite d‟un autre utilisateur
Remarque
Le code accès permet de filtrer les fiches utilisateurs lorsqu‟on donne le droit à un utilisateur le droit
d‟accéder aux fiches utilisateurs.
Les paramètres sont soit définis au niveau utilisateur ou hérités d‟un niveau supérieur
Les paramètres utilisateurs sont organisés par groupes : Habilitations, Interface utilisateur,
Paramètres d‟exploitation, Valeurs par défaut…
La valeur MEMTXT, définie par utilisateur, est égale à 256 Ko si elle n‟est pas renseignée; elle ne peut
excéder 16 Mo, et correspond aux textes associés à des données en-tête/ligne (commandes,
livraisons, nomenclature par exemple) qui sont stockés en mémoire le temps de la modification de la
donnée en question.
TABTRA permet d‟activer, par utilisateur ou globalement, la trace utilisateur (table AESPION). Valeurs
possibles : Oui, Non, uniquement les suppressions et modification de code.
Les liaisons automatiques sont des liens qui permettent de naviguer d‟un objet à l‟autre. Les groupes
de liaisons permettent de définir des communautés d‟utilisateurs partageant les mêmes liaisons.
Un utilisateur appartient à un groupe de liaisons (si celui-ci est vide, il n‟a pas accès aux liaisons). Il
peut alors créer des liaisons de façon manuelle dans son groupe, mais des liaisons peuvent
également être créées automatiquement même s‟il n‟a pas de groupe de liaisons, dès lors que le
paramètre LIAISAUTO précise le groupe dans lequel ces liaisons automatiques vont être créées. Si
LIAISAUTO est vide, aucune liaison automatique n‟est créée par l‟utilisateur.
LFTBOX, NBDERLUS, NBRCHOOSE : nombre de lignes dans la liste de gauche, dans la liste des
derniers lus, dans la fenêtre de sélection
Si ensuite rien n‟est saisi au bout de TIMEHGUP2 secondes, la session est automatiquement
déconnectée.
TIMEHGUP3 est le délai d‟inactivité clavier utilisé pour les sessions secondaires (le délai de grâce est
toujours celui défini par TIMEHGUP2).
Il est conseillé de mettre pour TIMEHGUP3 une valeur assez courte, en tout cas plus courte que
TIMEHGUP1.
Lorsqu‟au moins une session secondaire est ouverte, la déconnexion automatique de la session
principale est désactivée (elle se réactive lorsque plus aucune session secondaire n‟est ouverte). Ceci
signifie qu‟en cas d‟inactivité globale sur un poste sur lequel une session principale et des sessions
secondaires sont ouvertes, le temps global de déconnexion va être égal à :
TIMEHGUP3 + TIMEHGUP2 + TIMEHGUP1 + TIMEHGUP2
temps de déconnexion des sessions secondaires + temps de déconnexion de la session primaire
Attention ! Si on lance un traitement « long » sur une session secondaire, le décompte du time-out sur
la session secondaire ne va pas être commencé tant que ce traitement ne sera pas terminé. Par
ailleurs, la session principale n‟a plus de time-out en cours. Ceci inhibe de fait les déconnexions de ce
type.
On pourra tracer les déconnexions pour cause de time-out par le Workflow (cf. plus loin)
Les profils fonctions permettent de définir des familles d'utilisateurs du point de vue de l'habilitation sur
l‟utilisation des fonctions. Un code profil fonction est déclaré dans la fiche des utilisateurs X3.
Filtre les fonctions, précise les codes d‟accès et les transactions possibles sur ces codes
Filtre les sites par défaut par module
Filtre les groupes d‟état
Sur cet écran, la case Toutes fonctions autorisées permet de ne pas avoir à définir les accès détaillés
aux différentes fonctions. Si la case n‟est pas cochée, le bouton Habilitation permet un tunnel vers la
gestion de l‟habilitation fonctionnelle.
Les sites par module sont des valeurs par défaut : aucune habilitation particulière ne peut en être
déduite
Toutes fonctions autorisées ne doit pas être cochées pour pouvoir filtrer les états
Les groupes d‟état correspondent au menu local 97, qui propose par défaut une liste par défaut
déduite des modules. Ce menu local est paramétrable par l‟utilisateur, qui peut donc créer ses propres
choix pour définir des restrictions par groupe d‟état. Il est conseillé de ne procéder que par addition de
choix dans la liste des groupes (les états standards étant rattachés à ces groupes).
Cette fonction permet de rattacher, à un code profil fonction, un ensemble de fonctions autorisées
avec des privilèges complémentaires le cas échéant.
L‟habilitation peut être définie avec des restrictions sur des opérations (création, modification,
suppression…) liées au contexte de l‟opération.
- Par fonction
- Par site ou regroupement
Une ligne associée à un regroupement vide permet de donner des habilitations pour tous les sites non
explicitement cités :
Remarque
Les données relatives aux habilitations sont stockées dans la table AFCTFCY. Cette table est
volumineuse, car il y a une entrée pour chaque combinaison (code utilisateur, code site, code
fonction) pour laquelle des droits existent.
La mise à jour par régénération lorsqu‟on sort de la fonction après mise à jour (confirmation
demandée) Une récupération est aussi possible par Développement / Utilitaires / Dictionnaire /
Validation des fonctions.
Si on coche la case Accès, on donne les droits d‟accès à la fonction (si elle est décochée, on interdit
l‟accès). Si on coche les Options, elles sont toutes autorisées (si on les décoche, elles sont toutes
interdites). Une fois cette création « en masse » réalisée, il sera possible de revenir en détail pour
affiner.
Les codes d‟accès sont des codes permettant de protéger des informations ou des fonctions et ce en
lecture, en écriture, et en exécution (quand le contexte le permet).
Niveau d‟autorisation
- Consultation
- Modification
- Exécution
Dont on donne la clé aux utilisateurs et qui protège les ressources.
Paramétrage > Utilisateurs > Profil fonction
Remarque :
La case à cocher Tous codes d‟accès, si elle est cochée, accorde l‟ensemble des autorisations sur
tous les codes d‟accès. Si cette case n‟est pas cochée, les codes d‟accès non saisis dans le tableau
sont interdits (aussi bien en consultation, en modification, qu‟en exécution).
des champs des écrans : Paramétrage / Paramètres généraux / Affectation codes d‟accès.
Ici le code d‟accès permet soit de rendre le champ invisible à l‟utilisateur, soit de laisser le champ
visible et d‟interdire sa modification.
des tables de la base : banques, tiers, nomenclatures, gammes, journaux, comptes, sections,
natures…
la fiche utilisateur elle-même (pour contrôler la consultation et la modification des fiches utilisateur)
Toute fonction utilisant des écrans peut utiliser des codes d‟accès pour définir des restrictions d‟accès.
Dans ce cas, seuls les droits de lecture (visualisation de la valeur du champ) et d‟écriture
(modification) associés à l‟utilisateur sur le code d‟accès sont considérés.
Attention, l‟absence de droit de saisie d‟un champ peut créer la création d‟une fiche si c‟est un champ
obligatoire sans valeur par défaut qui est ainsi protégé.
Remarque :
Le profil menu n‟interdit pas les accès aux fonctions non rattachées :
- par tunnel
- par l‟explorateur de liaisons
- par retour de Workflow
- par pages HTML ou portail
Pour créer un profil menu il faut indiquer le code du menu de départ. Celui-ci peut être
Soit le menu GENE : Menu général standard de l‟application
Soit l‟un des menus existants dans le dossier
Ajouter un menu
Ajouter une fonction
Supprimer le menu
Modifier l‟intitulé du menu
Faire un zoom sur l‟un des sous menu
Exporter les attributs des fonctions qui constituent le menu dans un fichier Excel
Pour se déplacer dans l‟arborescence du menu, on peut soit utiliser la fonction zoom soit utiliser la
sélection d‟aide liée au champ menu visualisé.
Pour revenir au menu précédent, utiliser la fonction zoom ou la fonction de menu visualisé.
Pour ajouter un menu avec les fonctions qu‟il contient en standard, ou simplement ajouter une
fonction utiliser le tiroir de picking des fonctions
Les rôles servent à filtrer les données accessibles par certains utilisateurs :
Exemples :
Un(e) commercial(e) n'accèdera qu'aux sites et clients qu'il/elle gère.
Un client se connectant de l'extérieur n'accèdera qu'à ses commandes.
Les acheteurs n'accèderont qu'aux produits qu'ils gèrent.
Remarque :
La gestion des rôles impacte les performances. Lorsque l‟on a des tables très volumineuses et que
l‟on fait des filtrages basés sur plusieurs valeurs de données, il peut être préférable de créer un index
d‟optimisation.
On associe à un rôle et à un objet un champ de filtrage défini dans la table principale de l‟objet.
Le filtrage se fait :
Pour traiter des contrôles en temps réel sur des zones sensibles, le développeur utilisera une action
standard nommée CROLE qui sera connectée au champ à contrôler immédiatement.
Un utilisateur sans rôle ne possède pas de restrictions, lorsqu‟un même rôle est appliqué plusieurs
fois à un utilisateur avec des clés différentes, un « OU » logique est appliqué et lorsque plusieurs rôles
sont appliqués au même objet un ET logique est appliqué !
Remarques
L‟information concernant la hiérarchie d‟utilisateur peut être utilisée par le biais de formules de calcul,
par exemple pour le Workflow. Le champ correspondant s‟appelle [F:AUS]CHEF(i)
La seconde table est chargée lors de la connexion de l‟utilisateur dans les variables globales
suivantes :
En standard la variable [V]GROLCLE est dimensionnée à 10. Le chargement est effectué par le
traitement standard GESUSER à la connexion de l‟utilisateur. Via le code activité AUB il est
possible d’augmenter la taille de cette table à 20.
La première table est utilisée pour chaque objet pour construire les filtres des listes gauches.
Pour cela, le superviseur utilise le tableau dimensionné à 300 [V]GROLE. Ces rôles sont déclinés par
le triplet constitué des données suivantes:
Code objet X3,
Code du champ sur lequel le filtre s‟applique
Valeur à utiliser dans le filtre.
Le filtre généré par X3 est du type find(champ, « Liste de valeur »)>0 . Il est directement interprété par
le moteur SQL. Les variables FILROLE(0..2) permettent de construire un filtre dont la longueur ne doit
pas dépasser 750 octets.
Remarque
Le login utilisateur n‟est pas forcément le code utilisateur, même si les deux sont uniques. Le code
utilisateur, sur 5 caractères, est connu par la variable GUSER et est utilisé pour « signer » les
informations (champs CREUSR et UPDUSR). Le code de login, lui, peut être défini sur 20 caractères,
pour être conforme aux normes usuelles.
Le code profil fonction, saisi sur la fiche utilisateur, définit le tronc commun des habilitations. Cette
notion de code profil menu ne sert que pour définir les arborescences de menus (elle n‟a aucun lien
avec les fonctions autorisées)
Si on veut déléguer à un utilisateur le droit de créer et de modifier des utilisateurs, il est conseillé de
mettre en place des restrictions particulières :
Cet utilisateur « délégué » ne doit pas avoir la case Tous codes d‟accès cochée. On peut alors lui
interdire de modifier la case à cocher Connexion, en lui affectant un code d‟accès. Ainsi, en cas de
création d‟un utilisateur, elle restera décochée (ce qui permettra à un administrateur autre de valider la
création de l‟utilisateur avant de permettre son utilisation). Il s‟agit du champ USRCONNECT de
l‟écran AUS1.
Le paramètre AUZFCT sera défini de façon à restreindre la liste des codes profils autorisés pour créer
ou modifier un utilisateur. Ceci induit de plus un filtre sur les utilisateurs visualisables.
La fonction GESAUS dispose d‟une habilitation particulière (code A) pour interdire toute modification
des droits sur les codes d‟accès. Il est conseillé de ne pas donner ce droit à l‟utilisateur « délégué » ;
ainsi, tout utilisateur créé par duplication aura les droits de l‟utilisateur d‟origine (sur lesquels des filtres
peuvent avoir été mis) et tout utilisateur créé directement héritera des codes d‟accès du profil fonction.
Pour être conforme aux règles de sécurité mise en œuvre dans les entreprises, les applications
basées sur la technologie X3 permettent de mettre en place une gestion des mots de passe dans
Sage X3. Pour cela il faut modifier les paramètres superviseur du groupe sécurité.
*1 : Les profils menus possèdent un attribut, type de profil basé sur le menu local 926, permettant de
classifier les utilisateurs en trois groupes :
1. normal
2. administrateur
3. développeur
La valeur de cet attribut utilisateur est mémorisé dans la variable globale [V]GTYPPRF
Les solutions Sage X3, ne fournissent pas en standard les interfaces avec les bases de gestion des
annuaires LDAP. Cependant des primitives de base sont disponibles pour développer ce type
d‟interface.
Connexion à l‟annuaire
Opldap Serveur, Port, Distinguih_user_name, mot_de_passe Using
[CLA]
Type level:
[Srldaplv] DN_entrée_demarrage Filter Critéres_de_recherche
With
& VAR0 As "Attribut0",
& VAR1 As "Attribut1"
...
[Sized V0[,V1]]
& Using [CLA]
Type tree:
[Srldaptr] DN_entrée_demarrage Filter Critéres_de_recherche
With
& VAR0 As "Attribut0",
& VAR1 As "Attribut1"
...
[Sized V0[,V1]]
& Using [CLA]
La commande NXLDAP Using [CLA] permet de récupérer les résultats de ces recherches
6. PARAMÉTRAGE DE BASE
DOSSIER
SOCIETE
SITE
UTILISATEUR
ECRAN ECRAN
OBJET OBJET
ACTION ACTION
EDITION EDITION
TRAITEMENT POINT
D’ENTREE
Ou
TRANSACTION TRAITEMENT
Variante de l’objet SPECIFIQUE
CONSULTATION
Variante de la
consultation
SPECIFIQUE
Ce sont des paramètres génériques, potentiellement utilisés dans tous les types de fonctions.
Les paramètres de base sont des paramètres génériques, potentiellement utilisés dans tous les types
de fonctions :
Paramètres généraux : Base de paramètres influant sur le comportement de l‟environnement
ou de fonctions du progiciel
Menus locaux : Tables de choix utilisées dans les « combo-boxes » et les boutons radio
Tables diverses : Tables de codes génériques, associés à une liste de valeur, un intitulé
traduisible, et une liste limitée de valeurs associées
Remarques :
La définition d‟un paramètre général est une fonction de développement. Certains paramètres
ne sont pas modifiables.
La plupart des paramètres définis au niveau global et au niveau utilisateur ont une variable
globale associée.
Lorsqu‟une variable globale n‟existe pas, le développeur accède à sa valeur par le biais d‟un
sous-programme.
Modifier les caractéristiques d‟un paramètre ou en ajouter relève du développement
(Développement / Dictionnaire des données / Définition des paramètres).
Dossier D
Société C
Site S S
Utilisateur U U U U
C U S U D U S U
Groupe ADONIX // 34
La priorité est donnée au niveau utilisateur puis on remonte au site, à la société, puis au dossier.
Il est important de bien distinguer le comportement d‟un paramètre dont les valeurs saisies l‟ont été au
niveau des sites :
Si ce paramètre est défini au niveau utilisateur, on va reprendre la valeur associée au site par
défaut de l‟utilisateur (pour le module correspondant) et cette valeur reste fixe tout au long de
la session.
Si ce paramètre est caractérisé par le niveau site, sa valeur est variable au cours d‟une
session, selon le site impliqué dans la saisie du mouvement ou de la fiche pour laquelle le
paramètre a un sens.
Remarques :
Lorsque le niveau est saisi, n‟apparaissent que les paramètres pouvant avoir une valeur à ce
niveau ou au niveau inférieur.
Le niveau utilisateur ne peut pas être saisi ici, il l‟est dans la fiche utilisateur.
Une aide en ligne contextuelle expliquant le paramètre est accessible par clic droit lorsqu‟on
est positionné sur une ligne sans être en saisie dessus.
6.1.4.1. Groupe TC
ROLLBACK est un paramètre qui vaut 3 par défaut, et sert à gérer les contentions dans la
base de données. Lorsqu‟un conflit apparaît dans une transaction de mise à jour, le
programme abandonne la transaction et réessaie. Ce paramètre définit le nombre maximum
d‟essais avant d‟afficher une erreur à l‟utilisateur et lui permettre de réessayer. On peut être
amené à l‟augmenter sur un site où de nombreuses contentions apparaissent (beaucoup de
mises à jour simultanées) (PRF)
TIMLCK sert à fixer un temps d‟attente par défaut pour des verrouillages « logiques » lorsque
la ressource est verrouillée (5 secondes par défaut). Un verrouillage logique correspond à un
enregistrement dans la table APLLCK (PRF)
CHGPASS : durée maximale de vie d‟un mot de passe (en nombre de jours) (SEC)
Pour un groupe de paramètres donnés, il est possible de définir des jeux de valeurs. Un jeu de valeur
permet de prédéfinir pour un groupe de paramètres un ensemble de valeurs cohérentes, qui sera
affecté lors du paramétrage du progiciel.
Chaque jeu est défini par un code et un intitulé parlant. On peut imaginer des niveaux (par exemple
haut, moyen, bas pour des paramètres de sécurité), des codes définissant des secteurs d'activité ou
des législations (par exemple pour la comptabilité).
Des codes des jeux de valeur par défaut sont livrés en standard et sont déclarés dans la table diverse
912.
Pour en faciliter la gestion des valeurs des paramètres, la notion de jeux de valeur peut être mise en
place. Un jeu de valeurs est déclaré pour un couple Chapitre / Groupe. Par exemple pour les éditions
le du chapitre Superviseur (SUP) et groupe Impression (RPT) on peut par exemple définir
A un ensemble d‟utilisateurs répondant aux mêmes contraintes on affectera tel ou tel jeux de valeur.
Dans notre exemple ce peut-être la localisation physique de l‟utilisateur qui utilisera tel ou tel système
d‟impression.
Tables Contenu
ADOPAR ADP Définition des paramètres
ADOVAL ADW Valeurs des paramètres au niveau dossiers / sociétés / sites
ADOVALAUS ADU Valeurs des paramètres au niveau utilisateurs
Remarques de développement :
Le paramétrage des menus locaux est accessible par Paramétrage / Paramètres généraux /
Menus locaux
La case à cocher correspond au menu local 1, qui peut prendre deux valeurs : Non ou Oui (1
ou 2)
Physiquement, un champ de type « menu local » stocke le numéro du texte (0-255) et non le
texte lui-même.
Attention aux insertions ! (les valeurs sont stockées sous forme de rang)
Une validation est demandée en fin de mise à jour de menus, pour générer les fichiers
descripteurs des menus locaux dans les langues déclarées au niveau de la fiche dossier.
Une modification peut imposer des actions techniques (revalidation des écrans si le menu
local est utilisé comme bouton radio)
Les menus locaux et messages sont regroupés dans une seule fonction de gestion
La validation (qui peut être fait après une série groupée de mises à jour sur plusieurs menus locaux)
permet de provoquer un rechargement des menus locaux à la connexion au dossier. En effet, pour
des raisons de performance, ces derniers sont stockés sur le poste client, en Web comme en client-
serveur, et leur rafraîchissement est automatiquement piloté à partir du moment où cette validation est
faite.
Il est aussi possible de la réaliser directement (Développement / Utilitaires / Dictionnaire / MAJ Menus
locaux).
Cette validation n‟a donc rien à voir avec une revalidation des écrans, qui est une action de
développement. En pratique, sur les menus locaux paramétrables, il n‟y a pas lieu de revalider des
écrans.
Notes techniques :
Les codes stockés dans la table ont une longueur maximale dépendant du numéro de la table (3 par
défaut)
Remarques :
En version 130, les codes de tables diverses sont stockés sur 3 caractères maximum, et cette
longueur n‟est pas paramétrable par table.
En version 130, les familles statistiques articles, client, fournisseur n‟étaient pas des tables diverses
En version 140, on définit au niveau du dossier le maximum maximorum (cf. plus loin), et pour chaque
numéro de table, la longueur maximum autorisée (jusqu‟à 99).
L‟intérêt pour le développeur de recourir à ce type de tables est d‟éviter la multiplication de tables de
ce type dans la base, et de disposer de fonctions de paramétrage, de modifications prédéfinies.
La saisie de valeurs dans une table diverse est normalement un acte d‟exploitation ou de
paramétrage, sauf si le développeur a interdit la saisie de nouvelle valeurs ou la modification des
valeurs dans une table livrée pré-paramétrée.
Certaines caractéristiques d‟une table diverse peuvent être modifiées par paramétrage (là encore,
cela dépend de la table).
Remarques :
L‟intérêt du code « de dépendance » réside dans le cas où une table diverse stocke les valeurs d‟une
sous-famille (on peut rattacher chaque sous-famille à la famille à laquelle elle appartient).
Dans la suite du support, on trouvera mentionné les tables diverses importantes dans un contexte de
paramétrage donné
Remarques
Les dépendances peuvent se faire en cascade (on rattache un code à un code dépendant de niveau
supérieur), Les champs complémentaires éventuellement définis arrivent après la colonne
Dépendance si elle existe. Un utilisateur donné n‟a pas forcément accès en modification à toutes les
tables diverses (protection par codes d’accès, cf. plus loin).
Par contre, est considéré comme paramétrage (pérenne) la longueur du code, la présence de champs
supplémentaires, la table de dépendance.
Cette fonction permet de définir les règles de dépendance Familles / Sous-familles, les intitulés de la
table et la longueur des codes s‟ils sont modifiables
Remarques :
La longueur maximale des codes n‟est pas forcément modifiable (cela dépend du programmeur)
Certaines tables (les familles statistiques notamment) ont des intitulés donnés par un menu local :
Numéro 206 pour les clients
Numéro 207 pour les fournisseurs
Numéro 208 pour les articles
Numéro 3005 pour les familles statistiques des contrats
La modification des titres des familles se fait donc en modifiant le menu local, ce qui explique que
l‟intitulé ne soit pas modifiable dans la fonction de personnalisation.
Tables associées
Table Désignation
ATABDIV [ADI] Valeurs des tables diverses
ATABTAB [ADV] Définition des tables diverses
Informations
La validation d‟une table diverse génère un écran et une fenêtre qui sont utilisés pour saisir les
valeurs de la table.
Une table diverse peut utiliser un type de données (FCY par exemple) pour bénéficier des contrôles
et de l‟aide à la saisie.
Les compteurs sont des codes associés aux documents du progiciel (factures, commandes,
écritures…) ou à des fiches que l‟on souhaite numéroter qui définissent des règles d‟attribution
d‟identifiants et/ou de clefs d‟accès (un numéro de facture par exemple). La longueur maximum d‟un
compteur est de 20 caractères.
Ils ne sont pas forcément entièrement numériques, ils sont structurés de façon particulière, par
concaténation de données particulières dépendant du contexte :
o l‟année,
o le site
Ils intègrent obligatoirement un numéro séquentiel qui peut revenir à zéro de façon périodique, et peut
dépendre de la société, du site, ou d‟une autre information (complément)
o Niveau de définition
Le Niveau de définition peut prendre les valeurs Dossier, Société, Site. Il permet des séquences de
numérotation unique par dossier, société, ou site. Pour éviter les homonymes, le compteur doit
contenir en fonction de ce niveau de définition les composantes appropriées, en particulier le site
et/ou la société.
o Niveau de Raz
Ce niveau de définition permet de savoir si l'on a une valeur de compteur unique dans le temps, ou
bien par mois ou encore par année, exercice ou période comptable.
o Type
Un compteur produit des clés alphanumériques. Mais si le type est déclaré numérique, on supprimera
les zéros en tête de la valeur renvoyée. Ainsi, un compteur déclaré numérique sur 6 chiffres
commencera par la valeur "1", alors qu'un compteur alphanumérique sur 6 chiffres commencera par la
valeur "000001".
o Tableau des composantes du compteur
Ce tableau décrit les données à utiliser pour constituer le compteur. Ces données doivent respecter
les règles suivantes :
o Une constante fait 10 caractères au maximum.
o L'année est définie sur 1, 2, ou 4 caractères.
o La semaine est définie sur 2 caractères.
o Le mois est défini sur 2 ou 3 caractères (dans ce cas, c'est l'abréviation anglaise du
mois sur 3 lettres).
o Le jour est défini sur 1, 2, ou 3 caractères (sur 1 caractère, c'est le numéro du jour
dans la semaine; sur 2 caractères, c'est le numéro du jour dans le mois; sur 3
caractères, c'est le numéro du jour dans l'année).
o La société est définie sur 1 à 5 caractères.
o Le site est défini sur 1 à 3 caractères.
Type de séquence et champs associés
Ce premier champ définit la façon dont sont gérées les contentions multi-utilisateurs en attribution de
numéro.
o Normal : Sauf problème particulier lié à un grand nombre d'utilisateurs concurrents,
Normal est le mode de fonctionnement standard. Une seule transaction à la fois peut
créer un numéro en utilisant une séquence du compteur. On ne perd jamais de
numéro avec ce principe, et les numéros sont attribués séquentiellement.
o Groupé : Dans le cas d'un compteur de type Groupé, ce champ définit le nombre de
numéros attribués simultanément. On attribue les numéros par tranche de N (défini
par le champ Nombre de numéros). Ainsi, N utilisateurs peuvent simultanément
obtenir un numéro sans problème de verrouillage. En cas d‟abandon de transaction,
on récupère le numéro pour ne pas le perdre. Mais ceci a pour conséquence qu‟en fin
de numérotation (en fin de mois si on a une numérotation par mois), on peut avoir des
numéros inutilisés dans la dernière tranche de N (on sait les justifier). Par ailleurs, les
numéros ne sont pas attribués de façon strictement séquentielle (on récupère d‟abord
les trous)
Flag contrôle chronologique
Cet indicateur permet d'activer ou non le contrôle de chronologie pour des documents pour lesquels la
législation courante impose un contrôle chronologique des numéros par rapport à la date de saisie
Flag remise à zéro
Cet indicateur permet la remise à zéro du compteur lors d‟une opération de réinitialisation du dossier.
Remarques :
Les documents classiques (écritures, commandes, OF, factures…) sont limités à 15 caractères. Mais
certains numéros attribués automatiquement (par exemple, les codes articles, une numérotation
automatique pouvant être activée par catégorie) peuvent aller jusqu‟à 20 caractères.
Jour, Mois, Semaine, Année (segments numériques, liés à la date logique du document qui n‟est
pas forcément la date du jour).
Exercice, Période (liés à la société et à la date logique du document, qui permet d‟avoir un exercice
et une période)
Société, Site (le code de la société ou du site). Il est alors vivement conseillé de codifier ses codes
sociétés et sites sur un nombre de caractères constant pour éviter des numéros de longueur
différents.
Constante : c‟est une série de caractères quelconques, par exemple des séparateurs…
Numéro de séquence : obligatoire dans un compteur
Complément : correspond à un code dépendant du contexte de numérotation. Une séquence
différente alors existe pour chaque valeur de complément
Les formules permettent d‟évaluer une constante sans que la numérotation en dépende
Le code complément dépend du contexte de numérotation, et est donné par le développeur. Voici les
contextes de numérotation où il existe un code complément en standard (le code complément utilisé
étant indiqué entre parenthèses):
o Numéro de lot article (Code article)
o Fiches tarifs (Code tarif correspondant)
o Ecriture comptable (Code du journal sur lequel l„écriture est passée)
o Règlement (Code de la transaction de règlement utilisée)
o Bordereau de remise (Code de la transaction de règlement utilisée)
o Avis de domiciliation (Code de la transaction de règlement utilisée)
o Lot de saisie de règlement (Code de l'utilisateur de création)
o Quittance factor (Code du factor)
o Tableaux de bord (Code du tableau de bord)
Le complément est souvent utilisé, comme en comptabilité, pour avoir des numérotations par journal.
Si on a deux journaux, nommés VEN, et ACH, et qu‟on a un compteur de type Complément + Numéro
sur 4 chiffres, on aura les numérotations suivantes :
VEN0001, VEN0002, ACH0001, VEN0003, ACH0002…
Il est à noter que l‟expression [L]COMPLEMENT peut être utilisée dans un segment de type Formule
pour intégrer le code du complément dans la numérotation sans pour autant avoir une séquence par
valeur de complément. Mais toute autre formule significative dans le contexte peut être utilisée avec
des segments de ce type. Ainsi, dans le cas précédent, si on avait choisi un segment de type Formule,
et que l‟on ait mis [L]COMPLEMENT dans la formule, on aurait eu, dans le même contexte que
précédemment, la numérotation suivante :
VEN0001, VEN0002, ACH0003, VEN0004, ACH0005…
Cette fonction permet d'affecter les utilisés pour les différents numéros de pièce utilisés dans les
modules du progiciel. Attention, ce n'est pas la seule fonction permettant de gérer les règles
d‟affectation. En effet, certains compteurs sont directement définis sur des fiches de base du progiciel.
On trouvera le détail des affectations particulières dans une annexe technique.
Elle se fait par module et par type de document dans la majorité des cas
Dans certains cas, un numéro manuel est possible.
Remarques :
Le fait qu‟un numéro manuel existe ne signifie pas pour autant que le compteur n‟est pas affecté. Le
compteur ne sera alors utilisé que si on n‟a pas saisi un numéro manuellement.
On peut partager un même code compteur entre plusieurs documents (par exemple, numéroter de la
même façon les factures et les avoirs pour n‟avoir qu‟une seule séquence commune). Il suffit
d‟associer le même code aux documents concernés.
Champs initialisables par un compteur dont l’affectation n’est pas faite par cette fonction :
o Les symboles du configurateur
o Factor (numérotation des quittances)
o Types de pièce comptables (numérotation des pièces)
o Catégorie article (numérotation des compteurs articles, numéro de lot, numéro de série)
o Article (numérotation des lots et séries)
o Types de factures fournisseur (numérotation des factures)
o Types de factures client (numérotation des factures)
o Types de commandes clients (numérotation des commandes)
Elle permet de modifier le prochain numéro de séquence utilisé après une restauration partielle des
tables ou en cas de reprise, après une opération d‟import pour numéroter les pièces suivantes en
séquence. Après avoir saisi le code du compteur, il faut saisir les éléments qui définissent la séquence
exacte (élément temporels – mois, année, exercice, période le cas échéant – et éléments autres –
société, site et numéro de complément).
Si on se trompe et on affecte un numéro déjà existant, toute tentative de création d’un nouveau
document numéroté à l’aide du compteur se soldera par une erreur. Il convient donc de faire
très attention.
Les compteurs utilisables pour numéroter des documents intègrent un segment numérique
incrémental, la valeur courante de ce segment pouvant être unique, ou dépendre du site, de la
société, du mois, de la période, d'un code complément, ou d'une combinaison de ces paramètres,
selon le paramétrage.
Quand un compteur est nouvellement créé, ou qu'il n'a jamais été utilisé, le premier numéro attribué
par défaut est 1. Mais il est possible de définir une valeur initiale qui permet de faire commencer la
numérotation à un autre chiffre, grâce à cette fonction.
Attention, la modification de cette séquence doit être verrouillée aux utilisateurs dans un contexte
d'exploitation normale, et ne servir que lors de la phase initiale de reprise.
Tables Désignation
ACODNUM [ANM] Définition des compteurs de document
AVALNUM [AVN] Valeur des compteurs
Avec
ZSU : Code du compteur
NUMF : Valeur du compteur
ZSTAT: Code retour
Par programme des compteurs Sage peuvent être gérés directement dans les traitements sans
possibilité de paramétrage. Ces compteurs sont exploités dans une table particulière APLCOM.
L‟utilisation de ce type de compteur est présentée dans le cours développement.
Dans ce contexte la dernière valeur du compteur XXXXX est contenue dans une variable [C]XXXXX.
Ce chapitre présente les outils permettant de modifier par paramétrage des fonctions existantes dans
la solution X3. Nous limitons ces modifications aux adaptations qui ne nécessitent pas la mise en
œuvre des codes activité pour protéger ces personnalisations.
Modèle Objet
Propriétés
Personnalisation
Liaisons automatiques
Navigation
Transaction
Modèle consultation
Paramétrage des écrans
Ce type de personnalisation est prévu pour permettre à un utilisateur qui est sur une fiche gérée par
un objet X3, de visualiser des informations complémentaires qui ne seraient pas présentées dans les
onglets de visualisation des données.
Un clic droit dans la barre de menu sur le choix Fichier permet d‟accéder à l‟option Propriété qui
affiche
Dans cette transaction on décrit pour chaque ligne d‟intitulé que l‟on désire afficher la formule
permettant d‟afficher les valeurs souhaitées.
- Par défaut, on trouve les informations suivantes, si elles existent dans la table principale de
l‟objet :
o Des fonctions
o Des constantes
o Des champs de la table principale de l‟objet
o Des champs de tables liées déclarées dans le tableau « tables liées »
Pour chaque table liée on doit préciser le lien. Par défaut c‟est l‟index principal qui est utilisé. En
fonction de l‟index choisi le champ expression de lien contient les champs permettant de constituer la
clef.
Les liens peuvent être établis en cascade à partir de la table principale de l‟objet. Un lien s‟exprime
sous la forme d‟une expression si la clé d‟accès est simple. Si elle est multiple, on sépare les
différentes expressions de la clé par un point-virgule. Par exemple, pour établir un lien vers la table
des sections sur l‟axe 2 (supposé constant) et sur une section définie par la variable SEC(1), on
écrirait un lien sous la forme suivante : 2 ; SEC(1)
Il vaut mieux commencer par saisir les liens (car les tables liées apparaissent ensuite dans l‟assistant
de formule lorsqu‟on paramètre les propriétés elles-mêmes).
Fenêtres de sélection
Listes gauches,
Fonctions associées (impression, liste, statistiques)
Liaisons automatiques de l'explorateur de liaisons
- Index de tri des données dans la liste gauche (le premier de la table par défaut) avec le sens
de parcours de la table (ascendant ou descendant). Une attention particulière doit être portée
l‟utilisation d‟un index en parcours descendant sur des tables volumineuses qui dégrade
fortement les temps de réponse.
- Gestion en liste hiérarchisée : Lorsque la clé de lecture pour la liste gauche est composée de
plusieurs champs, la liste se fait alors en présentant d'abord uniquement le premier champ de
la clé. En double-cliquant sur l'une des valeurs de clés, on explore les sous-valeurs de clé, et
ce sur le nombre de niveaux de sous-clés existant. Lorsque tous les niveaux de clés sont
explorés, on peut sélectionner un enregistrement de la table.
cette valeur est égale à N, la sélection débute à partir de la première clé dont les N premiers
caractères sont supérieurs ou égaux à la chaîne saisie. Exemple N=2 la saisie=‟BA‟ la liste
toutes les valeurs => à BA
- Longueur : Longueur à afficher dans la colonne dans le cas ou celle-ci est alimentée par une
formule.
- Statistiques : Témoin d‟activation des statistiques liées à l‟objet.
- Impression : Valeur du code impression qui sera activé si l‟utilisateur utilise le choix de la
barre des menus Fichier / Imprimer
- Liste : Valeur du code impression qui sera activer si l‟utilisateur utilise le choix de la barre des
menus Fichier / Liste
- Derniers lus : Activation de la liste des derniers enregistrements lus par l'utilisateur.
- En première position : Ce témoin indique que le browser des derniers lus est affiché dès
l‟ouverture de la transaction.
Explorateur de liaisons
L'explorateur de liaisons, qui est un volet permettant d'accéder à d'autres fiches liées à la fiche
courante par des hyperliens paramétrables.
Le tableau liaisons automatiques permet, lorsque l'explorateur de liens est présent, de définir
comment créer des liens entre une fiche courante (lorsqu'elle est créée et/ou modifiée) et d'autres
fiches.
Ces liens automatiques sont créés dans le groupe de liaison défini par le paramètre LIAISAUTO, qui
peut être différent du groupe de liaison que voit l'utilisateur (défini par le paramètre GRPLIAISON).
Ce paramétrage est à réaliser avec précaution, l‟objet paramétré risque de ne plus fonctionner (erreur
au chargement de la liste gauche par exemple). En effet, la validation de cet écran entraîne une
génération automatique de code. En particulier, l‟ensemble des composantes de la clé doivent être
présents dans la liste gauche, sinon elle ne fonctionne pas.
Liaisons automatiques
- Objet Ce champ permet de saisir le code de l'objet d'où part le lien (on considère toujours
que les liens automatiques vont se faire d'un objet de lien vers la fiche courante). Ainsi, par
exemple, si on désire faire un lien entre une société (objet CPY en cours de paramétrage) et
un utilisateur (champ CREUSR dans la fiche société), on définit un lien automatique dans
l'objet société, en donnant AUS comme objet de lien, et [CPY]CREUSR comme clé de lien : le
résultat en sera, dans l'explorateur de lien de la fiche utilisateur, d'un lien vers la société.
- Par exemple : on veut faire apparaître le pays plus le code postal dans la première colonne.
On écrit alors sum(CRY, " " ,POSCOD) .Il faut utiliser l‟opérateur sum et non pas le „+‟ dans
ce contexte et ajouter une variable « muette » pour gérer cette valeur.
- Code liaison : Le code de liaison permet de donner une signification au lien automatique
défini. Ce code est défini dans la table diverse numéro 61.
o de listes de gauche
o d‟un ensemble d‟onglets (appelé fenêtre)
En temps normal, un objet est associé à une seule fenêtre, les règles de nommage sont pour la
fonction GESXXX, pour l‟objet XXX, et pour la fenêtre OXXX
A l‟appel de la fonction, un choix de transaction est demandé parmi les transactions autorisées
o elles partent d‟une fenêtre “de base” intégrant tous les champs possibles
o elles permettent par paramétrage de choisir les champs que l‟on ne veut pas voir,
ceux que l‟on veut pouvoir modifier, et ceux que l‟on ne veut que visualiser
o dans certains cas, elles permettent de définir des valeurs par défaut, des filtrages, ou
des contrôles complémentaires
Remarques :