Administrando o Oracle CRM On Demand > Personalização de aplicativo > Página Personalização da aplicação do tipo de registro > Sobre Campos Incorporados Condicionalmente Obrigatórios
Sobre Campos Incorporados Condicionalmente Obrigatórios
Você pode configurar um campo de modo que ele não seja obrigatório por padrão, mas que se torne obrigatório quando uma condição definida for satisfeita. Um campo configurado desta forma é conhecido como campo condicionalmente obrigatório. Por exemplo, você pode decidir que quando um usuário definir o status de uma oportunidade como Perdido, ele deverá selecionar um valor no campo Motivo do ganho/perda antes de salvar o registro. Para implementar este processo, você pode informar a seguinte condição para o campo Motivo do ganho/perda no gerenciamento de campos:
[{Status}]=LookupValue("OPTY_STATUS", "Perdido")
Após você configurar o campo desta forma, se um usuário selecionar o status Perdido para oportunidade, ele não poderá salvar a oportunidade até um valor ser selecionado no campo Modo do ganho/perda. Um asterisco vermelho (*) é exibido ao lado do campo e, se o rótulo de texto for exibido para o campo, ele será mostrado em texto vermelho.
Ao configurar um campo condicionalmente obrigatório, observe os seguintes pontos:
- Você deverá se certificar de que o campo condicionalmente obrigatório seja exibido nos layouts de página relevantes. Caso contrário, os usuários não poderão inserir um valor para o campo quando ele se tornar obrigatório. Da mesma forma, recomenda-se que você marque a caixa de seleção Sempre no Layout para o campo condicionalmente obrigatório no Assistente de Layout de Página, de modo que os usuários não possam remover o campo de seus layouts de página. Se alguns usuários já tiverem personalizado seus layouts de página, talvez você precise redefinir os layouts de página personalizados com o layout padrão após configurar o campo condicionalmente obrigatório. Para obter mais informações, consulteRedefinindo Apresentações de Páginas Personalizadas.
- Se quiser que um campo condicionalmente obrigatório seja sempre obrigatório para determinada função, você poderá tornar o campo obrigatório no layout de página usado para essa função. Assim, o campo será obrigatório em todos os casos em que o layout de página for usado, mesmo que a condição definida para o campo no nível do campo não seja atendida. Quando outros layouts de página forem usados, o campo será obrigatório somente quando a condição for atendida.
A tabela a seguir explica as definições para tornar esses campos obrigatórios ou condicionalmente obrigatórios no gerenciamento de campos no Assistente de Layout de Página.
Caixa de seleção obrigatória no Gerenciamento de Campos
|
Campo Condicionalmente Obrigatório no Gerenciamento de Campos
|
Caixa de Seleção Obrigatória no Assistente de Layout de Página
|
Caixa de Seleção Condicionalmente Obrigatória no Assistente de Layout de Página
|
Resultado
|
Marcado
|
Em branco
|
Selecionado e somente leitura
|
Não selecionado e somente leitura
|
Este campo é sempre obrigatório.
|
Não selecionado
|
Contém uma expressão
|
Não selecionado e editável
|
Selecionado e somente leitura
OBSERVAÇÃO: Se você marcar a caixa de seleção Obrigatório no Assistente de Layout de Página, a caixa de seleção Condicionalmente Obrigatório será automaticamente desmarcada.
|
O campo só será obrigatório quando a condição especificada para o campo for atendida, a menos que você marque a caixa de seleção Obrigatório no Assistente de Layout de Página.
|
Não selecionado
|
Em branco
|
Não selecionado e editável
|
Não selecionado e somente leitura
|
Se você marcar a caixa de seleção Obrigatório no Assistente de Layout de Página, o campo será obrigatório em todos os campos em que o layout de página for usado. Caso contrário, o campo não será obrigatório.
|
A Funcionalidade do Expression Builder para Campos Condicionalmente Obrigatórios
As seguintes limitações se aplicam à funcionalidade do Expression Builder que você pode usar nas condições criadas para campos condicionalmente obrigatórios:
- Funções. As seguintes funções do Expression Builder não são suportadas:
- Tipos de dados. Você não pode usar campos do tipo Data ou Data/hora em expressões para campos condicionalmente obrigatórios. Você pode usar todos os outros tipos de campo suportados para uso no Expression Builder.
- Operadores. Não há limitações.
Para obter mais informações sobre a utilização do Expression Builder, consulte Expression Builder
Limitações ao editar campos condicionalmente obrigatórios
Os administradores e os usuários devem considerar as seguintes limitações ao editar campos condicionalmente obrigatórios:
- A expressão em um campo condicionalmente obrigatório pode incluir campos de registros associados. Por exemplo, na página Detalhes do contato, você pode ter um campo que é necessário somente quando uma conta específica está associada ao registro de contato. A expressão pode incluir o campo ID ou Nome da conta, como nos seguinte exemplos:
[{Account Id}]="1QA2-1IRPI7"
[{Primary Account Name}]="Peças do computador ACME"
Quando você cria chamadas de API REST ou serviço Web para atualizar o registro, e a solicitação inclui a associação, para garantir que a expressão no campo condicionalmente obrigatório retorne o valor correto, a solicitação deve conter o campo correto do registro associado. No exemplo de contato, o campo ID ou Nome, dependendo do que está configurado para o campo condicionalmente obrigatório, deve constar na solicitação. Alternativamente, a solicitação pode conter os campos ID e Nome.
- A expressão em um campo condicionalmente obrigatório pode avaliar campos somente leitura que são automaticamente atualizados quando uma associação entre dois registros é atualizada, como o campo Localização da conta em um registro de contato. No entanto, essa configuração não funciona corretamente nas seguintes circunstâncias:
- Se o campo condicionalmente obrigatório não for necessário no momento (ou seja, se a expressão no campo retornar falso), o registro for editado em linha na página de detalhes do registro e a atualização fizer com que a expressão no campo condicionalmente obrigatório retornar verdadeiro. Nesse caso, o campo condicionalmente obrigatório continuará sendo desnecessário.
- Se o campo condicionalmente obrigatório for necessário no momento (ou seja, se a expressão no campo retornar verdadeiro), o registro for editado na página de edição de registro e a atualização fizer com que a expressão no campo condicionalmente obrigatório retornar falso. Nesse caso, o campo condicionalmente obrigatório continuará sendo necessário.
- Um campo condicionalmente obrigatório pode usar uma expressão que retorne campos de informações relacionadas personalizados. No entanto, quando o campo de origem de um campo de informações relacionadas personalizado for atualizado, haverá um pequeno retardo até que o valor nesse campo seja atualizado automaticamente.
Portanto, se a expressão em um campo condicionalmente obrigatório retornar um campo de informações relacionadas personalizado, a expressão poderá não retornar o valor correto imediatamente após o campo de origem do campo de informações relacionadas personalizado ser atualizado.
|