Compartir por


Acciones en registros de ubicación de SharePoint

 

Publicado: noviembre de 2016

Se aplica a: Dynamics CRM 2015

Mediante Microsoft Dynamics CRM SDK, puede realizar las siguientes acciones en los registros de ubicación de Microsoft SharePoint.

  • Crear, recuperar, actualizar y eliminar los registros de ubicación

  • Establecer un registro de ubicación de sitios como predeterminado

  • Asocie un registro de ubicación de documentos con un registro de la entidad

  • Recuperar las direcciones URL absolutas y de colección de sitios para un registro de sitios

Crear, recuperar, actualizar y eliminar los registros de ubicación

Mediante los mensajes de Microsoft Dynamics CRM SDK en las entidades de SharePointSite y de SharePointDocumentLocation, puede crear, recuperar, actualizar, y eliminar registros. Para realizar estos pasos en la entidad de SharePointSite, debe tener el rol de administrador del sistema en Microsoft Dynamics 365. Para obtener una lista de los mensajes compatibles, consulte Mensajes y métodos de la entidad SharePointSite y Mensajes y métodos de la entidad SharePointDocumentLocation.

Nota

Al realizar estas operaciones en los registros de ubicación de SharePoint solo se manipulan los datos en Microsoft Dynamics 365. No crea, actualiza ni elimina las ubicaciones en el servidor de SharePoint.

El atributo de SharepointSite.ValidationStatus muestra el estado de validación de la URL del sitio de SharePoint. Los valores posibles para este atributo se definen en el conjunto de opciones de Estado de validación (sharepoint_validationstatus).

El atributo de SharepointSite.ValidationStatusErrorCode muestra la razón para el estado de la validación de la dirección URL del sitio de SharePoint. Los valores posibles para este atributo se definen en el conjunto de opciones de Razón para el estado de validación (sharepoint_validationstatusreason).

Las ubicaciones de almacenamiento en SharePoint Server son jerárquicas donde la colección de sitios de SharePoint es el contenedor que puede incluir varias ubicaciones, y cada ubicación puede contener varios sitios o bibliotecas de documentos. Cada biblioteca de documentos puede contener varias carpetas de documentos. Mientras crea registros de sitios en Microsoft Dynamics 365, escriba la ruta o la dirección URL de estas ubicaciones en SharePoint Server.

Dirección URL absoluta de los registros de la ubicación de SharePoint.

Se trata de la dirección URL completa de un sitio de almacenamiento en SharePoint. Puede especificar la dirección URL absoluta mediante la propiedad de SharePointSite.AbsoluteURL o de SharePointDocumentLocation.AbsoluteURL.

Para crear un registro de SharePointSite especificando la dirección URL absoluta:


// Instantiate a SharePoint site object.
// See the Entity Metadata topic in the SDK documentation to determine 
// which attributes must be set for each entity.
SharePointSite spSite = new SharePointSite
{
    Name = "Sample SharePoint Site",
    Description = "Sample SharePoint Site Location record",

    // TODO: Change this URL to a valid SharePoint URL.                        
    AbsoluteURL = "http://www.example.com",
};

// Create a SharePoint site record named Sample SharePoint Site.
_spSiteId = _serviceProxy.Create(spSite);

' Instantiate a SharePoint site object.
' See the Entity Metadata topic in the SDK documentation to determine 
' which attributes must be set for each entity.
Dim spSite As SharePointSite =
 New SharePointSite With {
  .Name = "Sample SharePoint Site",
  .Description = "Sample SharePoint Site Location record",
  .AbsoluteURL = "http://www.example.com"
 }
' TODO: Change this URL to a valid SharePoint URL.                        

' Create a SharePoint site record named Sample SharePoint Site.
_spSiteId = _serviceProxy.Create(spSite)

De forma similar, para un registro de ubicación de documentos de SharePoint especificando la dirección URL absoluta:

SharePointDocumentLocation spDocLoc = new SharePointDocumentLocation
{
    Name = "Sample SharePoint Document Location",
    Description = "Sample SharePoint Document Location record",
    AbsoluteUrl = "http://www.example.com/spdocloc"   
};
_spDocLocId = _serviceProxy.Create(spDocLoc);

Normalmente se proporcionan URL absolutas para los registros de ubicación de SharePoint porque estos son los contenedores u objetos primarios en los que desea crear otros sitios para almacenar y administrar documentos.

Nota

El atributo SharePointDocumentLocation.LocationType determina si un registro de SharePointDocumentLocation señala a una carpeta de SharePoint (0) o a un archivo de OneNote (1). Cuando crea una instancia de SharePointDocumentLocation (registro), el valor del atributo SharePointDocumentLocation.LocationType se establece como 0 de forma predeterminada para indicar que señala a una carpeta de SharePoint. Para obtener más información sobre la compatibilidad de OneNote, consulte Integración de Microsoft Dynamics CRM con OneNote 2015.

Dirección URL relativa de los registros de ubicación de SharePoint

