Bibliotecas de JavaScript para Microsoft Dynamics 365

 

Publicado: enero de 2017

Se aplica a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

Las bibliotecas deJavaScript son Recursos web de script (JScript) que contienen funciones que puede usar para:

  • Controlar formularios y eventos de campo.

  • Realizar acciones para controles configurados en la cinta de opciones.

  • Admitir otras funciones.

Mediante las bibliotecas JScript

Puede usar las bibliotecas JavaScript prácticamente igual que las bibliotecas JavaScript en cualquier aplicación web.

El asociado funciona con eventos de formulario y campo

Puede asociar hasta 50 recursos web de script de forma que se carguen en un formulario de entidad.

Después de agregar una biblioteca al formulario, estará disponible para todos los eventos del formulario. Para los eventos, puede decidir qué funciones serán los controladores de eventos. Puede especificar hasta 50 funciones como controladores de eventos para cualquier elemento.

Asociar funciones en tiempo de ejecución

Puede agregar funciones al atributo OnChange, al formulario OnSave y a los eventos PreSearch del control de búsqueda durante el tiempo de ejecución mediante Xrm.Page.data.entity attribute.addOnChange, Xrm.Page.data.entity.addOnSave y los métodos addPreSearch del control de búsqueda. Si se usan estos métodos, la función se agrega en la parte inferior de la canalización del controlador de eventos y reciben el contexto de ejecución como primer parámetro. Puede usar el removeOnChange correspondiente removeOnSave y los métodos de removePreSearch para quitar funciones agregadas de este modo.

Contexto de ejecución

Cada controlador de eventos se puede configurar para aceptar un objeto de contexto de ejecución como primer parámetro. El contexto de ejecución incluye funciones que se pueden llamar para determinar:

  • Profundidad: orden relativo en el que se ejecuta el controlador.

  • Origen de eventos: referencia al objeto que ha iniciado el evento.

    Esta característica es importante cuando se crea una función que puede responder a los eventos de distintos formatos o eventos de campo.

  • Variables compartidas: permite que una función establezca una variable como un par de clave/valor al que pueden acceder otros controladores de eventos.

Más información:Contexto de ejecución (referencia del lado del cliente)

En el cuadro de diálogo de propiedades del controlador, puede especificar una lista de valores de cadena separados por comas que se pasarán a la función. Esto puede resultar útil para permitir modificar el comportamiento de una función sin necesidad de cambios en el código.

Asociar funciones a mandatos de la barra de comandos (cinta de opciones)

Cada control de la barra de comandos o la cinta está asociado con <CommandUIDefinition> (RibbonDiffXml) que contiene un elemento <Actions> (RibbonDiffXml) que contiene una o más acciones.<JavaScriptFunction> (RibbonDiffXml) es una de las acciones disponibles. El elemento JavaScriptFunction requiere una referencia a una biblioteca y una función de dicha biblioteca.

Desarrollo y scripts de prueba

Puede editar scripts a través del formulario de recursos web o de la pestaña Eventos donde ha configurado las bibliotecas de formularios y los controladores de eventos.

O bien puede usar su herramienta favorita de edición de scripts y cargar los cambios para actualizar el recurso web de script. Debe publicar el recurso web después de realizar cambios.

Creación de bibliotecas de script

Al diseñar las funciones que se usarán en las bibliotecas de JavaScript, las funciones se pueden cargar en un formulario con otras bibliotecas de JavaScript . Si otra biblioteca contiene una función que tenga el mismo nombre que una función que proporcione el usuario, la función que se cargue en último lugar será definida por la página. Para evitar que las funciones se sobrescriban con funciones de otra biblioteca, debe asegurarse de que las funciones tengan nombres únicos.

Puede usar dos estrategias para asegurarse de que las funciones tengan nombres únicos:

  • Prefijo único de función
    Defina cada una de las funciones utilizando la sintaxis estándar con un nombre coherente que incluya una convención de nomenclatura única, como se muestra en el siguiente ejemplo.

    function MyUniqueName_performMyAction()
    {
    // Code to perform your action.
    }
    
  • Nombres de biblioteca de con espacio de nombres
    Asocie cada una de las funciones con un objeto de JavaScript para crear un tipo de espacio de nombres que usar cuando se llame a las funciones, como se muestra en el siguiente ejemplo.

    //If the MyUniqueName namespace object isn’t defined, create it.
    if (typeof (MyUniqueName) == "undefined")
     { MyUniqueName = {}; }
      // Create Namespace container for functions in this library;
      MyUniqueName.MyFunctions = {
       performMyAction: function(){
       // Code to perform your action.
       //Call another function in your library
       this.anotherAction();
      },
      anotherAction: function(){
       // Code in another function
      }
    };
    

    A continuación, cuando use la función, podrá especificar el nombre completo. El siguiente ejemplo muestra esto.

    MyUniqueName.MyFunctions.performMyAction();
    

    Si llama a una función en otra función, puede usar la palabra clave this como acceso directo al objeto que contiene ambas funciones. No obstante, si la función se usa como controlador de eventos, la palabra clave this se referirá al objeto donde se produce el evento.

Scripts de depuración

Cada explorador tiene su propio conjunto de herramientas del desarrollador. Las instrucciones siguientes se describen mediante Internet Explorer.

Depurar script en formularios de Microsoft Dynamics 365
  1. Pulse F12 para abrir las herramientas del desarrollador.

  2. En la pestaña Script, en la parte derecha del botón Iniciar depuración , use la lista desplegable para buscar la biblioteca JavaScript .

  3. Establezca un punto de interrupción haciendo clic en el margen izquierdo de la función.

  4. Haga clic en Iniciar depuración.

  5. Si el script se encuentra en el evento de Onload , es posible que tenga que seleccionar la ventana Microsoft Dynamics 365 y pulsar F5 para recargar la ventana.

Para obtener más información, consulte Script de depuración con herramientas del desarrollador.

Ver también

Uso de JavaScript con Microsoft Dynamics 365
Personalizar aplicaciones de Microsoft Dynamics 365
Amplíe Microsoft Dynamics 365 en el cliente
Recursos web de script (JScript)
Escriba código para formularios de Microsoft Dynamics 365
Personalizar los formularios de entidad
Definir acciones de la cinta de opciones
Ejemplo: importar archivos como recursos web
Ejemplo: utilidad de recurso web

Microsoft Dynamics 365

© 2017 Microsoft. Todos los derechos reservados. Copyright