Chapitre 1 : le rôle du Designer d`Univers -

publicité
Chapitre 1 : le rôle du Designer d’Univers
--L’architecture de BusinessObjects va permettre un accès aux différentes sources de données de
l’entreprise, que ce soit des bases de données relationnelles, des serveurs OLAP ou des fichiers
personnels à partir d’une couche sémantique « métier » qui contient les mots de vocabulaire métier
de l’utilisateur.
--BusinessObjects fournit à l’utilisateur trois concepts :
L’Univers :
•
Vision partielle ou totale d’une base de données.
•
Dédié à un profil utilisateurs et à un besoin applicatif ou domaine précis.
•
Regroupe l’ensemble des Objets du domaine
•
Regroupement logique d’Objets de même thème (aucune correspondance
physique dans la base), et à l’intérieur des Classes, des Sous-Classes peuvent
être créées
La Classe :
Le Business Objet ou Objet du métier :
•
Elément le plus fin de l’Univers.
•
Permet de passer de données brutes à la manipulation d’informations :
données concaténées, agrégées ou calculées.
--Un Objet donne à l’Utilisateur une totale indépendance et il est caractérisé par un Nom et un écran
d’Aide associée.La correspondance SQL de l’Objet, invisible pour l’Utilisateur, est définie par le
Designer.
--Le module Designer de BusinessObjects vous fournit un environnement totalement graphique et
facilite la définition des « Univers » par l’utilisation du glisser-déplacer.
-- les acteurs du BusinessObjects : Superviseur, Designer, Utilisateurs, Administrateur de
Documents,...)
-- Les principales phases d’un projet BusinessObjects sont :
- Pré-étude : Identification de l’application cible par le Découpage du système d’informations
en domaines fonctionnels
- Analyse : Analyse des besoins utilisateurs, de l’existant (base de données), et du domaine
fonctionnels, la Spécifications des Univers : conventions de nommage, organisation des objets...
- Cycle de réalisation : le développement des Univers par la création des Univers : Jointures,
Classes, Objets et Hiérarchies
- Tests : Préparation pour le Déploiement des Univers par des tests (Service Informatique et
groupe pilote), Finalisation, Documentation
- Déploiement : Mise à la disposition et Déploiement des Univers par la formation,
Déploiement, Support
- Evolution : Enrichissement et Maintenance des Univers par des requêtes et Documents
Utilisateurs, Modifications physiques des bases de données, Optimisation des performances
Chapitre 2 : Créer un Univers avec l’assistant
-- il y a deux types de méthode de création de l’Univers :
-L’assistant : rapide, facile, automatique, point de départ pour l’univers complexe
-Les outils du module Designer : graphique, intuitif, valeur ajouté,
-- Les étapes de création d’univers en mode Assisté : il faut ouvrir une session Designer,
authentification, puis cliquer sur l’icône de l’assistant
- 1/Définition des Paramètres : nom de l’univers, les paramètres de connexion à une base de
données (nom, mot de passe, chaine de connexion), et sélectionner la connexion à la BD, et définir
aussi une stratégie (jointures, objets, et table) qui est optionnel
- 2/Créer les Classes et Objets par défaut : Les Classes sont représentées sous forme de
Dossiers et les Objets sous forme d’Icônes à l’intérieur des Classes
- 3/Créer les indicateurs : Les Indicateurs sont des objets contenant des fonctions d’agrégat
(Count, Sum, Min, Max) dans leur définition, et ils sont placé dans une classe spécifique appelée
Indicateurs. Ex : (Chiffre d’affaires, Nombre de clients ...)
- 4/L’Univers est créé : L’Assistant calcule et affiche : Le nombre de Classes, d’Objets, et de
jointures créées. Et à la fin un message d’avertissement signale l’existence de boucles dans l’Univers.
--Le module Designer représente l’Univers sous la forme de deux sous-fenêtres : La zone Univers, et
la zone Structure.
-- On peut compléter et enrichir notre Univers en définissant de nouveaux Objets, jointures, classes…
Chapitre 3 : Créer un Univers étape par étape
 La définition des paramètres :
-Définition : Un Univers est identifié par son nom et sa connexion à un SGBDR. Une description
détaillée peut lui être associée
Une connexion est un ensemble de paramètres permettant de se connecter à une base de données.
Et qui est identifiée par son nom et son type :
-Personnelle : spécifique à un utilisateur qui l’a créée et stockée dans le dossier LocData
(fichier PDAC)
- Partagé : Stockée par défaut dans le dossier ShData (fichier SDAC).
- Sécurisé : Stockée dans le Référentiel, Le superviseur est celui qui attribue les droits sur ces
connexions. Seul ce type de connexion autorise l’export d’Univers.
-Résumé : visualise les informations générales sur l’Univers son auteur, contenu et date de mise à
jour de l’Univers.
-Stratégies : permettent de créer des objets et détecter les jointures et cardinalités sur les tables qui
seront choisies pour construire l’Univers.
-Restrictions : gère le contrôle d’accès aux ressources.
-SQL : contrôle des requêtes et du SQL dans la définition de l’Univers.
-Liens : permet la liaison dynamique avec d’autres Univers.
 Le choix des tables :
Pour la sélection des tables il faut désactiver la création automatique des jointures, des cardinalités,
des classes et des objets, activer le localisateur des tables qui affiche les tables de la BD précisée
dans les paramètres de l’Univers, et puis organier les tables
La commande Quadrillage du menu Affichage vous aide à aligner les tables dans la zone Structure.
La commande Sauts de page du menu Affichage vous aide à voir comment les éléments se
présentent sur une page.
 La création des jointures :
-- Les tables sans jointures génèrent des produits cartésiens, et il est déconseillé de laisser dans un
univers des tables isolées qui risquent de provoquer des produits cartésiens
--Il y a quatre types de jointures :
- Equi-jointure : repose sur l’égalité entre la colonne d’une table et la colonne d’une autre table. La
même colonne est présente dans les deux tables.
- Jointure externe : relie deux tables, dont l’une a des lignes qui n’ont pas de correspondance dans la
colonne commune de l’autre table. La jointure externe traduit la cardinalité 0,1 ou 0, n.
- Thêta jointure : repose sur un rapport autre que celui de l’égalité entre 2 colonnes : Comparaison
de deux colonnes ou plus, utilisation de fonctions, utilisation de requêtes imbriquées
- Auto-jointure : permet de définir une restriction au niveau de la table. La condition s’applique dès
que la table est mise en jeu dans une requête.
--Il y a trois méthodes de création de jointures :
- création manuelle : Si l’option « Définir manuellement » est sélectionnée pour tracer un lien
manuellement à partir d’une colonne d’une table vers la colonne d’une autre table ou aussi par la
boîte de dialogue Editer une jointure
-stratégie automatique : Si l’option « Extraire les jointures avec les tables » est sélectionnée
-détection et création automatique des jointures : Si l’option « Extraire les jointures avec les
tables » n’est pas sélectionnée. Cette commande n’a pas d’effet si vous avez sélectionné comme
stratégie « Définir manuellement »
-- la définition des cardinalités est tout à fait facultative. Les cardinalités permettront uniquement à
l’assistant de proposer des solutions pour résoudre les éventuels problèmes de boucles dans le
schéma.
 Détecter et résoudre les boucles :
-- Une boucle est décrite lorsqu’il existe plusieurs chemins permettant d’aller d’une table A vers une
table B
-- La meilleure solution de résoudre une boucle est de créer deux Alias BusinessObjects qui vont
permettre de casser la boucle.
-- Un Alias est simplement un renommage logique d'une table sans aucune redondance physique
d'information.
-- Pour pouvoir détecter les alias, toutes les tables de la zone Structure doivent être préalablement
reliées et les cardinalités doivent être définies.
-- Il existe deux façons de créer des Alias :
- Manuellement
- Automatiquement : permet de détecter et d’indiquer automatiquement les tables qui
provoquent des boucles et propose une liste d’alias à créer.
-- Avant de passer à la création des nouveaux objets, il est impératif d’avoir résolu les problèmes de
boucles par la création :
- d’alias sur les boucles dues aux tables de libellés
- de contextes pour le cas de boucles sémantiques
- de raccourcis-jointures pour gérer les schémas dénormalisés
 La création des Classes et des Objets :
--tous d’abord il faut vérifier si les jointures de l’Univers ont été correctement définies et les boucles
du schéma relationnel de votre zone structure ont été résolues
-- Une classe est un regroupement logique (métier) d’objets au sein d’un Univers et il peut contenir
des objets de plusieurs tables physiques. Son objectif est de faciliter l’accès aux objets pour
l’utilisateur qui construit sa requête, (environ 10 à 15 objets par classe mais jamais un seul objet dans
une classe, 3 ou 4 niveau de classe au maximum et 5 au maximum de nombre de classes du même
niveau).
-- il y a deux types de classe :
- classes d’entités : Ce sont les entités du système d’informations issues du schéma
relationnel de la base concernée. Ils contiennent les Objets qui sont : les propriétés, identifiants,
objets avec conditions, dates, conditions prédéfinies, et objets utilisant les fonctions spéciales du
module. Ces Classes peuvent contenir des Objets ou des sous-Classes qui contiendront à leur tour
des Objets.
- classes d’indicateurs : contiennent des Objets calculés spécifiques du Métier se détachant
du Modèle Physique (comptage, somme,…). Ces Classes contiennent des Objets de traitement de
l’information et de consolidation (30% environ d’un Univers). Ces classes permettent de faire
apparaitre les objets de calculs soit dans une seule classe, ou dans plusieurs classes groupés ou
intégrer les comptages dans les classes d’entités
-- Dans BusinessObjects, les identifiants permettent :
- d’assurer l’unicité (pour éviter des regroupements par homonymie)
- d’optimiser les conditions dans les requêtes
-- pour l’analyse multidimensionnelle, l’objet a les qualifications suivantes :
- Dimension : éléments clés pour les analyses des Utilisateurs et pour les dimensions de type
Date, vous pouvez créer une Hiérarchie basée sur le temps.
- Indicateur : contenant une information dérivée d’un calcul (Nombre de clients, Chiffre
d'affaires, …).
- Information : un complément d’information sur des Dimensions (numéro de téléphone,
adresse,…).
-- On peut définir une liste de valeurs associée à un objet sur le poste de l’utilisateur dans un fichier
.lov dans un sous répertoire portant le nom de l’univers sous l’arborescence Userdocs. Cette liste de
valeurs fait référence aux données de l’entreprise et aux données personnelles. Si la liste de valeurs
est modifiée côté Designer, elle devra être exportée dans le référentiel afin d’impacter les
utilisateurs lors de la manipulation de celle-ci.
 La création des Hiérarchies : Mettre en œuvre l’analyse multidimensionnelle
-- Une Hiérarchie est un conteneur de Dimensions ; par exemple la Hiérarchie du nom Clients
regroupera les Objets de type Dimension Pays, Région, Ville, Nom ...
-- Les Hiérarchies représentent les axes d’analyse disponibles en mode exploration
BusinessObjects offre deux possibilités d’analyses multidimensionnelles:
-La rotation des Axes d’analyse (dimension) : permet à l’utilisateur d’analyser les
informations sous des perspectives différentes.
- L’Analyse Descendante : permet de naviguer au travers de niveaux hiérarchiques de détails.
Chapitre 5 : Création d’objets dynamiques
Le module Designer propose un groupe de fonctions spéciales, indépendantes du SGBDR cible,
appelées “Fonctions@”, et l’utilisation de ces fonctions rend la définition des Objets dynamique et
indépendante de la base de données. Qui sont :

@Prompt : La fonction @Prompt permet de créer des Objets Interactifs, utilisée dans
Select ou Where. Lors du déclenchement de la requête, une question sera posée à
l’Utilisateur.
Syntaxe : @Prompt (‘question’,’type de la réponse A, N ou D’, ‘lov‘, mono/multi, free/constrained)
-lov (optionnel) : liste de valeurs associée (soit une seule valeur ‘val’ ou plusieurs {‘val1’,’val2’,...}, ou
le nom d’un Objet ‘NomClasse\ NomObjet’)
-Mono/multi (optionnel) : renseigner qu’une seule valeur \ plusieurs
-free\constrained (optionnel) : une valeur au choix \ obligation

@Variable : La fonction @Variable vous permet de faire référence à une valeur
attribuée à un nom ou à une variable pour définir des Objets
Syntaxe : @Variable (‘mavariable’)
mavariable peut être des variables SQLBO ou des variables systèmes de BusinessObjects
(BOUSER=’nom d’utilisateur BO ’, BOPASS=’son mot de passe’) et de SGBDR (nom de la base, mot de
passe, chaîne de connexion,...), peut être aussi des variables SQLBO et avec nos propres variables, et
peur être des variable d’objet interactif ou nos propre variable.

@Select : La fonction @Select permet d’utiliser l’équivalent Select d’un Objet dans la
définition de nouveaux Objets dans la définition de nouveaux Objets pour créer un lien
dynamique entre les objets, la mise à jour de l’objet, et aussi pour décomposer la
création d’objets complexes en objets plus
Syntaxe : @Select (Nom de la Classe \ Nom de l’Objet)

@Where : La fonction @Where permet d’utiliser l’équivalent Where d’un Objet dans
la définition de nouveaux Objets.
Syntaxe : @Where (Nom de la Classe \ Nom de l’Objet)

@Script : La fonction @Script permet de récupérer les résultats d’un script exécuté
dans le module Utilisateur.
Syntaxe : @Script (‘variable’,’type’,’script name’)

@Aggregate_Aware : La fonction @Aggregate_Aware permet de définir des Objets
utilisés pour la navigation agrégée.
Syntaxe : @Aggregate_Aware (argument1, argument2,...)
Les tables d’agrégats se sont les tables qui contiennent des informations pré-calculées (chiffre
d’affaire par année, par pays,…) utilisés pour optimiser les temps de réponse de certaines requêtes.
L’utilisation :
- Insérer la table d’Agrégats dans le schéma et définir les Jointures si nécessaire
- Résoudre les éventuels problèmes de boucles en créant un contexte d’utilisation de la table
d’Agrégats définissant uniquement les jointures sur les tables compatibles avec la table d’agrégats
- Modifier l’objet en utilisant la fonction @Aggregate_Aware
@Aggregate_Aware (Définition1, Définition2,...) du plus agrégé au moins agrégé
-Définir les Objets incompatible et élaborer les requêtes Dans Reporter
- Visualiser le SQL avant déclenchement
Chapitre 5 : Approfondir les connaissances
-- Les Univers dérivés sont des Univers qui ont des éléments en communs : paramètres, classes,
objets, jointures, contextes,… servant de base pour la construction d’Univers plus personnalisés, et la
modification d’un élément de l’Univers de référence implique la mise à jour dans les Univers dérivés.
Dans l’utilité de partager des éléments communs entre plusieurs Designers.
-- il existe trois approches d’Univers dérivé :
- Noyau : Le ‘noyau’ contient les éléments communs en ajoutant des objets dans les univers
fils et qui a une mise à jour automatique
- maître : Le ‘maître’ contient tout, et les objets seront cachés et il y a un seul univers à
maintenir
- composant : Le ‘composant’ il a une vision global ou transversale d’un métier en
Assemblant plusieurs univers
-- Les conditions requises permettant de relier des Univers à l’Univers de référence sont les suivantes
•
Il repose sur la même base de données que l’Univers actif
•
Il est sécurisé (présent dans le Référentiel)
•
Les autorisations de liens sur cet Univers ont été attribuées
•
Il n’est pas verrouillé par un autre Designer
•
Il n’est relié à aucun autre Univers
-- La liaison s’opère dans les paramètres de l’Univers à lier où vous devez indiquer l’Univers de
référence, et par la suite Le designer pourra compléter son Univers : en insérant de nouvelles Classes
et Objets ou en masquant des Classes et Objets provenant de l’Univers de référence
-- Le dossier UNIVERSE : contient les fichiers *.unv de définition des Univers qui sont limités à 8
caractères pour la compatibilité entre plates-formes.
-- Ressources Univers : 6 éléments peuvent être configurés avec la boîte de dialogue "Propriétés de
l’Univers" pour répondre aux besoins d'un utilisateur ou d'un groupe précis.
Les trois premiers éléments (la Définition de l’Univers, Contrôles, et options SQL) ont été définis par
le Designer mais peuvent être modifiés pour les adapter à un utilisateur ou à un groupe. Seul un
Superviseur peut renseigner les trois suivants (des restrictions sur des Objets « l’accès » et Lignes
« limiter les lignes traitées », Correspondance de tables « substituer une table à une autre »).
-- Les paramètres de contrôles : il y a 4 paramètres pour empêcher des requêtes excessives (nombre
de lignes) ou des temps d'exécution trop long :
(a) la taille maximum du résultat de la requête (nombre de lignes),
(b) le temps maximum d'exécution de la requête,
(c) un alerteur sur le coût estimé de la requête: fournit un message d'alerte à l'utilisateur si la
requête excède les paramètres de temps spécifiés, dans le but de favoriser l'usage du batch
(uniquement pour les bases de données qui le permettent),
(d) la taille maximum des objets de type LONG : un objet de type Long peut avoir une taille
entre 65000 et 4Go.
Téléchargement