Provedor de ID do Documento no modelo de Suplemento do SharePoint
A abordagem que você adota para definir identificadores exclusivos para documentos no SharePoint é diferente no novo modelo de suplemento do SharePoint do que com o Full Trust Code. Em um cenário típico de FTC (Full Trust Code) / Farm Solution, os manipuladores de eventos de item de lista que executam o código do Modelo de Objeto do lado do SharePoint Server foram usados para definir identificadores exclusivos para documentos e eles foram implantados por meio da SharePoint Solutions.
Em um cenário de modelo de suplemento do SharePoint, o Modelo de Objeto do lado do cliente do SharePoint (CSOM) e/ou a API REST do SharePoint são usados para definir identificadores exclusivos para documentos.
Diretrizes de alto nível
Como regra geral, gostaríamos de fornecer as diretrizes de alto nível a seguir para definir identificadores exclusivos para documentos no novo modelo de Suplemento do SharePoint.
- Use o CSOM (Modelo de Objeto Lateral do Cliente) do SharePoint e/ou as APIs REST do SharePoint para definir identificadores exclusivos para documentos.
- Atualmente, não há nenhum mecanismo fora da caixa com suporte para associar código processado remoto para substituir o provedor de ID de documento fora da caixa, portanto, essa funcionalidade não tem suporte nativo para ser modificada com APIs remotas.
- No entanto, como em muitos casos com o modelo de suplemento, rotas alternativas estão sendo exploradas.
Como os identificadores exclusivos são definidos em documentos?
Essencialmente, definir um identificador exclusivo para um documento significa definir o valor de uma coluna em uma lista/biblioteca de documentos do SharePoint.
As APIs do SharePoint (CSOM) e/ou REST podem ser usadas para definir valores de coluna e, portanto, podem ser usadas para definir identificadores exclusivos para documentos. Confira os artigos a seguir para saber mais sobre essas APIs e como definir valores de coluna com elas.
- Concluir operações básicas usando o código da biblioteca de clientes do SharePoint 2013 (Artigo MSDN)
- Trabalhar com listas e listar itens com REST (artigo MSDN)
Opções para definir identificadores exclusivos para documentos
Você tem algumas opções para definir identificadores exclusivos para documentos armazenados no SharePoint.
- Usar receptores de eventos remotos
- Usar um processo em segundo plano
Usar receptores de eventos remotos
Nesse padrão, os receptores de eventos remotos são disparados quando novos documentos são carregados em bibliotecas do SharePoint. Os receptores de eventos remotos fazem chamadas de API REST ou CSOM para definir identificadores exclusivos para documentos.
- Esse padrão é executado imediatamente depois que um documento é carregado no SharePoint.
- Desde que o código no serviço associado ao receptor de eventos remoto seja executado em tempo hábil, as IDs do documento são definidas rapidamente depois que um novo documento é carregado no SharePoint.
- Esse padrão opera apenas em novos documentos carregados no SharePoint, ele não define identificadores exclusivos para documentos já armazenados no SharePoint.
- As operações de carregamento em massa dispararão várias chamadas para o serviço associado ao receptor de eventos remoto. Planeje de acordo para garantir que as operações de carregamento em massa não sobrecarregem o serviço.
- Não há como um receptor de eventos remoto notificar o SharePoint se a configuração de uma ID de documento exclusiva falhar.
Quando isso é apropriado?
Quando você precisa definir identificadores exclusivos para documentos rapidamente depois que eles são carregados no SharePoint e você não espera operações de carregamento em massa.
Introdução
Os Receptores de Eventos e Receptores de Eventos de Lista (Receita de Suplemento do SharePoint) descreve como implementar receptores de eventos no modelo de suplemento e fornece links para vários exemplos e artigos.
Usar um processo em segundo plano
Nesse padrão, um processo em segundo plano verifica documentos no SharePoint para determinar se eles têm um conjunto de identificador exclusivo. Se nenhum identificador exclusivo for encontrado para um documento, o processo em segundo plano definirá um identificador exclusivo para o documento. O processo em segundo plano faz chamadas de API REST ou CSOM para definir identificadores exclusivos para documentos.
- Esse padrão é executado de acordo com a agenda que você define para ele.
- Esse padrão opera em todos os documentos em que o código é gravado para rastreamento.
- Sugerimos usar o serviço de pesquisa do SharePoint para executar consultas que incluem filtros para retornar uma lista de documentos que não têm identificadores exclusivos definidos neles.
- Esse padrão executa o mais rápido e é dimensionado melhor do que qualquer outro padrão de consulta.
- Esse padrão elimina a lógica de consulta personalizada do serviço em segundo plano.
- Esse padrão requer alguma configuração de pesquisa.
- Para saber mais sobre a configuração de pesquisa, consulte a Configuração de Pesquisa (Receita de Suplemento do SharePoint).
- Não é recomendável consultar novamente e retornar metadados sobre todos os documentos em um ambiente do SharePoint fazendo loop por meio de objetos web e list.
- Esse padrão executa o mais lento e escala pior do que qualquer outro padrão de consulta.
- Você pode encontrar limites de limitação de API ao usar esse padrão.
- Esse padrão inclui a lógica de consulta personalizada no serviço em segundo plano.
- Esse padrão pode ser implementado com um Trabalho Web do Azure.
Quando isso é apropriado?
- Quando você precisa definir identificadores exclusivos para documentos e receptores de eventos remotos não são uma opção disponível para você.
- Quando você espera ter documentos carregados em massa.
- Quando você precisar garantir que as IDs de documento exclusivas sejam definidas em documentos.
- Não há como um receptor de evento notificar o SharePoint se a configuração de uma ID de documento exclusiva falhar.
- Quando você precisar processar documentos já armazenados no SharePoint.
Introdução
O Trabalho de Temporizador Remoto (Receita de Suplemento do SharePoint) descreve como implementar trabalhos de temporizador remoto no modelo de suplemento e fornece links para vários exemplos e artigos.
Links relacionados
- Receptores de Eventos e Receptores de Eventos de Lista (Receita de Suplemento do SharePoint)
- Configuração de Pesquisa (Receita de Suplemento do SharePoint)
- Trabalhos de temporizador remoto (Receita de suplemento do SharePoint)
- Artigos de diretrizes em https://aka.ms/OfficeDevPnPGuidance
- Referências no MSDN em https://aka.ms/OfficeDevPnPMSDN
- Vídeos em https://aka.ms/OfficeDevPnPVideos
Exemplos de PnP
- OD4B. NavLinksInjection (Exemplo de PnP O365)
- Exemplos e conteúdo no Microsoft 365 Patterns and Practices (PnP)
Aplicável a
- Office 365 Multilocatário (MT)
- Office 365 dedicado (D)
- SharePoint 2013 local