Fusion de dimension

Dans ce tutoriel vous découvrirez comment et pourquoi appliquer une fusion de dimensions lorsque vous avez créé plusieurs requêtes dans un document Web intelligence 4.2

  • Version : SAP Business Objects 4.2 SP3 Patch 4
  • Application : Web Intelligence
  • Prérequis : Aucun

Contexte : Vous devez créer un tableau avec des dimensions issu de différentes requêtes.

  • Deux option s’offre à vous :
  • Au moment de la création du document sélectionné directement  « Ajouter une requête » puis l’option qui vous correspond (dans notre cas « A partir de l’univers »)

  • Sélectionnez un univers (différents ou pas)

  • Cliquez sur « OK »
  • Voici nos requêtes

Je vous laisse choisir vos dimensions, préfiltres, attributs et vos indicateurs dans les différentes requêtes.

  • Puis sélectionner « Exécuter les requêtes»
  • Pour un meilleur confort visuel des « Objets disponibles », sélectionnez « Organisé par Ordre alphabétique » puis « Source de données ».

Avant / Après

 

 

  • Pour fusionner deux dimensions, dirigez-vous vers le menu « Accès aux données», « Objets de données », puis  « fusionner ».

Comme détailler dans l’image du dessus, la fusion s’applique exclusivement sur des dimensions.

  • Sélectionnez les dimensions à fusionner.

  • Voici le résultat

  • Maintenant que notre fusion est créée, nous pouvons créer notre tableau

  • Voici le résultat obtenu quand on créée un tableau avec une dimension issu de la requête 1 et un indicateur récupérer de la requête 2

  • Web Intelligence, nous affiche le total au lieu de nous présenter la valeur exacte ligne par ligne

Vous savez maintenant créer une fusion entre deux dimensions issues de requêtes différentes sur un document Web Intelligence 4.2 !

