Partager via


Exemple de code : objets personnalisés de rapport, de filtre et de source de données tabulaires

Dernière modification : mardi 31 mai 2011

S’applique à : SharePoint Server 2010

Nous vous recommandons d’utiliser l’exemple comme modèle pour vos extensions personnalisées. Il contient des objets d’assistance qui facilitent l’appel des opérations de référentiel (création et mise à jour, par exemple) et montre les meilleures pratiques en matière de programmation avec PerformancePoint Services. Pour plus d’informations sur les types d’extensions pris en charge, voir Scénarios de développement avec PerformancePoint Services.

Composants d’objets personnalisés contenus dans l’exemple

L’exemple contient les composants suivants, qui s’appliquent à des objets personnalisés :

  • Extension de rapport

  • Extension de filtre

  • Extension de source de données

  • Objets d’assistance

Les extensions de rapport, de filtre et de source de données incluent des composants de conversion ou de fourniture, ainsi que des composants d’édition. Les convertisseurs sont implémentés sous forme de contrôles serveur Web et les éditeurs sont implémentés sous forme de pages ASPX comportant des classes code-behind. Les exemples d’éditeurs suivent la pratique de développement de SharePoint Server, consistant à définir dans une classe, compilée dans une DLL, la logique de programmation de l’éditeur pour la page ASPX.

Notes

Pour plus d’informations sur l’installation des objets personnalisés de l’exemple sur votre ordinateur de développement, voir Installation des objets de rapport, de filtre et de source de données de l’exemple.

Extension de rapport

Le rapport de l’exemple reçoit des données du filtre de l’exemple et affiche des informations de cotation boursière dans un tableau. Les extensions de rapport personnalisé incluent généralement un convertisseur (obligatoire) et un éditeur.

Le rapport de l’exemple contient les fichiers suivants :

  • SampleReportRenderer.cs  Génère le rendu de l’exemple de rapport dans un composant WebPart. Le convertisseur est un contrôle serveur Web utilisant un objet HtmlTextWriter pour écrire le code HTML permettant l’affichage du rapport.

  • SampleReportViewEditor.aspx  Fournit l’interface utilisateur de l’éditeur, qui est une page ASPX s’exécutant sur le serveur Web frontal et affichant des contrôles serveur Web. La page ASPX définit les contrôles serveur Web en HTML.

  • SampleReportViewEditor.cs  Fournit la logique de programmation de l’éditeur, y compris la logique des contrôles définis dans la page ASPX.

Pour plus d’informations, voir Créer des extensions de rapport.

Extension de filtre

Le filtre de l’exemple utilise des cotations boursières extraites d’un service Web ou d’un classeur Microsoft Excel. Les extensions de filtre personnalisées comprennent généralement un fournisseur (obligatoire), un convertisseur et un éditeur. Un filtre peut utiliser un convertisseur personnalisé ou un convertisseur PerformancePoint Services natif. Cet exemple utilise le contrôle d’arborescence PerformancePoint Services à sélection multiple.

Le filtre de l’exemple contient les fichiers suivants :

  • SampleFilterDataProvider.cs  Définit le fournisseur de données du filtre personnalisé. Cette classe gère l’interaction avec la source de données du filtre.

  • SampleFilterEditor.aspx  Fournit l’interface utilisateur de l’éditeur, qui est une page ASPX s’exécutant sur le serveur Web frontal et affichant des contrôles serveur Web. La page ASPX définit les contrôles serveur Web en HTML.

  • SampleFilterEditor.cs  Fournit la logique de programmation de l’éditeur, y compris la logique des contrôles définis dans la page ASPX.

Pour plus d’informations, voir Créer des extensions de filtres pour les services PerformancePoint Services.

Extension de source de données

L’exemple de source de données fournit des cotations boursières à partir d’un service Web. Les extensions de source de données personnalisées incluent généralement un fournisseur (obligatoire) et un éditeur. PerformancePoint Services prend uniquement en charge les sources de données tabulaires.

La source de données de l’exemple contient les fichiers suivants :

  • BasicTabularDataSourceProvider.cs  Contient les méthodes qui ont été substituées et qui ne sont pas implémentées par le fournisseur de source de données personnalisée.

  • SampleDataSourceEditor.aspx  Fournit l’interface utilisateur de l’éditeur, qui est une page ASPX s’exécutant sur le serveur Web frontal et affichant des contrôles serveur Web. La page ASPX définit les contrôles serveur Web en HTML.

  • SampleDataSourceEditor.cs  Fournit la logique de programmation de l’éditeur, y compris la logique des contrôles définis dans la page ASPX.

  • SampleDSCacheHandler.cs  Représente la source de données sous-jacente fournissant les cotations boursières. Cette classe extrait des cotations à partir d’un fichier cache et met celui-ci à jour en utilisant les valeurs extraites du service Web.

  • WSTabularDataSourceProvider.cs  Représente le fournisseur de source de données personnalisée.

Pour plus d’informations, voir Créer des extensions de sources de données tabulaires pour les services PerformancePoint Services.

Objets d’assistance

PerformancePoint Services utilise des listes SharePoint comme référentiel pour les objets de première classe. Il stocke les sources de données dans une bibliothèque de documents SharePoint et les tableaux de bord, cartes de performance, rapports, filtres, indicateurs de performance clés et autres indicateurs dans une liste SharePoint. Le référentiel par défaut se compose de la bibliothèque de connexions de données PerformancePoint et de la liste de contenu PerformancePoint.

L’exemple inclut des objets d’assistance facilitant l’exécution des opérations requises entre un éditeur et le référentiel PerformancePoint Services, par exemple l’extraction et la mise à jour des objets personnalisés, ainsi que l’accès aux sources de données PerformancePoint Services. Les objets d’assistance fournissent également des hooks pour la journalisation du serveur et la gestion des exceptions.

Notes

Les exemples d’éditeurs étant exécutés sur le serveur Web frontal, ils utilisent les objets BIMonitoringServiceApplicationProxy et SPDataStore pour réaliser des opérations sur le référentiel. Pour plus d’informations, voir Éditeurs pour les objets personnalisés des services PerformancePoint Services.

Les classes suivantes de l’exemple représentent des objets d’assistance :

  • ExtensionRepositoryHelper.cs  Représente la classe de base des objets d’assistance du référentiel.

    • DataSourceRepositoryHelper.cs  Crée, récupère et met à jour des objets de source de données personnalisée dans le référentiel PerformancePoint Services. Cette classe est utilisée par l’éditeur de source de données de l’exemple.

    • FilterRepositoryHelper.cs  Crée, récupère et met à jour des objets de filtre personnalisé dans le référentiel PerformancePoint Services. Cette classe est utilisée par l’éditeur de filtre de l’exemple.

    • ReportViewRepositoryHelper.cs  Crée, récupère et met à jour des objets de rapport personnalisé dans le référentiel PerformancePoint Services. Cette classe est utilisée par l’éditeur de rapport de l’exemple.

  • IDataSourceConsumer.cs  Représente une interface implémentée par les classes FilterRepositoryHelper et ReportViewRepositoryHelper, qui les identifie comme consommateurs de source de données.

  • DataSourceConsumerHelper.cs  Accède aux données issues des sources de données sous-jacentes et les consomme. Cette classe est utilisée par le rapport et le filtre de l’exemple.

Installation des objets de rapport, de filtre et de source de données de l’exemple

Pour installer les objets de rapport, de filtre et de source de données de l’exemple, vous devez générer l’assembly de l’exemple, l’enregistrer auprès du Global Assembly Cache, copier les fichiers d’éditeur et de feuille de style, puis enregistrer les extensions dans le fichier web.config de PerformancePoint Services. L’exécution de ces tâches nécessite des autorisations administratives suffisantes sur le serveur d’applications, c’est-à-dire sur l’ordinateur exécutant PerformancePoint Services.

Notes

Pour que la fonctionnalité de redirection qui ouvre un éditeur personnalisé puisse fonctionner, votre configuration SharePoint Server 2010 doit contenir une collection de sites de niveau supérieur (racine).

Notes

Des instructions permettant d’installer l’intégralité de l’exemple sont fournies avec les fichiers de l’exemple.

Pour installer les objets de l’exemple

  1. Téléchargez le fichier compressé (.zip) Kit de développement logiciel PerformancePoint Services (éventuellement en anglais), qui inclut les composants personnalisés de rapport, de filtre et de source de données tabulaires.

  2. Procédez à l’extraction du contenu dans un dossier de votre ordinateur.

  3. Ouvrez l’exemple dans Visual Studio.

  4. Dans l’Explorateur de solutions, développez le dossier Références et restaurez les éventuelles références de projet manquantes. Les assemblys PerformancePoint Services sont installés uniquement dans le Global Assembly Cache. Selon votre environnement de développement, vous devrez peut-être les copier dans un autre répertoire. Pour obtenir des instructions sur la copie d’assemblys PerformancePoint Services à partir du Global Assembly Cache, voir DLL PerformancePoint Services utilisées dans les scénarios de développement.

    L’exemple inclut des références aux assemblys PerformancePoint Services et SharePoint Server 2010suivants :

    • Microsoft.PerformancePoint.Scorecards.Client

    • Microsoft.PerformancePoint.Scorecards.DataSourceProviders.Standard

    • Microsoft.PerformancePoint.Scorecards.Server

    • Microsoft.PerformancePoint.Scorecards.ServerCommon

    • Microsoft.PerformancePoint.Scorecards.ServerRendering

    • Microsoft.PerformancePoint.Scorecards.Store

    • Microsoft.SharePoint

  5. Générez l’assembly de l’exemple.

    Notes

    Dans ces instructions, nous supposons que vous signez l’assembly en utilisant le fichier SDKSamples.snk inclus dans l’exemple. Si vous utilisez un fichier de clé portant un autre nom fort pour générer un jeton de clé publique pour l’assembly, remplacez le jeton de clé publique de l’exemple figurant dans ces instructions (fa525c8383a44a52) par la clé réelle. Ces instructions supposent également que l’URL relative au serveur du référentiel de la source de données est /BICenter/Data Connections for PerformancePoint/. Si l’URL est différente dans votre configuration, modifiez l’URL dans la méthode SampleFilterEditor.PopulateDataSourceDropDown. Selon votre configuration, il se peut que l’URL ne nécessite pas de barre oblique initiale.

  6. Sur le serveur d’applications, ajoutez l’assembly de l’exemple (Microsoft.PerformancePoint.SDK.Samples.dll) au Global Assembly Cache. Pour plus d’informations, voir How to: Install an Assembly into the Global Assembly Cache.

  7. Copiez les pages ASPX de l’éditeur qui se trouvent dans les dossiers SampleDataSource, SampleFilter et SampleReport figurant dans les fichiers de l’exemple dans le dossier LAYOUTS, à l’emplacement suivant : %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\LAYOUTS.

  8. Copiez le fichier ppsmasdk.css figurant parmi les fichiers de l’exemple dans le dossier STYLES, à l’emplacement suivant : %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\LAYOUTS\STYLES.

  9. Suivez les étapes 1 à 3 de la procédure « Pour ajouter des métadonnées pour un objet de source de données, filtre ou rapport personnalisé » dans Procédure : enregistrer manuellement des extensions PerformancePoint Services. Cette procédure crée une copie de sauvegarde du fichier web.config de PerformancePoint Services, puis ajoute le code nécessaire pour prendre en charge l’enregistrement des objets personnalisés.

  10. Pour enregistrer les objets de rapport, de filtre et de source de données de l’exemple, collez le code ci-dessous dans l’élément CustomFCOGroup.

    <CustomFCO type="DataSource" subType="WSTabularDataSource">
        <Resources FCOName="Custom Data Source" FCODescription="This is my custom data source." />
        <EditorURI uri="/_layouts/SampleDataSourceEditor.aspx" />
    </CustomFCO>
    <CustomFCO type="Filter" subType="SampleFilter">
        <Resources FCOName="Custom Filter" FCODescription="This is my custom filter." />
        <RendererClass name="Microsoft.PerformancePoint.Scorecards.ServerRendering.MultiSelectTreeViewControl, 
        Microsoft.PerformancePoint.Scorecards.ServerRendering, Version=14.0.0.0,
        Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
        <EditorURI uri="/_layouts/SampleFilterEditor.aspx" />
    </CustomFCO>
    <CustomFCO type="ReportView" subType="SampleReportView">
        <Resources FCOName="Custom Report" FCODescription="This is my custom report."/>
        <RendererClass name="Microsoft.PerformancePoint.SDK.Samples.SampleReport.SampleReportRenderer,
        Microsoft.PerformancePoint.SDK.Samples, Version=14.0.0.0,
        Culture=neutral, PublicKeyToken=fa525c8383a44a52" />
        <EditorURI uri="/_layouts/SampleReportViewEditor.aspx" />
    </CustomFCO>
    
  11. Pour enregistrer le fournisseur de source de données de l’exemple, collez le code ci-dessous dans l’élément CustomDataSourceProviders.

    <add key="WSTabularDataSource" value="Microsoft.PerformancePoint.SDK.Samples.SampleDataSource.WSTabularDataSourceProvider,
    
        Microsoft.PerformancePoint.SDK.Samples, Version=14.0.0.0, Culture=neutral,
    
        PublicKeyToken=fa525c8383a44a52" />
    
  12. Pour enregistrer le fournisseur de filtre de l’exemple, collez le code ci-dessous dans l’élément CustomParameterDataProviders.

    <add key="SampleFilterDataProvider" value="Microsoft.PerformancePoint.SDK.Samples.SampleFilter.SampleFilterDataProvider,
    
        Microsoft.PerformancePoint.SDK.Samples, Version=14.0.0.0, Culture=neutral,
    
        PublicKeyToken=fa525c8383a44a52" />
    
  13. Enregistrez puis fermez le fichier web.config.

  14. Selon votre environnement, vous devrez peut-être redémarrer Internet Information Services (IIS).

Une fois que vous avez installé l’exemple, vous pouvez utiliser PerformancePoint Dashboard Designer pour créer des instances des objets de source de données, de filtre et de rapport de l’exemple. (Commencez par créer l’exemple de source de données pour pouvoir la sélectionner comme source de données du filtre. Assurez-vous de cliquer sur OK dans l’éditeur de rapport afin d’initialiser les points de terminaison du rapport et d’actualiser Dashboard Designer afin d’obtenir les versions mises à jour des objets personnalisés.) Ajoutez ensuite le filtre et le rapport à un tableau de bord, puis connectez-les en sélectionnant le point de terminaison de l’affichage Rapport de l’exemple comme point de terminaison du rapport et Symbole comme valeur source pour le point de départ du filtre. Pour plus d’informations sur la façon d’utiliser Dashboard Designer, voir le site Web Office.

Voir aussi

Concepts

Éditeurs pour les objets personnalisés des services PerformancePoint Services

Exemple de code : transformations de tableau de bord personnalisées

Autres ressources

Créer des extensions de rapport

Créer des extensions de filtres pour les services PerformancePoint Services

Créer des extensions de sources de données tabulaires pour les services PerformancePoint Services