Administration spécialisée > Analyse des informations système et métier > Rapports et requêtes > Générateur de requête > Tableaux et jointures (Générateur de requête) > Ajout de tableaux et jointures dans un modèle de rapport
  
Ajout de tableaux et jointures dans un modèle de rapport
Vous pouvez ajouter des tableaux et jointures à une requête de diverses manières :
Les tableaux peuvent être ajoutés individuellement. Consultez la section "Ajouter un tableau individuel".
Des jointures peuvent être tracées entre deux tableaux. Consultez la section "Tracer une jointure entre des tableaux".
A partir d'un tableau, un nouveau tableau et la jointure entre les tableaux peuvent être ajoutés simultanément. Consultez la section "Ajouter un tableau et effectuer une jointure simultanément".
Remplissez une requête vide avec un modèle de jointure. Consultez la section "Remplir un élément avec un modèle de jointure".
Une fois ajoutés, les tableaux peuvent être déplacés dans l'affichage à l'aide de la fonction glisser-déposer, afin de faciliter l'affichage. Le nouvel emplacement du tableau est enregistré avec le modèle de rapport.
Ajouter un tableau individuel
Pour ajouter un tableau individuel, cliquez sur Ajouter. La fenêtre Sélectionner les types à ajouter s'ouvre. Dans la fenêtre Sélectionner les types à ajouter, vous pouvez afficher les modèles de rapport ou types disponibles :
Afficher les types : sélectionnez ce bouton pour afficher la liste des types et sous-types disponibles. Pour appliquer un filtrage supplémentaire de la liste, cochez la case Afficher les types en cours d'utilisation, ce qui vous permet de réduire la liste aux seuls types associés à des données dans la base de données. Cochez la case Afficher les noms des types internes afin de permettre l'affichage du nom de type interne (ou nom de classe) du type entre parenthèses après le nom d'affichage du type de l'ensemble des types. (Si plusieurs types présentent le même nom affiché, les noms de type internes correspondants sont toujours placés entre parenthèses après les noms affichés.)
Afficher les modèles de rapport : sélectionnez ce bouton pour afficher la liste des modèles de rapport disponibles.
Saisissez du texte dans le champ Filtrer la liste, afin de rechercher des modèles de rapport ou types spécifiques. Si l'option Afficher les noms des types internes est sélectionnée, les noms de types internes sont également soumis à la recherche.
Passez le curseur de la souris sur une icône Informations située en regard d'un modèle de rapport ou type pour afficher une description de ce dernier. Cliquez sur une icône Aide en regard d'un type pour afficher la documentation supplémentaire le concernant (articles de la base de connaissances ou Javadoc, par exemple).
* 
Le contenu affiché pour les descriptions ou la documentation supplémentaire est extrait de la documentation source localisée correspondant à la langue paramétrée pour le navigateur de l'utilisateur, ainsi que de la documentation source non localisée, telle que la documentation Java fournie par PTC. Il est possible d'utiliser la propriété com.ptc.windchill.enterprise.queryBuilder.documentationDefaultLocale pour supprimer ou contrôler ce comportement en spécifiant une valeur de langue que le système applique automatiquement à l'ensemble de la documentation source non localisée. La documentation source non localisée est alors considérée comme si elle était localisée en fonction de la langue spécifiée dans la propriété.
Si la langue du navigateur de l'utilisateur correspond à la langue spécifiée pour la propriété, le contenu de la documentation source explicitement localisée pour cette langue s'affiche, ainsi que le contenu de toute documentation source non localisée.
Si la langue du navigateur de l'utilisateur ne correspond pas à la langue spécifiée pour la propriété, seul le contenu de la documentation source explicitement localisée pour cette langue apparaît.
Si la propriété n'est pas définie, le contenu de toute documentation source non localisée s'affiche, quelle que soit la langue paramétrée pour le navigateur de l'utilisateur.
Par exemple, si la langue spécifiée pour la propriété est fr et que la langue du navigateur de l'utilisateur est définie sur Français, le contenu de toute documentation source non localisée s'affiche, ainsi que toute documentation source localisée en français. Si la langue du navigateur de l'utilisateur est redéfinie sur Allemand, seul le contenu de la documentation source localisée en allemand apparaît. Pour plus d'informations, consultez le fichier properties.html.
Sélectionnez le modèle de rapport ou type désiré, puis cliquez sur OK.
Lorsqu'un tableau est ajouté, vous pouvez modifier l'alias affiché sur ce dernier en sélectionnant l'option Modifier l'alias du menu d'actions contextuel du tableau, avant de saisir un nouvel alias.
Tracer une jointure entre des tableaux
Dans chaque tableau figure une zone de connexion, placée dans l'angle inférieur droit. Pour créer une jointure entre deux tableaux, cliquez et faites glisser le curseur afin de tracer une ligne entre deux zones de connexion. La fenêtre Créer une jointure s'ouvre, affichant les jointures disponibles entre les deux tableaux.
Sur la fenêtre Créer une jointure, cochez la case Afficher les jointures en cours d'utilisation afin de filtrer la liste en fonction des seules jointures actuellement utilisées. Saisissez du texte dans le champ Filtrer la liste afin de filtrer la liste plus avant. Si la jointure est une jointure externe, sélectionnez le tableau auquel la jointure externe doit être associée dans la liste déroulante Jointure externe depuis. Ceci signifie que les lignes ou instances du tableau sélectionné doivent être incluses, même lorsque les conditions de jointure entre les deux tableaux ne sont pas satisfaites. Par principe, la sélection d'une valeur Jointure externe depuis signifie que les entrées nulles sont autorisées pour le tableau non sélectionné lors de la jointure avec le tableau sélectionné. Si la jointure est de type externe, la flèche de la liaison s'affiche en vert, et non en bleu.
Certaines jointures sont des jointures de liaison, qui correspondent à une association modélisée de manière explicite entre deux types. Chacun des types joue le rôle A ou B dans l'association définie dans le modèle de données. Certaines jointures de liaison peuvent suivre les deux directions, ce qui signifie que chaque type peut prendre le rôle A ou B. Lorsque ces jointures sont sélectionnées dans la fenêtre Créer une jointure ou Modifier la jointure, les valeurs Rôle A et Rôle B s'affichent sur la partie inférieure de cette fenêtre :
Cliquez sur la flèche figurant entre les rôles pour changer le rôle du type (Rôle A ou Rôle B) :
Sélectionnez la jointure de votre choix, puis cliquez sur OK.
Lorsqu'une jointure est ajoutée, vous pouvez choisir l'option Modifier la jointure dans le menu d'actions contextuel de la jointure. Il est possible de choisir une autre jointure, ou de modifier la jointure existante en changeant la sélection du champ Jointure externe depuis correspondant.
* 
L'affichage de la case à cocher Afficher les jointures en cours d'utilisation dans la fenêtre contextuelle Ajouter un tableau et une jointure dépend du paramètre de la propriété com.ptc.windchill.enterprise.queryBuilder.showjoinsinuse. Si cette propriété n'est pas définie sur vrai ou pas définie du tout, la case à cocher Afficher les jointures en cours d'utilisation apparaît dans la fenêtre contextuelle Ajouter un tableau et une jointure. Si cette propriété a pour valeur faux, la case à cocher n'apparaît pas. Pour les rapports de données volumineux, il est recommandé d'attribuer la valeur faux à cette propriété. Celle-ci doit être mise à jour dans le fichier wt.properties.
Ajouter un tableau et effectuer une jointure simultanément
Cliquez avec le bouton droit de la souris sur un tableau existant, puis sélectionnez Ajouter un tableau et une jointure pour ajouter un nouveau tableau et la jointure entre les deux tableaux en une seule et même action. La fenêtre Ajouter un tableau et une jointure s'ouvre. Comme le tableau figurant d'un côté de la relation de jointure en cours d'ajout est déjà déterminé, seuls les tableaux pouvant être joints au tableau en cours (ainsi que les jointures applicables) sont présentés. Lors de la sélection d'un tableau, la jointure appropriée est également sélectionnée entre le tableau choisi et celui à partir duquel l'action Ajouter un tableau et une jointure a été démarrée. De même, lorsque vous sélectionnez une jointure, le tableau approprié l'est également, automatiquement.
Si la jointure est une jointure externe, accédez à la liste déroulante Jointure externe depuis et indiquez si la jointure externe porte sur le tableau en cours d'ajout, ou sur le tableau à partir duquel l'action Ajouter un tableau et une jointure est lancée.
Si la jointure est une jointure de liaison avec des rôles A et B interchangeables, vérifiez que ces derniers sont correctement définis. Cliquez sur la flèche figurant entre les rôles pour changer le rôle du type (Rôle A ou Rôle B) :
Sélectionnez le tableau et la jointure souhaités, puis cliquez sur OK.
Une fois ajoutés, l'alias de tableau et la jointure peuvent être modifiés, comme décrit auparavant.
Remplir un élément avec un modèle de jointure
Si aucun tableau n'est présent, vous pouvez cliquer sur Remplir avec un modèle de jointure pour sélectionner l'un des modèles de jointure disponibles. Dans la fenêtre Sélectionner un modèle de jointure, tous les modèles de jointure s'affichent, ainsi que leurs descriptions. Sélectionnez le modèle de jointure souhaité et cliquez sur OK.
L'avantage lié à l'utilisation de l'action Remplir avec un modèle de jointure est lié au fait que les relations de tableau et de jointure ont déjà été définies. Vous n'avez pas besoin d'ajouter chaque tableau et jointure lors de la définition d'une nouvelle requête. Lorsque vous utilisez un modèle de jointure, vous pouvez ajouter les éléments de rapport de votre choix pour votre requête, via l'onglet Sélectionner ou contraindre. Une fois votre requête entièrement définie, vous pouvez demander au Générateur de requêtede supprimer automatiquement les tableaux et jointures qui ne sont pas utilisés.
Pour plus d'informations, consultez la section Modèles de jointure.