Cegid XRP Ultimate  |      Actualisé le 

Décisionnel

GDJOI - Jointure

Sommaire

   Cette transaction permet de saisir des expressions SQL de jointures.
L'unicité est contrôlée sur l'ensemble métier - langue - vue - colonne - ordre. Pour les expressions de jointures, la colonne n'est jamais renseignée.

   Une jointure est le lien entre au moins deux tables.

   Les différents signes de calcul, parenthèses, fonctions et fonctions Décisionnel peuvent être utilisés.
Cependant, la saisie de la formule de calcul est libre (le nombre de parenthèses ouvrantes, fermantes n'est pas contrôlé, le nombre de paramètres passés à une fonction ou une procédure n'est pas vérifié).

   Les contrôles sont effectués dans les générateurs et plugins.

   Les jointures externes sont gérées avec la chaîne de caractères "+=".


Données


   Métier

   Code défini dans la gestion "Définition d'un métier" (GDMET), unique par langue.


   Langue

   Référence les diverses langues définies comme occurrences du paramètre LANGUE.
Proposition de la langue du métier par défaut en création.


   Vue

   Code défini dans la gestion Définition de vue (GDVUE), unique pour un métier et une langue.


   Ordre

   Cette information est numérique, proposée de 10 en 10, elle donne l'ordre des enregistrements pour un métier, langue, vue, colonne (colonne nulle dans le cas des jointures et des filtres).

   Cet ordre doit être positif dans le cas d'une jointure et d'un filtre.


   Colonne

   Zone non accessible.


   Application

   Application du métier.


   Propriétaire

   Non géré.


   Moteur SGBDR

   Permet d'indiquer si l'expression est spécifique à un moteur SGBDR ou commune à tous. Si un moteur est précisé, il doit avoir été défini comme occurrence du paramètre MOTGWCOL.


   Cardinalité

   Cette zone permettait de gérer les cardinalités de la jointure pour un ancien produit BI, zone désormais inutile.
Toutefois, on garde la possibilité de saisir la nature de l'expression de jointure (cas jointure externe) avec les formats suivants :
   011n, 0111, 0n11, 0n1n, 1111, 1n11, 111n, 1n1n   avec le caractère 0 pour une jointure externe et n pour une multiple cardinalité.


   Produit

   Permet d'indiquer si l'expression est spécifique à un produit ou commune à tous.

   Si un produit est précisé, il doit avoir été défini comme occurrence du paramètre PRDGWSQL.


   Expression

   Code alphanumérique sur 240 caractères définissant l'expression de jointure.

   L'expression de jointure peut être enregistrée sur plusieurs lignes.

   Tout mot utilisé :
   - doit être défini en tant que colonne de la base de données (dans la table GTTRC) ;
   - doit exister dans les fonctions (GDFON) :
         - fonctions spécifiques du SGBD : code égal à 0 et produit égal à "B",
         - fonctions standard ;
   - doit être une fonction propre au moteur. Dans ce cas, les colonnes doivent toujours être préfixées.
      Exemple : to-char ( t1.col1 ) = nvl ( t2.col2 , 'x' ).

   Quelques règles :

   La saisie des décimales doit être au format 25 / 10 au lieu de 2.5.

   Le séparateur de mot est le caractère espace.

   Les colonnes ne sont pas autorisées dans les expressions de jointures. La saisie via le mot-clé Select est contrôlée.

   Les caractères ^, [, § , ' (sauf pour gérer une chaîne de caractères) et ?, ne doivent pas être utilisés.

   Les caractères qui définissent les jointures externes (du style (+), * ou outer join), sont remplacés par l'indicateur "+=" quel que soit le produit utilisé. Cet indicateur "+=" doit être présent sur la première partie de la première jointure.

   Exemple de jointures Adresse commande - Commande :
Adr_Cde.tieoetia += sacda.ticsacda and Adr_Cde.numoetia += sacda.tacsacda

   La première "partie" d'une expression de jointure ne doit pas faire référence à une constante.


   Site

   Indique s'il s'agit d'un métier référence (site égal à "Q") ou d'un métier client (site égal à "C").


   Type d'expression

   Non accessible, égal à "J" dans le cas d'une expression de jointure.


   Paramètres standard


   Genre


Paramètres associés au mnémonique (voir aussi : Principe de l'association)


   PR1

   Type d'expression :
- "E" pour une expression de colonne ;
- "C" pour une clause ;
- "J" pour une jointure ;
- "F" pour un filtre.


   PRM

   La zone colonne est :
- "O" : à renseigner ;
- "N" : non accessible.


Paramètres

   ETA


   GENGWSQL


   NATGWSQL


   ROLGWSQL


   TYPGWSQL


Messages

   GWSQL050 - Cette vue détermine des colonnes : création de filtre interdite


   GWSQL051 - Cette vue détermine des filtres : création de colonne interdite


   GWSQL052 - L'expression '$1' doit être comprise entre deux espaces (sauf début/fin)


   GWSQL053 - Chaîne non fermée : quote manquante


   GWSQL054 - Problème de gestion des parenthèses : $1 '$2' manquante(s)


   GWSQL055 - L'expression '$1' doit être suivie par le caractère espace


   GWSQL056 - L'expression '$1' n'est pas définie dans le métier $2


   GWSQL057 - L'expression '$1' n'est pas définie dans les fonctions et les colonnes (produit '$2')


   GWSQL058 - Création de filtre ou jointure impossible, la vue possède une vue de rattachement


   GWSQL061 - Le nombre de séparateurs '$1' est incorrect


   GWSQL062 - Le filtre '$1' n'existe pas pour le métier


   GWSQL063 - La demande '$1' n'existe pas pour le métier


   GWSQL064 - Une seule expression est utilisable pour les clauses


   GWSQL065 - Succession de plus de 4 espaces interdit sauf en constante


   GWSQL066 - Réutilisation impossible de filtre dans des filtres ou caractère § non utilisable


   GWSQL067 - Indicateur des demandes ( ? ) interdit dans les jointures


   GWSQL068 - L'expression $1 n'est pas correctement saisie


   GWSQL069 - L'expression @Select n'utilise pas une colonne définie : ($1) , ($2) pour le produit $3


   GWSQL071 - Utilisation d'une colonne '$1' dont l'ordre est postérieur à l'expression en cours


   GWSQL072 - Colonne en cours de création : ne pas utiliser '$1'


   GWSQL075 - La jointure externe doit être de la forme '+='


   GWSQL076 - L'expression ne doit pas être numérique


   GWSQL077 - Le produit doit être renseigné pour une clause


   GWSQL079 - Le produit doit être 'B'