terça-feira, 21 de novembro de 2017

Utilizando comentários de coluna como texto de ajuda no Default de UI

Olá pessoal,

em diversas instituições as colunas de tabelas já possuem comentários que informam o significado delas.

Por que não utilizar esses comentários no texto de ajuda de itens?

A melhor prática diz que devemos criar primeiro os Defaults de UI antes de criarmos os formulários e relatórios.

Portanto, este tutorial mostrará uma maneira de incluirmos os comentários de coluna de tabela como texto de ajuda.

Como exemplo utilizaremos a tabela EMP.

Para iniciar iremos incluir os comentários nas colunas da tabela EMP conforme abaixo:

(OBS: Execute cada comando no SQL Commands individualmente ou crie e execute um Script no SQL Scripts do Apex)

COMMENT ON COLUMN emp.empno is 'Código do empregado';
COMMENT ON COLUMN emp.ename is 'Nome do empregado';
COMMENT ON COLUMN emp.job is 'Função do empregado';
COMMENT ON COLUMN emp.mgr is 'Gerente do empregado';
COMMENT ON COLUMN emp.hiredate is 'Data de contratação do empregado';
COMMENT ON COLUMN emp.sal is 'Salário bruto do empregado';
COMMENT ON COLUMN emp.comm is 'Comissão de vendas do empregado';
COMMENT ON COLUMN emp.deptno is 'Departamento de alocação do empregado';


Verifique se os comentários foram inseridos corretamente:

SELECT * 
FROM user_col_comments
WHERE table_name = 'EMP'



Agora temos que inserir esses comentários no Default de UI da tabela. Para isso podemos utilizar o seguinte código:

BEGIN

--Comando para sincronizar o default de UI da tabela
APEX_UI_DEFAULT_UPDATE.SYNCH_TABLE (
    p_table_name            => 'EMP');

--Cursor para percorrer os comentários da tabela que são acessíveis pela view Oracle user_col_comments
FOR cur IN (SELECT table_name, column_name, comments
                     FROM user_col_comments
                     WHERE  table_name = 'EMP')
LOOP

--Função da API do Apex para atualizar o help do item correspondente àquela coluna
APEX_UI_DEFAULT_UPDATE.UPD_ITEM_HELP (
    p_table_name            => cur.table_name,
    p_column_name           => cur.column_name,
    p_help_text             => cur.comments);

END LOOP;

END;

Pronto! Agora ao criar um formulário a partir desta tabela, a ajuda (help) do item será o comentário correspondente na tabela.

Veja um exemplo de um formulário e relatório criado após a inserção da ajuda nos defaults de UI na tabela EMP utilizando o comando acima.



Repare que o comentário que originalmente estava na coluna ENAME agora está na ajuda do item.

Os mesmo ocorre para todos os outros itens.

Por hoje é isso! Espero que tenha gostado.

Deixe seu comentário sobre o que achou.

Até a próxima!








2 comentários: