Imprimir      Abrir versão PDF da ajuda online


Tópico anterior

Tópico seguinte

Acerca de expressões

Uma expressão é uma combinação válida de um ou mais operadores, funções, campos e literais que podem ser avaliados pelo Oracle CRM On Demand. Este tópico fornece informações sobre as seguintes funcionalidades de expressões:

  • Formatos de campos e nomes de campos em expressões
  • Comprimento da expressão
  • Comprimento do literal
  • Expressões condicionais
  • Expressões de validação
  • Utilizar campos dependentes nas expressões

Campos e Sintaxe do Nome do Campo nas Expressões

A maior parte dos campos que estão disponíveis na página de configuração de campos para um tipo de registo também estão disponíveis na lista de campos para esse tipo de registo no Expression Builder e podem ser utilizados nas expressões.

NOTA: Os campos customizados do tipo de campo Texto (Curto - Mascarável) são uma exceção. Não pode utilizar estes campos numa expressão no Expression Builder.

Quando acrescenta um campo a uma expressão ao selecionar o nome do campo a partir da lista de campos no Expression Builder, o campo é introduzido no editor de expressões na seguinte sintaxe:

[{FieldName}]

Os nomes de campos que aparecem no editor de expressões são nomes de campos independentes da língua que são utilizados para identificar os campos internamente em Oracle CRM On Demand. Embora também possa introduzir nomes de campos diretamente no editor de expressões utilizando a sintaxe [{FieldName}], é recomendável que selecione sempre os campos a partir da lista de campos para que os nomes de campos na expressão estejam corretos.

Acerca de Nomes de Campos e da Sintaxe do Nome do Campo nas Expressões em Releases Anteriores

Em releases anteriores à Release 29 do Service Pack 1 de Oracle CRM On Demand, quando selecionou um campo a partir da lista de campos em Expression Builder, o campo foi introduzido no editor de expressões com a seguinte sintaxe:

[<FieldName>]

Além disso, em releases anteriores à Release 29 do Service Pack 1, o Expression Builder utilizou nomes de campos independentes da língua que são diferentes dos nomes de campos independentes da língua utilizados em Expression Builder na Release 29 do Service Pack 1 e em releases posteriores. No entanto, quaisquer expressões que utilizem a sintaxe [<FieldName>] e os nomes de campos correspondentes e que eram válidas nas releases anteriores, continuam a ser válidas na Release 29 do Service Pack 1 e em versões releases. Também pode continuar a escrever os nomes antigos dos campos independentes da língua com a sintaxe [<FieldName>] diretamente no editor de expressões, se pretender. No entanto, é recomendável que selecione sempre os campos da lista de campos no Expression Builder, para que os nomes de campos e a sintaxe do campo estejam sempre corretos.

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

Acerca dos Exemplos na Ajuda Online do Oracle CRM On Demand

Alguns dos exemplos das expressões que aparecem na ajuda online utilizam nomes de campos independentes da língua e a sintaxe do nome do campo que foram utilizados em releases anteriores à Release 29 do Service Pack 1. Estes exemplos ainda são válidos. No entanto, se selecionar os campos correspondentes da lista de campos no Expression Builder quando criar ou atualizar uma expressão na Release 29 do Service Pack 1 ou numa release posterior, os nomes de campos na expressão serão diferentes dos nomes de campos apresentados nos exemplos na ajuda online e os campos serão apresentados no editor de expressões com a nova sintaxe do campo.

Comprimento da expressão

Para o corpo de uma mensagem de correio eletrónico configurada através da ação Enviar mensagem de correio eletrónico numa regra de fluxos de trabalho, o comprimento máximo suportado de uma expressão é de 2000 caracteres, incluindo espaços. Pode inserir uma quebra de linha na mensagem de correio eletrónico premindo Enter. Uma quebra de linha conta como dois caracteres na caixa de texto.

Para todos os outros casos em que o Expression Builder seja utilizado, o comprimento máximo suportado de uma expressão é de 1024 caracteres, incluindo espaços.

Tem de assegurar ainda que o número total de caracteres no campo onde guarda a expressão não ultrapassa o limite para esse campo. Nos campos de fluxo de trabalho seguintes, são colocados três sinais de percentagem (%%%) antes e depois das funções e dos nomes de campos:

  • Os campos Assunto e Corpo da mensagem numa mensagem de correio eletrónico configurado através da ação Enviar mensagem de correio eletrónico
  • Os campos Assunto e Descrição numa tarefa configurada através da ação Criar tarefa

Os sinais de percentagem indicam que a função ou o nome do campo serão convertidos num valor de texto. Cada sinal de percentagem conta como um carácter no campo onde a expressão é gravada.

Se introduzir diretamente uma função ou nome de campo no campo, deverá introduzir três sinais de percentagem antes e depois do mesmo. Se utilizar o Expression Builder para incorporar uma função ou nome de campo, os sinais de percentagem serão adicionados automaticamente.

Por exemplo, se utilizar o Expression Builder para inserir o seguinte nome de campo no corpo da mensagem de um correio eletrónico numa ação de fluxo de trabalho:

[{Name}]

Expression Builder insere o seguinte (um total de 14 caracteres) no corpo da mensagem do correio eletrónico na ação de fluxo de trabalho:

%%%[{Name}]%%%

Comprimento do literal

Quando move uma cadeia ou literal numérico para uma função no Expression Builder, o literal não poderá conter mais do que 75 caracteres, incluindo espaços. Se um literal exceder 75 caracteres, o Expression Builder considera o literal como um erro de sintaxe. Quando move uma cadeia para uma função fazendo referência a um nome do campo, o limite de 75 caracteres não se aplica ao comprimento do valor no campo movido para o literal.

