Présentation
Le but de ce
développement est de permettre d’avoir une vue synthétique sur les utilisateurs
des plannings fournit par Microsoft Project Server via SharePoint.
En effet, les données
sont stockés dans la base de données SQL Server et donc uniquement accessible
via requête SQL.
Ce développement va
permettre d’afficher les informations relatives à la saisie des plannings par
les utilisateurs via une liste SharePoint.
Plusieurs étapes sont
nécessaires à cette réalisation :
- Créer une vue
des données à partir de la BDD SQL Server et nécessaire à la liste SharePoint
- Créer une
entrée dans la Secure Store Service, qui va permettre au service SharePoint de
stocker les informations relatives à la connexion avec le serveur de BDD.
- Créer un Type
de contenu externe via un BCS (Business Connectivity Services) permettant de
récupérer les données externes à la base de contenu SharePoint
- Attribuer les
droits utilisateurs sur le type de contenu
- Créer une
liste externe qui permettra d’afficher le type de contenu externe crée
précédemment.
|
Rendu final de la liste externe cree via bcs sharepoint 2010 |
Création de la
vue
Avec un utilisateur ayant
suffisamment de droit sur la base donnée MSProject, se connecter et
exécuter le script :
CREATE VIEW
[dbo].[V_UTILISATEUR_WITH_DAY_LAST_PUBLISHED_TIMESHEET]
AS
(SELECT res.res_uid as id_utilisateur,
res.res_name as
nom_utilisateur,
res.WRES_ACCOUNT as
account_utilisateur,
res.wres_email as
email_utilisateur,
max(act.MOD_DATE)
as date_last_published,
DATEDIFF(day,max(act.MOD_DATE),SYSDATETIME()) as
nombre_jour_derniere_saisie
FROM
[ProjectServer_Published_project_portfolio].[dbo].[MSP_RESOURCES] res,
[ProjectServer_Published_project_portfolio].[dbo].MSP_TIMESHEETS
ts,
[ProjectServer_Published_project_portfolio].[dbo].MSP_TIMESHEET_LINES
line,
[ProjectServer_Published_project_portfolio].[dbo].MSP_TIMESHEET_ACTUALS
act
WHERE
res.WRES_ACCOUNT IS
NOT NULL
AND
res.RES_UID =
ts.RES_UID AND
ts.TS_UID =
line.TS_UID
AND
line.TS_LINE_UID =
act.TS_LINE_UID
group
by res.res_uid, res.RES_NAME, res.wres_email, res.wres_account)
UNION
(
SELECT res.res_uid
as id_utilisateur,
res.res_name as
nom_utilisateur,
res.WRES_ACCOUNT as
account_utilisateur,
res.wres_email as
email_utilisateur,
null as
date_last_published,
null as nombre_jour_derniere_saisie
FROM
[ProjectServer_Published_project_portfolio].[dbo].[MSP_RESOURCES] res
WHERE
res.WRES_ACCOUNT IS
NOT NULL AND
res.res_uid not in
(SELECT distinct res.res_uid FROM
[ProjectServer_Published_project_portfolio].[dbo].[MSP_RESOURCES]
res,
[ProjectServer_Published_project_portfolio].[dbo].MSP_TIMESHEETS
ts,
[ProjectServer_Published_project_portfolio].[dbo].MSP_TIMESHEET_LINES
line,
[ProjectServer_Published_project_portfolio].[dbo].MSP_TIMESHEET_ACTUALS
act
WHERE res.WRES_ACCOUNT
IS NOT NULL
AND res.RES_UID = ts.RES_UID
AND ts.TS_UID = line.TS_UID
AND line.TS_LINE_UID =
act.TS_LINE_UID)
);
|
Une fois la requête exécutée
la vue nouvellement crée apparaitra dans la liste des vues disponible après
rafraichissement de la liste.
|
Création de la Vue Sql Server 2008 sur base de donnees Microsoft Server Project |
Création du
secure store service
Se rendre dans la console
d’administration SharePoint
Puis dans Application Management
- > Manage Service Applications
Et sélectionner le
service « Secure Store
Service »
|
Secure store service Sharepoint 2010 |
Il faut ensuite créer une
nouvelle entrée et fournir les informations demandés en respectant bien le
« Target Application Type » à « Group ».
|
Configuration du Secure Store Application pour Sharepoint 2010 |
L’authentification avec
SQL Server se fait avec des identifiants Windows il n’est donc pas la peine de
changer les champs dans l’écran suivant.
|
Login credentials pour authentification windows |
L’écran suivant permet de
spécifier qui pourra administrer et qui sera membres de cette nouvelle entrée.
|
Attribution des droits sur le secure store service sharepoint 2010 |
Ceci fait il ne reste
plus qu’à fournir les identifiant de connexion via l’icône de la page
principale.
|
Identifiants de connexion à sql server 2008 |
Un temps d’attente pour
que le Secure Store Application est nécessaire pour que celui-ci soit pris en
compte par le serveur SQL Server (environ 1h, peut dépendre de votre
configuration réseau/serveur).
Création du BCS
Grâce à SharePoint
Designer, ouvrir le site concerné par la création du type de contenu externe.
|
Création via Sharepoint 2010 designer du type de contenu externe |
Et créer le nouveau type
de contenu externe :
|
Creation of external content types with sharepoint designer 2010 |
Saisir le nom du nouveau
type de contenu et cliquez sur « External System »:
|
Configuration external content type |
Ajoutez une connexion, et
choisir « SQL Server », puis saisir le nom du serveur, le nom de la
base de données, et le nom de l’ID de la Secure
Store Application crée précédemment.
|
Provide the different informations for Secure Store Application configuration |
Il suffit ensuite de
sélectionner la vue dans l’explorateur d’objet de la base de données et
d’ajouter les opérations de lecture d’item et de liste.
|
Création des opérations ,new read item operation, new read list operation |
|
Input parameters configuration new read item operation bcs sharepoint 2010 |
Création de la
liste externe
Une fois le type de
contenu externe il ne reste plus qu’a créé la liste externe.
|
Création de la liste externe à partir du type de contenu externe |
Attribution des
droits sur le type de contenu
Un réglage au niveau des
permissions sur le type de contenu est nécessaire pour permettre aux
utilisateurs de consulter la liste.
Se rendre dans la console
d’administration SharePoint
Et se rendre dans Application Management
- > Manage Service Applications
|
Business data connectivity service |
Sélectionnez le type de
contenu nouvellement crée puis cliquez sur le bouton « Set Object
Permissions »
|
Set object permissions on BDC business data connectivity metadata store |
Rendu de la
liste externe
La liste externe ainsi
crée est disponible sur le site et propose la même interface de gestion au
niveau droits, vues et paramétrage qu’une liste SharePoint.
|
Rendu final de la liste externe cree via bcs sharepoint 2010 |
Plus loin avec les Business Connectivity Service (BCS) :
What's New: Business Connectivity Services (BCS) in SharePoint Server 2010
Plus loin avec les type de contenu externe (external content type) :
What Are External Content Types?
Plus loin avec Business Data Connectivity (BDC) :
Service BDC (Business Data Connectivity)
Plus loin avec le Secure Store Service Application :
Configuring the Secure Store Service
Téléchargement :
Microsoft SharePoint Designer 2010