Pregunta

Estoy personalizando Dynamics CRM 4 y me gustaría modificar el formulario para la entidad Case para agregar algo de JavaScript al evento onchange para el campo de búsqueda del artículo de Knowledge Base (kbarticleid_ledit). Sin embargo, cuando hago clic en Cambiar propiedades para ese campo, aparece un mensaje de error:

Este campo pertenece a una sección bloqueada y no puede modificar sus propiedades.

¿Cómo puedo evitar esto y editarlo? ¿Existe una solución similar a personalizando la vista del artículo ? ¿O puedo hackear la base de datos de alguna manera para "desbloquear"? ese campo?

¿Fue útil?

Solución 2

Bien, lo descubrí, publicando aquí en caso de que alguien más tenga el mismo problema. Debe exportar las personalizaciones para la entidad Case a XML y editar el XML. Puede " desbloquear " la sección encontrando el elemento correspondiente en el XML y cambiando el atributo locklevel = " 1 " a locklevel = " 0 " .

Sin embargo, desbloquearlo no me ayudó a editar el código del evento onchange. CRM ya tenía algo de código para ese evento y cuando agregué mi código en la interfaz de usuario, agregó un segundo '' onchange '' evento al XML! Así que me vi obligado a editar manualmente el código en el XML (con la codificación XML adecuada, por supuesto) y luego volver a importar y publicar las personalizaciones.

Otros consejos

También podría haber agregado el código onchange del evento onload. Por ejemplo, si la identificación del campo bloqueado estaba bloqueada, podría hacer algo como esto.

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

function onChangeEventHandler()
{
    // do something 
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top