Compartir a través de


Xrm.Page.data.process (referencia del lado del cliente)

 

Publicado: noviembre de 2016

Se aplica a: Dynamics CRM 2015

Con Microsoft Dynamics CRM 2015 y actualización de Microsoft Dynamics CRM Online 2015, el espacio de nombres de Xrm.Page.data.process proporciona eventos, métodos, y objetos para interactuar con los datos de flujo de proceso de negocio en un formulario.

Vea Xrm.Page.ui.process (referencia del lado del cliente) para los métodos para interactuar con el control de flujo de proceso empresarial en el formulario.

Métodos Xrm.Page.data.process

  • Métodos ActiveProcess
    Use getActiveProcess para recuperar información sobre el proceso activo y setActiveProcess para definir otro proceso como proceso activo.

  • Métodos ActiveStage
    Use getActiveStage para recuperar la información sobre la fase activa y setActiveStage para establecer otra fase completada como la fase activa.

    Con Actualización 1 de Microsoft Dynamics CRM Online 2015 puede usar setActiveStage en una fase en otra entidad.

  • getActivePath
    Use este método para obtener una colección de fases actualmente en la ruta activa con métodos para interactuar con las fases mostradas en el control de flujo de proceso de negocio.

    La ruta activa representa fases generadas actualmente en el control de proceso según las reglas de bifurcación y datos actuales en el registro.

  • getEnabledProcesses
    Use este método para recuperar asincrónicamente los flujos de proceso de negocio habilitados a los que el usuario puede cambiar para una entidad.

  • getSelectedStage
    Agregado con Actualización 1 de Microsoft Dynamics CRM Online 2015, use este método para obtener acceso a la fase actualmente seleccionada.

  • Métodos para administrar controladores de eventos
    Use los métodos addOnStageChange, removeOnStageChange, addOnStageSelected y removeOnStageSelected para agregar o quitar controladores de eventos para el control de flujo de proceso de negocio.

  • Métodos de navegación
    Use moveNext para pasar a la siguiente fase y movePrevious para pasar a la fase anterior.

    Con Actualización 1 de Microsoft Dynamics CRM Online 2015 puede usar movePrevious en una fase anterior en otra entidad.

  • Métodos de proceso
    Uso métodos de proceso para obtener acceso a las propiedades del proceso.

  • Métodos de fase
    Use métodos de fase para acceder a las propiedades de la fase en un flujo de proceso de negocio.

  • Métodos de paso
    Use métodos de paso para acceder a las propiedades del paso en una fase de un flujo de proceso de negocio.

Métodos ActiveProcess

Use getActiveProcess para recuperar información sobre el proceso activo y setActiveProcess para definir otro proceso como proceso activo.

getActiveProcess

Devuelve un objeto de Process que representa el proceso activo.

var activeProcess = Xrm.Page.data.process.getActiveProcess();
  • Valor devuelto
    Tipo: Proceso

    Comentarios: Vea Métodos de proceso para los métodos de acceso a las propiedades del proceso devuelto.

setActiveProcess

Establezca un Process como proceso activo.

Xrm.Page.data.process.setActiveProcess(processId, callbackFunction);

Parámetros:

  • processId
    Tipo:String

    Comentarios: El identificador del proceso para crear el proceso activo.

  • callbackFunction
    Tipo:Function

    Comentarios: Una función para llamar una vez terminada la operación. A esta capacidad de devolución de llamada se le pasa uno de los siguientes valores de cadena para indicar si la operación se realizó correctamente.

    Valor

    Descripción

    correcto

    La operación se ha realizado correctamente.

    no válido

    El processId es válido o el proceso no está habilitado.

Métodos ActiveStage

Use getActiveStage para recuperar la información sobre la fase activa y setActiveStage para establecer otra fase como la fase activa.

getActiveStage

Devuelve un objeto de Stage que representa la fase activa.

var activeStage = Xrm.Page.data.process.getActiveStage();
  • Valor devuelto
    Tipo: Fase

    Comentarios: Vea Métodos de fase para los métodos de acceso a las propiedades de la fase devuelta.

setActiveStage

Establezca una fase completada como fase activa.

Nota

Con Actualización 1 de Microsoft Dynamics CRM Online 2015 puede usar este método en una fase anterior en otra entidad.