Esta es la ubicación relativa de un registro de sitios con respecto a su registro de ubicación primario en el servidor de SharePoint. Cuando especifica una dirección URL relativa para un registro de ubicación de SharePoint, también debe especificar el objeto principal bajo la que debe crearse.Microsoft Dynamics 365 usa internamente la dirección URL del objeto primario para determinar la dirección URL absoluta para el objetivo secundario. Por ejemplo, para crear un registro de ubicación de un documento de SharePoint en la ubicación de SharePoint creada en el ejemplo anterior, debe especificar la siguiente información:


// Instantiate a SharePoint document location object.
// See the Entity Metadata topic in the SDK documentation to determine 
// which attributes must be set for each entity.
SharePointDocumentLocation spDocLoc = new SharePointDocumentLocation
{
    Name = "Sample SharePoint Document Location",
    Description = "Sample SharePoint Document Location record",

    // Set the Sample SharePoint Site created earlier as the parent site.
    ParentSiteOrLocation = new EntityReference(SharePointSite.EntityLogicalName, _spSiteId),
    RelativeUrl = "spdocloc",

    // Associate this document location instance with the Fourth Coffee
    // sample account record.
    RegardingObjectId = new EntityReference(Account.EntityLogicalName, _account1Id)
};

// Create a SharePoint document location record named Sample SharePoint Document Location.
_spDocLocId = _serviceProxy.Create(spDocLoc);

' Instantiate a SharePoint document location object.
' See the Entity Metadata topic in the SDK documentation to determine 
' which attributes must be set for each entity.
Dim spDocLoc As SharePointDocumentLocation =
 New SharePointDocumentLocation With {
  .Name = "Sample SharePoint Document Location",
  .Description = "Sample SharePoint Document Location record",
  .ParentSiteOrLocation = New EntityReference(SharePointSite.EntityLogicalName, _spSiteId),
  .RelativeUrl = "spdocloc",
  .RegardingObjectId = New EntityReference(Account.EntityLogicalName, _account1Id)
 }
' Set the Sample SharePoint Site created earlier as the parent site.
' Associate this document location instance with the Fourth Coffee
' sample account record.

' Create a SharePoint document location record named Sample SharePoint Document Location.
_spDocLocId = _serviceProxy.Create(spDocLoc)

La dirección URL absoluta de objetos secundarios (ubicación de documentos en este ejemplo) es:“Parent_URL/Relative_URL”. Por lo tanto, en este ejemplo, la URL absoluta de la ubicación de documentos es http://www.example.com/spdocloc.

Las URL relativas normalmente se ofrecen cuando desea crear un registro de ubicación más abajo en la jerarquía o como registro secundario.

Las ventajas de usar la dirección URL relativa es que si decide pasar a un servidor SharePoint diferente para almacenar los documentos, solo debe actualizar la URL absoluta del registro del sitio de objeto primario (probablemente una colección de sitios o registro de sitio) en Microsoft Dynamics 365 y todos los demás registros que están más abajo en la jerarquía seguirán funcionando igual que antes porque las URL absolutas (determinadas automáticamente por Microsoft Dynamics 365) no se interrumpirán. Si se hubiera usado direcciones URL absolutas para estos registros secundarios del sitio, tendrá que corregir las direcciones URL de forma individual.

Establecer un registro de ubicación de sitios como predeterminado

Puede establecer un registro de ubicación de sitios SharePoint como predeterminado de modo que todos las ubicaciones de documentos creados mediante Microsoft Dynamics 365 se creen automáticamente en este sitio. Para crear un registro de ubicación de sitios como predeterminado, use la propiedad de SharePointSite.IsDefault y establézcalo en true. Puede establecer un registro de ubicación de sitios como predeterminado mientras crea o se actualiza un registro de ubicación del sitio.

Nota

La creación automática de registros de ubicación de documentos es posible solo si el servidor de destino es un servidor SharePoint 2010 o SharePoint 2013 y Componente de lista de Microsoft Dynamics CRM para SharePoint Server se instala en la colección de sitios de SharePoint de destino. Para obtener más información acerca de Componente de lista de Microsoft Dynamics CRM, consulte Componente de lista de Microsoft Dynamics CRM para Microsoft SharePoint Server.

Asocie un registro de ubicación de documentos con un registro de la entidad

Puede asociar un registro de ubicación de documentos con un registro de la entidad. Al hacerlo, todos los documentos para el registro de la entidad se almacenan en esta ubicación en el servidor de SharePoint. Puede asociar un registro de ubicación de documentos SharePoint con una entidad mediante la propiedad de SharePointDocumentLocation.RegardingObjectId. El siguiente ejemplo muestra cómo hacerlo:


// Instantiate a SharePoint document location object.
// See the Entity Metadata topic in the SDK documentation to determine 
// which attributes must be set for each entity.
SharePointDocumentLocation spDocLoc = new SharePointDocumentLocation
{
    Name = "Sample SharePoint Document Location",
    Description = "Sample SharePoint Document Location record",

    // Set the Sample SharePoint Site created earlier as the parent site.
    ParentSiteOrLocation = new EntityReference(SharePointSite.EntityLogicalName, _spSiteId),
    RelativeUrl = "spdocloc",

    // Associate this document location instance with the Fourth Coffee
    // sample account record.
    RegardingObjectId = new EntityReference(Account.EntityLogicalName, _account1Id)
};

