Share via


Étape 7 (facultative) : afficher des parties de données externes dans le volet Office Outlook (Layout.xml)

Microsoft Business Connectivity Services (BCS) vous permet d’afficher facilement des composants WebPart de données externes dans les volets de tâches Outlook. Business Connectivity Services fournit deux composants WebPart de données externes, un composant WebPart de liste riche et un composant WebPart InfoPath. Le composant WebPart de liste riche affiche une liste d’entrées à partir d’un système externe. Le composant WebPart InfoPath peut afficher n’importe quel formulaire InfoPath (même ceux avec du code-behind).

Dernière modification : lundi 22 août 2011

S’applique à : SharePoint Server 2010

La Figure 1 montre comment, dans l’exemple Exemple de code : Solution Outlook déclarative AdventureWorks2008, les commandes associées du client sont affichées dans une liste à l’aide du composant WebPart de liste riche et comment les détails d’une commande sont affichés dans un composant WebPart InfoPath.

Figure 1. Composants WebPart de données externes affichant l’historique des commandes dans le volet Office Outlook

Commande de client associée dans la liste Composant de données externes

Outre ces deux composants WebPart de données externes, vous pouvez afficher n’importe quel composant WebPart de données externe personnalisé qui a déjà été créé par un développeur.

Une fois que vous disposez des composants WebPart de données externes que vous voulez afficher dans un volet Office, vous pouvez créer un fichier de disposition. Ce fichier définit les contrôles qui sont exposés dans le volet Office, les types de contenu externe avec lesquels ils doivent être remplis et toute autre propriété personnalisée que le contrôle expose.

Pour finir, vous devez mettre à jour le fichier ORI.config avec le comportement du volet Office souhaité dans votre solution.

Pour créer une disposition de volet Office

  1. Créez une liste externe pour le type de contenu externe Commande à l’aide de Microsoft SharePoint Designer 2010. Pour plus d’informations, voir Procédure : créer des listes externes dans SharePoint.

  2. Créez un formulaire InfoPath pour la liste externe. Pour ce faire, voir Procédure : Personnaliser des formulaires de liste externe à l’aide de Microsoft InfoPath. Ensuite, exportez le formulaire à l’aide de SharePoint Designer 2010.

  3. Ouvrez le formulaire dans Microsoft InfoPath 2010 Designer et personnalisez-le à votre gré.

    Enregistrez le formulaire dans le dossier d’artefacts de la solution, puis fermez-le.

  4. Créez un fichier de disposition pour spécifier la disposition du composant WebPart de liste riche et du composant WebPart InfoPath dans le volet Office Outlook. Vous pouvez utiliser l’outil BCS Artifact Generator Tool (éventuellement en anglais) pour créer le fichier manifeste de zone de formulaire selon le modèle BDC.

    Vous pouvez également créer le manifeste de zone de formulaire manuellement, comme décrit ci-dessous.

    1. Faites une copie du Modèle : Layout.xml fourni dans Microsoft SharePoint 2010 Software Development Kit (SDK), puis enregistrez-le dans le dossier Solution Artifacts sous RelatedOrderHeader.xml.

    2. Ouvrez le fichier RelatedOrderHeader.xml dans un éditeur XML pour le modifier. Si vous ouvrez le fichier XML dans Visual Studio, attachez le schéma de disposition (LayoutDefinitions.xsd). Celui-ci vous fera bénéficier de la fonctionnalité IntelliSense et vous aidera à créer des entrées valides. Pour obtenir la documentation du schéma, voir LayoutDefinitions, schéma et Propriétés personnalisées du schéma LayoutDefinitions.

    3. Remplacez les valeurs marquées avec EnterX dans le code XML par des valeurs valides. L’exemple de code XML suivant illustre l’aspect possible du fichier après modification.

      <?xml version="1.0" encoding="utf-8" ?>
      <Container ContainerType="Stack" 
       xmlns="https://schemas.microsoft.com/office/2009/05/BusinessApplications/Layout" 
       xmlns:loc="https://schemas.microsoft.com/office/2009/05/BusinessApplications/Localization">
        <CustomProperties>
        </CustomProperties>
        <Children>
          <OBPart PartType="List" DataSourceName="PrimaryEntityNameInContext" 
                  Text="Related Order" Description="A list of all related Orders" >
            <CustomProperties >
              <CustomProperty Name="DataSourceMode" Value="AssociationList" />
              <CustomProperty Name="DataMemberName" Value="GetOrdersForCustomer" />
              <CustomProperty Name="MaximumVisibleRowCount" Value="12" />
              <CustomProperty Name="DefaultActionName" Value="Edit" />
              <CustomProperty Name="DefaultActionSource" Value="TargetContext" />
              <CustomProperty Name="ConsumerPartName" Value="IPOBP" />
              <CustomProperty Name="ColumnsXml" Value="&lt;Columns&gt;&lt;
                Column DisplayName=&quot; &quot; Name=&quot;$SyncState$&quot; /&gt;&lt;
                Column FormatString=&quot;d&quot; DisplayName=&quot;Order Date&quot; 
                Name=&quot;OrderDate&quot;/&gt;&lt;Column FormatString=&quot;#.00&quot; 
                DisplayName=&quot;Total Due&quot; Name=&quot;
                TotalDue&quot; /&gt;&lt;/Columns&gt;" />  
            </CustomProperties>
            <ActionNames>
            </ActionNames>
          </OBPart>
          <OBPart PartType="InfoPath">
            <CustomProperties>
              <CustomProperty Name="Name" Value="IPOBP" />
              <CustomProperty Name="FormLocation" Value="OrderHeaderTemplate.xsn" />
              <CustomProperty Name="IsReadOnly" Value="True" />
              <CustomProperty Name="Height" Value="1000" />
               <CustomProperty Name="ViewName" Value="taskpaneview" />
            </CustomProperties>
          </OBPart>   
        </Children>
      </Container>
      
    4. Enregistrez le fichier et fermez-le.

  5. Ouvrez le fichier OIR.config pour le modifier. Ajoutez cette entrée en bas du ContextDefinition du client pour notifier le BCS Client Runtime que vous voulez héberger cette disposition dans le volet Office lorsqu’un client est dans le contexte dans Outlook

    <Declarative:Layouts>
      <Declarative:Layout Name="RelatedOrderHeader" 
                          LayoutFileName="RelatedOrderHeader">
      </Declarative:Layout>
    </Declarative:Layouts>
    
  6. Enregistrez le fichier et fermez-le.

Vous devez ensuite créer une action pour afficher le volet Office et créer un fichier de Ruban pour afficher l’action.

Étapes suivantes

Étape 8 (facultative) : définir le Ruban et les actions (Ribbon.xml)