Ordem de Execução de Ganchos de Campos e Ações

Ganchos de campos e de ação são executados em horários predeterminados e em ordem predeterminada.

Existem quatro pontos de execução de gancho enquanto um registro é aberto:

Ganchos que Executam quando uma Ação Começa

Antes de confirmar mudanças no banco de dados, ou quando uma validação for solicitada a partir de um cliente RCP ou da Web do ClearQuest, o software Rational ClearQuest valida o registro executando ganchos na seguinte ordem:

  1. O gancho Controle de Acesso à Ação verifica o acesso do usuário e pára o processamento da ação se o usuário não tiver permissão para iniciá-la. Neste caso, os ganchos restantes não são executados.

    Você pode modificar o controle de acesso para ações, incluindo ações que podem ser incluídas em seu esquema aplicando pacotes. Entretanto, quaisquer restrições de controle de acesso colocadas em ações base aplicam-se a todas as outras ações. Para ações aninhadas, um gancho de controle de acesso não é executado.

  2. O gancho Permissão de Campo determina se cada campo é obrigatório, opcional ou somente leitura.
  3. O gancho Inicialização da Ação desempenha as tarefas de inicialização, tais como configuração dos valores dos campos antes da ação começar.
  4. O gancho Valor Padrão do Campo configura o valor para cada campo (apenas para ações Submeter).
  5. O gancho Validação de Campo valida o conteúdo de cada campo, exceto para uma ação de importação na qual nenhuma validação ocorre. Os ganchos de validação de campo não podem validar valores inexistentes, como um campo obrigatório em que o valor não tenha sido configurado.
  6. O gancho Lista de Opções do Campo é executado para cada campo que utiliza a opção Recalcular Lista de Opções. Se houver campos dependentes e você selecionou Recalcular Lista de Opções ao criar os campos, o gancho Validação de Campo será executado e, em seguida, o gancho Lista de Opções do Campo para cada campo será executado, até que todos os campos alterados sejam configurados e validados.

    Se um gancho Field Value Changed chamar o método SetFieldValue do objeto Entity, o gancho VALUE_CHANGED para esse campo será executado no momento da chamada de SetFieldValue.

Ações Aninhadas

Determinados ganchos não são executados enquanto uma ação aninhada está em andamento, incluindo a execução dos ganchos de controle de acesso e todos os ganchos de notificação. Para obter informações adicionais, consulte Controle de ações e de acesso e Ganchos em ações aninhadas em IBM Rational ClearQuest API Reference.

Ganchos que Executam quando um Valor de Campo Está Configurado

Quando um usuário edita um registro, os ganchos são executados na seguinte ordem:

  1. O gancho Valor do Campo Alterado é executado para cada campo que é alterado.

    Se a opção Limite para Lista estiver configurada e o usuário inserir um valor que não é permitido, o campo é marcado como inválido. O gancho seguinte é executado somente quando o usuário inserir um valor válido.

    Se o gancho Valor do Campo Alterado chamar o método SetFieldValue para alterar o valor de um outro campo, o gancho Valor do Campo Alterado para o outro campo é executado imediatamente.

  2. O gancho Validação de Campo é executado para cada campo.
  3. O gancho Lista de Opções do Campo é executado para cada campo que utiliza a opção Recalcular Lista de Opções.

    Se você utilizar campos dependentes com a opção Recalcular Lista de Opções, o gancho Validação de Campo é executado primeiro e, em seguida, o gancho Lista de Opções do Campo para cada campo é executado, até que todos os campos alterados sejam configurados e validados.

Os ganchos Campo são executados somente quando o usuário inicia a ação Submeter, a menos que o campo esteja marcado como possuidor de campos dependentes. Consulte o Utilizando Ganchos para Detectar uma Sessão da Web.

Ganchos que Executam quando o Registro é Validado

Antes de consolidar as mudanças no banco de dados, o software Rational ClearQuest valida o registro executando ganchos na seguinte ordem:

  1. O gancho Validação de Campo é executado para cada campo no registro.
  2. O gancho Validação de Ação é executado para a ação que foi desempenhada.

Ganchos que Executam quando o Registro é Consolidado

O gancho Consolidação é executado após o banco de dados ser atualizado com as mudanças no registro atual, mas antes da transação de atualização ser consolidada no banco de dados. Você não pode utilizar um gancho Consolidação para modificar o registro atual (por exemplo, você não pode realizar mudanças em um campo de um gancho Consolidação).

O trabalho em um gancho Consolidação é concluído enquanto existem bloqueios no banco de dados, e esses bloqueios podem impedir que outros usuários executem consultas, criem novos registros ou modifiquem registros existentes. Por motivos de desempenho, é melhor minimizar o trabalho desempenhado em um gancho Consolidação.

Utilize um gancho Commit apenas para ações em outros registros que você deseja que façam parte da mesma transação do banco de dados que a ação principal (por exemplo, resolver um defeito duplicado quando o defeito pai é resolvido). Você deve assegurar que esteja colocando as chamadas apropriadas no contexto correto. Por exemplo, você não chama Reverter a partir de um gancho Consolidação, nem chama Consolidar de nenhuma ação diferente de um gancho Consolidação.

Após a validação de um registro, ele é consolidado no banco de dados por ganchos que executam na seguinte ordem:

  1. O gancho Consolidação da Ação é executado.
  2. A transação é consolidada no banco de dados.
  3. O gancho Notificação da Ação é executado. Por exemplo, uma notificação de e-mail pode ser enviada a vários usuários.

Para obter informações adicionais, consulte Editando um Registro Existente no IBM Rational ClearQuest API Reference.


Feedback