Imprimir      Abrir a versão em PDF da Ajuda on-line


Tópico anterior

Próximo tópico

Sobre expressões

Um expressão é uma combinação válida de uma ou mais operações, funções, campos e literais que podem ser avaliados por Oracle CRM On Demand. O tópico fornece informações sobre os seguintes recursos de expressões:

  • Campos e formatos de nomes de campos em expressões
  • Comprimento da expressão
  • Comprimento literal
  • Expressões condicionais
  • Expressões de validação
  • Usando campos dependentes em expressões

Campos e Sintaxe de Nomes de Campos em Expressões

A maioria dos campos que estão disponíveis na página de configuração de campos de um tipo de registro também está disponível na lista de campos desse tipo de registro no Expression Builder e pode ser usada em expressões.

OBSERVAÇÃO: os campos personalizados do campo Texto (Curto - Mascarável) são uma exceção. Não é possível usar esses campos em uma expressão no Expression Builder.

Ao adicionar um campo a uma expressão selecionando o nome dele na lista de campos do Expression Builder, o campo é inserido no editor de expressão no seguinte formato:

[{FieldName}]

Os nomes dos campos que aparecem no editor de expressão são nomes de campos independentes de idiomas que são usados para identificar os campos internamente no Oracle CRM On Demand. Embora você também possa digitar os nomes dos campos diretamente no editor de expressão usando a sintaxe [{FieldName}], é recomendado que sempre selecione-os na lista de campos para que os nomes dos campos na expressão estejam corretos.

Sobre Nomes de Campos e Sintaxe de Nomes de Campos em Expressões nas Versões Anteriores

Nas versões anteriores à Versão 29 Service Pack 1 do Oracle CRM On Demand, quando você selecionou um campo na lista de campos no Expression Builder, o campo foi inserido no editor de expressão com a seguinte sintaxe:

[<FieldName>]

Além disso, nas versões anteriores à Versão 29 Service Pack 1, o Expression Builder usava nomes de campos independentes de idioma que era diferentes dos nomes de campos independentes de idioma usados no Expression Builder na Versão 29 Service Pack 1 e nas versões posteriores. No entanto, qualquer expressão que use a sintaxe [<FieldName>] e os nomes de campos correspondentes e que era válida nas versões anteriores continua válida na Versão 29 Service Pack 1 e nas versões posteriores. Se quiser, você também pode continuar a digitar os nomes de campos independentes de idioma com a sintaxe [<FieldName>] diretamente no editor de expressão. No entanto, é recomendado que você sempre selecione os campos na lista de campos no Expression Builder para que os nomes dos campos na expressão estejam corretos.

Uma expressão pode conter uma mistura de nomes de campos novos e antigos, desde que a sintaxe [{FieldName}] seja usada para os nomes de campos novos e a sintaxe [<FieldName>] seja usada para os nomes de campos antigos.

Sobre os Exemplos na Ajuda Online do Oracle CRM On Demand

Alguns dos exemplos de expressões que aparecem na ajuda on-line utilizam os nomes de campos independentes de idioma e a sintaxe do nome do campo que foram usados em versões anteriores à Versão 29 Service Pack 1. Esses exemplos ainda são válidos. No entanto, se você selecionar os campos correspondentes na lista de campos no Expression Builder quando criar ou atualizar uma expressão na Versão 29 Service Pack 1 ou em uma versão posterior, os nomes de campos na expressão serão diferentes dos nomes de campos mostrados nos exemplos na ajuda on-line, e os campos aparecerão no editor de expressão com a nova sintaxe de campo.

Comprimento da expressão

No caso do corpo da mensagem de um e-mail configurado pela ação Enviar e-mail em uma regra de workflow, o comprimento máximo suportado de uma expressão é de 2000 caracteres, incluindo espaços. Você pode inserir uma interrupção de linha na mensagem de e-mail, pressionando Enter. Essa interrupção é contada como dois caracteres no corpo do texto.

