Páginas

segunda-feira, 25 de junho de 2012

0x80020005

Esse erro, aparentemente "indecifrável", é bastante simples de resolver. Claro que para eu descobrir e contar a você não foi algo muito rápido... Mas enfim: este erro é, basicamente, uma indicação de que você está tentando atualizar ou inserir um valor em um campo de outro tipo em uma lista.

Exemplo: você tem uma lista onde um campo é do tipo Person/Group. Via código, você tenta inserir neste campo um string, com apenas o nome do usuário ou do grupo. Vai dar erro. Isso porque o campo Person/Group é um campo Lookup: id;#valor. Ou seja: se você está inserindo o nome de um usuário, precisa colocar o id dele no site, seguido por ponto-e-vírgula, jogo da velha e então o valor. Exemplo: 7;#Fulano. Neste caso, adicione, através do código, o ID dele junto com ";#" ao nome. Como fazer isso? Crie um objeto do tipo SPFieldValueLookup, passando por parâmetro o ID dele (use algo do tipo "usuario.Id") e o nome. Cuidado com os campos Lookup: eles não são simples campos de texto.

Nenhum comentário:

Postar um comentário