// Create a SharePoint document location record named Sample SharePoint Document Location.
_spDocLocId = _serviceProxy.Create(spDocLoc);

' Instantiate a SharePoint document location object.
' See the Entity Metadata topic in the SDK documentation to determine 
' which attributes must be set for each entity.
Dim spDocLoc As SharePointDocumentLocation =
 New SharePointDocumentLocation With {
  .Name = "Sample SharePoint Document Location",
  .Description = "Sample SharePoint Document Location record",
  .ParentSiteOrLocation = New EntityReference(SharePointSite.EntityLogicalName, _spSiteId),
  .RelativeUrl = "spdocloc",
  .RegardingObjectId = New EntityReference(Account.EntityLogicalName, _account1Id)
 }
' Set the Sample SharePoint Site created earlier as the parent site.
' Associate this document location instance with the Fourth Coffee
' sample account record.

' Create a SharePoint document location record named Sample SharePoint Document Location.
_spDocLocId = _serviceProxy.Create(spDocLoc)

Recuperar las direcciones URL absolutas y de colección de sitios para un registro de sitios

Como se explicó anteriormente, SharePoint Server siga un modelo jerárquico para almacenar registros. Si desea recuperar la dirección URL absoluta (completa) de un registro de ubicación en la jerarquía y la dirección URL de SiteCollection en las que el registro de ubicación está presente, puede usar el mensaje de RetrieveAbsoluteAndSiteCollectionUrlRequest para hacerlo.

El mensaje de RetrieveAbsoluteAndSiteCollectionUrlRequest funcionará correctamente solo si ambas son verdaderas:

  • Componente de lista de Microsoft Dynamics CRM para SharePoint Server se instala en la colección de sitios de SharePoint en el servidor de SharePoint 2010 o SharePoint 2013 de destino. Para obtener más información, vea Componente de lista de Microsoft Dynamics CRM para Microsoft SharePoint Server.

  • El registro de ubicación para la colección de sitios de SharePoint primario existe en Microsoft Dynamics 365, y la propiedad de SharePointSite.IsGridPresent se establece en true mientras se crea el registro del sitio primario.

De lo contrario, se mostrará un valor en blanco o un valor incorrecto para la propiedad de SiteCollectionUrl.

Para obtener más información, vea RetrieveAbsoluteAndSiteCollectionUrlRequest.

El siguiente ejemplo muestra cómo usar el mensaje de RetrieveAbsoluteAndSiteCollectionUrl:


// Retrieve the absolute URL and the Site Collection URL
// of the SharePoint document location record.
RetrieveAbsoluteAndSiteCollectionUrlRequest retrieveRequest = new RetrieveAbsoluteAndSiteCollectionUrlRequest
{
    Target = new EntityReference(SharePointDocumentLocation.EntityLogicalName, _spDocLocId)
};
RetrieveAbsoluteAndSiteCollectionUrlResponse retriveResponse = (RetrieveAbsoluteAndSiteCollectionUrlResponse)_serviceProxy.Execute(retrieveRequest);

Console.WriteLine("Absolute URL of document location record is '{0}'.", retriveResponse.AbsoluteUrl.ToString());
Console.WriteLine("Site Collection URL of document location record is '{0}'.", retriveResponse.SiteCollectionUrl.ToString());

' Retrieve the absolute URL and the Site Collection URL
' of the SharePoint document location record.
Dim retrieveRequest As RetrieveAbsoluteAndSiteCollectionUrlRequest =
 New RetrieveAbsoluteAndSiteCollectionUrlRequest With {
  .Target = New EntityReference(SharePointDocumentLocation.EntityLogicalName, _spDocLocId)
 }
Dim retriveResponse As RetrieveAbsoluteAndSiteCollectionUrlResponse =
 CType(_serviceProxy.Execute(retrieveRequest), RetrieveAbsoluteAndSiteCollectionUrlResponse)

Console.WriteLine("Absolute URL of document location record is '{0}'.", retriveResponse.AbsoluteUrl.ToString())
Console.WriteLine("Site Collection URL of document location record is '{0}'.", retriveResponse.SiteCollectionUrl.ToString())

Ver también

RetrieveAbsoluteAndSiteCollectionUrlRequest
RetrieveAbsoluteAndSiteCollectionUrlResponse
Integrar Microsoft Dynamics CRM 2015 con SharePoint
Introducción a la integración de SharePoint
Habilitar la administración de documentos para entidades
Entidades de integración de SharePoint
Ejemplo: Habilitar la administración de documentos para entidades
Ejemplo: crear, recuperar, actualizar y eliminar un registro de ubicación de SharePoint
Ejemplo: recuperar una dirección URL absoluta y una dirección URL de colección de sitios de un registro de ubicación
Integración de Microsoft Dynamics CRM con OneNote 2015

© 2017 Microsoft. Todos los derechos reservados. Copyright