Configurando a Atividade Consultar Objetos
Você deve criar uma consulta SForce Object Search Language (SOSL) para configurar a atividade Procurar Objetos. As seguintes seções discutem as etapas para configurar a atividade Procurar Objetos, criar uma consulta SOSL e fornecer regras de sintaxe SOSL para o IBM® Cast Iron.
Procedimento
Criando Consultas SOSL
Ao criar uma consulta SOQL, é possível usar parâmetros dinâmicos na cláusula WHERE da instrução SOQL. Depois, o Studio pode mapear esses parâmetros dinamicamente como os parâmetros de entrada para a atividade. Isto permite o controle dinâmico da consulta com base na entrada para a orquestração.
Sobre Esta Tarefa
A SForce Object Query Language não define uma sintaxe para as consultas parametrizadas: entretanto, o Cast Iron impõe algumas regras de sintaxe SOQL de proprietário. É possível usar parâmetros em expressões simples ou configurar expressões.
- Use um cifrão ($) para indicar um parâmetro. Após o cifrão ($),
especifique uma cadeia de caracteres alfanuméricos. O primeiro
caractere deve ser uma letra [a-zA-Z], seguida opcionalmente por uma ou
mais letras [a-zA-Z], dígitos [0-9] ou ( _ ) sublinhados. Nota: Os nomes de parâmetros fazem distinção entre maiúsculas e minúsculas; portanto, os parâmetros $a e $A são considerados parâmetros diferentes.A tabela a seguir contém exemplos de declarações de parâmetros válidos e inválidos:
Parâmetro Válido ou Inválido $AnAccount válido $a123_456 válido $123a inválido $_id inválido - Você deve declarar parâmetros no lado direito de uma expressão em uma cláusula WHERE.
- Os parâmetros podem aparecer mais de uma vez em uma determinada instrução SOQL.
Entretanto, mesmo que o parâmetro apareça mais de uma vez na
instrução SOQL, ele só aparecerá uma vez no mapa de parâmetros de entrada. A atividade substitui o mesmo valor para todos os locais em que o
parâmetro é usado no tempo de execução.Nota: Quando você usa o mesmo nome de parâmetro e há uma incompatibilidade de tipos, ocorre um erro. Por exemplo, o SOQL a seguir gera um erro porque $param é usado como uma sequência e um tipo de data:
SELECT Name from Account where Name like $param and createdDate > $param
- O tipo do campo em que um parâmetro está sendo comparado
determina o tipo do parâmetro e se o parâmetro está
sendo usado em uma expressão simples, uma expressão de conjunto ou parte de uma
expressão de conjunto.
Tipo de Expressão Descrição Expressões Simples Por exemplo: Select ID from Account where Name = $NameParam O SoapType do campo no lado esquerdo da expressão determina o tipo de parâmetro. Se o tipo de campo for nillable e o operador for ( = ) ou ( != ), o parâmetro será nillable.A configuração de xsi:nil=true no parâmetro configura o valor de parâmetro como nulo quando ele é substituído. Se o tipo de parâmetro requer que ele seja colocado entre aspas simples (‘), o valor do parâmetro é colocado entre aspas simples durante a substituição e seu conteúdo é escapado automaticamente.
Para SOQL, a barra invertida (\) e a aspa simples (‘) incluirão um caractere de escape.
Expressões de Conjunto Por exemplo: Select ID From Account where ID in $idList O tipo de parâmetro é uma sequência de repetição no lado esquerdo da expressão. O parâmetro não é nillable e possui minOccurs=1, maxOccurs=unbounded no elemento.
A sequência é expandida no tempo de execução para ser um valor de conjunto adequado, por exemplo:
Select Id From Account where Id in (‘value1',‘value2')
Parte de uma Expressão de Conjunto Os parâmetro dentro de uma lista de conjuntos são tratados como um tipo de parâmetro de expressão simples, por exemplo: SELECT Name from Account where BillingState IN (‘California', $state2) Nesse exemplo, o tipo de parâmetro $state2 é o SoapType do campo Account BillingState e não é um elemento de repetição. O parâmetro não é nillable.