Business Objects 7 avril 2017.

Slides:



Advertisements
Présentations similaires
Mais vous comprenez qu’il s’agit d’une « tromperie ».
Advertisements

Le Nom L’adjectif Le verbe Objectif: Orthogram
ORTHOGRAM PM 3 ou 4 Ecrire: « a » ou « à » Référentiel page 6
LES NOMBRES PREMIERS ET COMPOSÉS
Ma surprise du Zoo.
[number 1-100].
Produit Gammes Nomenclatures Modules Techniques Prix de Revient Prix de Vente Modules Techniques Client Marges Mise en route Temps Unitaire Prix (Ex:
Licence pro MPCQ : Cours
Distance inter-locuteur
A.Martinez-Nepveu.
Évaluation des requêtes relationnelles
Les numéros
Les identités remarquables
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod 1 Architectures Orientées Services Composants de Service Exemple pratique de développement.
Sirop de Liège « industriel »
LES TRIANGLES 1. Définitions 2. Constructions 3. Propriétés.
User management pour les entreprises et les organisations Auteur / section: Gestion des accès.
1 7 Langues niveaux débutant à avancé. 2 Allemand.
Les fonctions.
Année universitaire Système dinformation Le SQL (Structured Query Language) langage dinterrogation dune base de données.
-17 Anticipations économiques en Europe Septembre 2013 Indicateur > +20 Indicateur 0 a +20 Indicateur 0 a -20 Indicateur < -20 Union européenne total:
1 5 octobre 2011 / paw Présentation du 7 octobre 2011.
Les requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
LMD: Langage de Manipulation de Données
Développement d’applications web
Contrôles d'accès aux données
1 Cours numéro 3 Graphes et informatique Définitions Exemple de modélisation Utilisation de ce document strictement réservée aux étudiants de l IFSIC.
Le soccer & les turbans Sondage mené par lAssociation détudes canadiennes 14 juin 2013.
1 Guide de lenseignant-concepteur Vincent Riff 27 mai 2003.
GRAM 1 CE2 Je sais transformer une phrase affirmative en phrase négative.
Le Concours de Conaissance Francais I novembre 2012.
Titre : Implémentation des éléments finis sous Matlab
1 Journée de regroupement des correspondants "Egalité et genre" - 21 novembre 2011 Rectorat de Rouen - SAIO - CD-HD Résultats scolaires, appréciations.
SELECT {* | Expression [Alias] [,...] } FROM Table [WHERE Condition] [ORDER BY { Expression | Alias } [ ASC | DESC ] [NULLS FIRST | NULLS LAST ] [,...]
L’utilisation des bases de données
Projet poker 1/56. Introduction Présentation de léquipe Cadre du projet Enjeux Choix du sujet 2.
22 janvier 2013 Commercialiser en 2013 ! Que de variables à ajuster ! 1.
F Copyright © Oracle Corporation, Tous droits réservés. Créer des programmes avec Procedure Builder.
LES NOMBRES PREMIERS ET COMPOSÉS
Logiciel gratuit à télécharger à cette adresse :
Représentation des systèmes dynamiques dans l’espace d’état
Représentation des systèmes dynamiques dans l’espace d’état
Représentation des systèmes dynamiques dans l’espace d’état
DUMP GAUCHE INTERFERENCES AVEC BOITIERS IFS D.G. – Le – 1/56.
1 Licence dinformatique Algorithmique des graphes Problèmes dordonnancement. Utilisation de ce document strictement réservée aux étudiants de l IFSIC dans.
Année universitaire Réalisé par: Dr. Aymen Ayari Cours Réseaux étendus LATRI 3 1.
Titre : Implémentation des éléments finis en Matlab
1 INETOP
Michel Tollenaere SQL et relationnel ENSGI Cours MSI 2A Relationnel et SQL version 1.4 du 25 septembre 2007 (ajout jointures) 1 Modèle relationnel Historique.
Équipe 2626 Octobre 2011 Jean Lavoie ing. M.Sc.A.
EPID-CPI-ISAIP Philippe Bancquart - mise à jour 24/02/ page 1 SQL jointure PHILIPPE BANCQUART.
P.A. MARQUES S.A.S Z.I. de la Moussière F DROUE Tél.: + 33 (0) Fax + 33 (0)
LA GESTION COLLABORATIVE DE PROJETS Grâce aux outils du Web /03/2011 Académie de Créteil - Nadine DUDRAGNE 1.
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
Limiter et trier des données
Introduction Le SQL (Structured  Query Language) est un langage universel de gestion des bases de données. Il a une triple fonction : LDD Langage de Définition.
Traitement de différentes préoccupations Le 28 octobre et 4 novembre 2010.
1/65 微距摄影 美丽的微距摄影 Encore une belle leçon de Macrophotographies venant du Soleil Levant Louis.
* Source : Étude sur la consommation de la Commission européenne, indicateur de GfK Anticipations.
Nom:____________ Prénom: ___________
Projet de stage d’année IIR4 sous le thème:
LES JEUNES BOURGUIGNONS ET LEURS STRATÉGIES D’INFORMATION LES JEUNES BOURGUIGNONS ET LEURS STRATÉGIES D’INFORMATION.
Commission paritaire de suivi des opérations de reclassement repositionnement dans le cadre du droit d’option Statistiques novembre 2010.
Les Chiffres Prêts?
Cours n°4M2. ESCE (S. Sidhom) Séminaire ( 6-12 Février 2007 ) Promo. M2 ESCE-Tunis 2006/07 Conception d’un système d'information sur Internet Architecture.
Utilisation de MS Project 2007
Quinio1 Bases de données : modèlisation et SGBD Séance 3 B Quinio.
Modélisation et utilisation Aurélien Marion1 Aurélien Marion
De Arnault Chazareix :
Transcription de la présentation:

Business Objects 7 avril 2017

Business Objects Société d’origine française (Skipper SQL en 1990) Fondée par d’anciens managers de la société Oracle Activité totalement dédiée aux problèmes d’infocentre relationnel Devient Business Objects en 1992 (Partenariat Oracle) Rachat de BO par SAP en 2008 par OPA Amicale (4.8 Milliards d’€)

Business Objects Outil de restitution d’information Leader dans les logiciels d’informatique décisionnel Concurrents : SAS, Microstrategy, Cognos… Utilisé par les grandes entreprises 46 000 clients Interface basée sur les « objets d’interrogation »  Concept de couche sémantique (breveté) Univers Objets Classes et sous classes

Couche sémantique Transformation de la structure technique en un vocabulaire métier Représentation metier Données de L’entreprise Gestion Finance Ventes Client Vendeur Chiffre d’affaire Prix Utilisateurs finaux Informaticien

BO au sein de la BI Fournir des réponses aux décideurs sur des problèmes spécifiques Autonomie d’accès à un rapport au moment du besoin Business Objects Production de rapports par les utilisateurs Pas d’intervention IT Grande flexibilité Illusion de simplicité (concepts métier) Gain de temps (concentration sur l’analyse plutôt que sur l’implémentation)

L’accès à l’information Création de requête de l’utilisateur via sélection d’objets et filtres Exécution de la requête Traduction du serveur BO en langage SQL Transmission au serveur de BD Traitement de la requête et retour des données au serveur Génération du document et envois du résultat 1 2 3 4 6 5

La suite Business Objects

Le Designer

Présentation de BO Designer L’univers Couche sémantique entre les utilisateurs et la base de donnée Les paramètres Connexion à la base et restrictions accès Les Tables Alias, requête SQL Les relations et cardinalités (nombre de lignes) Optimisation des jointures lors de la génération dynamique SQL Les classes : regroupement d’objets de même thème Les Objets (Dimensions, Informations, mesures) Fonctions de projection Les LOV (listes de valeurs)

Résolution des boucles Le raccourci jointure Chemin de prédilection L’alias Objets spécifiques Le contexte A spécifier lors de exécution Implicite en fonction de la sélection des objets

Classe Cla_id nom Promotion Etudiant Etu_id Nom Prénom Cla_id Matière Mat_id nom NB_heures Coefficient Enseignement Cla_id Mat_id Mois Année Jour Mois Année Présence Etu_id Cours_id Départ_pause Cours Cours_id Jour Heure Mat_id Année

Proposer une modélisation pour résoudre les boucles de la modélisation précédente

Classe Cla_id nom Promotion Raccourci jointure Etudiant Etu_id Nom Prénom Cla_id Matière Mat_id nom NB_heures Coefficient Enseignement Cla_id Mat_id Mois Année Jour Mois Année Présence Etu_id Cours_id Départ_pause Cours Cours_id Jour Heure Mat_id Année

Classe Cla_id nom Promotion Contexte Présence * Contexte Enseignement * Etudiant Etu_id Nom Prénom Cla_id Matière Mat_id nom NB_heures Coefficient * Enseignement Cla_id Mat_id * Mois Année * Jour Mois Année Présence Etu_id Cours_id Départ_pause Cours Cours_id Jour Heure Mat_id * Année

Classe Cla_id nom Promotion Alias Matière ens Mat_id nom NB_heures Coefficient Matière pres Mat_id nom NB_heures Coefficient Etudiant Etu_id Nom Prénom Cla_id Enseignement Cla_id Mat_id Mois Année Jour Mois Année Présence Etu_id Cours_id Départ_pause Cours Cours_id Jour Heure Mat_id Année

Présentation de BO Designer Les fonctions d’agrégats (@aggregate_aware) Se baser sur les tables optimisées en fonction du contexte La navigation agrégée Précision des incompatibilités de type Les Clefs sur Objets Accès plus rapide à la donnée Le requêteur SQL Les hiérarchies Drill up / Drill down Les invites (@prompt)

Classe Cla_id nom Promotion Note_finale = note_réelle * %age présence cours Etudiant Etu_id Nom Prénom Cla_id Matière Mat_id nom NB_heures Coefficient Enseignement Etu_id Mat_id Note_réelle Note_finale Mois Année Jour Mois Année Présence Etu_id Cours_id Départ_pause Cours Cours_id Jour Heure Mat_id Année

Proposer une modélisation permettant d’optimiser le requêtage des professeurs souhaitant visualiser les moyennes des notes par matière

Classe Cla_id nom Promotion Enseignement_agg Mat_id Note_réelle Note_finale Matière Mat_id nom NB_heures Coefficient Etudiant Etu_id Nom Prénom Cla_id Enseignement Etu_id Mat_id Note_réelle Note_finale Mois Année Jour Mois Année Présence Etu_id Cours_id Départ_pause Cours Cours_id Jour Heure Mat_id Année

Donner la définition des objets : Matière, Etudiant ,Note_réelle et Note_finale Donner les incompatibilités de type associées pour que la requête choisisse correctement la table de destination en fonction des objets sélectionnés

Matière : Matière.Nom Etudiant : Etudiant.Nom +’ ’+ Etudiant.Prénom Note_réelle : aggregate_aware(Enseignement_agg.Note_réelle, Enseignement.Note_réelle) Note_finale : aggregate_aware(Enseignement_agg.Note_finale, Enseignement.Note_ finale) Etudiant incompatible avec Enseignement_agg

BO InfoView Portail d’accès Boites email Organisation Recherche imbriquée Préférences Publication PDF / XLS/ …

BO Webi : L’éditeur de rapports Mode édition/création Rafraichissement des données Sections/Break Tris Graphiques Filtres/Alerters Mode structure Cellules libres Fonctions d’agrégation Fonction de Drill

BO Webi : L’éditeur de requête Sélection Filtres Invites SQL généré Top N / Sous requêtes Multi requêtes Cellules libres Fonctions d’agrégation Fonction de Drill

BO InfoView/Webi: fonctions avancées Planification (Schedule) Création de mesures Module de traçage* Paramètres des requêtes Fonctions d’agrégation avancées ([In], [ForEach], [ForAll],[All]…)*

Fonctions d’agrégation avancées

Fonctions d’agrégation avancées Percentage of total : [Sales revenue]/(Sum([Sales revenue] In Report)) Percentage of Year : [Sales revenue]/(Sum([Sales revenue] In Section))

Fonctions d’agrégation avancées Max : Max ([Sales Revenue] In ([Year];[Quarter])) In ([Year])

Fonctions d’agrégation avancées Max : Max ([Sales Revenue] In ([Year];[Quarter])) In ([Year]) Max : Max ([Sales Revenue] ForEach ([Quarter])) In ([Year])

Fonctions d’agrégation avancées Yearly Total : Sum([Sales Revenue] ForAll ([Quarter])) Yearly Total : Sum([Sales Revenue] In ([Year]))

Fonctions d’agrégation avancées Yearly Average : Average([Sales revenue] In Section) First Half Average : Average ([Sales revenue]) In Block Block = Section filtrée (ignore les Breaks)

Module de Traçage Comparaison des modifications de données Se base sur une instance Comparaison instance précédente ou instance fixe Données supprimées, ajoutés, mises à jour (suivant la valeur) Customisation de la visualisation des différences Etudiant Note Bob 14 Jim 8 Stella 15

Lier des rapports WebI

Lier des rapports WebI "<a href=\"../../opendoc/openDocument.jsp? sType=wid&iDocID=AYFh22UFHEJHiT0QJGA_z_0 &sIDType=CUID &lsM"+URLEncode("Select Product Part Number Code")+"=“ +URLEncode([Product Part Number Code])+“ &lsS"+URLEncode("Enter Date (Start):")+"="+ URLEncode(UserResponse("Enter Date (Start):"))+"&lsS"+URLEncode("Enter Date (End):")+"="+URLEncode(UserResponse("Enter Date (End):"))+“ &lsM"+URLEncode("Select Source System Code"+"="+URLEncode([Source System Code])+“ &NAII=Y\">Phone Resolution</a>"

Lier des rapports WebI &lsM paramètre d’invite de type "in list" &lsS paramètre d’invite de type "equals to" + pour concatener les chaines et les formules URLEncode pour convertir une chaine (avec espaces et carractères spéciaux) en une URL [] nom d’un objet dans le rapport parent UserResponse réponse donnée dans le rapport parent

BI Corporate vs BI Light « BI Corporate » / « BI Light » BI Corporate Approche classique Gestion centralisée, fiable, unicité de la donnée Cohérence inter systèmes (gouvernance) Stockage massifs et historiques Lourdeur et complexité d’architecture Demandes d’évolution coûteuse et coté IT Coût élevé Accès figé

BI Corporate vs BI Light « BI Corporate » / « BI Light » BI Light Nouvelle génération Flexibilité Prise en main rapide Orienté utilisateur Coût faible Pas d’ETL et de qualité de données Délocalisé sur les postes clients Gouvernance absente Pas de sécurité Gestion complexe des gros volumes

BI Corporate vs BI Light « BI Corporate » / « BI Light » BI Light Qliktech Tibco Jaspersoft BI Corporate SAP (Business Objects) Oracle SAS Microsoft

BI Corporate vs BI Light Complémentarité des deux approches Tendance à se rapprocher (version light pour les « majors » et fonctionnalités pour les « arrivants ») Amélioration des interfaces utilisateur Développement de solution light à déployer Gestion des volumes, travail en mémoire Développement de solutions de mobilité Amélioration de la complétude des fonctionnalités Source le CXP 2012 BI Classique BI Light

QlikView

Business Objects

Le langage SQL Création en 1974 (normalisation 1986) SQL (Structured Query Language) Langage informatique normalisé Effectuer des opérations sur des bases de données SQL1 / SQL2 / SQL3… Quatre grandes familles d’instructions SELECT INSERT UPDATE DELETE CREATE / GRANT

Select SELECT [TABLE1.CHAMP1] FROM [TABLE1] Comics Héros Numero Nom [INNER / LEFT OUTER / RIGHT OUTER] JOIN [TABLE2] ON ([TABLE1.CHAMPCLEF] = [TABLE2.CHAMPCLEF] ) WHERE / AND [RESTRICTION] GROUP BY [TABLE1.CHAMP1] HAVING [FILTRE] Afficher la liste de comics de Sheldon dont le héros est masqué Puis la liste des héros que Sheldon ne collectionne pas Enfin la liste des héros ayant le même type que le héros le plus collectionné par Raj Comics Numero Nom Héros Propriétaire Héros Nom Type

Comics Héros Numero Nom Nom Héros Type Propriétaire Afficher la liste de comics de Sheldon dont le héros est masqué Comics Numero Nom Héros Propriétaire Héros Nom Type

SELECT Cs.Nom FROM Comics cs Afficher la liste de comics de Sheldon dont le héros est masqué SELECT Cs.Nom FROM Comics cs INNER JOIN Héros hs ON (hs.Héros = cs.Héros) WHERE hs.Type =« Masqué » Comics Numero Nom Héros Propriétaire Héros Nom Type

Comics Héros Numero Nom Nom Héros Type Propriétaire Afficher la liste des héros que Sheldon ne collectionne pas Comics Numero Nom Héros Propriétaire Héros Nom Type

SELECT DISTINCT hs.Nom FROM Héros hs Afficher la liste des héros que Sheldon ne collectionne pas SELECT DISTINCT hs.Nom FROM Héros hs WHERE NOT EXISTS (SELECT 1 FROM Comics cs WHERE cs.Propriétaire =« Sheldon » AND cs.Héros=hs.Héros) LEFT OUTER JOIN Comics cs ON (cs.Propriétaire =« Sheldon » AND cs.Héros=hs.Héros) WHERE cs.Numero IS NULL Comics Numero Nom Héros Propriétaire Héros Nom Type

Comics Héros Numero Nom Nom Héros Type Propriétaire Afficher la liste des héros ayant le même type que le héros le plus collectionné par Raj Comics Numero Nom Héros Propriétaire Héros Nom Type

Comics Héros Numero Nom Nom Héros Type Propriétaire Afficher la liste des héros ayant le même type que le héros le plus collectionné par Raj SELECT cs1.Héros FROM (SELECT Héros FROM (SELECT cs.Héros, count(hs.Numero) FROM Comics cs WHERE cs.Propriétaire =« Raj » GROUP BY cs.Héros ORDER BY count(cs.Numero) DESC) WHERE ROWNUM = 1) cs1 INNER JOIN Héros hs ON (cs1.Héros=hs.Héros) INNER JOIN Héros hs2 ON (hs1.Type=hs.Type AND hs1.Héros <> hs.Héros) Comics Numero Nom Héros Propriétaire Héros Nom Type

Comics Héros Numero Nom Nom Héros Type Propriétaire Afficher la liste des héros ayant le même type que le héros le plus collectionné par Raj SELECT (SELECT DISTINCT first_value(Héros) Héros OVER (PARTITION BY cs.Propriétaire ORDER BY count(cs.Numero) DESC) FROM Comics cs WHERE cs.Propriétaire =« Raj » INNER JOIN Héros hs ON (cs.Héros=hs.Héros)) INNER JOIN Héros hs2 ON (hs1.Type=hs.Type AND hs1.Héros <> hs.Héros) Comics Numero Nom Héros Propriétaire Héros Nom Type

Comics Héros Numero Nom Nom Héros Type Propriétaire Penny voudrait se commencer une collection elle aussi même si beaucoup de héros sont déjà pris. Elle pose toute de même une condition : ne pas commencer une collection dont d’Howard aurai plus de 2 exemplaires Lister les choix de penny par ordre de préférence Comics Numero Nom Héros Propriétaire Héros Nom Type

Comics Héros Numero Nom Nom Héros Type Propriétaire Penny voudrait se commencer une collection elle aussi même si beaucoup de héros sont déjà pris. Elle pose toute de même une condition : ne pas commencer une collection dont d’Howard aurai plus de 2 exemplaires Lister les choix de penny par ordre de préférence SELECT DISTINCT cs1.Héros, 0 FROM Comics cs1 WHERE NOT EXISTS (SELECT 1 FROM Comics cs2 WHERE cs2.Propriétaire =«  Howard  » AND cs1.Héros=cs2.Héros) UNION ALL SELECT cs.Héros, count(hs.Numero) FROM Comics cs WHERE cs.Propriétaire =« Howard » GROUP BY cs.Héros ORDER BY count(hs.Numero) ASC HAVING count(cs.Numero)<=2 Comics Numero Nom Héros Propriétaire Héros Nom Type