none
CRM 2011 online - Problema con JScript y Xrm.Page RRS feed

  • Pregunta

  • Buenos días a todos, antes de nada he de decir que acabo de empezar con CRM y mis conocimientos son bastante limitados.

    El problema que tengo es al actualizar un campo en base a otros tres (Nombre Completo = Apellido 1 Apellido 2, Nombre), esto mismo necesito hacerlo para 3 campos más. Para ello me he creado una función y la he importado. El código es el que sigue:

     

      f_CompletarNombre: function f_CompletarNombre(v_nombrecompleto, v_nombre, v_apellido1, v_apellido2) {
        var nombrecompleto = '';
    
        if ((v_nombre != null) &&
          (v_apellido1 != null) &&
          (v_apellido2 != null)) {
          nombrecompleto = v_apellido1 + " " + v_apellido2 + ", " + v_nombre;
        }
        else {
          if ((v_nombre != null) && (v_apellido1 != null)) {
            nombrecompleto = v_apellido1 + ", " + v_nombre;
          }
          else {
            nombrecompleto = null;
          }
        }
    
        if (nombrecompleto != null) {
    
          switch (v_nombrecompleto) {
            case "Estudiante":
              Xrm.Page.getAttribute("sf_nombrecompleto").setValue(nombrecompleto);          
              break;
            case "Contacto":
              Xrm.Page.getAttribute("sf_contactonombrecompleto").setValue(nombrecompleto);
              break;
            case "Padre":
              Xrm.Page.getAttribute("sf_padrenombrecompleto").setValue(nombrecompleto);
              break;
            case "Madre":
              Xrm.Page.getAttribute("sf_madrnombrecompleto").setValue(nombrecompleto);
              break;
          }
    
    
        }
      }
    
    

    En el formulario en el evento onchange del nombre, apellido1 y apellido2, llamo a la función f_CompletarNombre y le paso los siguientes parámetros:

    "Estudiante", Xrm.Page.getAttribute("sf_nombre").getValue(), Xrm.Page.getAttribute("sf_apellido1").getValue(), Xrm.Page.getAttribute("sf_apellido2").getValue()

    Al modificar los campos, obtengo el siguiente error:

     

    Error:No se puede obtener el valor de la propiedad 'setValue': el objeto es nulo o está sin definir

     

    He comprobado que la variable nombrecompleto es un String y al depurar en el internet explorer me devuelve valor, el campo sf_nombrecompleto es de tipo String también.

     

    Al principio me había funcionado un código muy similar, incluso en lugar de tener los case, le pasaba el nombre del campo que tenía que actualizar y me iba bien, sin embargo tuve que hacer unos cambios en los campos y los borré y los creé de nuevo y al volver a montar todo como estaba ya no me volvió a funcionar.

     

    ¿Alguna idea? muchas gracias por adelantado.

    miércoles, 4 de mayo de 2011 7:40

Respuestas