Quando cria uma expressão para definir um valor predefinido para um campo, o limite de 75 caracteres aplica-se a qualquer cadeia ou literais numéricos movidos para qualquer função na expressão. Além disso, o número de caracteres no resultado da expressão não poderá exceder o número máximo de caracteres permitido no campo.

Expressões condicionais

Uma expressão condicional é uma expressão que, quando avaliada pela aplicação, devolve sempre um valor booleano, tal como Verdadeiro ou Falso.

NOTA: Sim, Não, S e N não são valores booleanos. Se especificar Verdadeiro ou Falso como valor de retorno para funções como IIf, Verdadeiro e Falso serão devolvidos como cadeias e não como valores booleanos. A utilização incorreta de valores booleanos em expressões condicionais pode resultar num comportamento imprevisível.

Uma expressão utilizada em qualquer um dos seguintes contextos deve ser uma expressão condicional:

  • Para especificar uma regra de validação do campo
  • Para especificar uma condição numa regra de fluxos de trabalho
  • Como o primeiro parâmetro numa função Ilf

Expressões de validação

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

Uma expressão de validação para um campo é avaliada cada vez que o campo é atualizado num registo novo ou num existente. No entanto, uma expressão de validação não é avaliada nas seguintes circunstâncias:

  • O campo é deixado em branco quando o registo é criado ou modificado. A validação do campo não impõe que um valor seja necessário.
  • O campo tem um valor pré-existente, válido ou inválido e o valor não é alterado quando o registo é atualizado.

Se uma expressão de validação não for avaliada ou se uma expressão de validação for avaliada como NULA, não é gerada qualquer mensagem de erro. Uma mensagem de erro só é gerada quando a expressão de validação falha (isto é, a expressão é avaliada como FALSE).

Uma expressão de validação é diferente de outros tipos de expressões já que pode ser iniciada com um operador condicional. Por exemplo, se Nome de conta for o campo a ser avaliado pela expressão, a expressão pode começar com:

= 'Acme Hospital'

Esta expressão, apesar de não estar bem concebida, passará numa verificação de sintaxe, porque o Oracle CRM On Demand insere o nome do campo a ser validado antes da expressão, se não encontrar um nome do campo no início da expressão. Também pode introduzir a expressão de validação da seguinte forma:

[<AccountName>]= 'Acme Hospital'

onde [<AccountName>] é o campo a validar.

Se a expressão necessitar de outros campos para ser avaliada para além do campo a ser validado, é prática comum na primeira comparação na expressão a ser executada no campo a validar.

As expressões de validação só são utilizadas na caixa de texto Validação de campo na gestão avançada de campos do Oracle CRM On Demand.

Exemplos de expressões de validação

Exemplo 1: Um processo empresarial necessita que a data de fecho de uma oportunidade seja mais tarde do que a data de criação da oportunidade.

Para implementar este processo, crie uma expressão de validação para o campo Data de fecho (na página Configuração de campos para oportunidades) da seguinte forma:

> [<CreatedDate>]

Em alternativa, pode utilizar o exemplo seguinte mas repare que o campo que está a ser avaliado (Data de fecho) deve ser o primeiro campo na expressão:

[<CloseDate>] > [<CreatedDate>]

Para obter informações sobre criação e edição de campos, consulte Criar e editar campos.

Exemplo 1: Um processo empresarial necessita que as receitas de uma oportunidade sejam um valor diferente de zero quando a probabilidade da oportunidade é de 40% ou maior.

A regra de negócio indica que a dependência está em ambos os campos e pode ser novamente instruída como se segue:

Numa oportunidade, as receitas não podem ser zero quando a probabilidade for maior ou igual a 40. Ao contrário, a probabilidade não pode ser maior ou igual a 40 se as receitas forem zero.

Uma expressão de validação para um campo é avaliada quando o registo é criado e cada vez que o campo é atualizado pelo utilizador. Uma vez que uma atualização ao campo Probabilidade ou ao campo Receitas pode afetar ambos os campos, deve ter as regras de validação no campo Probabilidade e no campo Receitas para implementar a regra de negócio corretamente. (Para obter informações sobre criação e edição de campos, consulte Criar e editar campos).

Os passos necessários para implementar este exemplo da seguinte forma:

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

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

    Repare que não é utilizado o sinal de percentagem (%).

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

    As receitas devem ser maiores do que 0 quando a probabilidade for maior ou igual a 40%.

  3. Configure a regra de validação seguinte para o campo Receitas:

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

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

    As receitas devem ser maiores do que 0 quando a probabilidade for maior ou igual a 40%.

Utilizar campos dependentes nas expressões

Um campo dependente é um campo de junção cujos valores dependem de uma chave externa. Um campo de junção é um campo num tipo de registo que utiliza uma chave externa para referenciar um campo noutro tipo de registo. Um exemplo de um campo dependente é o campo AccountName no tipo de registo Oportunidade. O campo AccountName no tipo de registo Oportunidade é um campo de junção cujos valores dependem do campo de chave externa AccountId, o qual referencia o tipo de registo Conta.

Se a expressão do utilizador tiver de determinar o valor de um campo dependente, recomenda-se que utilize a função JoinFieldValue e obtenha o valor mais recente do campo através da referência para o campo ID, ou seja, o campo de chave externa. Caso contrário, os resultados da expressão podem estar incorretos e o resultado do valor da expressão pode ser inválido. Para obter mais informações sobre campos de junção e a função JoinFieldValue, consulte JoinFieldValue.

Tópicos relacionados

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


Publicado em Agosto 2018 Copyright © 2005, 2018, Oracle. Todos os direitos reservados. Legal Notices.