Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Las acciones de proceso personalizadas, también conocidas como acciones personalizadas, son una de las dos maneras de crear mensajes personalizados para Microsoft Dataverse. El otro es api personalizadas. Más información: Creación y uso de API personalizadas.
Ambas funcionalidades permiten crear nuevos mensajes a los que se puede llamar desde servicios web. Las acciones de proceso personalizadas siguen proporcionando una manera sin código de definir mediante declaración lógica de negocios sincrónica. Las acciones de proceso personalizadas siempre han sido flujos de trabajo "en tiempo real" sincrónicos y, por lo tanto, no son adecuados para convertirse para usar Power Automate.
Para obtener una comparación de las funcionalidades de Acciones de proceso personalizadas y API personalizadas, consulte Comparación de acciones de proceso personalizadas y API personalizadas.
La lógica de negocios de una acción de proceso personalizada se implementa mediante un flujo de trabajo. Al crear una acción de proceso personalizada, el flujo de trabajo en tiempo real asociado se registra automáticamente para ejecutarse en la fase de operación principal de la canalización de ejecución de mensajes.
Para los desarrolladores, la creación de un nuevo mensaje significa que puede usar el mensaje en el código con la API web o el SDK para .NET.
- Con la API web, los nuevos mensajes creados con acciones de proceso personalizado siempre son acciones de OData. Para obtener información sobre las acciones de llamada mediante la API web, consulte Uso de acciones de API web.
- Las acciones de proceso personalizadas se pueden usar en JavaScript del lado cliente en aplicaciones controladas por modelos mediante el método Xrm.WebApi.online.execute.
- Con el SDK para .NET, los mensajes se pueden invocar genéricamente en un estilo de enlace tardío utilizando la clase OrganizationRequest o mediante el uso de clases de respuesta y solicitud de enlace en tiempo de compilación generadas por el comando de compilación pac modelbuilder de Power Platform CLI.
Para obtener información sobre cómo crear una acción de proceso personalizado mediante el diseñador de flujo de trabajo, consulte: Crear una acción de proceso personalizada
Extensión de acciones de proceso personalizadas
Hay dos maneras de ampliar acciones de proceso personalizadas mediante código: con actividades de flujo de trabajo personalizadas o mediante el registro de complementos en fases.
Actividades personalizadas del flujo de trabajo
Dado que una acción de proceso personalizado es un flujo de trabajo, puede incluir actividades de flujo de trabajo personalizadas que se pueden reutilizar en la definición de flujo de trabajo como parte del flujo de trabajo. Más información: Extensiones de flujo de trabajo
Registre los pasos de los complementos para definir fases en la canalización de ejecución
Dado que una acción de proceso personalizada crea un mensaje, puede registrar los pasos de los complementos en las etapas PreValidation, PreOperation y PostOperation para modificar el comportamiento de la Acción del proceso personalizada. Los desarrolladores lo han usado para definir toda la lógica del mensaje, con frecuencia no definiendo ninguna lógica de flujo de trabajo. La característica de API personalizada simplifica este patrón de código primero y proporciona otras funcionalidades no posibles con actividades de flujo de trabajo personalizadas.
Sugerencia
Si ha estado usando acciones de proceso personalizadas únicamente para implementar lógica mediante complementos, considere la posibilidad de pasar a usar la API personalizada en su lugar. Más información: Crear y usar API personalizadas
El mensaje de una acción de proceso personalizado solo está disponible con el flujo de trabajo que define que está activado. No puede registrar pasos de complemento para una acción de proceso personalizada que no está activa.
Si registra los pasos del complemento en una acción de proceso personalizado, establece una dependencia en la solución que impide eliminar la acción de proceso personalizado.
Permisos necesarios
Se requiere un privilegio de seguridad denominado Activar procesos en tiempo real (prvActivateSynchronousWorkflow) para activar el flujo de trabajo en tiempo real de una acción para que se pueda ejecutar. Este privilegio se suma a los privilegios necesarios para crear un flujo de trabajo.
Observar las acciones de ejecución prolongada
Si uno de los pasos del flujo de trabajo en tiempo real de la acción es una actividad de flujo de trabajo personalizada, dicha actividad de flujo de trabajo personalizada se ejecuta dentro del entorno aislado de tiempo de ejecución en el espacio aislado y estará sujeta al límite de tiempo de espera de dos minutos, de forma similar al modo en que se administran los complementos. Sin embargo, no hay ninguna restricción específica sobre la cantidad de tiempo total que puede tomar la propia acción. Esta ausencia de restricción no es una ventaja. El flujo de trabajo no se puede ejecutar indefinidamente. Finalmente se producirá un error por varias razones. Por ejemplo, si la acción participa en una transacción en la que está habilitada la reversión, se aplicarán los tiempos de espera de SQL Server. Tenga cuidado para asegurarse de que las acciones de proceso personalizadas se pueden completar con un éxito o un error claros en un período de tiempo razonable. Es probable que algo más de 2 minutos sea demasiado largo.
Las comprobaciones de plataforma existentes Depth garantizan que no se produzca un bucle infinito. Para obtener más información sobre los límites de profundidad, vea MaxDepth.
Sugerencia
Una recomendación de procedimiento recomendado es que las operaciones de larga duración se deben ejecutar fuera de Dataverse mediante Power Automate, Logic Apps u otras funcionalidades que ofrece Azure.
Consulte también
Creación de una acción de proceso personalizada
Usar acciones
Flujos de trabajo clásicos de Dataverse