Quando você tem uma entidade, mas em alguns casos, de acordo com o valor de algum atributo, você precisa mudar control hints, valores padrão ou lógica de validação, você pode criar um Business Logic Group para ajudá-lo. Usando o Oracle Application Development Framework Documentation (4.8 Defining Business Logic Groups), vamos criar um Business Logic Group para a entidade Employees.
No aplicativo de exemplo (ADFBusinessLogicGroupApp.zip) vamos criar um Business Logic Group que contêm um Business Logic Unit. Este Business Logic Unit irá executar sua lógica de negócio, se o valor do atributo JobId for AD_PRE.
Na janela Applications, clique duas vezes na entidade Employees para criar um Business Logic Group.
Na página General, vá para a seção Business Logic Groups e clique no ícone Adicionar.
Selecione JobId como Group Discriminator Attribute e defina JobIdGroup como Group Name.
Clique em OK.
Nós criamos o grupo, agora podemos adicionar Business Logic Units para ele.
Na janela Applications, clique com o botão direito na entidade Employees e escolha New Entity Business Logic Unit.
Na caixa de diálogo Create Business Logic Unit, defina AD_PRES como Unit Name e clique em OK.
Este Business Logic Unit irá identificar o conjunto de lógica de negócios para funcionários com o atributo JobId setado como AD_PRES.
Agora podemos redefinir a lógica do negócio.
No arquivo Employees_JobIdGroup_AD_PRES, clique na guia de navegação General.
Selecione os atributos Salary, CommissionPct e ManagerId, e clique no botão Override.
Depois de substituir os atributos, podemos editá-los.
Estamos limitados a fazer modificações apenas em control hints, validadores e valores padrão.
Selecione o atributo Salary e clique na guia UI Hints.
Altere a opção Display para Hide.
Desta forma, o atributo Salary não será mostrado para este grupo.
Repita os passos anteriores para os atributos CommissionPct e ManagerId.
Clique na guia Business Rules. Clique com o botão direito em Entity Validators e escolha New Validator.
Altere Type para List, Attribute para DepartmentId, e adicione 10 e 90 em List of Values.
Na aba Failure Handling, insira uma mensagem de erro e clique em OK.
Salve tudo.
Clique com o botão direito no Application Module e escolha Run.
No Oracle ADF Model Tester, podemos testar nossas lógicas de negócio.
Funcionários com o atributo JobId setado como AD_PRES não mostram os atributos Salary, CommissionPct e ManagerId.
Outros funcionários mostram os atributos.
Nós vamos receber um erro, se tentarmos mudar o valor do atributo DepartmentId para Marketing (20).
Desta forma, você pode continuar personalizando suas entidades de acordo com o valor de
Waslley Souza é Consultor Oracle com foco em tecnologias Oracle Fusion Middleware e SOA. Pós-graduado em Engenharia de Software (SOA) e bacharel em Ciências da Computação. Certificado Oracle WebCenter Portal, Oracle ADF e Java. Siga Waslley Souza em seu blog.
Este artigo foi revisto pela equipe de produtos Oracle e está em conformidade com as normas e práticas para o uso de produtos Oracle.