Você pode usar um link de coluna para selecionar o registro e navegar para outra página ou um botão de opção e um botão/link de página para fazer isso. Demonstrarei ambos usando um relatório simples na tabela DEPT.
Método 1:botão de opção
Para o botão de opção, podemos adicionar uma coluna adicional ao relatório usando o
apex_item.radiogroup
função para criar um botão de rádio cujo valor é o DEPTNO:Por padrão, o HTML do radiogroup será escapado por motivos de segurança, o que não é o que você deseja, mas ilustra bem o que está fazendo:
Podemos corrigir isso alterando a propriedade da coluna para "Coluna de relatório padrão":
Agora vemos:
Clicar no botão de opção em qualquer linha a seleciona e desmarca os botões em outras linhas.
Para navegar para outra página com a linha selecionada, precisamos de um botão para enviar a página com uma solicitação especial:
Quando clicado, esse botão enviará a página com um valor de solicitação de "SELECT" (o nome do botão que eu escolhi). Assim, podemos escrever um processo de página ao enviar para disparar quando a solicitação for "SELECT", descobrir qual botão de opção foi selecionado (se houver) e salvar o DEPTNO selecionado em um item oculto chamado P34_DEPTNO. Descobrimos qual botão observando o array APEX
apex_application.g_f01
que escolhemos passando 1
como o primeiro parâmetro para apex_item.radiogroup
:if apex_application.g_f01.count > 0 then
-- Array has been populated i.e. user chose a value
:p34_deptno := apex_application.g_f01(1);
else
-- Array has not been populated i.e. user did not choose a value
:p34_deptno := null;
end if;
Então podemos definir uma ramificação que navega para a nova página se (a) request ='SELECT' e (b) P34_DEPTNO não for nulo.
E é isso. Bastante trabalho, mas se for esse o requisito que o fará.
Método 2:link de coluna
A maneira mais simples é dispensar os botões de opção e apenas transformar uma das colunas do relatório em um link:
Isso transforma a coluna (eu escolhi DNAME) em um link que navega para a nova página levando o valor DEPTNO selecionado com ela:
É isso! Nenhum item oculto, nenhum botão, nenhum processo de página, nenhuma ramificação...