Beruflich Dokumente
Kultur Dokumente
Dans cet article, vous allez apprendre utiliser le Business Data Catalog du point de vue
d'un administrateur, et mettre les donnes disposition des utilisateurs finaux. Vous verrez
galement comment on peut intgrer le BDC avec d'autres services partags comme la
recherche ou encore les profils.
0 - Pr-requis............................................................................................................................................................... 3
I - Qu'est ce que le BDC et comment fonctionne-t-il ?............................................................................................... 3
II - Prsentation du service partag BDC................................................................................................................... 4
III - Import du fichier ADF AdventureWorksDW.......................................................................................................... 6
IV - Affichage des donnes issues du BDC..............................................................................................................10
IV-A - Les WebParts du BDC.............................................................................................................................. 10
IV-A-1 - Le composant Business Data List.................................................................................................... 11
IV-A-2 - Le composant Business Data Related List.......................................................................................13
IV-A-3 - Le composant Business Data Item...................................................................................................15
IV-A-4 - Le composant Business Data Action................................................................................................15
IV-A-5 - Le composant Business Data Item Builder.......................................................................................16
IV-B - Les colonnes Business Data et l'intgration du BDC dans les listes SharePoint......................................17
V - BDC et les profils utilisateurs.............................................................................................................................. 19
VI - BDC et la recherche...........................................................................................................................................20
VII - Conclusion......................................................................................................................................................... 20
-2Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Introduction
Le Business Data Catalog ou BDC est une des fonctionnalits majeures de Moss 2007, qui va permettre,
des utilisateurs finaux, de travailler avec n'importe quelle source de donnes directement depuis l'interface web
SharePoint, sans ncessiter de dveloppement de webparts supplmentaires, et aux dveloppeurs, d'attaquer toute
source de donnes de manire uniforme, soit via un fichier ADF (Application Definition File) au format xml, soit via
l'API fournie par le BDC.
Nous allons donc voir, dans cette srie d'articles, comment travailler avec le Business Data Catalog, en tant
qu'administrateur, dveloppeur et utilisateur final.
Dans cette premire partie, nous verrons comment travailler avec le Business Data Catalog partir d'un
exemple ; nous verrons donc comment importer nos donnes depuis l'administration des services partags (en tant
qu'administrateur), puis comment les utiliser ensuite dans nos sites SharePoint (en tant qu'utilisateur final), nous
verrons galement dans quelle mesure nous pouvons intgrer le BDC avec d'autres services partags comme la
recherche ou encore les profils
Dans les articles suivants, nous verrons galement comment crire nos propres fichiers pour requter soit directement
des bases de donnes, soit des applications tierces en passant par des web services, et enfin, comment travailler
avec le BDC depuis le modle objet de SharePoint.
0 - Pr-requis
Pour suivre ce tutoriel, vous aurez besoin des lments suivants :
-3Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Import application definition va nous permettre d'importer notre fichier ADF et donc d'intgrer nos donnes au
sein de SharePoint.
C'est donc ici que nous allons rcuprer notre fichier importer.
Dans la section File Type, nous avons 2 possibilits, soit Model, soit Ressource.
Un modle est un fichier ADF core ; c'est celui qui va donc contenir toutes les informations brutes concernant
nos donnes.
Avec un fichier ADF modle, au minimum l'administrateur doit tre capable de rcuprer les donnes.
Un fichier Resource quant lui, va nous permettre de modifier le comportement de notre ADF, en y intgrant
par exemple des informations au niveau des permissions, la gestion de la langue ou encore la modification directe
des proprits.
Grace un fichier ADF Ressource, nous allons par exemple pouvoir grer des dploiements mulitlingues, ou encore
modifier la vole l'accs nos donnes, ou mme modifier les paramtres de connexion, si par exemple l'un de
nos serveurs tait dplac.
-4Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
View applications va nous permettre de lister nos applications dj importes, et d'y modifier certains paramtres.
Ici par exemple, nous avons 3 applications qui ont t importes, 2 concernant des bases de donnes et 1 concernant
un web service.
ViewEntites va nous permettre de lister nos entits, qui sont des objets (on peut dans un 1
comme des tables), le tout en fonction de nos applications.
er
Business Data Catalog permissions, permet d'attribuer des autorisations nos utilisateurs.
Edit, qui permet l'import de fichiers ADF, ainsi que la mise jour et la suppression d'objets.
-5Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Edit page profile template, permet de customiser la page qui sera utilise pour afficher le dtail d'un item.
Maintenant que nous avons pass en revue la section BDC de notre SSP, nous allons prsent importer un fichier
ADF.
-6Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Pour cela, regardez le noud LobSystemInstance, puis Properties, et identifiez la proprits Data Source (l'instance
sur laquelle est install votre base de donnes AdventureWorksDW), et renseignez cette proprit en respectant le
critre NomDuServer\NomDeL'instance .
De mon cot, ma base de donnes AventureWorksDW se trouve sur ma machine locale et sur l'instance par
dfaut, donc je devrais avoir une valeur du genre NomServeur ou encore (local) ou encore . (local et .
dsignent comme vous l'aurez compris la machine locale, et l'instance par dfaut n'a pas de nom, d'o l'absence
de \NomInstance ).
Voici un extrait de ma section Properties :
<LobSystemInstance Name="AdventureWorksDWInstance">
<Properties>
<Property Name="AuthenticationMode"
Type="Microsoft.Office.Server.ApplicationRegistry.SystemSpecific.Db.DbAuthenticationMode">
PassThrough
</Property>
<Property Name="DatabaseAccessProvider"
Type="Microsoft.Office.Server.ApplicationRegistry.SystemSpecific.Db.DbAccessProvider">
SqlServer
</Property>
<Property Name="RdbConnection Data Source"
Type="System.String">pc-de-test</Property>
<Property Name="RdbConnection Initial Catalog"
Type="System.String">AdventureWorksDW</Property>
<Property Name="RdbConnection Integrated Security"
Type="System.String">SSPI</Property>
</Properties>
</LobSystemInstance>
Mais prsent, importons notre fichier ; pour cela, sur la page des SSP, cliquons sur Import application definition,
rcuprons notre fichier adworks.xml, slectionnons modle, et cochons toutes les cases de la section Resources
To Import.
Aprs un court instant durant lequel votre fichier ADF est analys et import,
-7Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Vous recevez un message vous indiquant que votre application a t importe avec succs.
Vous pouvez ds prsent, partir de votre site d'administration des SSP, commencer explorer votre application ;
d'ailleurs, en cliquant sur ok, vous etes redirigs vers la page View Application concernant votre application, savoir
AdventureWorks.
Ici par exemple, nous pouvons voir que nous avons 4 entits qui ont t dfines, chose que nous retrouvons
galement dans notre fichier ADF, sous le noud Entities.
Si au niveau de notre page View Entities, nous cliquons sur une entit, par exemple Product SubCategory, nous
obtenons le dtail de cette entit.
Ici par exemple, nous remarquons que cette entit est compose de 2 champs, qu'elle possde des filtres (ces
informations sont dfinies dans l'entit dans le fichier ADF), mais galement qu'une action y a t dfinie, et que
cette entit est mle 2 associations
L'action View Profile est une action prsente par dfaut (et donc il est inutile de la crer dans le fichier ADF), qui nous
donne les informations concernant le dtail d'une action.
Le bouton Add Action, nous permet depuis cette interface de rajouter directement des actions ; par exemple nous
pourrions rajouter une action qui va lancer une recherche sur le nom directement sur google.
-8Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Ici, nous avons tout simplement ajout un paramtre que nous rcuprons ensuite sous forme de querystring.
Comme vous venez de le voir, une action, c'est uniquement une url.
Ici, nous venons de dfinir une action qui s'appliquera chacun de nos items appartenant cette entit.
Si nous avions souhait dfinir une action pour toute la liste, il nous faut dfinir une action sans paramtre.
Nous verrons ultrieurement le dveloppement d'une action qui va nous permettre de gnrer un fichier excel partir
de nos items.
-9Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Si vous souhaitez visualiser/customiser le rendu de l'action View Entity, revenez simplement sur la page d'accueil des
SSP et choisissez Edit page profile template. Vous etes redirig vers une page de webparts qui sert de template,
et vous pouvez ensuite la customiser souhait.
Le dernier point important que nous allons pouvoir grer au niveau de notre application est l'affectation des
permissions aux utilisateurs.
Cette affectation aurait pu tre dfinie directement dans notre fichier ADF, ou dans un fichier ressource, mais elle
l'est galement depuis la page d'administration des SSP.
Ici vous pourrez donc dfinir qui a accs aux informations et quelles informations, et ensuite exposer vos donnes
en toute srnit.
A prsent, voyons comment mettre disposition ces donnes nos utilisateurs.
- 10 Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
- 11 Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Une fois valid, nous pouvons soit rcuprer les donnes directement en cliquant sur le lien Retrieve Data, soit dfinir
les filtres qui ont t intgrs.
Nous allons ensuite retrouver nos actions, ainsi que la possibilit de modifier la vue affiche.
En modifiant la vue, nous pourrons ainsi dfinir un certain nombre de paramtres, spcifiques aux listes SharePoint
(filtre, tri des donnes, nombre d'items par page, nombre d'items affichs, choisir les colonnes affiches), mais
galement des donnes spcifique au BDC (type de requete excute, dfinir des critres pour la requte, empecher/
autoriser un utilisateur les modifier)
- 12 Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Ci-dessus, nous avons cr une Business Data (BD) List, nous allons prsent crer une Business Data Related
(BDR) List Product et utiliser l'association ProductSubCategoryToProduct.
Pour cela, en plus d'avoir cr et configur notre BD List ProductSubCategory, nous allons prsent configurer notre
BDR List Product ;
Pour cela, dfinissons le toolpane comme ci-dessous.
- 13 Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Une fois ceci effectu, il nous faudra utiliser les connexions des webparts pour que ca fonctionne.
- 14 Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Voici le rsultat.
- 15 Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Nous pourrions par exemple connecter cette webpart avec une webpart Business Data List, et ensuite supprimer la
toolbar de la Business Data List, afin d'offrir toutes les actions dans une toolbar, directement porte de main.
- 16 Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Ce qui nous permet d'ailleurs de naviguer travers les items en modifiant directement la cl en querystring.
Ici, notre page est compose de 2 webparts connectes; 1 Business Data Item Builder qui envoie l'ID 1 Business
Data Item.
Si nous supprimons la connexion qui a t dfinie, il nous faudra ensuite paramtrer notre Business Data Item,
comme nous l'avons vu ci-dessus.
Nous venons donc de voir comment rcuprer nos donnes directement dans notre portail via un certain nombre de
webparts, ma foi fort utiles, et surtout OOTB !
Vous allez surement me dire "Ok c'est bien tout ca, on a surtout vu que ces webparts avaient un comportement
similaire aux listes natives SharePoint, mais ce qu'on Remarque, c'est que si l'on veut rajouter des actions similaires
celle disponible dans ces mme listes, comme par exemple l'export vers Excel, il va nous falloir developer nos
propres actions; il aurait t pas mal d'avoir directement nos donnes disponibles dans des listes SharePoint" et
moi de vous rpondre "N'allez pas plus vite que la musique, nous allons voir dans un instant comment intgrer nos
donnes dans les listes SharePoint" !
IV-B - Les colonnes Business Data et l'intgration du BDC dans les listes SharePoint
Nous allons galement pouvoir intgrer nos donnes directement dans des listes SharePoint, via des colonnes
Business Data.
Pour cela, nous allons commencer par crer une nouvelle liste que nous allons appeler BDC List.
Une fois cette liste cre, nous allons lui ajouter une colonne
- 17 Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Et choisir une colonne de type Business Data que nous allons appeler Product, et qui va nous servir rcuprer
l'entit Product.
Une fois ceci effectu, nous allons galement choisir quelles sont les colonnes additionnelles que nous souhaitons
afficher ; slectionnons les toutes ( l'exception de Key que nous avons dj affich), et affichons les directement
dans notre vue par dfaut.
- 18 Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Maintenant, en crant un nouvel item, il nous est demand de selectionner notre Data Item ; slectionnons en un.
Voici le rsultat.
Nous pouvons ds prsent utiliser sur nos donnes BDC toutes les fonctionnalits disponibles avec les listes, y
compris crer des colonnes calcules, ou des colonnes de recherche, qui s'appuient sur nos colonnes Business Data.
Bien que cette mthode de rcupration des donnes prsente un certain nombre d'avantage, dont principalement :
Le fait que les donnes prsentes dans les listes ne soient pas mises jour : en effet, si vous modifiez votre
source de donnes sous-jacente, les donnes prsentes dans les listes ne sont pas mises jour ; vous
pouvez nanmoins programmer un job SharePoint pour aller vrifier les donnes et faire la mise jour dans
les listes correspondantes si ncessaire.
Le fait que l'on ne puisse pas rapatrier les donnes en masse directement dans notre liste ; il faut les rajouter
une par une ; cependant la aussi, il faut suffit d'crire un code snippet qui vous permette d'effectuer ce
chargement en masse ; nous verrons ultrieurement comment rcuprer les donnes en utilisant l'API du
BDC.
- 19 Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
De cette faon, il ne nous sera pas possible de crer directement de nouveaux profils depuis notre source de donnes
base sur le BDC, ceci sera effectu via une source AD ou autre LDAP, cependant, grce aux BDC, nous allons
pouvoir rajouter des proprits, ou directement mapper des donnes issues de notre BDC directement dans nos
proprits dfinis dans nos profils.
La seule contrainte respecter est que les donnes mappes entre le Profile Store et le BDC soit de mme type.
VI - BDC et la recherche
Nous allons galement pouvoir crer une nouvelle source de contenu base sur nos applications du BDC et utiliser
le service partag de recherche de Moss 2007 pour rechercher nos donnes directement dans le BDC, comme nous
le ferions pour nos sites SharePoint.
VII - Conclusion
Dans cet article, vous avez appris travailler avec le BDC de manire native, et comme vous avez pu le constater,
dans la majorit des cas, ce sera largement suffisant.
- 20 Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/
Nous avons galement vu que malgr toutes les fonctionnalits qu'il apportait, le BDC prsentait cependant certaines
limites, limites que nous pouvons facilement vincer en y rajoutant du code custom.
Les prochains articles seront axs un peu plus sur le dveloppement, et notamment sur la production de nos propres
fichiers ADF et sur le dveloppement utilisant les API fournis avec le BDC ; vous y apprendrez par exemple comment
crire un fichier ADF pour accder une base de donnes, ou un service web, mais galement comment crer des
actions personnelles, comment accder aux donnes directement via l'API du BDC, etc.
- 21 Copyright 2008 Dieudonn N'TAMACK. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation
expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.
http://dnt91.developpez.com/tutoriel/sharepoint/a-la-decouverte-du-bdc-partie-1/