Configuración de la actividad Consultar objetos
Debe crearse una consulta en lenguaje de búsqueda de objetos de Sforce (Sforce Object Search Language, SOSL) para configurar la actividad Buscar objetos. Las siguientes secciones se explican los pasos para configurar la actividad Buscar objetos , crear una consulta SOSL y suministrar reglas de sintaxis SOSL para IBM® Cast Iron.
Procedimiento
Creación de consultas SOSL
Al crear una consulta SOQL, puede utilizar parámetros dinámicos en la cláusula WHERE de la sentencia SOQL. Studio puede, a continuación, correlacionar estos parámetros dinámicamente como los parámetros de entrada de la actividad. Esto permite un control dinámico de la consulta basado en la entrada de la orquestación.
Acerca de esta tarea
El lenguaje de búsqueda SForce Object Query Language no define una sintaxis para las consultas parametrizadas; sin embargo, Cast Iron sí impone algunas reglas de sintaxis SOQL de propietario. Puede utilizar parámetros en las expresiones simples o en las complejas.
- Utilice el símbolo del dólar ($) para denotar un parámetro. Detrás del signo del dólar ($),
especifique una serie de caracteres alfanuméricos. El primer
carácter debe ser una letra [a-zA-Z], seguida opcionalmente de una o
varias letras [a-zA-Z], dígitos [0-9], o ( _ ) guiones bajos. Nota: Los nombres de parámetros distinguen entre mayúsculas y minúsculas; por lo tanto, los parámetros $a y $A se consideran parámetros diferentes.La tabla siguiente contiene ejemplos de declaraciones de parámetro válidas y no válidas:
Parámetro Válido o no válido $AnAccount válido $a123_456 válido $123a no válido $_id no válido - Debe declarar los parámetros en el lado derecho de una expresión en una cláusula WHERE.
- Los parámetros pueden aparecer más de una vez en una sentencia SOQL dada.
Sin embargo, aunque el parámetro aparezca más de una vez en la sentencia
SOQL, solo se incluirá una vez en la correlación de parámetros de entrada. La actividad sustituirá con el mismo valor todas las ubicaciones en las que se
utilice el parámetro en tiempo de ejecución.Nota: Si utiliza el mismo nombre de parámetro y existe una no coincidencia de tipo, se producirá un error. Por ejemplo, el siguiente SOQL genera un error porque $param se utiliza como serie y como tipo de fecha:
SELECT Name from Account where Name like $param and createdDate > $param
- El tipo de campo en el que se compara el parámetro determina
su tipo y si el parámetro se utilizará en una expresión simple,
una expresión compleja o como parte de una expresión.
Tipo de expresión Descripción Expresiones simples Por ejemplo: Select ID from Account where Name = $NameParam El SoapType (tipo SOAP) del campo del lado izquierdo de la expresión determina el tipo de parámetro. Si el tipo de campo es nulo y el operador es ( = ) o ( != ), el parámetro es nulo. Al establecer xsi:nil=true en el parámetro, se establece el valor del parámetro como nulo cuando se sustituye. Si el tipo del parámetro tiene que ir encerrado entre comillas simples (‘), el valor del parámetro se encerrará entre comillas simples durante la sustitución y su contenido se escapará de forma automática.
En SOQL, se escapan la barra inclinada invertida (\) y la comilla simple (‘).
Expresiones complejas Por ejemplo: Select ID From Account where ID in $idList El tipo de parámetro es una secuencia repetitiva del SoapType del campo situado en lado izquierdo de la expresión. El parámetro no es nulo y tiene minOccurs=1, maxOccurs=unbounded en el elemento.
La secuencia se expande en tiempo de ejecución para que sea un valor de conjunto propiamente, por ejemplo:
Select Id From Account where Id in (‘valor1',‘valor2')
Parte de una expresión de conjunto Los parámetros dentro de una lista de conjunto se tratan como un tipo de parámetro de expresión simple, por ejemplo: SELECT Name from Account where BillingState IN (‘California', $state2) En este ejemplo, el tipo de parámetro $state2 es el SoapType del campo Account BillingState y no es un elemento repetitivo. El parámetro no es nulo.