Nos demais casos em que o Expression Builder é usado, o comprimento máximo suportado é de 1024 caracteres, incluindo espaços.

Verifique também se o número total de caracteres do campo em que você está salvando a expressão não ultrapassa o seu limite. Nos campos de workflow a seguir, três sinais de porcentagem (%%%) são colocados antes e depois de funções e nomes de campo:

  • Os campos Assunto e Corpo da mensagem em um e-mail configurado pela ação Enviar e-mail
  • Os campos Assunto e Descrição em uma tarefa configurada pela ação Criar tarefa

Os sinais de porcentagem indicam que a função ou o nome do campo será convertido como valor de texto. Cada sinal de porcentagem é contado como um caractere no campo em que a expressão é salva.

Se você digitar o nome do campo ou uma função diretamente no campo, digite três sinais de porcentagem antes e depois. Se usar o Expression Builder para incorporar uma função ou nome do campo, esses sinais são adicionados automaticamente.

Por exemplo, se você usar o Expression Builder para inserir o nome do campo após o corpo da mensagem de um e-mail em uma ação de fluxo de trabalho:

[{Name}]

O Expression Builder insere o seguinte (total de 14 caracteres) no corpo da mensagem do e-mail na ação do workflow:

%%%[{Name}]%%%

Comprimento literal

Quando você passa uma string ou um literal numérico para uma função no Expression Builder, o literal não deve conter mais de 75 caracteres, incluindo espaços. Se um literal excede 75 caracteres, o Expression Builder considera o literal um erro de sintaxe. Quando você passa uma string para uma função referenciando o nome de um campo, o limite de 75 caracteres não se aplica ao comprimento do valor no campo passado para o literal.

Quando você cria uma expressão para definir um valor padrão para um campo, o limite de 75 caracteres se aplica a qualquer string ou literal numérico passado para qualquer função na expressão. Além disso, o número de caracteres no resultado da expressão não deve exceder o número máximo de caracteres permitido no campo.

Expressões condicionais

Uma expressão condicional é uma expressão que, quando avaliada pelo aplicativo, sempre retorna um valor Booleano como Verdadeiro ou Falso.

OBSERVAÇÃO: Sim, Não, S e N não são valores booleanos. Se você especificar Verdadeiro ou Falso como valores de retorno para funções como IIf, então, Verdadeiro e Falso serão retornados como strings e não como valores Booleanos. O uso incorreto de valores Booleanos em expressões condicionais pode resultar em comportamento inesperado.

Deve ser usada uma expressão condicional em qualquer contexto a seguir:

  • Para especificar uma regra de validação de campo
  • Para especificar uma condição em uma regra de workflow
  • Como primeiro parâmetro de uma função IIf

Expressões de validação

As expressões de validação são usadas para garantir que os dados informados nos campos sejam válidos. Uma expressão de validação deve ser condicional.

Um expressão de validação de um campo é avaliada quando o registro é criado e sempre que o campo é atualizado por um usuário, exceto nas circunstâncias a seguir:

  • Um campo é deixado em branco quando o registro é criado. A validação de campo não exige que um valor seja obrigatório.
  • Um campo tem um valor inválido preexistente e ele não muda quando é atualizado.

Se a expressão de validação não for avaliada ou se for avaliada como NULO, nenhuma mensagem de erro é gerada. Uma mensagem de erro é gerada apenas quando ocorre falha na expressão de validação (ou seja, a expressão é avaliada como FALSA).

Uma expressão de validação é diferente de outros tipos de expressões em que ela pode iniciar como um operador condicional. Por exemplo, se o Nome da conta for o campo que está sendo validado pela expressão, esta pode iniciar com:

= 'Acme Hospital'

Esta expressão, embora não formada corretamente, passará por uma verificação de sintaxe, porque o Oracle CRM On Demand insere o nome do campo que está sendo validado antes da expressão, caso ele seja localizado um nome do campo no início da expressão. Também é possível informar a expressão de validação desta forma:

[<AccountName>]= 'Acme Hospital'

em que [<AccountName>] é o campo que está sendo validado.

Se a expressão necessitar que outros campos sejam avaliados além do que está sendo validado, a prática padrão é comparar primeiro a expressão que está sendo executada com o campo que está sendo validado.

As expressões de validação só são usadas na caixa de texto Validação de campo no gerenciamento de campo avançado do Oracle CRM On Demand.

Exemplos de expressão de validação

Exemplo 1: um processo de negócios necessita que a data de fechamento de uma oportunidade seja posterior à data de criação da oportunidade.

Para implementar esse processo, crie uma expressão de validação para o campo Data de fechamento (na página de Configuração de campos de oportunidades) desta forma:

> [<CreatedDate>]

De modo alternativo, você pode usar o exemplo a seguir, mas observe que o campo que está sendo avaliado (Data de fechamento) deve ser o primeiro campo da expressão:

[<CloseDate>] > [<CreatedDate>]

Para obter informações sobre como criar e editar campos, consulte Criando e editando campos.

Exemplo 2: um processo de negócios necessita que a receita de uma oportunidade seja um valor diferente de zero quando a probabilidade da oportunidade for 40% ou maior.

A regra de negócios indica que a dependência está nos dois campos e pode ser reiniciada desta forma:

No caso de uma oportunidade, a receita não pode ser zero quando a probabilidade for maior ou igual a 40. De modo contrário, a probabilidade não pode ser maior ou igual a 40, se a receita for zero.

Uma expressão de validação de um campo é avaliada quando o registro é criado e sempre que o campo é atualizado por um usuário. Como uma atualização no campo Probabilidade ou Receita pode afetar os dois campos, você deve ter regras de validação nesses dois campos para que a regra de negócios seja implementada corretamente. (Para obter informações sobre criação e edição de campos, consulte Criando e editando campos.)

As etapas necessárias para a implementação desse exemplo são:

  1. Configure a regra de validação a seguir para o campo Probabilidade:

    < 40 OR ([<Probability>]>= 40 AND [<Revenue>]> 0)

    Observe que o sinal de porcentagem (%) não é usado.

  2. Adicione uma mensagem de erro de validação como a seguir ao campo Probabilidade:

    A receita deve ser maior que 0 quando a probabilidade for maior ou igual a 40%.

  3. Configure a regra de validação a seguir para o campo Receita:

    (> 0 AND [<Probability>]>= 40) OR [<Probability>]< 40

  4. Adicione uma mensagem de erro de validação como a seguir ao campo Receita:

    A receita deve ser maior que 0 quando a probabilidade for maior ou igual a 40%.

Usando campos dependentes em expressões

Um campo dependente é um campo conjunto cujos valores dependem de uma chave estrangeira. Um campo conjunto é um campo em um tipo de registro que usa uma chave de previsão para mencionar um campo de outro tipo de registro. Um exemplo de um campo dependente é o campo AccountName no tipo de registro Oportunidade. O campo AccountName no tipo de registro Oportunidade é um campo conjunto cujos valores dependem do campo de chave estrangeira AccountId, que referencia o tipo de registro Conta.

Se a expressão precisar determinar o valor de um campo dependente, será recomendável usar a função JoinFieldValue e obter o valor mais recente do campo consultando o campo ID, ou seja, o campo de chave estrangeira. Do contrário, os resultados da expressão podem estar incorretos, e o resultado do valor da expressão pode estar inválido. Para obter mais informações sobre campos conjuntos e a função JoinFieldValue, consulte JoinFieldValue.

Tópicos relacionados

Consulte os seguintes tópicos para obter informações relacionadas ao Expression Builder:


Publicado em Otubro de 2016 Copyright © 2005, 2016, Oracle. Todos os direitos reservados. Legal Notices.