Les requêtes parent


Definition

Une requête parent définit un ensemble d'informations homogène d'une base de données permettant de travailler sur un même thème.

Example documentation icon FR.png  Requêtes parent pour travailler sur les incidents ; Requête parent pour travailler sur les matériels

EndDefinition

Elle permet d'identifier :

  • les critères de la recherche globale et du filtre rapide ;
  • les critères de sélection proposés dans les filtres en mode assisté ;

    Example documentation icon FR.png  Filtre Incidents non résolus cette semaine bâti à partir de la requête parent Incidents

  • les champs proposés dans les vues ;

    Example documentation icon FR.png  Vues Matériels par entité et Liste des matériels bâties à partir de la requête parent Matériels

  • les champs proposés dans les listes de valeurs.

Elle sert également de support à la définition :

Remarques

  • Les requête parent sont fournies par Logo - EasyVista.png et sont contextuelles aux options de menus.
  • Sur tous les écrans d'édition, les champs de la requête parent sont affichés sous leur nom d'alias (ex. : Téléphone) ; si celui-ci n'est pas renseigné, ils sont affichés sous leur nom physique (ex. : PHONE_NUMBER).
  • Vous pouvez créer une requête parent uniquement sur les écrans de reporting, lorsque vous êtes en mode Création - Open url.png  voir Procedures
  • Seul un profil ayant les droits d'édition des affichages pour le module auquel est rattachée l'option de menu utilisant la requête parent peut modifier une requête parent.
  • Vous pouvez ajouter manuellement des champs à la requête parent - Open url.png  voir Bonnes pratiques de création
    • Les champs deviennent disponibles dans tous les filtres, vues, listes de valeurs, fiches et outils de reporting rattachés à la requête :
      • champs appartenant à une table/jointure de la requête parent ;
      • champs référencés dans une table liée à l'une des tables de la requête parent ; 
      • champs référencés dans une vue SQL comportant une jointure avec l'une des tables de la requête parent. 
    • Une fois ajoutés, ils sont affichés en bas de la liste, précédés de Delete icon.png (permettant de les supprimer de la requête).

Attention

  • Ne confondez pas les vues Product name - ev itsm.png et les vues SQL utilisées comme des tables au niveau des requêtes parent.

Best Practice big icon.pngBonnes pratiques

  • Les champs créés manuellement doivent impérativement respecter les règles ci-dessous pour ne pas être impactés lors d'un changement de version :
    • Type de champ :
      • Obligatoirement l'un des types suivants : nvarchar, nvarchar(max), float, int, datetime, uniqueidentifier, bit, real, smallint
    • Nom du champ :
      • Il doit être préfixé par E_.
      • Il doit être écrit en majuscules.
      • Il ne doit pas comporter de caractères accentués.
      • Il ne doit pas comporter d'espace. Pour insérer un espace, utilisez le caractère souligné _.
      • Il ne doit pas dépasser 31 caractères (contrainte liée à Report Designer).

Example documentation icon FR.png  E_BIRTHDAY_DATE

Exemple

La vue Liste des employés utilise la requête parent Employés. Pour afficher la langue de l'employé, il est nécessaire d'ajouter manuellement le champ à la requête :

1. Allez sur l'option de menu Asset Management > Annuaires > Employés.

