35.13 SELECT_LISTファンクション

このファンクションは、静的選択リストを動的に生成します。このファンクションは、F01からF50のフォーム配列要素を含むフォームを生成するように設計されています。

構文

APEX_ITEM.SELECT_LIST (
    p_idx           IN   NUMBER,
    p_value         IN   VARCHAR2 DEFAULT NULL,
    p_list_values   IN   VARCHAR2 DEFAULT NULL,
    p_attributes    IN   VARCHAR2 DEFAULT NULL,
    p_show_null     IN   VARCHAR2 DEFAULT 'NO',
    p_null_value    IN   VARCHAR2 DEFAULT '%NULL%',
    p_null_text     IN   VARCHAR2 DEFAULT '%',
    p_item_id       IN   VARCHAR2 DEFAULT NULL,
    p_item_label    IN   VARCHAR2 DEFAULT NULL,
    p_show_extra    IN   VARCHAR2 DEFAULT 'YES' )
    RETURN VARCHAR2;

パラメータ

パラメータ 説明
p_idx フォーム要素名。たとえば、1F012F02です。通常、P_IDXパラメータは指定した列の定数です。
p_value 現在の値。この値はP_LIST_VALUESパラメータの値である必要があります。
p_list_values

カンマで区切られた静的値のリスト。表示される値および戻される値はセミコロンで区切られます。

これは、SELECT_LISTファンクションのみで使用可能であることに注意してください。

p_attributes 追加するHTMLパラメータ。
p_show_null NULLの選択を有効にするための追加の選択オプション。値の範囲はYESおよびNOです。
p_null_value ユーザーがNULLのオプションを選択すると戻される値。p_show_nullYESの場合にのみ使用できます。
p_null_text ユーザーがNULLのオプションを選択すると表示される値。p_show_nullYESの場合にのみ使用できます。
p_item_id <input>タグのHTML属性のID。
p_item_label アイテムに対して作成された非表示のラベル。
p_show_extra p_valueの値が選択リストで指定されていない場合でも、 現在の値を表示します。

例1

次の例に、Yesを表示し、Yを戻し、Yをデフォルトとし、F01のフォームのアイテムを生成する静的選択リストを示します。

SELECT APEX_ITEM.SELECT_LIST(1,'Y','Yes;Y,No;N')yn 
FROM emp

例2

次の例では、静的選択リストを生成します:

  • フォーム配列要素F03が生成される(p_idxパラメータ)。
  • 各要素の初期値がempの行のdeptnoの値と等しくなる(p_valueパラメータ)。
  • 選択リストに4つのオプションが含まれる(p_list_valuesパラメータ)。
  • 選択リスト内のテキストが赤色で表示される(p_attributesパラメータ)。
  • NULLのオプションが表示され(p_show_null)、このオプションによってテキストとして-Select-が表示される(p_null_textパラメータ)。
  • 各行に対してHTML ID属性が生成され、各行の#ROWNUM# はカレント行rownumに置換される(p_item_idパラメータ)。(つまり、行4に対してf03_4のIDが生成される。)
  • 各行に対してHTMLラベル要素が生成される(p_item_labelパラメータ)。
  • deptnoの現行の値が、p_list_valuesパラメータに渡されたLOVに含まれていない場合でも表示される(p_show_extraパラメータ)。
SELECT  empno "Employee #", 
    ename "Name",
    APEX_ITEM.SELECT_LIST(
        p_idx           =>   3,
        p_value         =>   deptno,
        p_list_values   =>   'ACCOUNTING;10,RESEARCH;20,SALES;30,OPERATIONS;40',
        p_attributes    =>   'style="color:red;"',
        p_show_null     =>   'YES',
        p_null_value    =>   NULL,
        p_null_text     =>   '-Select-',
        p_item_id       =>   'f03_#ROWNUM#',
        p_item_label    =>   'Label for f03_#ROWNUM#',
        p_show_extra    =>   'YES') "Department"
    FROM  emp;