Monday, February 26, 2018

Uso correcto/ Timing Items to Return en Dynamic Actions (AJAX) Oracle Apex

Estaba trabajando con mi amigo Jorge R. y nos encontramos con algo realmente interesante, cuando usamos llamadas PLSQL en un dynamic actions.

Revisando un problema de un combo box , donde se necesitaba usar un valor despues de la seleccion del elemento, usamos un dynamic action y retornamos dos valores, aqui es donde descubrimos que el orden del retorno de las variables es "Muy Importante".

Vamos a revisarlo en un ejemplo:

Tengo una lista, P16_LIST_DEP el cual en mi caso asignare valores a los items, P16_VAL_1 y P16_VAL_2



Como vemos estoy colocando 10 y 20 en nuestros items y retornandolos en "Items to Return".

Adicionalmente, tengo un Dynamic Action que se ejecuta cuando cambia el valor de de P16_VAL_1 y este muestra en consola el valor de P16_VAL_2.



Entonces corremos la aplicacionm cambiare la seleccion de P16_LIST_DEPT y vemos el valor  ....



Vacio ??, pero tenemos un valor en "Items to Return",  si efectivamente, es lo que vimos, y esto ocurre por que cuanndo usamos Dynamic Action estamos usando Ajax.

Entonces estamos retornando primero el valor de P16_VAL_1,  al cambiar el valor se ejecuta el DA pero nuestra variable P16_VAL_2 , aun no tiene valor, asi que muestra vacio.

Ahora cambiare el orden de retorno de los valores y veamos lo que pasa.



Y si ahora lo vemos correctamente:



Lo que paso ahora es que el P16_VAL_2 se coloco en sesion primero, y luego el valor de P16_VAL_1   cuando este cambio, se ejecuto el DA y mostro correctamente en consola el valor de P16_VAL_2.

Asi que, a tener mucho cuidado en el orden de los items que retornamos , si estos ejecutan un DA, con un valor que tambien esta retornando.




Share:

Acerca de mi:

img

Angel O. Flores Torres, soy Ingeniero de Sistemas CIP: 193925 e Ingeniero de Aplicaciones Apex, he trabajado con Oracle Apex 5 y 5.1 desde el 2017, En los ultimos aƱos he desarrollado habilidades en CSS, JavaScript, Jquery y PlSql , I specialize in Oracle APEX (Oracle Application Express )

Followers

Popular Posts