Cálculo y almacenamiento del nombre de un nodo

Puede definir una expresión para calcular un nombre de nodo durante una solicitud y, a continuación, almacenar el valor cuando la solicitud esté completada y cerrada.

El nombre calculado se puede basar en las propiedades del nodo o en la posición del nodo en una jerarquía.

Ejemplos de casos de uso

  • Puede calcular un nombre de nodo según un número de secuencia. Por ejemplo, puede concatenar un prefijo como "CC_" con una secuencia, de modo que cuando agregue nodos, se les asignen automáticamente los nombres CC_0034, CC_0035, etc.
  • Puede calcular un nombre de nodo basado en propiedades. Por ejemplo, puede concatenar propiedades de tipo de datos de nodo personalizadas. De ese modo, a medida que define las propiedades, el nombre de nodo se calcula automáticamente. Así, para la propiedad personalizada 1 = 120, la propiedad personalizada 2 = 200 y la propiedad personalizada 3 = 340, se calcula automáticamente el nombre de nodo 120-200-340.

    Tip:

    También puede configurar expresiones en la propiedad de tipo de datos de nodo para derivar sus valores, de modo que si agrega en su lugar el nombre de nodo 120-200-340, el valor de cada propiedad se derive como 120, 200 y 340, respectivamente. Consulte Propiedades derivadas y almacenadas.

  • Puede calcular un nombre de nodo basado en la información de estructura jerárquica, como los padres, los antecesores y los hermanos. Por ejemplo, puede concatenar un nombre de padre con la descripción de nodo.
  • También puede utilizar nombres de nodo calculados para personalizar el nombre predeterminado cuando agregue un nuevo nodo. Por ejemplo, cuando un usuario agrega un nodo en el tipo de nodo Entity, en lugar de definirse el nombre de forma predeterminada en "New Entity Node", puede devolver el nombre calculado "CC_####" y hacer que los usuarios rellenen manualmente los valores adecuados de ####.

Consideraciones

  • Puede calcular un nombre de nodo durante las siguientes operaciones:
    • Adición de nodos de forma interactiva
    • Copia o modelado después de un nodo
    • Carga de archivos de solicitud
    • Sincronización de nodos a través de una suscripción
  • Durante una acción Agregar en una solicitud, el nombre de nodo se vuelve a calcular cada vez que se cambia el nodo.

    Note:

    Cuando se calcula un nombre de nodo basándose en una lista de hermanos (por ejemplo, buscando el último hermano y agregándole 1), tenga en cuenta que ese nombre de nodo puede cambiar si se agregan otros hermanos posteriormente y, a continuación, se actualiza el nodo original.

    Asimismo, en función del contexto de la solicitud, utilizar el objeto node.previousSibling en una expresión para calcular nombres de nodos puede provocar resultados imprevistos. Para obtener los mejores resultados, es preferible que utilice node.siblings.max.

  • Al mostrar un nombre de nodo calculado en una solicitud:
    • Si la expresión de nombre de nodo devuelve un valor, el valor se muestra con el origen Derivado y Almacenado.
    • Si la expresión devuelve un valor nulo, se muestra la palabra clave de nombre calculado <cn ####> (donde #### es un valor hash del registro de hora creado del elemento de la solicitud). Consulte Descripción de las palabras clave de nombre calculado.
  • Una vez que se ha completado y cerrado una solicitud, se almacena el nombre de nodo calculado y el origen muestra Derivado y Almacenado.
  • Puede sobrescribir el nombre de nodo introduciendo manualmente un nombre. El origen muestra Definido.
  • Para los nodos que se van a agregar en una solicitud, utilice la acción Borrar para borrar un nombre introducido de forma manual y volver al nombre calculado, y utilice la acción Restablecer para definir la ubicación actual como ubicación principal (consulte Descripción de ubicaciones principales) y para volver a calcular el nombre de nodo en función de la expresión. Consulte Borrado y restablecimiento de un valor calculado.
  • Las validaciones que se ejecutan en el contexto de una solicitud que contiene nombres de nodo calculados utilizarán el nombre calculado actualmente. Esto significa que, por ejemplo, si la expresión devuelva actualmente un valor nulo, el nombre de nodo de la validación es "<cn ####>".
  • Al buscar nodos en una solicitud, el nombre actual en la acción Agregar se utiliza para nuevos nodos que tienen nombres calculados. Esto significa que, por ejemplo, si la expresión devuelva actualmente un valor nulo, puede realizar una búsqueda de "<cn ####>" en el nombre de nodo.
  • Al cargar archivos de solicitud, utilice la palabra clave <cn> o <cn ####> en la columna de nombre de un archivo de carga de solicitud (donde se configura una expresión para la propiedad Core.Name) o deje el nombre de columna en blanco para calcular el valor de ese nombre de nodo. Consulte Procesamiento de archivo de solicitud con nombres calculados.

Definición de una propiedad calculada y almacenada

  1. Inspeccione una definición de la propiedad Core.Name.
  2. Seleccione el tipo de aplicación o nodo para el que desea calcular el nombre de nodo.
  3. En Tipo predeterminado, seleccione Calcular y almacenar.
  4. En Valor predeterminado, haga clic en el botón Expresión definir expresión.
  5. Defina una expresión para calcular el nombre de nodo y haga clic en Aplicar. Consulte Uso de expresiones para definir una lógica empresarial personalizada.
  6. (Opcional) Seleccione Renombrar al actualizar para especificar que el valor de nombre del nodo se debe recalcular y almacenar cada vez que se realiza una acción de solicitud directamente en el nodo en una solicitud. El valor de nombre recalculado se almacena una vez que la solicitud se ha completado y cerrado.

    Note:

    El valor del nombre solo se recalcula cuando se realiza una acción de solicitud en el propio nodo. Si la lógica de cálculo incluye elementos que son externos al nodo (como los antecesores del nodo) y estos se han cambiado, el nombre no se recalcula de forma automática. Debe realizar una acción de borrado en el nombre para recalcular y almacenar el nuevo valor de nombre.

    El valor de nombre de la propiedad tampoco se recalcula ni almacena si está activada la opción Bloquear al confirmar para la propiedad. Consulte Descripción de los parámetros de tipo de datos de propiedad.

Descripción de ubicaciones principales

Si agrega un nodo y, a continuación, inserta el mismo nodo en otras ubicaciones, internamente el sistema designa la primera ubicación de una jerarquía en la que se agrega el nodo como ubicación principal y la utiliza para calcular el nombre de nodo. Todos los lugares posteriores en los que se inserte el nodo utilizarán el nombre calculado a partir de la primera ubicación.

Note:

Si la primera ubicación en la que se agrega el nodo está en una lista, la ubicación principal se define la primera vez que este se inserta en una jerarquía.

Por ejemplo, suponga que tenía una expresión que ha calculado el nombre de nodo mediante la concatenación del nombre del padre del nodo con una propiedad del nodo (para este ejemplo, esa propiedad tiene el valor ABC). Si agrega el nodo bajo el padre 111, el nombre se calcula como 111-ABC. Si a continuación inserta el nodo bajo el padre 222, el nombre sigue siendo 111-ABC, porque 111 es la ubicación principal.

Hay varias formas de cambiar una ubicación principal del nodo:

  • Si mueve un nodo en la solicitud de su ubicación principal, la nueva ubicación se convierte en la ubicación principal y se vuelve a calcular el nombre.

  • Si elimina el nodo de la ubicación principal durante la solicitud, la siguiente ubicación donde se insertó se convierte en la ubicación principal.

  • Si tiene un nodo en varios lugares y desea cambiar de forma manual qué ubicación es la ubicación principal, utilice la acción Restablecer. Consulte Borrado y restablecimiento de un valor calculado.

Borrado y restablecimiento de un valor calculado

Utilice Borrar para borrar un nombre definido de forma manual y volver al nombre calculado. La acción Borrar solo está disponible para los nodos que se hayan agregado en esta solicitud con el tipo predeterminado Calcular y almacenar que tengan un nombre introducido de forma manual.

Utilice Restablecer para definir la ubicación principal del nombre calculado en la ubicación actual (consulte Descripción de ubicaciones principales) y volver a calcular el nombre de nodo basándose en la ubicación actual. La acción Restablecer solo está disponible para los nodos que se hayan agregado en esta solicitud con el tipo predeterminado Calcular y almacenar que no tengan un nombre introducido de forma manual.

También puede utilizar Restablecer para volver a calcular un nombre de nodo si ha realizado una acción fuera del nodo que afectaría al nombre de nodo (por ejemplo, si cambia una propiedad Padre y desea volver a calcular el nombre de nodo según la nueva propiedad).

Validaciones y nombres de nodo calculados

Cuando se calcula una solicitud, el nombre actual en la acción Agregar se utiliza para nodos nuevos que tengan nombres calculados con una excepción: si el nombre actual es una de las palabras clave (<cn> o <cn ####>), se omiten las validaciones de longitud mínima y máxima. Esto permite al emisor enviar una solicitud con una de las palabras clave en el nombre de forma que un aprobador o un enriquecedor pueda agregar la información necesaria para calcular el nombre.

Las validaciones de longitud mínima y máxima se ejecutan cuando se aprueban o confirman solicitudes.

Nombres calculados y suscripciones

Si configura una suscripción utilizando un nombre calculado, el nombre se calcula en el punto de vista de origen y el nombre resultante se transfiere en las solicitudes de suscripción a los puntos de vista de destino. Si desea que se calcule el nombre de nodo en el punto de vista de destino, debe configurar una transformación de propiedad en el conversor de tipo de nodo para la suscripción (consulte Trabajo con conversores de tipo de nodo) a fin de transformar el nombre en un valor en blanco o en un a delas palabras clave de nombre calculado (<cn> para adiciones, o <cn ####>, donde #### es una cadena de identificador único, para adiciones e inserciones). Consulte Descripción de las palabras clave de nombre calculado.

Note:

Si desea utilizar un Nombre alternativo cuando esté disponible, transforme el nombre en un valor en blanco. Si desea utilizar siempre el nombre calculado en el punto de vista de destino, transforme el nombre en una de las palabras clave.