Dynamics CRM 3.0 0 comments on Propiedades de uso común de los Campos accesibles desde javascript

Propiedades de uso común de los Campos accesibles desde javascript

Cuando realizamos scripting de eventos en Dynamics CRM, podemos utilizar las siguientes propiedades y métodos de los campos para interactuar con ellos:

{Campo}.DataValue Valido para todos los campos.  Nota:  Asignar un valor a un campo no dispara el evento  OnChange.

Field}.Disabled Booleano para activar o desactivar un campo.

Ejemplo:

var oField = crmForm.all.SOME_FIELD_ID;
// Toggle the disbled state of the field
oField.Disabled = !oField.Disabled;

{Field}.IsDirty  Propiedad booleana que indica si un campo fue modificado (true).

Ejemplo:

var oField = crmForm.all.SOME_FIELD_ID;

if (oField.IsDirty)
{
   alert("El valor del campo ha cambiado.");
}
else
{
   alert("El valor del campo no ha cambiado.");
}

Método {Field}.FireOnChange()  dispara el evento OnChange para el campo.

Ejemplo

crmForm.all.Algun_Campo_ID.FireOnChange();
Dynamics CRM 3.0, Dynamics CRM 4.0 0 comments on Realizar operaciones matemáticas con JavaScript

Realizar operaciones matemáticas con JavaScript

Para realizar operaciones matemáticas utilizando JavaScript, y evitar problemas con campos nulos, es buena idea utilizar el operador condicional de JavaScript:

Sintaxis: variablename=(condition)?value1:value2

Esto nos evitará problemas, al validar los campos nulos antes utilizarlos en operaciones como sumas, de lo contrario se producirá un error al ejecutar el script.

Por ejemplo, para sumar dos números, usamos la propiedad DataValue que permite leer o asignar un valor a un campo:

var campo1 = crmForm.all.micampocrm1.DataValue;
var campo2 = crmForm.all.micampocrm1.DataValue;
//Inicializamos en 0 si el campo es null (esta vacío)
valor1 = (valor1 == null) ? 0:campo1 ;
valor2 = (valor2 == null) ? 0 : campo2 ;
//Ejecutamos la operación
crmForm.all.micamposuma.DataValue = valor1 + valor2;

En este caso, si ambos campos están vacios, la suma no producirá error, y el campo micamposuma será =0

Dynamics CRM 3.0 0 comments on ¿Cómo ocultar campos en Dynamics CRM?

¿Cómo ocultar campos en Dynamics CRM?

Algunas veces es necesario ocultar campos en los formularios de Dynamics CRM.  Esto puede lograrse utilizando javascript de dos formas:

  1. En el evento OnLoad de las propiedades del formulario (Form Properties) ocultamos cada campo.
  2. En el mismo evento Onload, ocultamos un TAB, al cuál hemos movido todos los campos que deseamos hacer invisibles.

Así, para el primer caso, tenemos que agregar dos líneas de código por cada campo a ocultar:

crmForm.all.nombrecampo_d.style.display = ‘hidden’;
crmForm.all.nombrecampo_c.style.display = ‘hidden’;

Nota: debe adicionar _d y _c al nombre de esquema del campo, _d significa el campo de datos y  _c es el  “caption”.

 

Y para el segundo caso, donde hemos creado un tab llamado “Ocultos”, y hemos movido los campos que queremos hacer invisibles, agregamos está línea de javascript

tab4Tab.style.visibility = ‘hidden’;

Porqué tab4Tab?,   esto se debe a que generalmente los tabs del form empiezan con indice 0 así:

tab0Tab = General Tab
tab1Tab = Details Tab
tab2Tab = Administration
tab3Tab = Notes

 

 Esta opción es más útil, y se puede implementar de forma estandar en todos los forms.  Recuerde que solo es posible utilizar 8 tabs por formulario, así que debería poder utilizar está técnica de ocultar con tab, siempre y cuando pueda disponer de un tab para ocultar.  De lo contrario…de regreso al caso 1.

Así de fácil.

 

Nota:  Las técnicas aquí propuestas deben ser usadas “bajo su propio riesgo”, y no asumimos ninguna responsabilidad por su uso y resultados.