Paso 2: Crear suscripciones de caché (*Subscription.xml)

Un archivo de suscripción en caché es un archivo XML (*Subscription.xml) que define qué tipos de contenido externo del modelo BDC se almacenarán en la memoria caché, qué consultas del modelo se usarán para rellenar los datos almacenados en la memoria caché y con qué frecuencia se actualizarán los elementos externos en la memoria caché.

Última modificación: lunes, 22 de agosto de 2011

Hace referencia a: SharePoint Server 2010

Servicios de conectividad empresarial (BCS) de Microsoft genera automáticamente el archivo de suscripción en caché durante la implementación de una solución simple. Sin embargo, para una solución declarativa de Outlook intermedia, debe crear el archivo Subscription.xml. El archivo sigue un esquema muy simple y es fácil de crear, y el SDK lo facilita incluso más al proporcionar una plantilla y una herramienta para su uso.

En este escenario, existen dos tipos de contenido externo, Customer y Order, que requieren la creación de dos archivos de suscripción, CustomerSubscription.xml y OrderHeaderSubscription.xml. Puede usar la plantilla que se proporciona en el SDK o el generador de artefactos de BCS para crear ambos.

Nota

Debido a que la base de datos de ejemplo AdventureWorks contiene más de 2.000 clientes, el servicio web de ejemplo devuelve solo las primeras 1.000 filas de clientes para que los datos que entran en el cliente sean moderados y puedan administrarse. Por lo tanto, en este escenario, solo se devuelven los pedidos relacionados de estos 1.000 clientes, en lugar de toda la lista de pedidos. Se define una asociación de suscripción en este ejemplo para rellenar la memoria caché con los pedidos relacionados de los 1.000 clientes. También puede considerar usar una instancia del método BulkAssociationNavigator para mejorar el rendimiento.

Requisitos previos

Paso 1: Crear el modelo BDC (Metadata.bdcm)

Creación de suscripciones en caché

Puede crear las suscripciones en caché mediante la herramienta generador de artefactos de BCS o de forma manual mediante la Plantilla: BasicSubscription_Subscription.xml proporcionada en el SDK de SharePoint 2010.

Para usar la herramienta generador de artefactos de BCS para crear los archivos de suscripción

Para crear los dos archivos de suscripción necesarios basados en el modelo BDC, CustomerSubscription.xml y OrderHeaderSubscription.xml, descargue y ejecute el generador de artefactos de BCS. Para obtener más información, vea el tema sobre el generador de artefactos de BCS.

Para usar la plantilla de suscripción básica para crear los archivos de suscripción

  1. Busque la Plantilla: SubscriptionWithAssociation_Subscription.xml proporcionada en el SDK de SharePoint 2010, cópiela y, a continuación, guárdela en la carpeta Solution Artifacts como CustomerSubscription.xml.

  2. Abra CustomerSubscription.xml para su edición en un editor XML. Si va a abrir el archivo XML en Microsoft Visual Studio, adjunte el esquema de suscripción (Subscription.xsd). Esto le proporcionará funcionalidad IntelliSense para evitar la creación de entradas no válidas.

  3. Reemplace los valores marcados con EnterX en el elemento XML con valores válidos. El siguiente ejemplo de XML muestra cómo se podría ver el archivo después de modificarlo.

    Nota

    Esta es una suscripción muy simple. Para crear archivos de suscripción más complejos, puede agregar más elementos y propiedades al archivo. Para obtener más información, vea la documentación sobre Esquema Subscription.

    <?xml version="1.0" encoding="utf-8" ?> 
    <Subscription LobSystemInstanceName="http://contoso/webservice.asmx?wsdl" 
                  EntityNamespace="AdventureWorks" EntityName="Customer" 
                  Name="CustomerSubscription" View="GetCustomerById" 
                  IsCached="true" RefreshIntervalInMinutes="360" 
    xmlns="https://schemas.microsoft.com/office/2006/03/BusinessDataCatalog">
      <Queries>
        <Query Name="CustomerQuery" MethodInstanceName="GetCustomers" 
               DefaultDisplayName="Customer Read List" 
               RefreshIntervalInMinutes="180" 
    IsCached="true" Enabled="true" /> 
      </Queries>
      <Associations>
        <Association Name="GetOrdersForCustomer" 
                     MethodInstanceName="GetOrdersForCustomer" 
                     TargetSubscriptionName="OrderHeaderSubscription" 
    TargetView="GetSalesOrderHeaderById" 
                     LobSystemInstanceName="http://contoso/webservice.asmx?wsdl" 
                     RefreshIntervalInMinutes="60" /> 
      </Associations>
    </Subscription>
    
  4. Guarde el archivo y, a continuación, ciérrelo.

  5. Cree la suscripción de destino que indicará a Servicios de conectividad empresarial qué consulta ejecutar para rellenar los pedidos relacionados para cada cliente. Para ello, copie Plantilla: BasicSubscription_Subscription.xml y, a continuación, guárdelo en la carpeta Solution Artifacts como OrderHeaderSubscription.xml.

  6. Abra el archivo OrderHeaderSubscription.xml para su edición. Si abre el archivo en Visual Studio, adjunte el esquema de suscripción (Subscription.xsd).

  7. Reemplace los valores marcados con EnterX en el XML con los valores válidos. El nombre aquí especificado para la suscripción debe coincidir con el nombre especificado para el atributo TargetSubscriptionName en CustomerSubscription.xml. En el ejemplo de XML siguiente se muestra el aspecto que puede tener el archivo una vez editado.

    <?xml version="1.0" encoding="utf-8" ?>
    <Subscription LobSystemInstanceName="http://contoso/webservice.asmx?wsdl"
                  EntityNamespace="AdventureWorks" EntityName="Customer"
                  Name="CustomerSubscription" View="GetCustomerById"
                  IsCached="true" RefreshIntervalInMinutes="360"
                  xmlns="https://schemas.microsoft.com/office/2006/03/BusinessDataCatalog">
      <Queries>
        <Query Name="CustomerQuery" MethodInstanceName="GetCustomers"
               DefaultDisplayName="Customer Read List"
               RefreshIntervalInMinutes="180"
    IsCached="true" Enabled="true" />
      </Queries>
      <Associations>
        <Association Name="GetOrdersForCustomer"
                     MethodInstanceName="GetOrdersForCustomer"
                     TargetSubscriptionName="OrderHeaderSubscription"
    TargetView="GetSalesOrderHeaderById"
                     LobSystemInstanceName="http://contoso/webservice.asmx?wsdl"
                     RefreshIntervalInMinutes="60" />
      </Associations>
    </Subscription>
    
  8. Guarde el archivo y, a continuación, ciérrelo.

Ha creado correctamente las suscripciones en caché necesarias para la solución declarativa de Outlook intermedia.

Pasos siguientes

Paso 3: creación del archivo de manifiesto de la solución (OIR.config)