Imprimir      Abrir versión PDF de ayuda en línea


Tema anterior

Tema siguiente

PRE

La función PRE de Expression Builder devuelve el valor que había en el campo especificado cuando se modifica el valor del campo, pero antes de que éste se actualice en la base de datos.

PRECAUCIÓN: se recomienda encarecidamente no usar la función PRE con reglas de flujo de trabajo que contengan una acción de espera, ya que esta acción afecta a la función PRE. Todas las acciones posteriores a la acción de espera no se realizarán hasta que haya terminado el período de espera especificado. Las acciones restantes se realizan en otra operación por lotes distinta de la operación en la que se activó originalmente la regla y los valores de los campos del registro antes de la acción que ejecutó la regla de flujo de trabajo no se mantienen. Por consiguiente, el valor anterior y el valor actual del campo siempre se consideran iguales.

Sintaxis

PRE('<fieldname>')

Tipo de resultado

Cadena

Argumentos

En la tabla siguiente se describen los argumentos de esta función.

Argumento

Descripción

fieldname

Nombre del campo que se ha modificado.

NOTA: Los nombres de campo independientes del idioma y la sintaxis de nombre de campo que se utilizan en las expresiones de ejemplo de este tema son los que se utilizaban en las versiones de Expression Builder anteriores a la versión 29 Service Pack 1. Estos ejemplos siguen siendo válidos. Sin embargo, si selecciona los campos correspondientes para una expresión en la lista Campos de Expression Builder, en la versión 29 Service Pack1 o posterior, los nombres de campo y la sintaxis de los nombres de campo serán diferentes de los indicados en los ejemplos. Se recomienda seleccionar siempre los campos para las expresiones de la lista Campos de Expression Builder para que los nombres de campo y la sintaxis de los nombres de campo sean siempre correctos. Para obtener más información sobre los nombres de campo y la sintaxis de nombre de campo en las expresiones, consulte Acerca de las expresiones.

Cuando se utiliza la función PRE, se aplican las siguientes consideraciones:

  • En las expresiones condicionales, como condiciones de flujo de trabajo y sentencias de validación, cuando se utiliza la función PRE para recuperar el valor anterior de un campo, recuerde que el valor inicial del campo puede estar en blanco (es decir, valor nulo). Si el valor inicial es nulo, cualquier comparación con un valor no nulo puede causar un comportamiento imprevisible. Para asegurarse de que las expresiones condicionales se evalúan correctamente en estos casos, utilice PRE con la función IfNull como se muestra en este ejemplo:

    IfNull([<FieldName>], "No válido") <> IfNull(PRE('<FieldName>'), "No válido")

    En este ejemplo, la cadena de texto No válido se utiliza para reemplazar el valor nulo, pero puede utilizar cualquier cadena que desee, siempre que no exista como valor en el campo que se esté examinando.

  • Si la función PRE se utiliza en una acción o regla de flujo de trabajo que se llama después de una acción de espera, la función no devolverá el valor anterior del campo. Sin embargo, es posible que tenga un proceso de negocio que requiera dichas comparaciones. En esos casos, puede utilizar una regla de flujo de trabajo con el evento activador Antes de guardar registro modificado para que se almacene el valor anterior de un campo en cualquier campo no utilizado del tipo de registro. A continuación, puede utilizar el valor de campo almacenado para las comparaciones que necesite en las reglas de flujo de trabajo con la acción de espera.

    Cuando se crea la regla de flujo de trabajo para almacenar el valor anterior de un campo en un campo no utilizado del tipo de registro, recuerde que el valor anterior del campo original podría estar en blanco (es decir, valor nulo). Por lo tanto, debe utilizar una expresión como la siguiente para almacenar un valor predeterminado si se encuentra un valor nulo:

    IfNull([<FieldName>], "No válido")

    En este ejemplo, la cadena de texto No válido es el valor predeterminado que se utiliza para reemplazar el valor nulo, pero puede utilizar cualquier cadena que desee, siempre que no exista como valor en el campo original.

Ejemplo de creación de una regla de flujo de trabajo que envía un correo electrónico al propietario anterior de un registro de cuenta

A continuación se muestra un ejemplo de cómo crear una regla de flujo de trabajo que envía un correo electrónico al propietario anterior de un registro de cuenta cuando el propietario del registro ha cambiado.

Para crear una regla de flujo de trabajo que envía un correo electrónico al propietario anterior de un registro de cuenta

  1. Cree una regla de flujo de trabajo para el tipo de registro Cuenta con el evento activador Al modificar registro guardado.
  2. Guarde la regla de flujo de trabajo.
  3. Cree una acción de adición de correo electrónico en la regla de flujo de trabajo.
  4. En la acción de flujo de trabajo, haga lo siguiente:
    1. En el campo Para, seleccione Dirección de correo específica.
    2. En el cuadro de texto de expresión del campo Para, agregue la siguiente expresión:

      JoinFieldValue('<User>', IfNull(PRE('<OwnerId>'), "admin@mycompany.com"),'<EMailAddr>')

    3. Agregue el texto necesario en el asunto y cuerpo del correo.
    4. Guarde la acción de flujo de trabajo.

Temas relacionados

Consulte los siguientes temas para obtener información relacionada con Expression Builder:


Publicado en agosto 2018 Copyright © 2005, 2018, Oracle. Todos los derechos reservados. Legal Notices.