27 commentaires

  1. Jean Répondre

    Bonjour,

    J’ai 3 requêtes dans mon document.
    Je dois afficher dans le même tableau des objets issus de ces 3 requêtes.
    La première et la deuxième requête sont fusionnées sur 2 colonnes (req1.colonneA=req2.colonneB).
    La deuxième et la troisième requête sont fusionnées sur 2 autre colonnes (req2.colonneC=req3.colonneD).
    J’ai défini des variables de type détail pour les afficher ensemble mais les colonnes issues de la 3ième requête sont vides alors qu’elles contiennent bien des données.
    Est-ce possible d’afficher les données des 3 requêtes ensemble?
    Cordialement,
    Jean

  2. Romain CARRETERO Répondre

    Bonjour,

    Pour que votre fusion fonctionne il faut soit :

    1- Fusionner toutes les dimensions communes de vos 3 requêtes (req1.colonneA=req2.colonneB=req3.colonneX et req1.colonneY=req2.colonneC=req3.colonneD etc…)

    2- Créer une variable en précisant le contexte de calcul après fait votre fusion de base. Par exemple : MaVariable=req3.colonneX Dans(DimensionFusionnée)

  3. ThortueBI Répondre

    Vous expliquez le comment faire, merci. Mais vous n’expliquez pas vraiment à quoi servent les fusions. C’est dommage.
    1. Est-ce que le fait de faire une fusion entre deux requêtes ou plus, permet d’agréger (ou de réduire) les données qui vont être récupérer par les fournisseurs de données (comme un rôle de filtre)?
    2. OU alors la fusion s’applique après que les fournisseurs de données (requêtes) aient chacune récupérées leurs données?

    • William MARCY Auteur de l’articleRépondre

      C’est l’option 2 !

      La fusion permet de lier deux jeux de données APRES que le dataset ait été récupéré. Donc cela ne limite pas le volume de données.

      Pour limiter le résultat d’une requête, il existe des filtres de requêtes ou bien des requêtes combinées mais il s’agit d’un usage plus technique.

  4. ThortueBI Répondre

    Merci.
    Pour les fusions d’invites, comment cela fonctionne-t-il?
    J’ai deux dimension dates dans 2 requêtes différentes :
    – une dimension date avec AAAAMMJJ + heure
    – une dimension date avec AAAMMJJ
    Ces deux dimensions proviennent de deux requêtes (univers distincts). Je les ai fusionné.
    Mais je veux fusionner les Invites. J’ai donné le même nom d’invites (Date début (AAAA-MM-JJ): et Date fin (AAAA-MM-JJ):) et cela ne fonctionne pas.
    Est-ce à cause de l’heure pour une des dimensions dates?

  5. JB Répondre

    Bonjour,
    J’ai deux requêtes provenant de deux univers différents :
    – Code produit / Effectifs
    – Code produit / Regroupement de produits.
    J’ai fusionné les deux dimensions Code produit, et je souhaite sortir une rapport avec les effectifs par regroupement de produit, sans le code produit pour limiter le volume de données. Comme dans votre dernier exemple, j’ai même montant sur chaque ligne.
    Le rapport souhaité serait impossible à faire ?
    Merci
    JB

  6. William MARCY Auteur de l’articleRépondre

    Vous pouvez créer un tableau avec Code produit (dimension fusionnée) / Effectifs (Query 1) / Regroupement de produits (Query2) et ensuite masquer la colonne Code produit (Clic droit > masquer la colonne) 🙂

  7. Sesev Répondre

    Bonjour,
    J’ai une requête avec l’identifiant de l’action, la semaine de création, la semaine de clôture et le nombre d’action. Je veux afficher dans un même tableau, la semaine, le nombre de créations et le nombre de clôtures. J’ai donc créer une 2ème requête qui me donne la liste des semaines pour pouvoir fusionner la semaine de ma 2ème requête avec la semaine de création et la semaine de clôture. Mais je ne peux pas fusionner les 3 dimensions. Seulement 2 dimensions. Je ne peux donc pas afficher le nombre de créations et le nombre de clôtures dans un même tableau.
    Est-ce que le problème vient de la fusion?
    Merci de votre aide

  8. Arnaud Répondre

    Bonjour
    Je souhaite fusionner 2 requêtes sur la base d’un champ commun (numéro de client) sous Bo V4, avec une requête qui provient d’un univers Bo et une requête qui provient d’un fichier Excel importé sous Bo.
    Les 2 champs sont des « dimensions » au même format « Texte ».
    La requête univers Bo contient 2 autres champs en plus du commun nommés À et B.
    La requête Bo issue de l’import Excel contient 2 autres champs en plus du commun nommés 1 et 2.
    Après fusion,
    – j’arrive à lier le champs commun avec A ou B mais pas les champs 1 ou/et 2 en plus.
    – j’arrive à lier le champs commun avec 1 ou 2 mais pas les champs A ou/et B en plus.
    Si quelq’un a une solution à mon problème, je le remercie par avance.

    • Romain CARRRETERO Répondre

      Bonjour,

      En multi-requête, pour pouvoir croiser les dimensions issues des deux requêtes ensemble il faut :
      1- Clic droit sur le dossier « Variables » > Nouveau
      2- Dans la fenêtre de création de la variable, définir un nom et positionner le champ « Qualification » sur « Détails »
      3- Indiquer la dimension fusionnée dans le champs « Dimension associée »
      4- Dans l’expression de la formule écrire =[A] pour votre dimension A par exemple et valider votre variable.
      5- Faire de même pour la dimension B

      Vous pourrez ensuite croiser les dimensions A et B dans un tableau avec la dimension commune fusionnée et les champs 1 et 2.

      Je vous laisse tester cela et revenir vers nous en cas de besoin.
      Bonne journée.
      Romain CARRETERO

  9. PEREDO Répondre

    Bonjour
    J’ai deux requêtes d’univers différents que j’arrive bien à fusionner 2 dimensions communes. Ces requêtes concernent des emplois. En simplifiant:
    Dans une requête, j’ai le type de poste dans une colonne 1 par exemple, le lieu en colonne 2, et la variable effectif total en colonne 3.
    Dans l’autre requête, j’ai dans une colonne le type de poste en colonne 1, le lieu en colonne 2, le nom des employés en colonne 3.
    La variable effectif total dans la première requête ne m’arrange pas, et il me faudrait plutôt obtenir en résultat une ligne par effectif. Par exemple à PARIS au lieu d’avoir une ligne avec l’effectif 10 dans le poste informaticien, je souhaite avoir 10 lignes informaticien à PARIS.
    Car je ne peut pas faire correspondre le nom de famille de la 2ème requête, avec la 1ère

    Connaissez vous la formule pour dupliquer les lignes autant de fois qu’il y a d’effectif?
    Merci

    • William MARCY Auteur de l’articleRépondre

      Malheureusement je ne peux pas vous donner de formule magique, il peut y avoir plusieurs façons de résoudre ce problème. Il faudrait que nous puissions vous assister sur une prise en main mais cela est réservé à nos clients en maintenance, désolé 🙁

  10. Raquel Hernansanz Répondre

    Je veux fussioner les noms des produits de 2 univers differents, le probleme est que ne son pas exactement pareils et je dois faire une petite modification pour qu’ils soient exact, pour ceci, j’ai crée une variable avec la modification… Comment peux je fussioner ma variable cree en format dimension et la dimension de l’autre univers?

    • Romain CARRETERO Répondre

      Bonjour,

      Pour pouvoir fusionner deux dimensions, il faut qu’elles soient du même type et du même format en cas de dimension de type Date. De ce fait, vous pouvez utiliser une fonction tel que EnNombre() ou FormatDate() pour modifier le type ou le format de votre dimension de base.

      Bonne journée,

      Romain CARRETERO

  11. ERIC Répondre

    bonjour,

    Source 1 : fichier externe excel janvier
    Source 2 : même structure (nom de colonnes identiques) mais février

    J’ai activé la fonction ‘fusionner automatiquement la dimension’ mais les dimensions ne se fusionnent pas.
    Comment fonctionne cette fonction de ‘fusion automatique’ svp ?

    Merci

    • Romain CARRETERO Répondre

      Bonjour,

      La fusion automatique de données ne fonctionne qu’avec des requêtes partageant le même univers. Cela ne fonctionnera donc pas dans votre cas, il faudra réaliser la fusion manuellement.

      Bonne journée.

      Romain CARRETERO

  12. nadia Répondre

    Bonjour
    J’ai besoin de votre aide ,je dois faire comparaison entre deux sources sous forme de solde de comptes bancaire et apres en cas d’ecart je dois detaillé cet ecart , le souci comment je dois recuperer ces comptes en ecart pour les detailler .

    Merci

  13. TACHEFINI Répondre

    Bonjour ! 🙂

    Je souhaiterais de l’aide svp.

    j’ai 3 objets.

    2 Objets liés entre eux Métier et identifiant employé 1
    1 Objets contenant les mêmes infos que l’un des 2 objets. identifiants employé 2
    Je souhaiterais faire apparaitre le métier pour l’identifiant employé 2 dans le même tableau svp 🙂

    Ça donne ça :

    métier : identifiant employé 1 identifiant employé 2 Nouvelle colonne
    Boulanger 123 789 Peintre
    Artisan 456 101 Boucher
    Peintre 789 456 Artisan
    Boucher 101 123 Boulanger

    Savez vous si je peux le faire svp ?

    En vous remerciant par avance

    Bien cordialement

  14. TACHEFINI Répondre

    Merci romain,

    il s’agit bien d’une seul requête dans un seul univers.

    Avez vous la manip pour fusionner les 2 objets ou peut être qu’il y a un autre moyen que la fusion ?

    En vous remerciant par avance

    Bien cordialement

    • Romain CARRETERO Répondre

      Bonjour,

      Si vos objets proviennent du même univers et que vous ne pouvez pas croiser les données dans un même tableau, il y a, selon moi, un problème dans la conception de l’univers. Il faudrait revoir peut-être revoir les jointures entre les tables.
      Sinon si vous souhaitez réaliser cette fusion dans Webi, il vous suffit de faire 2 requêtes séparées.
      A partir de là, vous pourrez fusionner les dimensions [Employé 1] et [Employé 2].

      Romain CARRETERO

  15. TACHEFINI Répondre

    Hello

    C’est ce que j’ai fait finalement, j’ai crée une deuxième requête. Ça fonctionne mais partiellement, je ne comprends pas pourquoi il ne me récupére pas toutes les infos.

    Quand je prends une des informations manquantes et que je la recherche dans l’univers en question il me la remonte bien par contre dans le tableau ou la fusion a lieu, il en manque sachant que je n’ai mis aucun filtre ( sauf pour la première requête qui elle filtre sur d’autres critères qui n’ont rien à voir avec la 2e ) ?

    Bien cordialement.

    • Romain CARRETERO Répondre

      Bonjour,

      Utilisez-vous bien la dimension fusionnée dans votre tableau ?
      En effet, lorsqu’on fusionne un objet A avec un un objet B, cela crée une « dimension fusionnée »(=un objet C).
      Seul l’objet C renvoie l’union des valeurs des objets A et B.

      Romain CARRETERO

  16. TACHEFINI Répondre

    Merci Romain ! 🙂

    Alors, il se trouve que ne pas mettre de filtre m’empéche justement de tout voir et me délivre un résultat partiel, ce qui veut dire qu’il fallait que j’affine mes criteres pour pouvoir voir les résultats que je souhaitais 🙂

    J’en profite pour vous poser une autre questions s’il vous plait :

    J’ai 4 objets qui contiennent les mêmes infos, je voudrais créer uen variable et y mettre uniquement la donnée présente parmi les 4 objets. Savez vous comme je pourrais faire svp ?

    Exemple :

    CP1 CP2 CP3 CP4 nouvelle colonne
    75002 75002 75002
    75003 75003 75003
    75004 75004 75004
    75005 75005 75005

    • Romain CARRETERO Répondre

      Bonjour,

      Je n’ai pas bien compris, quel est le résultat attendu dans la nouvelle colonne?

      Romain

  17. julien Répondre

    Bonjour,
    est-il possible de fusionner des dimensions qui sont des concaténations d’autres dimensions? c’est le seul moyen pour obtenir des identifiants uniques.

    • Romain CARRETERO Répondre

      Bonjour,

      Oui vous pouvez créer des variables de type dimension pour réaliser vos concaténations et fusionner ensuite les variables entre elles.

      Romain CARRETERO

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *