Cálculo e Armazenamento do Nome de um Nó

Você pode definir uma expressão para calcular um nome de nó durante uma solicitação e depois armazenar esse valor quando a solicitação é concluída e fechada.

O nome calculado pode ser baseado nas propriedades do nó ou na posição do nó na hierarquia.

Exemplo de Casos de Uso

  • Você pode calcular um nome de nó com base em um número de sequência. Por exemplo, você pode concatenar um prefixo, como "CC_", com uma sequência. Dessa forma, quando você adicionar nós, eles receberão automaticamente os nomes CC_0034, CC_0035 etc.
  • Você pode calcular um nome de nó com base em propriedades. Por exemplo, você pode concatenar propriedades personalizadas do tipo de dados Nó. Em seguida, quando você definir as propriedades, o nome do nó será calculado automaticamente. Então, para a propriedade personalizada 1 = 120, a propriedade personalizada 2 = 200 e a propriedade personalizada 3 = 340, o nome de nó 120-200-340 será calculado automaticamente.

    Tip:

    Você também pode configurar expressões na propriedade de tipo de dados Nó para derivar seus valores, então se você adicionar um nome de nó 120-200-340, o valor de cada propriedade será derivado respectivamente como 120, 200 e 340. Consulte Propriedades Derivadas e Armazenadas.

  • Você pode calcular um nome de nó com base em informações estruturais da hierarquia, como pais, antecessores e irmãos. Por exemplo, você pode concatenar o nome de pai e a descrição do nó.
  • Você também pode usar nomes de nó calculados para personalizar o nome padrão ao adicionar um novo nó. Por exemplo, quando um usuário adicionar um nó no tipo de nó Entidade, em vez de assumir o nome padrão "Novo Nó de Entidade", você pode retornar o nome calculado o "CC_####" e fazer com que os usuários preencham manualmente os valores apropriados de ####.

Considerações

  • Você pode calcular um nome de nó durante as seguintes operações:
    • Adição interativa de nós
    • Cópia de nós ou modelagem com base em um nó
    • Carregamento de arquivos de solicitação
    • Sincronização de nós via uma assinatura
  • Durante uma ação Adicionar em uma solicitação, o nome do nó é recalculado sempre que o nó é alterado.

    Note:

    Quando o nome do nó for calculado com base em uma lista de irmãos (encontrando o último irmão e adicionando um 1 a ele, por exemplo), tenha em mente que o nome do nó poderá mudar se outros irmãos forem adicionados após ele e o nó original for atualizado.

    Além disso, dependendo do contexto da solicitação, o uso do objeto node.previousSibling em uma expressão para calcular nomes de nós pode ter resultados inesperados. Para obter resultados melhores, use o objeto node.siblings.max.

  • Quando você exibir um nome de nó calculado em uma solicitação:
    • Se a expressão do nome do nó retornar um valor, esse valor será exibido com uma origem de Derivado e Armazenado.
    • Se a expressão retornar um valor nulo, a palavra-chave do nome calculado <cn ####> (em que #### é um hash do timestamp de criação do item de solicitação) será exibida. Consulte Noções Básicas de Palavras-chave de Nome Calculado.
  • Depois que a solicitação é concluída e fechada, o nome do nó calculado é armazenado e a origem é exibida como Derivado e Armazenado.
  • Você pode substituir o nome do nó inserindo manualmente um nome. A origem será exibida como Definido.
  • Em nós que estão sendo adicionados a uma solicitação, use a ação Limpar para limpar um nome inserido manualmente e voltar ao nome calculado e use a ação Redefinir para definir o local atual como o local principal (consulte Noções Básicas sobre Locais Principais) e recalcular o nome do nó com base na expressão. Consulte Limpeza e Redefinição de um Valor Calculado.
  • As validações executadas no contexto de uma solicitação que contém nomes de nó calculados usarão o nome calculado atual. Por exemplo, se a expressão retornar atualmente um valor nulo, o nome do nó para a validação será "<cn ####>".
  • Quando você pesquisa nós em uma solicitação, o nome atual na ação Adicionar é usado para novos nós que têm nomes calculados. Por exemplo, se a expressão retornar atualmente um valor nulo, você poderá pesquisar "<cn ####>" no nome do nó.
  • Ao carregar arquivos de solicitação, use a palavra-chave <cn> ou <cn ####> na coluna de nome de um arquivo de carregamento de solicitação (que tem uma expressão configurada na propriedade Core.Name) ou deixe a coluna de nome em branco para calcular o valor desse nome de nó. Consulte Processamento do Arquivo de Solicitação com Nomes Calculados.

