Inicio > ADF / Java > ADF tips: Mostrar el registro seleccionado en un af:tree

ADF tips: Mostrar el registro seleccionado en un af:tree

ADF tips

En ocasiones para presentar la estructura de nuestros datos utilizamos un af:tree ya que es una forma simple y elegante de poder mostrar el maestro y el detalle en un mismo componente. En este ADF tip vais a poder ver cómo mostrar el registro seleccionado es un af:tree basado en un view object recursivo.

Supongamos que tenemos esta estructura basada en la tabla empleados del schema hr de Oracle.

1

Lo primero que tenemos que hacer es arrastrar la vista de la paleta de data controls a nuestra página para crear el árbol.

2

 

Una vez creado el árbol, para mostrar el registro seleccionado, añadiremos un formulario basado en la vista de empleados. Aquí tenemos el problema: ¿en qué instancia de la vista basamos el formulario? Si lo hacemos en la instancia padre sólo se mostrará en el formulario el registro padre cuando seleccionemos alguno de los hijos.

3

Para solucionar este problema, y que se muestre el registro correspondiente, lo que vamos a hacer es añadir en el AppModule otra instancia de la vista EmployeesView. En este caso la he llamado ‘EmployeesDisplayVO‘.

4

El siguiente paso es crear en el pageDef asociado a nuestra página un Action Binding de la operación ‘setCurrentRowWithKey’ de la instancia que acabamos de crear ‘EmployeesDisplayVO’.

5

 

El último paso es crear un Selection Listener personalizado en un bean y asociarlo al af:tree.

52

 

En este método lo que vamos a hacer es, a parte de ejecutar el método makeCurrent del modelo del árbol, obtener las Keys seleccionadas y ejecutar el método setCurrentRowWithKey que hemos creado en el pageDef.

La key que tenemos que utilizar para llamar al método es la última de la lista keyList.get(keyList.size() – 1) ya que, por ejemplo, si seleccionamos un registro del segundo nivel, la lista de claves contendrá en primero la clave del padre y después la clave del hijo.

6

Si volvemos a ejecutar la aplicación y seleccionamos cualquier registro veremos que se muestra correctamente en el formulario.

7

  1. Aún no hay comentarios.
  1. No trackbacks yet.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: