A ordem de trabalho não é salva nem criada com êxito

Resumo

Este artigo ajuda você a solucionar erros comuns que ocorrem quando você tenta salvar ou criar pedidos de trabalho no Serviço de Campo do Microsoft Dynamics 365. Abrange falhas de plug-ins e de regras de negócio, erros em campos obrigatórios causados por scripts personalizados, campos obrigatórios condicionais, como a lista de preços e o tipo de ordem de trabalho, e o comportamento do tipo de incidente, como atrasos no preenchimento automático, incidentes duplicados em ordens de trabalho e a seleção do incidente principal.

Symptoms

Ao tentar salvar ou criar uma ordem de trabalho, você percebe um dos seguintes problemas:

  • Depois de preencher os campos da ordem de trabalho e selecionar Salvar, você receberá a seguinte mensagem de erro:

    Erro de processo comercial: ocorreu um erro. Entre em contato com o administrador do sistema.

    Nessa situação, você pode salvar com êxito na segunda tentativa.

  • Você recebe a seguinte mensagem de erro "campo necessário", mesmo que o campo pareça estar preenchido:

    Você deve fornecer um valor para <FieldName>.

  • Depois de selecionar um Tipo de Incidente na ordem de trabalho, os produtos, serviços e tarefas de serviço esperados não serão preenchidos automaticamente.

  • Depois de adicionar o mesmo tipo de incidente mais de uma vez, a ordem de trabalho contém registros filho duplicados.

  • O Field Service marca inesperadamente um incidente de ordem de serviço como principal.

  • Depois de concluir ou desativar um incidente de ordem de trabalho, o status do sistema de ordem de trabalho não será alterado.

Verificar se há um plug-in com falha ou uma regra de negócios com falha

Um plug-in síncrono ou uma regra de negócios na tabela de ordem de trabalho pode encontrar um erro durante a operação de salvamento. Se o erro ocorrer somente na primeira tentativa, essa condição normalmente indicará um problema de tempo em que o plug-in depende de registros relacionados que ainda não existem.

Para identificar e corrigir o problema de um plug-in com falha ou uma regra de negócios, siga estas etapas:

  1. Identifique o trabalho com falha:
    1. No aplicativo Serviço de Campo do Dynamics 365, selecione Configurações (símbolo de engrenagem) >Configurações Avançadas.
    2. Na área de configurações avançadas, vá para Trabalhosdo>.
    3. Para localizar o trabalho que está falhando, filtre os erros pela entidade de ordem de trabalho.
  2. Inspecione os registros de plug-in:
    1. Vá para o Power Apps e selecione seu ambiente.
    2. Vá para Tabelas>Ordem de Trabalho>Etapas do plug-in.
    3. Procure plug-ins personalizados que estão registrados na etapa de pré-operação ou pós-operação da mensagem de criação de ordem de trabalho.
    4. Se um plug-in fizer referência a registros relacionados (como tarefas de serviço ou produtos), ele poderá ser executado antes que esses registros existam. Mova o plug-in para uma etapa assíncrona ou adicione uma verificação nula.
  3. Se uma regra de negócios causar o erro:
    1. Vá para o Power Apps e selecione seu ambiente.
    2. Vá para Tabelas>Ordem de Trabalho>Regras de Negócios.
    3. Desabilite temporariamente as regras personalizadas para isolar o problema.

Verificar se os scripts personalizados substituem um campo necessário

Um script de formulário personalizado ou uma regra de negócios pode limpar ou substituir um valor de campo após o formulário preenchê-lo. Ou, um campo mapeado do tipo de incidente pode não transferir o valor corretamente.

Para verificar scripts de formulário e mapeamentos de campo:

  1. Abra as ferramentas de desenvolvedor do navegador (F12) e verifique a guia Console para obter erros de JavaScript que ocorreram durante a operação de salvamento.
  2. Vá para o Power Apps e selecione seu ambiente.
  3. Vá para Tabelas>Ordem de Trabalho>Formulários.
  4. Abra o formulário relevante e verifique se algum script de evento Ao Salvar desmarca ou substitui o campo.
  5. Se o campo necessário for uma pesquisa, abra o registro referenciado no aplicativo do Serviço de Campo do Dynamics 365 para verificar se ele ainda existe e se está em um estado Ativo .
  6. Teste em um ambiente limpo sem personalizações para verificar se o problema é causado pela lógica personalizada.

Verificar campos condicionais necessários

Alguns campos de ordem de trabalho são necessários apenas em condições específicas. O tipo de ordem de trabalho selecionado determina se a conta de serviço e o tipo de incidente primário são necessários e o tipo de ordem de trabalho em si é necessário. Quando Calculate Price está habilitado, a validação do plug-in do Serviço de Campo requer uma lista de preços e a moeda da lista de preços deve corresponder à moeda da ordem de trabalho.

Para verificar os campos obrigatórios condicionais:

  1. No aplicativo Dynamics 365 Field Service, vá para Configurações>>, abra o tipo de ordem de trabalho selecionado e revise os requisitos de conta de serviço e incidente.
  2. No aplicativo Dynamics 365 Field Service, abra a ordem de trabalho e preencha os campos necessários para o tipo de ordem de trabalho selecionado.
  3. No aplicativo Dynamics 365 Field Service, verifique se a ordem de trabalho tem uma lista de preços quando Calculate Price está habilitado.
  4. No aplicativo Dynamics 365 Field Service, verifique se a moeda da lista de preços corresponde à moeda da ordem de trabalho.

Verificar a configuração do tipo de incidente e os privilégios do usuário

O tipo de incidente pode estar configurado incorretamente ou inativo. O usuário também pode não ter o privilégio Criar nas entidades filhas. Para obter mais informações sobre tipos de incidentes, consulte a visão geral do tipo de incidente da ordem de trabalho.

Para verificar a configuração do tipo de incidente e os privilégios do usuário:

  1. No aplicativo Serviço de Campo do Dynamics 365, vá para Configurações.
  2. Selecione Pedidos de Trabalho>Tipos de Incidentes.
  3. Abra o registro de tipo de incidente e verifique se Produtos, Serviços e Tarefas de Serviço aparecem nas guias relacionadas.
  4. Verifique se cada produto ou serviço referenciado no tipo de incidente está ativo no catálogo de produtos. Vá para Configurações>de Produtos> para verificar o status do produto.
  5. No formulário da ordem de trabalho, verifique se o campo Lista de Preços é preenchido usando uma lista de preços válida que contém os produtos. Vá para Configurações>Geral>Listas de Preços para verificar a lista de preços.
  6. Verifique se o usuário tem as funções de segurança e os privilégios necessários:
    1. Entre no centro de administração do Power Platform.
    2. Selecione Gerenciar e selecione seu ambiente.
    3. Vá para Configurações (símbolo de engrenagem) >Usuários + permissões>Funções de segurança.
    4. Verifique se a função do usuário tem o privilégio Criar em:
      • Produto da ordem de serviço (msdyn_workorderproduct)
      • Serviço de Ordem de Trabalho (msdyn_workorderservice)
      • Tarefa de serviço de ordem de trabalho (msdyn_workorderservicetask)
  7. Se você usar regras de negócios personalizadas que ocultam ou bloqueiam o campo Tipo de Incidente , verifique se elas permitem que o sistema dispare a lógica de população automática.

Examinar o comportamento de tipo de incidente atrasado ou inesperado

Para ordens de trabalho que não são geradas a partir de acordos, um trabalho assíncrono em segundo plano copia itens do tipo de incidente para a ordem de trabalho. A tarefa cria primeiro as tarefas de serviço, depois os produtos e, por último, os serviços; por isso, os registros podem demorar um pouco para serem exibidos. As ordens de trabalho geradas por acordo não usam essa tarefa em segundo plano. O Field Service cria separadamente as características de requisito a partir do tipo de incidente ao criar o incidente da ordem de trabalho. Cada vez que você adiciona um tipo de incidente, o Serviço de Campo cria um incidente de ordem de trabalho e seus registros filho associados, e isso não impede que você adicione o mesmo tipo de incidente mais de uma vez. Quando não há nenhum incidente ativo, o Field Service marca o incidente da ordem de trabalho recém-criada como principal. A configuração primária pertence ao incidente da ordem de trabalho, não ao tipo de incidente. A desativação ou reativação de um incidente da ordem de trabalho propaga seu estado para as tarefas de serviço, produtos, serviços e características associadas, mas não altera o status do sistema da ordem de trabalho.

Para analisar o comportamento atrasado ou inesperado dos tipos de incidente:

  1. No aplicativo Dynamics 365 Field Service, abra a ordem de trabalho, aguarde brevemente até que o trabalho assíncrono seja concluído e atualize o formulário.
  2. No aplicativo Dynamics 365 Field Service, examine os incidentes de ordem de trabalho antes de adicionar um tipo de incidente novamente. Remova um incidente de ordem de trabalho indesejado e seus registros associados de acordo com o processo da sua organização.
  3. No aplicativo Dynamics 365 Field Service, examine os incidentes da ordem de trabalho ativa para determinar qual incidente se tornou primário.
  4. No aplicativo Dynamics 365 Field Service, atualize o status do sistema de ordem de trabalho separadamente quando você desativar ou reativar um incidente.
  5. No aplicativo Dynamics 365 Field Service, revise a configuração do incidente de agendamento do contrato para ordens de trabalho geradas por contrato, porque elas não usam a tarefa de cópia assíncrona.