2. Éditez la requête parent Employés : cliquez sur  Tools icon.png puis sur Edit icon.png [ Éditer ] (Note : Vous devez être attaché à un profil ayant les droits d'édition des affichages pour le module auquel est rattaché le menu Asset Management).
f
3. Ajoutez manuellement la table des langues AM_LANGUAGE à la requête parent (Note : À l'installation d'Product name - ev itsm.png, cette table n'est pas présente dans la liste des tables de la requête parent Employés. Dans le modèle de données, elle est liée à la table AM_EMPLOYEE par la clé de liaison Identifiant de la langue) :

  • cliquez sur [ AJOUTER UNE TABLE ] ;
  • cliquez sur Plus black icon.png pour afficher le contenu de la table AM_EMPLOYEE ;
  • cliquez sur la liaison AM_LANGUAGE ===> AM_LANGUAGE.LANGUAGE_ID = AM_EMPLOYEE.LANGUAGE_ID ; 
  • renommez éventuellement l’alias proposé par défaut (AM_LANGUAGE) ;
  • cliquez sur [ OK ].

4. Cliquez sur [ AJOUTER UN CHAMP ] puis :

  • cliquez sur Plus black icon.png en regard de la table ajoutée précédemment AM_LANGUAGE ;
  • cliquez sur le champ LANGUAGE_SYSTEM_ALIAS_$lng (libellés multilingues de la langue) et renommez éventuellement son nom physique par un alias parlant ;
  • cliquez sur [ ENREGISTRER ].

5. Cliquez sur Edit icon.png à droite de la liste déroulante Vue (Note : Vous devez être attaché à un profil ayant les droits d'édition des vues pour le module auquel est rattaché le menu Asset Management) : 

  • le champ LANGUAGE_SYSTEM_ALIAS_$lng est affiché dans la liste des champs disponibles ; 
  • il peut également être utilisé dans tout filtre, fiche et outil de reporting liés à cette requête parent.

Description des écrans

        Parent query - General.png

Accès : en mode Liste, Tools icon.png > Edit icon.png [ Éditer ]

Nom : Liste des champs définis dans l'une des tables issues de la requête parent, les éventuelles jointures avec des vues SQL et les éventuelles tables liées ajoutées manuellement. Pour ajouter des champs : [ AJOUTER UNE VUE ] ou [ AJOUTER UNE TABLE ] ; puis [ AJOUTER UN CHAMP ].

Nom du champ (Note : Non modifiable) : Nom physique du champ dans le modèle de données.

Recherche par (Note : Non disponible pour les champs résultant d'un calcul) : Indique si le champ est disponible comme critère du filtre rapide (activé via Filter icon.png en mode Liste) (case cochée) ou non (case non cochée).

Recherche par - Valeur par défaut : Indique si le champ est proposé par défaut comme critère du filtre rapide (bouton radio sélectionné) ou non (bouton radio non sélectionné).

Affichage Mobile (Note : Sur certaines fiches et grilles relatives aux matériels, incidents / demandes, actions) : Indique si le champ peut être affiché sur un écran de smartphone (case cochée) ou non (case non cochée)  - Open url.png voir EasyVista Mobile

[ AJOUTER UNE VUE ] : Crée une liaison entre un champ d'une vue SQL et un champ d'une table liée à la requête parent.
         Parent query - Add view.png

  • La jointure devient sélectionnable comme toute autre table de la requête parent. 
  • Un nom d'alias est attribué à la jointure, via une fenêtre affichée après le choix des champs de liaison.
     

[ AJOUTER UNE TABLE ] : Crée une liaison entre l'une des tables de la requête parent et l'une des tables liées dans le modèle de données.
        Parent query - Add table.png

  • La jointure devient sélectionnable comme toute autre table de la requête parent. 
  • Chaque table liée est suivie de la description de la liaison : champ clé dans la table liée, suivi du champ clé dans la table de la requête parent. 
  • Un nom d'alias est attribué à la nouvelle liaison, via une fenêtre affichée après le choix des tables.
  • options OUTER / INNER : (Note : Affichées en fonction de la requête parent) Indique le type de lignes à retourner :
    • OUTER : toutes les lignes de la table principale, même s'il n'y a pas de concordance avec la vue liée ;
    • INNER : uniquement les lignes de la table principale ayant une concordance avec la vue liée.
       

[ AJOUTER UN CHAMP ] : Ajoute un champ parmi ceux définis dans l'une des tables de la requête parent, les éventuelles jointures avec des vues SQL et les éventuelles tables liées ajoutées manuellement.
         Parent query - Add field.png

Procédures

Comment modifier une requête parent

1. Cliquez sur l'option de menu utilisant la requête parent à modifier, puis cliquez sur Tools icon.png et Edit icon.png [ ÉDITER ] (Note : Vous devez être attaché à un profil ayant les droits d'édition des affichages pour le module auquel est rattachée l'option de menu) : la liste des champs de la grille de la requête parent est affichée.

2. Indiquez les champs servant de critères dans le filtre rapide (colonnes Recherche par...).

3. Vous pouvez ajouter d'autres champs dans la grille de la requête parent :

  • Champ appartenant à l'une des tables/jointures de la requête parent :
    • cliquez sur [ AJOUTER UN CHAMP ] ;
    • cliquez sur Plus black icon.png pour afficher la listes des champs disponibles et sélectionnez celui souhaité.
  • Champ n'appartenant pas à l'une des tables/jointures de la requête parent :
    • si le champ est référencé dans une table liée à l'une des tables de la requête parent :
      • cliquez sur [ AJOUTER UNE TABLE ] ;
      • cliquez sur Plus black icon.png pour afficher la liste des tables liées à chaque table de la requête parent et sélectionnez celle souhaitée ;
      • indiquez le type de lignes à retourner en sélectionnant l'une des options INNER ou OUTER ;
      • saisissez l'alias identifiant la nouvelle jointure ;
      • ajoutez les champs souhaités appartenant à cette nouvelle jointure en cliquant sur [ AJOUTER UN CHAMP ] (Note : La jointure est inscrite en bas de la liste des tables).
         
    • si le champ est référencé dans une vue SQL :
      • cliquez sur [ AJOUTER UNE VUE ] ; sélectionnez la vue SQL souhaitée et indiquez sur quelle table de la requête se fait la liaison ;
      • cliquez sur [ JOINTURE ] et indiquez les champs permettant la jointure entre la vue SQL et la table ;
      • indiquez le type de lignes à retourner en sélectionnant l'une des options INNER ou OUTER ;
      • cliquez sur [ AJOUTER LA LIAISON ] et saisissez l'alias identifiant la nouvelle jointure ;
      • ajoutez les champs souhaités appartenant à cette nouvelle jointure en cliquant sur [ AJOUTER UN CHAMP ] (Note : La jointure est inscrite en bas de la liste des tables).

4. Cliquez sur [ ENREGISTRER ] : les champs ajoutés manuellement sont maintenant disponibles dans tous les filtres, vues, listes de valeurs, fiches et outils de reporting utilisant cette requête parent.

Comment créer une requête parent dans les outils de reporting

1. Allez sur l'un des outils de reporting :

  • indicateurs : Administration > Indicateurs > Indicateurs
  • reportings : Administration > Reporting > Reporting ou Reporting programmés
  • alertes : Administration > Alertes > Alertes planifiées

2. Cliquez sur Add icon.png pour créer une nouvelle fiche.

3. Cliquez sur Add icon.png en regard du champ Requête parent (Note : Non disponible si vous avez sélectionné une requête parent).

4. Renseignez la nouvelle requête parent :

  • saisissez son nom ;
  • sélectionnez sa table principale ;
  • ajoutez les champs que vous souhaitez afficher dans la liste des champs disponibles de la grille de la requête parent : reportez-vous à la procédure précédente, étape 3 ;
  • cliquez sur [ ENREGISTRER ] : la nouvelle requête parent est maintenant disponible dans la liste déroulante Requête parent.

Comment récupérer les liaisons d'une requête parent existante

1. Exécutez la requête permettant de récupérer le contenu du champ XML de la table C_QUERY, dans le schéma de CONFIG.

2. Effectuez un clic droit sur la fenêtre de résultats. Cliquez sur Save result as... et enregistrez le résultat au format Texte.

Example documentation icon FR.png  Requête permettant de récupérer les liaisons de la requête parent HD_ACTIONS (QUERY_ID = 49)

SELECT [query_id],[name_fr],[xml]
FROM   [EVO_CONFIG40000].[EVO_CONFIG40000].[c_query]
WHERE  query_id = 49  

Résultat :
         Parent query - Example relations.png

Tags:
Modifié par Utilisateur inconnu le 2019/07/11 19:56
Créé par Administrator XWiki le 2013/03/25 18:12

Raccourcis

L'actualité mensuelle
•  Newsletter

Tous les changements
•  Service Manager
•  Service Apps
•  Self Help

Glossaire

Powered by XWiki ©, EasyVista 2020