Sólo una fase completada para la entidad se puede establecer mediante este método.

Xrm.Page.data.process.setActiveStage(stageId, callbackFunction);

Parámetros:

  • stageId
    Tipo:String

    Comentarios: El Id. de la fase completada para la entidad para crear la fase activa.

  • callbackFunction
    Tipo:Function

    Comentarios: Una función opcional para llamar una vez terminada la operación.

    A la característica de devolución de llamada se le pasa un valor de cadena de "success" si la operación se completa correctamente.

    Si el stageId representa una fase que no es válida, la fase no se convertirá en activa y se pasará el valor de cadena indicando la razón a la característica de devolución de llamada. Pueden devolverse los valores que se muestran en la tabla siguiente.

    Valor

    Razón

    crossEntity

    La fase debe ser una para la entidad actual.

    invalid

    Hay tres razones por las que este valor puede ser devuelto:

    • El parámetro stageId es un valor de Id. de fase inexistente.

    • La fase activa no es la fase seleccionada

    • El registro aún no se ha guardado.

    unreachable

    La fase existe en otra ruta.

    dirtyForm

    Esta valor se devolverá si los datos en la página no se guardan.

    Importante

    Este método se puede usar únicamente cuando la fase seleccionada y la fase activa son iguales. Cuando el código se inicia desde el Evento OnStageChange, la fase actual se seleccionará. Cuando se inicia el código desde el Evento OnStageSelected, debe usar Xrm.Page.data.process.getActiveStage para comprobar que la fase seleccionada también es la fase activa. Para cualquier otro evento de formulario, no es posible determinar qué fase está seleccionada actualmente. Para obtener los mejores resultados, este método se debe usar solo en código al que se llama en funciones iniciadas por los eventos OnStageChange y OnStageSelected.

getActivePath

Use este método para obtener una colección de fases actualmente en la ruta activa con métodos para interactuar con las fases mostradas en el control de flujo de proceso de negocio.

La ruta activa representa fases generadas actualmente en el control de proceso según las reglas de bifurcación y datos actuales en el registro.

var stageCollection = Xrm.Page.data.process.getActivePath();

Ejemplo:

Vea Ejemplo: Xrm.Page.data.process.getActivePath para un ejemplo de uso de este método.

  • Valor devuelto
    Tipo: Colección

    Remarks: Una colección de todas las fases completadas, la fase activa actualmente y el conjunto previsto de fases futuras basadas en condiciones satisfechas en la regla de bifurcación. Podría ser un subconjunto de las fases devueltas con Xrm.Page.data.process. getActiveProcess porque solo incluirá las fases que representan una transición válida de la fase actual basada en bifurcación que se ha producido en el proceso.

getEnabledProcesses

Use este método para recuperar asincrónicamente los flujos de proceso de negocio habilitados a los que el usuario puede cambiar para una entidad.

Xrm.Page.data.process.getEnabledProcesses(callbackFunction(enabledProcesses));
  • Parámetro
    Tipo:Function

    Comentarios: La característica de devolución de llamada debe aceptar un parámetro que contiene un objeto con las propiedades de diccionario donde el nombre de la propiedad es el identificador del flujo de proceso de negocio y el valor de la propiedad es el nombre del flujo de proceso de negocio.

    Los procesos habilitados se filtran según los privilegios del usuario. La lista de procesos habilitados es la misma que un usuario puede ver en la interfaz de usuario si desea cambiar el proceso manualmente.

    Ejemplo:

    Vea Ejemplo: Xrm.Page.data.process.getEnabledProcesses para un ejemplo de uso de este método.

getSelectedStage

Use este método para obtener la fase actualmente seleccionada.

Xrm.Page.data.process.getSelectedStage()
  • Valor devuelto
    Tipo: Fase

    La fase seleccionada actualmente.

  • Comentarios
    Este método se agregó para Actualización 1 de Microsoft Dynamics CRM Online 2015

    Consulte Métodos de fase para los métodos de acceso a las propiedades de la fase devuelta.

Métodos para administrar controladores de eventos

Use estos métodos para agregar o quitar controladores de eventos para el control de flujo de proceso de negocio.

addOnStageChange

Use este método para agregar una capacidad como controlador de eventos del Evento OnStageChange de modo que sea llamada cuando cambie la fase del flujo de proceso de negocio.

