Pergunta

Estou personalizar Dynamics CRM 4 e gostaria de modificar o formulário para a entidade Caso adicionar algum JavaScript para o evento onchange para o Knowledge Base artigo de pesquisa de campo (kbarticleid_ledit). No entanto, quando eu clicar em Alterar Propriedades para esse campo, recebo uma mensagem de erro:

Este campo pertence a uma seção bloqueada e não pode ter suas propriedades modificado.

Como posso contornar esta situação e editá-lo? Existe uma solução semelhante ao personalizar a visualização do artigo ? Ou eu posso cortar o DB de alguma forma para "destravar" nesse campo?

Foi útil?

Solução 2

OK, eu descobri-lo - postando aqui no caso de alguém corre para o mesmo problema. Você precisa exportar as personalizações para a entidade caso para XML e editar o XML. Você pode "desbloquear" na seção encontrando o elemento correspondente no XML e alterando o atributo locklevel = "1" para locklevel = "0" .

No entanto, desbloquear ele não me ajudou em editar o código de evento onchange. CRM já teve algum código para esse evento e quando eu adicionei meu código na interface do usuário que adicionou um segundo "onchange" evento para o XML! Então, eu fui forçado a editar manualmente o código no XML (com XML-codificação adequada, é claro) e, em seguida, voltar a importar e publicar as personalizações.

Outras dicas

Você também poderia ter acrescentado onchange de código a partir do evento onload. Por exemplo, se o id do campo bloqueado foi lockedField, você poderia fazer algo parecido com isso.

var field = crmForm.all.lockedField;
if (field)
    field.attachEvent('onchange', onChangeEventHandler);

function onChangeEventHandler()
{
    // do something 
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top