Una propiedad definida por el usuario (UDP) es una constante definida por el usuario cuyo valor inicial lo puede modificar, en el tiempo de diseño, mediante el editor de flujos de mensajes o lo puede alterar temporalmente, en el tiempo de despliegue, mediante el editor de archivadores de intermediario. Puede utilizar las UDP en sus programas ESQL o Java. En ESQL, utilice la sentencia DECLARE para definir una UDP en su programa. Puede dar un valor inicial a la UDP en la sentencia DECLARE, pero su código no puede modificar el valor en tiempo de ejecución.
Cuando se da un valor inicial a la UDP en la sentencia DECLARE, éste pasa a ser su valor por omisión. Sin embargo, cualquier valor especificado por el editor de flujos de mensajes en el tiempo de diseño o por el editor BAR en el tiempo de despliegue (incluso una serie de longitud cero) alterará temporalmente cualquier valor inicial codificado en la sentencia DECLARE.
Todas las UDP en un flujo de mensajes deben tener un valor, proporcionado mediante una sentencia DECLARE, o el flujo de mensajes o el editor BAR; de lo contrario, se produce un error en tiempo de despliegue. En la ejecución, después de que la UDP se haya declarado, el valor se puede consultar mediante sentencias ESQL subsiguientes pero no se puede modificar.
La ventaja de las UDP es que el personal de operaciones puede cambiar los valores en el tiempo de despliegue. Por ejemplo, si utiliza las UDP para que contengan datos de configuración, significa que puede configurar un flujo de mensajes para una máquina, una tarea o un entorno determinados en el tiempo de despliegue, sin tener que cambiar el código a nivel de nodo. Los datos de configuración no tienen que ser accedidos, por ejemplo, por los plug-in de orígenes de datos, tal como bases de datos, ni copiarse en árboles de entorno.
Utilizando las UDP, los datos de configuración pueden establecerse fácilmente y utilizarse como constantes normales. Puesto que no están involucradas llamadas externas a plug-ins escritos por el usuario ni análisis de árboles de entorno, el código ESQL es más fácil de escribir y mantener, y tiene un mayor rendimiento. Además, se eliminan los costes del análisis, de leer datos de los árboles. El valor de la propiedad definida por el usuario se coloca en la variable en el momento del despliegue, lo cual favorece la rapidez de acceso.
Para añadir una UDP a sus programas, utilice la Sentencia DECLARE. Las UDP sólo se pueden declarar en módulos o esquemas.
Si utiliza el editor de flujos de mensajes para cambiar el valor de una propiedad definida por el usuario, el valor de la UDP se establece a nivel del flujo y es el mismo para todos los nodos elegibles contenidos en el flujo. (Un "nodo elegible" es un nodo que soporta las UDP y está en el ámbito de la sentencia DECLARE que declara la UDP a la aplicación.) Por ejemplo, si utiliza el editor de flujos de mensajes para cambiar el valor de una propiedad de usuario denominada "timezone", que está declarada en un esquema denominado "miEsquema", en un flujo de mensajes denominado "miFlujo", la UDP está disponible en el momento de ejecución para todos los nodos en miFlujo que soportan las UDP y están dentro de miEsquema.
Para obtener información sobre la definición de propiedades definidas por el usuario para sus programas, consulte Sentencia DECLARE.