- APEX 24.2の複数選択では、選択された項目の個数が表示されるようになりました。
- APEX 24.2のポップアップLOVでは検索の設定が変更され、1つ選択、複数選択およびコンボボックスと同じ設定になりました。
APEX 24.2では以下のように動作します。APEX 24.2では国旗のアイコンが追加されているため、国の選択時に表示できます。複数選択で数値が表示されています。また、ポップアップLOVは、検索が複数選択と同じくらい速くなっています。
APEX 24.1では、同様に作成したアプリケーションでも国旗がない分、寂しい感じがします。複数選択では数値は表示されず、ポップアップLOVの検索も若干遅いです。
アプリケーションが使用するデータ・ソースとして、サンプル・データセットの国をインストールします。
複数選択とポップアップLOVで使用するLOVを、共有コンポーネントとして作成します。
新規に空のAPEXアプリケーションを作成し、共有コンポーネントのLOVを開きます。
作成をクリックします。
名前はLOV_COUNTRIESとします。ソースとしてSQL問合せを設定する予定なので、タイプはDynamicです。
次へ進みます。
ソース・タイプにSQL問合せを選択し、SQL SELECT文を入力に以下を記述します。列REGION_NAMEはグループに使用します。列ICONは国旗のアイコンですが、APEX 24.2でのみ意味を持ちます。
select
c.country_id
, c.name country_name
, c.country_code
, c.iso_alpha2
, c.capital capital_name
, c.population
, r.name region_name
, s.name sub_region_name
, 'fa-flag-' || lower(c.iso_alpha2) icon
from eba_countries c join eba_country_regions r on c.region_id = r.id
join eba_country_sub_regions s on c.sub_region_id = s.id
次へ進みます。
以上で作成します。
作成されたLOV_COUNTRIESを開きます。
列のマッピングのグループにREGION_NAME、アイコンにICONを割り当てます。
数をクリックすると、選択されている要素が表示されます。
追加表示列の列の選択をクリックします。
グループやアイコンなど、列のマッピングに含めた列は必ず追加表示列に含めます。今回の例ではREGION_NAMEとICONです。
更新をクリックします。
列REGION_NAMEとICONはグループとアイコンとして使用するため追加表示列に含めますが、表示や検索の対象にはしません。表示可能と検索可能については、いいえにします。
以上で変更の適用をクリックします。
LOVの準備ができました。
最初に複数選択の機能拡張について確認します。
APEX 24.2では、値の表示形式がカンマ区切りリストのとき、選択されている数が表示されるようになりました。
通常は、設定のデフォルトの使用がオンでも、この数値は表示されます。
コンポーネント設定の複数選択を開きます。
APEX 24.2のポップアップLOVには、プロパティに検索の項目が新設されました。
ポップアップLOVについても、検索の設定はこれらの新しいコンポーネントと同じになりました。
ポップアップLOVより後に追加されたタイプである、コンボボックス、1つ選択および複数選択は、すべてプロパティとして検索を持っています。
以下は、複数選択の例です。
そのためAPEX 24.2以前にあった、入力時に検索は無くなりました。
代わりに、他のコンポーネントと同じく検索時にフェッチが追加されています。
今回の記事は以上になります。
簡単なアプケーションですが、今回作成したアプリケーションのエクスポートを以下に置きました。
https://github.com/ujnak/apexapps/blob/master/exports/apex242-new-feature-select-many-popup-lov.zip
Oracle APEXのアプリケーション作成の参考になれば幸いです。
完