Tópicos Avançados de Consulta Extensível
Esta seção contém informações técnicas adicionais sobre atributos de consulta extensível
Definindo Atributos Adicionais
O produto oferece algumas maneiras diferentes para definir valores adicionais em uma busca extensível. Alguns métodos são relevantes apenas para valores de consulta fornecidos com a base, já que eles podem definir se uma implementação pode ou não atualizar os valores.
A tabela a seguir destaca as opções disponíveis e algumas informações resumidas sobre o que a opção oferece.
Opção | Descrição Breve | Valor de Busca Extensível Pesquisável por Este Atributo? | Valor Fornecido com Base Modificável? |
---|---|---|---|
Elemento mapeado para BO_DATA_AREA | O elemento está mapeado para um campo CLOB que permite modificar os valores fornecidos com a base. | Não | Sim |
Elemento mapeado para BASE_BO_DATA_AREA | O elemento está mapeado para um campo CLOB que impede que os valores fornecidos com a base sejam modificados. | Não | Não |
Característica nivelada | O elemento é definido usando o mecanismo de característica nivelada. | Sim | Não |
Os pontos a seguir destacam informações da tabela acima:
-
A decisão de definir um atributo adicional usando um mapeamento CLOB ou uma característica nivelada depende se a funcionalidade espera que o valor da consulta seja conhecido quando o atributo é necessário (nesse caso, um mapeamento CLOB é apropriado) ou se a funcionalidade espera determinar o valor da busca com base no atributo (nesse caso, uma característica nivelada é apropriada).
-
Quando o produto-base define uma busca extensível com atributos adicionais e pretende fornecer valores de busca extensível de base, ele precisa determinar se as implementações podem ou não atualizar o atributo adicional.
-
Se a resposta for não e o valor estiver mapeado para um CLOB, ele mapeará o valor para a coluna BASE_BO_DATA_AREA. Isso significa que as implementações receberão um erro de incompatibilidade de proprietário quando tentarem alterar o valor. Além disso, a atualização para uma nova versão substituirá o valor pelo valor de base.
-
Se a resposta for sim e o valor estiver mapeado para um CLOB, ele mapeará o valor para a coluna BO_DATA_AREA. Isso significa que as implementações poderão alterar o valor de um registro pertencente à base. Além disso, a atualização para uma nova versão não alterará o valor.
-
No caso de valores mapeados para uma característica, o produto não suporta uma implementação que altere o valor de um registro fornecido com a base. Se o produto quiser oferecer suporte a uma implementação que substitui esse tipo de valor, o objeto de negócios precisará ser desenvolvido com um elemento de "substituição" correspondente (também uma característica nivelada), semelhante à maneira como o produto fornece um campo Descrição de Substituição para oferecer suporte a uma implementação que substitui a descrição do produto-base de um valor de base. Este elemento não será fornecido com nenhum valor e permitirá que uma implementação preencha esse valor.
Observação: Nessa situação, a funcionalidade do produto que usa esse valor deve suprir o valor de substituição.
-
-
Tudo sobre esse detalhe é relevante apenas para os valores de busca extensível fornecidos com a base. Quando uma implementação adiciona valores personalizados a uma busca extensível fornecida com a base, todos os atributos adicionais podem ser preenchidos conforme o necessário.
-
Se uma implementação define um objeto de negócios de busca extensível personalizado e pretende definir um atributo adicional usando um CLOB, não é relevante qual coluna CLOB é utilizada. Tanto BO_DATA_AREA quanto BASE_BO_DATA_AREA fornecem a mesma funcionalidade para os objetos de negócios personalizados.
Capturando uma Senha
Se uma consulta extensível incluir a configuração de uma senha para alguma funcionalidade, o sistema será compatível com a criptografia automática do valor de senha se o esquema mapear a senha para uma característica usando o tipo de característica F1-PWD.