4 "armadilhas" do Sharepoint que deveriam conhecer...
Estou de volta com um desafio com o Microsoft Office Sharepoint Server 2007 (MOSS), que desde da minha ultima experiência, a plataforma "sofreu" um "Service Pack", alguns "hot fixes" e foram criadas muitas ferramentas pela comunidade ( basta pesquisar 'Sharepoint' no Codeplex ).
Mas na minha opinião a plataforma continua com problemas de fundo, tais como, a construção de uma solução para instalação pode-se tornar numa tarefa desespererante com a memorização de identificadores únicos (GUIDs).
Outro problema consiste na passagem de conteúdos entre ambientes de backoffice e frontend, denominado content deployment, falha constantemente.
Na criação da solução existem 4 situações que detectei e queria divulga-las aqui e sugerir de que forma podem as contornar.
- Se criarem uma coluna de um tipo (ex: MultiLine of Text) com o nome ColunaA, e se verificarem que se enganaram no tipo, não podem criar uma nova coluna com o nome ColunaA, mesmo apagando a primeira criada, com outro tipo.
- Solução: Criar uma nova coluna com outro nome e com o tipo pretendido
- O tipo conteúdo HTML, contem um validador que corta todo o tipo de Javascript, como por exemplo um elemento object que serve para colocar elementos de Adobe Flash.
- Solução: Utilizar a webpart Content Editor Layout, que já permite colocar qualquer tipo de Javascript
- As colunas Lookup são colunas que permitem conter valores que estejam noutras tabelas e têm um output em modo de visualização, uma cadeia de texto com o seguinte formato: "Valor1 ; Valor2 ; Valor3". Esta cadeia de caracteres não pode exeder os 255 caracteres.
- Solução: Utilizar lookups para coisas especificas, ou conjunto de valores pré-definidos (ex: lista de Países)
- Os pages layouts são os templates em HTML que permitem dar o aspecto costumizado ao nosso formulário web, no MOSS, estes podem ser criados na ferramenta desenvolvida pela Microsoft, o Sharepoint Designer, que não avisa que as tags para MOSS são case sensitive, por exemplo a tag <asp:Content> que delimita o conteúdo dentro de um ContentPlaceHolder, quanto se utiliza MasterPages, não pode estar escrito <asp:content>.
- Solução: Ao obter o erro "Only Content controls are allowed directly in a content page that contains Content controls" é provável que o vosso layout tem um erro relacionado com o case sensitive.
Espero que este post tenha sido útil em prevenir que caiam nestas situações e andem moer a cabeça com estes problemas.