Resolver problemas da integração com o SharePoint
Nota
Se tiver ativado o modo Interface Unificada apenas, antes de utilizar os procedimentos apresentados neste artigo, faça o seguinte:
- Selecione Settings () na barra de navegação.
- Selecione Definições Avançadas.
Este tópico explica como corrigir problemas comuns que podem ocorrer com a gestão de documentos do SharePoint.
Botão de documentos em falta – validar e corrigir
Se Documentos estão em falta de entidades, tais como conta, utilize o seguinte procedimento para restaurar.
Certifique-se de que tem o direito de acesso Administrador de Sistema ou permissões equivalentes no Dynamics 365 Customer Engagement (on-premises). Verifique os direitos de acesso:
- Siga os passos indicados em Ver o seu perfil de utilizador.
- Não tem as permissões corretas? Contacte o administrador de sistema.
Corrija o botão Documentos em falta. Siga estes passos:
- Identifique a entidade para a qual a ligação do documento deverá estar visível (por ex.: conta, contacto, oportunidade, etc.).
- Aceda a Definições>Definições da Gestão de Documentos.
- Certifique-se de que a entidade a que pretende ligar os documentos (selecionada no Passo 1) estão selecionadas e é especificado um URL do SharePoint válido.
- Conclua o assistente.
- Verifique se o botão Documentos é apresentado.
Para mais informações, consulte Ativar a gestão de documentos do SharePoint para entidades específicas.
Grelha associada de Documento em Falta – validar e corrigir
Se a gelha associada de Documentos está em falta, utilize o seguinte procedimento para restaurar.
A causa mais comum para a grelha associada de Documentos não carregar é FetchXML e LayoutXML corrompidos. Estes secções podem ser corrompidas devido a várias razões. A mais comum delas é através da personalização da vista de entidade/grelha, adicionar/remover colunas e as outras personalizações semelhantes.
Certifique-se de que tem o direito de acesso Administrador de Sistema ou permissões equivalentes. Verifique os direitos de acesso: a. Siga os passos indicados em Ver o seu perfil de utilizador. b. Não tem as permissões corretas? Contacte o administrador de sistema.
Aceda a Definições>Personalizações>Soluções.
Crie uma solução (chamada SharePointDocumentSolution). Para mais informações, consulte Criar uma solução.
Escolha Entidades>Adicionar Existente>Entidade> localize e adicione a entidade Documento do SharePoint (selecione todos os campos, formulários, vistas).
Selecione Guardar e Fechar.
Publicar todas as personalizações.
Selecione a solução criada (chamada SharePointDocumentSolution).
Exporte a solução e escolha o tipo de Pacote como "Não gerido". O SharePointDocumentSolution.zip será transferido.
Extrai o ficheiro zip (ficheiro transferido do Passo 8).
Navegue pela pasta, localize e abra customization.xml.
Pesquise LayoutXml da grelha associada de Documento (procure por Documento associado).
Efetue as alterações como abaixo para a secção LayoutXML:
<layoutxml> <grid name="sharepointdocument" jump="fullname" select="1" icon="0" preview="1"> <row name="sharepointdocument" id="sharepointdocumentid"> <cell name="fullname" width="300" imageproviderfunctionname="DocumentManagement.FileTypeIcon.loadSharePointFileTypeIcon" imageproviderwebresource="$webresource:SharePoint_main_system_library.js" /> <cell name="relativelocation" width="200" /> <cell name="modified" width="150" /> <cell name="sharepointmodifiedby" width="150" /> <cell name="sharepointcreatedon" width="300" /> <cell name="title" ishidden="1" /> <cell name="readurl" ishidden="1" /> <cell name="editurl" ishidden="1" /> <cell name="author" ishidden="1" /> <cell name="absoluteurl" ishidden="1" /> <cell name="filetype" ishidden="1" /> <cell name="ischeckedout" ishidden="1" /> <cell name="locationid" ishidden="1" /> <cell name="iconclassname" ishidden="1" /> </row> </grid> </layoutxml>
Efetue as alterações como abaixo para a secção FetchtXml:
<fetch distinct="false" mapping="logical"> <entity name="sharepointdocument"> <attribute name="documentid" /> <attribute name="fullname" /> <attribute name="relativelocation" /> <attribute name="sharepointcreatedon" /> <attribute name="ischeckedout" /> <attribute name="filetype" /> <attribute name="modified" /> <attribute name="sharepointmodifiedby" /> <attribute name="servicetype" /> <attribute name="absoluteurl" /> <attribute name="title" /> <attribute name="author" /> <attribute name="sharepointdocumentid" /> <attribute name="readurl" /> <attribute name="editurl" /> <attribute name="locationid" /> <attribute name="iconclassname" /> <order attribute="relativelocation" descending="false" /> <filter> <condition attribute="isrecursivefetch" operator="eq" value="0" /> </filter> </entity> </fetch>
Importante
Todos os atributos configurados no XML de esquema necessitam que o respetivo atributo correspondente esteja presente no XML Fetch. A grelha irá resultar em erro quando esta configuração estiver incorreta.
- Guarde o ficheiro.
- Coloque a pasta em zip.
- Abra o Dynamics 365 for Customer Engagement.
- Navegue para Definições>Soluções
- Importe a solução (ficheiro zipado no Passo 8).
- Publicar todas as personalizações.
- Verifique se a grelha associada de Documento é apresentada em todos os documentos do SharePoint necessários.
Validar e corrigir URLs de sites do SharePoint
No Customer Engagement (on-premises), os registos de localização de sites SharePointe documentos contêm hiperligações para coleções de sites, sites, bibliotecas de documentos e pastas no SharePoint. Estes registos de site e de localização de documentos estão associados a registos do Customer Engagement (on-premises) para ser possível armazenar os documentos dos registos do Customer Engagement (on-premises) no SharePoint.
Quando as ligações entre o Customer Engagement (on-premises) e o SharePoint são quebradas, tem de validar e corrigir as ligações para que os registos do Customer Engagement (on-premises) continuem a apontar para as bibliotecas de documentos e pastas corretas para gestão dos documentos.
Certifique-se de que tem o direito de acesso Administrador de Sistema ou permissões equivalentes no Microsoft Dynamics 365.
Verifique o seu direito de acesso
Siga os passos indicados em Ver o seu perfil de utilizador.
Não tem as permissões corretas? Contacte o administrador de sistema.
Localize e corrija os URLs. Para o fazer, siga estes passos.
Aceda a Definições>Gestão de Documentos.
Clique em SharePointSites.
Selecione os URLs de site que pretende validar e clique ou toque em Validar.
O Customer Engagement (on-premises)valida todos os URLs de site selecionados e o respetivo site subordinado, assim como os URLs de biblioteca de documentos. Em seguida, apresenta os resultados em Validar Sites.
Para corrigir um URL, abra o registo de site e introduza o URL correto. Mais informações: Criar ou editar registos de sites.
Clique em Guardar e Fechar.
Os utilizadores recebem a mensagem "Não tem permissões para ver ficheiros nesta localização".
Esta mensagem de erro pode ocorrer quando o site do SharePoint que é configurado com a gestão de documentos foi renomeado, mas o registo do URL dos sites do SharePoint não foi atualizado para refletir a alteração.
Aceda a Definições>Gestão de Documentos>Sites do SharePoint.
Abra o registo do Site do SharePoint que foi renomeado e introduza o URL Absoluto com um novo URL.
Selecione Guardar e Fechar.
FetchXML ou LayoutXML malformados - validação e correção
FetchXML ou LayoutXML malformados podem causar qualquer um dos seguintes problemas:
- A grelha de documentos associados está em falta
- Não é possível ver pastas
- Não é possível ver documentos dentro de pastas
- Um documento não está a ser eliminado
- Mensagem de erro: "O parâmetro Obrigatório é nulo ou não definido: URL" ao abrir o separador documentos
- Mensagem de erro: "System.NullReferenceException" ao carregar um documento
- Um documento está a ser transferido em vez de ser aberto num novo separador
Pode haver muitas causas para que FetchXML ou LayoutXML estejam malformados. A causa mais comum é a personalização da vista de entidade/grelha, adicionar/remover colunas e as outras personalizações semelhantes.
Se FetchXML ou LayoutXML estiverem malformados, utilize o seguinte para restaurar.
Certifique-se de que tem o direito de acesso Administrador de Sistema ou permissões equivalentes. Verifique os direitos de acesso:
- Siga os passos indicados em Ver o seu perfil de utilizador.
- Não tem as permissões corretas? Contacte o administrador de sistema.
Na aplicação Web, aceda a Definições () >Definições Avançadas, aceda a Definições>Personalizações>Soluções.
Crie uma solução (chamada SharePointDocumentSolution). Para mais informações, consulte Criar uma solução.
Escolha Entidades>Adicionar Existente>Entidade> localize e adicione a entidade Documento do SharePoint (selecione todos os campos, formulários, vistas).
Selecione Guardar e Fechar.
Publicar todas as personalizações.
Selecione a solução criada (chamada SharePointDocumentSolution).
Exporte a solução e escolha o tipo de Pacote como "Não gerido". O SharePointDocumentSolution.zip será transferido.
Elimine a solução que foi criada durante o passo 3 da organização.
Extraia o ficheiro zip da solução exportada (ficheiro transferido do Passo 8).
Na pasta de conteúdos da solução, localize e, em seguida, abra Solution.xml.
Altere o seguinte valor em Solution.xml e guarde.
De<Managed>0</Managed>
a<Managed>1</Managed>
.Na pasta de conteúdos da solução, localize e abra customization.xml.
Procure o elemento
<SavedQuery>
em que o atributo savedqueryid é igual a "0016f9f3-41cc-4276-9d11-04308d15858d".Se não conseguir encontrar uma consulta guardada com o ID especificado no passo anterior, vá para o passo 19. No entanto, se o elemento
<SavedQuery>
encontrado no passo 14 for semelhante a<SavedQuery unmodified="1">
, remova o atributo não modificado="n".Pesquise layoutxml da grelha associada de Documento (procure por Documento associado).
Efetue as alterações tal como indicado abaixo para a secção layoutxml:
<layoutxml> <grid name="sharepointdocument" object="9507" jump="fullname" select="1" icon="0" preview="1"> <row name="sharepointdocument" id="sharepointdocumentid"> <cell name="fullname" width="300" imageproviderfunctionname="DocumentManagement.FileTypeIcon.loadSharePointFileTypeIcon" imageproviderwebresource="$webresource:SharePoint_main_system_library.js" /> <cell name="modified" width="150" /> <cell name="sharepointmodifiedby" width="150" /> <cell name="locationname" width="150" /> <cell name="relativelocation" width="200" /> <cell name="servicetype" width="90" /> <cell name="documentid" ishidden="1" /> <cell name="title" ishidden="1" /> <cell name="author" ishidden="1" /> <cell name="sharepointcreatedon" ishidden="1" /> <cell name="sharepointdocumentid" ishidden="1" /> <cell name="filetype" ishidden="1" /> <cell name="readurl" ishidden="1" /> <cell name="editurl" ishidden="1" /> <cell name="ischeckedout" ishidden="1" /> <cell name="absoluteurl" ishidden="1" /> <cell name="locationid" ishidden="1" /> <cell name="iconclassname" ishidden="1" /> </row> </grid> </layoutxml>
Importante
Todos os atributos configurados no esquema XML exigem que os seus atributos correspondentes estejam presentes no Fetch XML. A grelha devolverá um erro quando esta configuração estiver incorreta.
Efetue as alterações como abaixo para a secção FetchtXml:
<fetch distinct="false" mapping="logical"> <entity name="sharepointdocument"> <attribute name="documentid" /> <attribute name="fullname" /> <attribute name="relativelocation" /> <attribute name="sharepointcreatedon" /> <attribute name="ischeckedout" /> <attribute name="filetype" /> <attribute name="modified" /> <attribute name="sharepointmodifiedby" /> <attribute name="servicetype" /> <attribute name="absoluteurl" /> <attribute name="title" /> <attribute name="author" /> <attribute name="sharepointdocumentid" /> <attribute name="readurl" /> <attribute name="editurl" /> <attribute name="locationid" /> <attribute name="iconclassname" /> <attribute name="locationname" /> <order attribute="relativelocation" descending="false" /> <filter> <condition attribute="isrecursivefetch" operator="eq" value="0" /> </filter> </entity> </fetch>
Do mesmo modo, procure o elemento
<SavedQuery>
em que o atributo savedqueryid é igual a "a5b008ac-07d9-4554-8509-2c05767bff51".Se não conseguir encontrar uma consulta guardada com o ID especificado no passo anterior, vá para o passo 24. No entanto, se o elemento
<SavedQuery>
encontrado no passo 19 for semelhante a<SavedQuery unmodified="1">
, remova o atributo não modificado="n".Pesquise layoutxml de Todos os Documentos SharePoint (procure Todos os Documentos SharePoint).
Efetue as alterações tal como indicado abaixo para a secção layoutxml:
<layoutxml> <grid name="sharepointdocument" jump="fullname" select="1" icon="0" preview="1"> <row name="sharepointdocument" id="sharepointdocumentid"> <cell name="fullname" width="300" imageproviderfunctionname="DocumentManagement.FileTypeIcon.loadSharePointFileTypeIcon" imageproviderwebresource="$webresource:SharePoint_main_system_library.js" /> <cell name="relativelocation" width="200" /> <cell name="modified" width="150" /> <cell name="sharepointmodifiedby" width="150" /> <cell name="sharepointcreatedon" width="300" /> <cell name="documentid" ishidden="1" /> <cell name="title" ishidden="1" /> <cell name="readurl" ishidden="1" /> <cell name="editurl" ishidden="1" /> <cell name="author" ishidden="1" /> <cell name="absoluteurl" ishidden="1" /> <cell name="sharepointdocumentid" ishidden="1" /> <cell name="filetype" ishidden="1" /> <cell name="ischeckedout" ishidden="1" /> <cell name="locationid" ishidden="1" /> <cell name="iconclassname" ishidden="1" /> </row> </grid> </layoutxml>
Efetue as alterações como abaixo para a secção FetchtXml:
<fetch distinct="false" mapping="logical"> <entity name="sharepointdocument"> <attribute name="documentid" /> <attribute name="fullname" /> <attribute name="relativelocation" /> <attribute name="sharepointcreatedon" /> <attribute name="filetype" /> <attribute name="absoluteurl" /> <attribute name="modified" /> <attribute name="sharepointmodifiedby" /> <attribute name="title" /> <attribute name="readurl" /> <attribute name="editurl" /> <attribute name="author" /> <attribute name="sharepointdocumentid" /> <attribute name="ischeckedout" /> <attribute name="locationid" /> <attribute name="iconclassname" /> <filter> <condition attribute="isrecursivefetch" operator="eq" value="1" /> </filter> <order attribute="relativelocation" descending="false" /> </entity> </fetch>
Do mesmo modo, procure o elemento
<SavedQuery>
em que o atributo savedqueryid é igual a "cb177797-b2ac-42a8-9773-5412321a965c".Se não conseguir encontrar uma consulta guardada com o ID especificado no passo anterior, vá para o passo 29. No entanto, se o elemento
<SavedQuery>
encontrado no passo 24 for semelhante a<SavedQuery unmodified="1">
, remova o atributo não modificado="n".Pesquise layoutxml de Documento OneNote SharePoint (procure Documento OneNote SharePoint).
Efetue as alterações tal como indicado abaixo para a secção layoutxml:
<layoutxml> <grid name="sharepointdocument" jump="fullname" select="1" icon="0" preview="1"> <row name="sharepointdocument" id="sharepointdocumentid"> <cell name="fullname" width="300" imageproviderfunctionname="DocumentManagement.FileTypeIcon.loadSharePointFileTypeIcon" imageproviderwebresource="$webresource:SharePoint_main_system_library.js" /> <cell name="relativelocation" width="200" /> <cell name="modified" width="150" /> <cell name="sharepointmodifiedby" width="150" /> <cell name="sharepointcreatedon" width="300" /> <cell name="title" ishidden="1" /> <cell name="readurl" ishidden="1" /> <cell name="editurl" ishidden="1" /> <cell name="author" ishidden="1" /> <cell name="absoluteurl" ishidden="1" /> <cell name="filetype" ishidden="1" /> <cell name="ischeckedout" ishidden="1" /> <cell name="locationid" ishidden="1" /> <cell name="iconclassname" ishidden="1" /> </row> </grid> </layoutxml>
Efetue as alterações como abaixo para a secção FetchtXml:
<fetch distinct="false" mapping="logical"> <entity name="sharepointdocument"> <attribute name="documentid" /> <attribute name="fullname" /> <attribute name="relativelocation" /> <attribute name="sharepointcreatedon" /> <attribute name="filetype" /> <attribute name="modified" /> <attribute name="sharepointmodifiedby" /> <attribute name="title" /> <attribute name="readurl" /> <attribute name="editurl" /> <attribute name="author" /> <attribute name="absoluteurl" /> <attribute name="ischeckedout" /> <attribute name="locationid" /> <attribute name="iconclassname" /> <filter type="and"> <condition attribute="documentlocationtype" operator="eq" value="1" /> <condition attribute="isrecursivefetch" operator="eq" value="0" /> <filter type="or"> <condition attribute="filetype" operator="eq" value="one" /> <condition attribute="filetype" operator="eq" value="onetoc2" /> </filter> </filter> <order attribute="sharepointcreatedon" descending="true" /> </entity> </fetch>
Guarde o ficheiro.
Coloque a pasta em zip.
Abra uma aplicação condicionada por modelo no Dynamics 365.
Navegue para Definições>Soluções
Importe a solução (ficheiro zipado no Passo 8).
Publicar todas as personalizações.
Certifique-se de que nenhum dos problemas associados ao FetchXML ou LayoutXML malformado está resolvido. Por exemplo, verifique se a grelha associada de Documentos é apresentada em todos os documentos do SharePoint necessários.