CartasA palavra está com os leitores

Backups do Windows

Fiquei tão animado com sua matéria sobre o Windows Server® 2008 (TechNet Magazine, março de 2008, technet.microsoft.com/magazine/cc268370) que fui ao evento de lançamento e comprei uma cópia para minha rede doméstica. Tudo transcorreu normalmente na instalação. No entanto, fiquei espantado com os backups.

O NT Backup foi removido, e o novo Windows Server Backup não oferece suporte a unidades de fita, embora o SO ofereça. (Faço backup de meus dados pessoais, inclusive do Active Directory® e do Exchange Server 2007, em uma unidade de fita.)

Tentei baixar o Microsoft® Data Protection Manager (DPM) seguindo as dicas na Web, embora o DPM possa ser um exagero para minha instalação. Contudo, o DPM não instalou no Windows Server 2008, e não tive muita sorte nas instruções de instalação manual. Que benefício as pequenas instalações podem trazer aos backups?

—Ravi S.

O DPM realmente é a solução para backups em fita, pois a nova solução no Windows Server 2008 é otimizada para armazenamento baseado em disco. O DPM oferecerá suporte oficialmente ao Windows Server 2008 nos próximos dois meses.

—Karandeep Anand, gerente geral sênior de programa da Microsoft

Fluxos de trabalho de pesquisa

No artigo de fevereiro de 2008 "Criação de uma infra-estrutura de pesquisa avançada" (technet.microsoft.com/magazine/cc194407), a seguinte afirmação está na seção Como trabalhar somente com o WSS: "Você também tem a opção de atribuir um fluxo de trabalho à pesquisa."

Pelo que sei, o Windows® SharePoint® Services 3.0 (WSS) e o Microsoft Office SharePoint Server 2007 (MOSS) não oferecem suporte a fluxos de trabalho associados a respostas de pesquisa. Tentei associar um fluxo de trabalho a uma resposta de pesquisa e, embora o SharePoint Designer permita a associação, o fluxo de trabalho sempre emite um erro Falha ao iniciar. Há um artigo da Base de Dados de Conhecimento (support.microsoft.com/kb/926370) que afirma claramente que não há suporte aos fluxos de trabalho associados a respostas de pesquisa.

Sei que é possível vincular um receptor de eventos a uma pesquisa e iniciar outro processo, mas na verdade não se trata de um fluxo de trabalho como é normalmente mencionado no SharePoint. Aquela afirmação estava errada ou fui eu que não entendi direito?

—Matt B.

O parágrafo mencionado fala sobre como o WSS fornece um assistente para um processo passo a passo de criação de pesquisas. Também há uma discussão sobre as diversas opções (lógica de ramificação, questões abertas/fechadas etc.).

Uma das opções que o assistente realmente fornece é atribuir um fluxo de trabalho; portanto, de certa forma, não é totalmente incorreto dizer: "você tem a opção de atribuir um fluxo de trabalho a uma pesquisa". Foi possível atribuí-la. Entretanto, como você ressalta, os fluxos de trabalho em pesquisas não funcionam, embora, por algum motivo, essa opção seja incluída. Deixe-me explicar por que isso acontece.

Depois de associar um fluxo de trabalho a uma pesquisa e tentar iniciá-la, você recebe o erro Falha ao iniciar. Os logs dessa atividade mostram o seguinte:

RunWorkflow: System.ArgumentException: Invalid field name.
{<<< GUID>>>} at ...

Esse GUID representa a instância do fluxo de trabalho. Aparentemente, é uma excelente forma de se certificar de que o fluxo de trabalho seja disparado, a menos que o tipo de lista da "pesquisa" não ofereça suporte ao atributo de fluxo de trabalho. Simplesmente, não está no código. Por isso, quando o fluxo de trabalho tenta ativar com o método MakeActivation e faz algo do tipo:

internal static void MakeActivation(SPWorkflow workflow, SPWorkflowEvent e)
{e.EventData = new object[ ] { workflow.InstanceId, new SPWorkflowActivation 
Properties(workflow, e.RunAsUserId, associationData, initiationData) };
...
}

ele chama SPWorkflowActivationProperties, que se parece com o seguinte:

internal SPWorkflowActivationProperties(SPWorkflow workflow, 
int runAsUserId, string associationData, string initiationData)
{
...
this.m_itemGuid = new Guid((string) 
this.Item[SPBuiltInFieldId.GUID]);
...
}

Portanto, já que ele espera a cadeia de caracteres do GUID como um atributo na pesquisa (que, ao que parece, deveria ser interno) e a pesquisa não tem o atributo para o GUID de fluxo de trabalho, isso nunca funciona.

Talvez haja uma solução, então, você acertou quando pensou nisso. A solução se resume à criação de uma lista personalizada que dispara um fluxo de trabalho e à vinculação de um receptor de eventos para a pesquisa com ItemEventReceiver. Esse receptor de eventos cria um item na lista personalizada, que dispara um fluxo de trabalho. Mas você está certo; na verdade, não é a mesma coisa. Para encurtar a história, sim, foi uma grande sacada da sua parte, mas na prática não funciona.

—Pav Cherny, colunista, Explorando o SharePoint, TechNet Magazine

© 2008 Microsoft Corporation e CMP Media, LLC. Todos os direitos reservados; é proibida a reprodução parcial ou completa sem autorização..