Definição de uma Propriedade Calculada e Armazenada

  1. Inspecione a definição de uma propriedade Core.Name.
  2. Selecione o tipo de aplicativo ou de nó para o qual deseja calcular o nome do nó.
  3. Em Tipo Padrão, selecione Calcular e Armazenar.
  4. Em Valor Padrão, clique no botão Expressão definir expressão.
  5. Defina uma expressão para calcular o nome do nó e clique em Aplicar. Consulte Utilização de Expressões para Definir uma Lógica de Negócios Personalizada.
  6. (Opcional) Selecione Renomear na Atualização para especificar que o valor de nome do nó deve ser recalculado e armazenado sempre que uma ação de solicitação for executada diretamente no nó em uma solicitação. O valor de nome recalculado é armazenado depois que a solicitação é concluída e fechada.

    Note:

    O valor do nome só é recalculado quando a ação da solicitação é executada no próprio nó. Se a lógica do cálculo incluir elementos que estão fora do nó (como antecessores do nó) e esses elementos forem alterados, o nome não será recalculado automaticamente. Você deve executar uma ação de limpeza no nome para recalcular e armazenar o novo valor de nome.

    O valor de nome da propriedade também não será recalculado e armazenado se a opção Bloqueio na Confirmação estiver habilitada para a propriedade. Consulte Noções Básicas sobre Parâmetros de Tipos de Dados de Propriedade.

Noções Básicas sobre Locais Principais

Se você estiver adicionando um nó e depois inserindo esse mesmo nó em vários outros locais, o sistema definirá internamente o primeiro local na hierarquia em que o nó foi adicionado como o local principal e usará isso para calcular o nome do nó. Todos os locais subsequentes em que o nó foi inserido usarão o nome calculado do primeiro local.

Note:

Se o primeiro local em que o nó for adicionado estiver em uma lista, o local principal será definido a primeira vez que o nó for inserido em uma hierarquia.

Suponha que você tenha uma expressão que calcule o nome do nó concatenando o nome do pai do nó e uma propriedade do nó (com o valor ABC neste exemplo). Quando você adiciona o nó abaixo do pai 111, o nome é calculado como 111-ABC. Se posteriormente você inserir o nó abaixo do pai 222, o nome continuará como 111-ABC, porque 111 é o local principal.

Há diversas formas de alterar o local principal de um nó:

  • Se você mover um nó na solicitação de seu local principal, o novo local se tornará o local principal e o nome será recalculado.

  • Se você remover o nó do local principal durante a solicitação, o próximo local em que o nó for inserido se tornará o local principal.

  • Se você tiver um nó em diversos locais e quiser alterar manualmente o local definido como local principal, use a ação Redefinir. Consulte Limpeza e Redefinição de um Valor Calculado.

Limpeza e Redefinição de um Valor Calculado

Use Limpar para limpar um nome definido manualmente e voltar ao nome calculado. A ação Limpar está disponível somente para nós que foram adicionados na solicitação com um tipo de padrão Calcular e Armazenar e que têm um nome inserido manualmente.

Use a opção Redefinir para definir o local principal do nome calculado como o local atual (consulte Noções Básicas sobre Locais Principais) e para recalcular o nome do nó com base no local atual. A ação Redefinir está disponível somente para nós que foram adicionados na solicitação com um tipo de padrão Calcular e Armazenar e não têm um nome inserido manualmente.

Você também poderá usar a opção Redefinir para recalcular um nome de nó caso tenha feito alguma ação fora do nó que afetou o nome do nó (por exemplo, você alterou uma propriedade Pai e quer recalcular o nome do nó com base na nova propriedade).

Validações e Nomes de Nó Calculados

Quando uma solicitação é validada, o nome atual na ação Adicionar é usado para novos nós que têm nomes calculados, com uma exceção: Se o nome atual for uma das palavras-chave (<cn> ou <cn ####>), as validações de tamanho mínimo e tamanho máximo serão ignoradas. Isso permite ao emissor enviar uma solicitação com uma das palavras-chave no nome para que um aprovador ou enriquecedor possa adicionar as informações necessárias a fim de calcular o nome.

As validações de tamanho mínimo e máximo são executadas quando as solicitações são aprovadas ou confirmadas.

Nomes Calculados e Assinaturas

Quando você configura uma assinatura usando um nome calculado, o nome é calculado no ponto de vista de origem e o nome resultante é transmitido nas solicitações de assinatura para os pontos de vista de destino. Se quiser que o nome do nó seja calculado no ponto de vista de destino, você deverá configurar uma transformação de propriedade no conversor de tipo de nó para a assinatura (consulte Como Trabalhar com Conversores de Tipo de Nó) a fim de transformar o nome em um valor em branco ou em uma das palavra-chave de nome calculado (<cn> em Adições, ou <cn ####>, em que #### é uma string de identificador exclusivo, em Adições com Inserções). Consulte Noções Básicas de Palavras-chave de Nome Calculado.

Note:

Se quiser usar um Nome Alternativo, quando disponível, transforme o nome em um valor em branco. Se quiser sempre usar o nome calculado no ponto de vista de destino, transforme o nome em uma das palavras-chave.