La orden de trabajo no se guarda ni se crea correctamente

Resumen

Este artículo le ayuda a solucionar errores comunes que se producen al intentar guardar o crear pedidos de trabajo en Microsoft Dynamics 365 Field Service. Abarca errores de los complementos y de las reglas de negocio, errores de campos obligatorios provocados por scripts personalizados, campos obligatorios condicionales como la lista de precios y el tipo de orden de trabajo, y el comportamiento del tipo de incidente, como retrasos en el rellenado automático, incidentes duplicados en órdenes de trabajo y la selección del incidente principal.

Síntomas

Al intentar guardar o crear un pedido de trabajo, verá uno de los siguientes problemas:

  • Después de rellenar los campos de pedido de trabajo y seleccionar Guardar, recibirá el siguiente mensaje de error:

    Error del proceso de negocio: se ha producido un error. Póngase en contacto con el administrador del sistema.

    En esta situación, puede guardar con éxito en el segundo intento.

  • Recibirá el siguiente mensaje de error "campo obligatorio", aunque el campo parezca rellenarse:

    Debe proporcionar un valor para <FieldName>.

  • Después de seleccionar un tipo de incidente en el pedido de trabajo, los productos, servicios y tareas de servicio esperados no se rellenan automáticamente.

  • Después de agregar el mismo tipo de incidente más de una vez, el orden de trabajo contiene registros secundarios duplicados.

  • Field Service marca un incidente de pedido de trabajo como principal inesperadamente.

  • Después de completar o desactivar un incidente de pedido de trabajo, el estado del sistema de pedidos de trabajo no cambia.

Comprobar si hay un complemento o reglas de negocio con errores

Un complemento sincrónico o una regla de negocio en la tabla de órdenes de trabajo podría encontrar un error durante la operación de guardado. Si el error solo se produce en el primer intento, esta condición suele indicar un problema de tiempo en el que el complemento depende de los registros relacionados que aún no existen.

Para identificar y corregir el problema de un complemento o regla de negocio con errores, siga estos pasos:

  1. Identifique el trabajo con errores:
    1. En la aplicación Dynamics 365 Field Service, seleccione Configuración (símbolo de engranaje) >Configuración avanzada.
    2. En el área de configuración avanzada, vaya a Sistema>Trabajos del sistema.
    3. Para encontrar el trabajo fallido, filtre por errores de entidad en la orden de trabajo.
  2. Inspeccione los registros de complementos:
    1. Vaya a Power Apps y seleccione su entorno.
    2. Vaya a Tablas>Orden de trabajo>Pasos del complemento.
    3. Busque complementos personalizados registrados en el paso de operación previa o paso de operación posterior del mensaje Crear de la orden de trabajo.
    4. Si un complemento hace referencia a registros relacionados (como tareas de servicio o productos), podría ejecutarse antes de que existan esos registros. Mueva el complemento a un paso asincrónico o agregue una comprobación nula.
  3. Si una regla de negocios produce el error:
    1. Vaya a Power Apps y seleccione su entorno.
    2. Vaya a Tablas>Orden de trabajo>Reglas de negocio.
    3. Deshabilite temporalmente las reglas personalizadas para aislar el problema.

Comprobar si los scripts personalizados invalidan un campo obligatorio

Un script de formulario personalizado o una regla de negocio podría borrar o invalidar un valor de campo después de que el formulario lo rellene. O bien, un campo asignado del tipo de incidente podría no transferir el valor correctamente.

Para comprobar los scripts de formulario y las asignaciones de campos:

  1. Abra las herramientas de desarrollo del explorador (F12) y compruebe la pestaña Consola de los errores de JavaScript que se produjeron durante la operación de guardado.
  2. Vaya a Power Apps y seleccione su entorno.
  3. Vaya a Tablas>Orden de trabajo>Formularios.
  4. Abra el formulario correspondiente y compruebe si alguno de los scripts de eventos Al guardar borra o invalida el campo.
  5. Si el campo necesario es una búsqueda, abra el registro al que se hace referencia en la aplicación Dynamics 365 Field Service para comprobar que todavía existe y está en estado Activo .
  6. Pruebe en un entorno limpio sin personalizaciones para comprobar si el problema se debe a una lógica personalizada.

Comprobar campos obligatorios condicionales

Algunos campos de pedido de trabajo solo son obligatorios en condiciones específicas. El tipo de pedido de trabajo seleccionado determina si se requieren la cuenta de servicio y el tipo de incidente principal y se requiere el propio tipo de orden de trabajo. Cuando se habilita Calculate Price , la validación del complemento Field Service requiere una lista de precios y la moneda de la lista de precios debe coincidir con la moneda del pedido de trabajo.

Para comprobar los campos obligatorios condicionales:

  1. En la aplicación Dynamics 365 Field Service, vaya a Configuración>>Tipos de orden de trabajo, abra el tipo de orden de trabajo seleccionado y revise sus requisitos de cuenta de servicio e incidente.
  2. En la aplicación Dynamics 365 Field Service, abra el orden de trabajo y rellene los campos que requiere el tipo de pedido de trabajo seleccionado.
  3. En la aplicación Dynamics 365 Field Service, compruebe que el pedido de trabajo tiene una lista de precios cuando se habilita Calculate Price.
  4. En la aplicación Dynamics 365 Field Service, compruebe que la moneda de la lista de precios coincide con la moneda del pedido de trabajo.

Comprobación de la configuración del tipo de incidente y los privilegios de usuario

El tipo de incidente puede estar mal configurado o inactivo. El usuario también podría carecer del privilegio Crear en las entidades hijas. Para obtener más información sobre los tipos de incidentes, consulte Descripción general del tipo de incidente de orden de trabajo.

Para comprobar la configuración del tipo de incidente y los privilegios de usuario:

  1. En la aplicación Dynamics 365 Field Service, vaya a Configuración.
  2. Seleccione Órdenes de trabajo>Tipos de incidentes.
  3. Abra el registro de tipo de incidente y compruebe que productos, servicios y tareas de servicio aparecen en las pestañas relacionadas.
  4. Compruebe que cada producto o servicio al que se hace referencia en el tipo de incidente es Activo en el catálogo de productos. Vaya a Configuración Productos>generales> para comprobar el estado del producto.
  5. En el formulario de pedido de trabajo, compruebe que el campo Lista de precios se rellena mediante una lista de precios válida que contiene los productos. Vaya a Configuración>General>Listas de Precios para comprobar la lista de precios.
  6. Compruebe que el usuario tiene los roles y privilegios de seguridad necesarios:
    1. Inicie sesión en el Centro de administración de Power Platform.
    2. Seleccione Administrar y, a continuación, seleccione el entorno.
    3. Vaya a Configuración (símbolo de engranaje) >Usuarios y permisos>Roles de seguridad.
    4. Compruebe que el rol del usuario tiene el privilegio Crear en:
      • Producto de pedido de trabajo (msdyn_workorderproduct)
      • Servicio de órdenes de trabajo (msdyn_workorderservice)
      • Tarea Servicio de pedido de trabajo (msdyn_workorderservicetask)
  7. Si usa reglas de negocios personalizadas que ocultan o bloquean el campo Tipo de incidente , compruebe que permiten que el sistema desencadene la lógica de rellenado automático.

Revise el comportamiento retrasado o inesperado del tipo de incidente

Para las órdenes de trabajo que no se generan a partir de acuerdos, un proceso asincrónico en segundo plano copia los elementos del tipo de incidente a la orden de trabajo. El proceso crea primero las tareas de servicio, después los productos y, por último, los servicios, por lo que los registros pueden tardar un poco en aparecer. Las órdenes de trabajo generadas a partir de acuerdos no utilizan este trabajo en segundo plano. Field Service crea por separado las características del requisito a partir del tipo de incidente cuando crea la incidencia de orden de trabajo. Cada vez que agrega un tipo de incidente, Field Service crea un incidente de orden de trabajo y los registros secundarios asociados, y no impide que agregue el mismo tipo de incidente más de una vez. Cuando no existe ningún incidente activo, Field Service marca el incidente de pedido de trabajo recién creado como principal. La configuración principal pertenece a la incidencia de la orden de trabajo, no al tipo de incidencia. Desactivar o reactivar un incidente de orden de trabajo propaga su estado en cascada a las tareas de servicio, los productos, los servicios y las características asociados, pero no cambia el estado del sistema de la orden de trabajo.

Para revisar el comportamiento retrasado o inesperado del tipo de incidente:

  1. En la aplicación Dynamics 365 Field Service, abra el orden de trabajo, espere brevemente a que finalice el trabajo asincrónico y, a continuación, actualice el formulario.
  2. En la aplicación Dynamics 365 Field Service, revise los incidentes de pedido de trabajo antes de agregar de nuevo un tipo de incidente. Elimine una incidencia de orden de trabajo no deseada y sus registros asociados de acuerdo con el proceso de su organización.
  3. En la aplicación Dynamics 365 Field Service, revise los incidentes de orden de trabajo activos para determinar qué incidente se convirtió en principal.
  4. En la aplicación Dynamics 365 Field Service, actualice el estado del sistema de pedido de trabajo por separado al desactivar o reactivar un incidente.
  5. En la aplicación Dynamics 365 Field Service, revise la configuración de incidencias de reserva de acuerdos para las órdenes de trabajo generadas por acuerdos, ya que no utilizan el proceso de copia asincrónico.