Xrm.Page.data.process.addOnStageChange(handler);
  • Parámetro
    Tipo: referencia de función

    Remarks: La función se agregará al final de la canalización del controlador de eventos. El contexto de ejecución se configura automáticamente para ser el primer parámetro que se pasa al controlador de eventos. Para obtener más información, vea Contexto de ejecución (referencia del lado del cliente).

    Debe usar una referencia a una función con nombre en lugar de una función anónima por si posteriormente desea quitar el controlador de eventos.

removeOnStageChange

Use este método para quitar una capacidad como controlador de eventos de Evento OnStageChange.

Xrm.Page.data.process.removeOnStageChange(handler);
  • Parámetro
    Tipo: referencia de función

    Remarks: Si una función anónima se configura mediante el método de addOnStageChange, no se puede quitar mediante este método.

addOnStageSelected

Use este método para agregar una función como controlador de eventos del Evento OnStageSelected de modo que sea llamada cuando se seleccione una fase del flujo de proceso de negocio.

Xrm.Page.data.process.addOnStageSelected(handler);
  • Parámetro
    Tipo: referencia de función

    Remarks: La función se agregará al final de la canalización del controlador de eventos. El contexto de ejecución se configura automáticamente para ser el primer parámetro que se pasa al controlador de eventos. Para obtener más información, vea Contexto de ejecución (referencia del lado del cliente).

    Debe usar una referencia a una función con nombre en lugar de una función anónima por si posteriormente desea quitar el controlador de eventos.

removeOnStageSelected

Use este método para quitar una capacidad como controlador de eventos de Evento OnStageSelected.

Xrm.Page.data.process.removeOnStageSelected(function reference);
  • Parámetro
    Tipo: referencia de función

    Remarks: Si una función anónima se configura mediante el método de addOnStageSelected, no se puede quitar mediante este método.

Métodos de navegación

Use moveNext para pasar a la siguiente fase y movePrevious para pasar a la fase anterior. Ambos métodos harán que se produzca Evento OnStageChange.

moveNext

Avanza a la siguiente fase.

Xrm.Page.data.process.moveNext(callbackFunction);
  • Parámetro
    Tipo: Función

    Comentarios: Una función opcional para llamar una vez terminada la operación. A esta capacidad de devolución de llamada se le pasa uno de los siguientes valores de cadena para indicar si la operación se realizó correctamente.

    Valor

    Descripción

    correcto

    La operación se ha realizado correctamente.

    crossEntity

    La siguiente fase es para otra entidad.

    fin

    La fase activa es la última fase de la ruta activa.

    no válido

    La operación ha producido error porque la fase seleccionada no es la misma que la fase activa.

    dirtyForm

    Esta valor se devolverá si los datos en la página no se guardan.

Importante

Este método se puede usar únicamente cuando la fase seleccionada y la fase activa son iguales. Cuando el código se inicia desde el Evento OnStageChange, la fase actual se seleccionará. Cuando se inicia el código desde el Evento OnStageSelected, debe usar Xrm.Page.data.process.getActiveStage para comprobar que la fase seleccionada también es la fase activa. Para cualquier otro evento de formulario, no es posible determinar qué fase está seleccionada actualmente. Para obtener los mejores resultados, este método se debe usar solo en código al que se llama en funciones iniciadas por los eventos OnStageChange y OnStageSelected.

movePrevious

Retrocede a la fase anterior. Con Actualización 1 de Microsoft Dynamics CRM Online 2015 puede usar movePrevious en una fase anterior en otra entidad.

Xrm.Page.data.process.movePrevious(callbackFunction);
  • Parámetro
    Tipo: Función

    Comentarios: Una función opcional para llamar una vez terminada la operación. A esta capacidad de devolución de llamada se le pasa uno de los siguientes valores de cadena para indicar si la operación se realizó correctamente.

    Valor

    Descripción

    correcto

    La operación se ha realizado correctamente.

    crossEntity

    La fase anterior es para otra entidad.

    inicial

    La fase activa es la primera fase de la ruta activa.

    no válido

    La operación ha producido error porque la fase seleccionada no es la misma que la fase activa.

    dirtyForm

    Esta valor se devolverá si los datos en la página no se guardan.

Importante

Este método se puede usar únicamente cuando la fase seleccionada y la fase activa son iguales. Cuando el código se inicia desde el Evento OnStageChange, la fase actual se seleccionará. Cuando se inicia el código desde el Evento OnStageSelected, debe usar Xrm.Page.data.process.getActiveStage para comprobar que la fase seleccionada también es la fase activa. Para cualquier otro evento de formulario, no es posible determinar qué fase está seleccionada actualmente. Para obtener los mejores resultados, este método se debe usar solo en código al que se llama en funciones iniciadas por los eventos OnStageChange y OnStageSelected.

Nota

Con Actualización 1 de Microsoft Dynamics CRM Online 2015 puede usar este método para volver a una fase anterior para otra entidad.

Métodos de proceso

Un proceso contiene los datos para un flujo de proceso de negocio. Uso los métodos para obtener acceso a las propiedades del proceso.

getId

Devuelve el identificador único del proceso.

var processId = procObj.getId();
  • Valor devuelto
    Tipo:String

    Comentarios: El valor constituye la representación en cadena de un valor de GUID.

getName

Devuelve el nombre del proceso.

var processName = procObj.getName();
  • Valor devuelto
    Tipo:String

getStages

Devuelve una colección de fases del proceso

var stageCollection = procObj.getStages();
  • Valor devuelto
    Tipo: Colección

    Consulte Métodos de fase para los métodos de acceso a las propiedades de las fases devueltas.

isRendered

Devuelve true si se representa el proceso, false en caso contrario

var processRendered = procObj.isRendered();

Métodos de fase

Una fase contiene los datos para una fase en un flujo de proceso de negocio. Uso los métodos para obtener acceso a las propiedades de la fase.

getCategory

Devuelve un objeto con un método getValue que vuelve el valor entero de la categoría del flujo de proceso de negocio.

var stageCategoryNumber = stageObj.getCategory().getValue();

getEntityName

Devuelve el nombre lógico de la entidad asociada a la fase.

var stageEntityName = stageObj.getEntityName();
  • Valor devuelto
    Tipo:String

getId

Devuelve el identificador único de la fase.

var stageId = stageObj.getId();
  • Valor devuelto
    Tipo:String

getName

Devuelve el nombre de la fase.

var stageName = stageObj.getName();
  • Valor devuelto
    Tipo:String

getStatus

Devuelve el estado de la fase.

var stageStatus = stageObj.getStatus();
  • Valor devuelto
    Tipo:String

    Comentarios: Este método devolverá active o inactive.

getSteps

Devuelve una colección de pasos de la fase.

var stepsCollection = stageObj.getSteps();
  • Valor devuelto
    Tipo:Array

    Vea Métodos de paso para métodos de acceso a los valores de propiedad del paso.

Métodos de paso

Un paso contiene los datos para un paso de una fase de un flujo de proceso de negocio. Uso los métodos para obtener acceso a las propiedades del paso.

getAttribute

Devuelve el nombre lógico del atributo asociado al paso.

var stepAttributeName = stepObj.getAttribute();
  • Valor devuelto
    Tipo:String

    Comentarios: Algunos pasos no contienen un valor de atributo.

getName

Devuelve el nombre del paso.

var stepName = stepObj.getName();
  • Valor devuelto
    Tipo:String

isRequired

Devuelve si el paso es obligatorio en el flujo de proceso de negocio.

var stepIsRequired = stepObj.isRequired();
  • Valor devuelto
    Tipo:Boolean

    Comentarios: Devuelve true si el paso está marcado como necesario en el editor de flujos de proceso de negocio; de lo contrario, false. No hay conexión entre este valor y los valores que puede cambiar en el atributo RequiredLevelXrm.Page.data.entity.

Ver también

Escribir scripts para flujos de procesos de negocio
Xrm.Page.ui.process (referencia del lado del cliente)
Referencia de programación del lado del cliente
Referencia de scripting de formularios
Escriba código para formularios de Microsoft Dynamics CRM 2015
Use el modelo de objeto Xrm.Page
Ejemplo: Xrm.Page.data.process.getEnabledProcesses
Ejemplo: Xrm.Page.data.process.getActivePath

© 2017 Microsoft. Todos los derechos reservados. Copyright