Ignorer les commandes du ruban
Passer au contenu principal
SharePoint

Xavier VANNESTE > Billets > [SharePoint 2010] BCS Partie 3: Les Associations
déc. 16
[SharePoint 2010] BCS Partie 3: Les Associations

Série D'articles:

Introduction

Faire un BCS pour une table sera relativement rare quand même, la plupart du temps vous utiliserez le BCS avec plusieurs tables et des associations entre elle.

L'avantage avec les BCS et qu'ils fournissent une vue master détail assez facilement. On le verra, avec SharePoint Designer on peut facilement créer les liens et faire des pages Master Details.

Préparation.

On va créer deux external content type comme vu précédemment un pour ProductSubCategory et un pour ProductCategory :

Create All Operation sur la table SubCat :

Name en Show in DataPicker

On n'oublie pas la création de la profile page:

Pareil pour la catégorie :

Comme on peut le voir les External Content Type sont regroupé par Namespace :

Comme dans cet article on n'a pas réécrit les namespaces l'url du site est prise par défaut pour faire les External Content Type.

Les relations

On va ré-ouvrir notre external content type Adventure Works.

Et cliquez sur

On revient sur le design de notre external content type.

On fait un clic avec le bouton droit sur la table qui a servie à faire l'external content type à savoir product et on clique sur new association :

On va le lier a un external content type en cliquant sur browse :

On selection sub cat car dans la DB on a un lien entre product et subcategorie.

SharePoint designer découvre de lui-même la relation.

On selectionne ProductSubCategoryID comme identifier :

On continue jusque la fin avec Next sans rien modifier.

On fait pareil avec SubCategory en faisant une relation avec Catégorie.

Une fois les relations faites il faut refaire les Profile page des Categorie et SubCategorie car leur page fera un Master Details (on sélectionne une catégorie on a les sourcategories et on sélectionne une sous-catégorie on a les produits).

Après avoir refait les profils pages on obtient :

La même chose avec les sous catégories :

Petite déception pas de liens actifs pour naviguer sur les produits ou les sous catégories à partir de la page parente.

XSLT

Pas grave on va éditer le XSLT :

On édite la page avec les catégories et on édite la webpart de navigation :

On clique sur XSL Editor :

Et on change la partie suivante :

<td class="ms-vb">

<xsl:attribute name="style">

<xsl:choose>

<xsl:when test="$dvt_1_form_selectkey = @*[name()=$ColumnKey]">color:blue</xsl:when>

<xsl:otherwise />

</xsl:choose>

</xsl:attribute>

<xsl:value-of select="@ProductSubcategoryID" />

</td>

   

Avec celle la :

   

<td class="ms-vb">

<xsl:attribute name="style">

<xsl:choose>

<xsl:when test="$dvt_1_form_selectkey = @*[name()=$ColumnKey]">color:blue</xsl:when>

<xsl:otherwise />

</xsl:choose>

</xsl:attribute>

<a>

<xsl:attribute name="href">

<![CDATA[http://srvmoss:80/_bdc/http___srvmoss/AdventureWorksSubCat_1.aspx?ProductSubcategoryID=]]><xsl:value-of select="@ProductSubcategoryID" />

</xsl:attribute>

<xsl:value-of select="@ProductSubcategoryID" />

</a>

</td>

   

Bien entendu la page profil doit être adaptée.

Le résultat est le suivant :

Il suffit de cliquer dessus pour naviguer sur la page de la sous-catégorie. Il suffira de faire de même avec la page des sous catégories pour naviguer vers produits.

Commentaires

Aucun commentaire sur ce billet.

 ‭(Masqué)‬ Outils de blog

 Share IT

Share |
 
 
 
 
 
 
 
 
 
 
 
 
 
Traduire cette page