Mostrando postagens com marcador Migration. Mostrar todas as postagens
Mostrando postagens com marcador Migration. Mostrar todas as postagens

quarta-feira, 29 de abril de 2015

SharePoint: Remover Soluções / Features órfãs

Junto com a chegada da nova versão do SharePoint começa também a época das migrações. 

Um problema comum na migração são soluções / features órfãs referenciadas nos bancos de dados de conteúdo.

As órfãs surgem normalmente devido a remoção equivocada das customizações do SharePoint: As soluções devem ser deletadas em ordem reversa, ou seja primeiro desabilite o recurso / feature e em seguida cancele e remova o recurso da farm no SharePoint de origem.

O script abaixo é útil para os casos em quais o ambiente de origem não está acessível, e removerá todas as referencias da solução.

Mensagem no analisador de integridade do SharePoint no caso das soluções órfãs:

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
[MissingWebPart] WebPart class [GUID] is referenced [NUMBER] times in the database [WSS_Content], but is not installed on the current farm. Please install any feature/solution which contains this web part. One or more web parts are referenced in the database [WSS_Content], but are not installed on the current farm. Please install any feature or solution which contains these web parts.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

O script:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
## O script deletará todos as soluções sem escopo (? { $_.Scope -eq $null})
$orphans = Get-SPFeature | ? { $_.Scope -eq $null }
foreach ($orphan in $orphans)
{
$orphan.delete()
}
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+



[]

SharePoint: Remover Bibliotecas / Assemblies órfãs

Junto com a chegada da nova versão do SharePoint começa também a época das migrações. 
Um problema comum na migração são bibliotecas / assemblies órfãs referenciadas nos bancos de dados de conteúdo.

As órfãs surgem normalmente devido a remoção equivocada das customizações do SharePoint: As soluções devem ser deletadas em ordem reversa, ou seja primeiro desabilite o recurso / feature e em seguida cancele e remova o recurso da farm no SharePoint de origem.

O script abaixo é útil para os casos em quais o ambiente de origem não está acessível, e removerá todas as referencias da biblioteca.

Mensagens de erro comum no caso das bibliotecas órfãs:

No analisador de integridade do SharePoint:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Assembly [Contoso.EventReceiver, Version=1.0.0.0, Culture=neutral, PublicKeyTokenublicKeyToken=12345678910114] is referenced in the
database [WSS_Content], but is not installed on
the current farm. Please install any feature/solution which
contains this assembly.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Nos logs do SharePoint:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Falha ao carregar e executar a classe do receptor de evento Contoso.EventReceiver, Version=1.0.0.0, Culture=neutral, PublicKeyTokenublicKeyToken=12345678910114
<nativehr>0x80070002</nativehr><nativestack></nativestack>
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

O script:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
$database = Get-SPContentDatabase <informe o nome do banco de dados de conteúdo>
$eventreceiver = "<informe o nome da biblioteca, por exemplo Contoso.EventReceiver, Version=1.0.0.0, Culture=neutral, PublicKeyTokenublicKeyToken=12345678910114>"
$ERs = $database.sites.eventreceivers | ? {$_.Assembly -eq "$eventreceiver"}

foreach ($ER in $ERs)

{
$ED.delete()
}
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

[]