Speedup of cascading AJAX lovs

I have implemented a small improvement into my Generic solution for cascading lovs.

If you have a hierarchy of cascading lovs as I have it on my example page, the old version did an AJAX call for all cascading lovs and there cascading lovs, … each time a value was selected. But normally these calls will always result in an empty select list, because the value of the parent lov hasn’t been set yet.

The new version will only ask the server for new values if all values which are used by the lov are entered. If there is an empty value, it will just clear the lov values.

In the case if you have a more complex lov which does some defaulting and where it’s not necessary to fill out the parent value, you can use the $APEXLIB_ALWAYS_REFRESH$ hint in the comment text to enforce that the lov is always populated from the database. Use this hint only if you have for example a similar where clause in your lov.

WHERE DEPTNO = NVL(:P4_DEPTNO, 10)

Version History:v0.09 18-December-2006

  • CR# 1617835: ApexLib_Lov: Performance – don’t do a server roundtrip if it isn’t necessary.
  • Files changed:
    • ApexLib.js
    • ApexLib_views_for_flows_schema.sql
    • ApexLib_views_for_userschema.sql
    • ApexLib_Lov.pks
    • ApexLib_Lov_for_flows_schema.sql
    • ApexLib_Lov_for_userschema.sql