35.18 SWITCHファンクション

このファンクションは、フリップ・トグル・アイテムを動的に生成します。オン/オフ値とラベルが指定されない場合は、Yes/Noトグルが表示されます。このファンクションは、F01からF50のフォーム配列要素を含むフォームを生成するように設計されています。

構文

APEX_ITEM.SWITCH (
    p_idx           IN NUMBER,
    p_value         IN VARCHAR2,
    p_on_value      IN VARCHAR2 DEFAULT 'Y',
    p_on_label      IN VARCHAR2 DEFAULT 'Yes',
    p_off_value     IN VARCHAR2 DEFAULT 'N',
    p_off_label     IN VARCHAR2 DEFAULT 'No',
    p_item_id       IN VARCHAR2 DEFAULT NULL,
    p_item_label    IN VARCHAR2,
    p_attributes    IN VARCHAR2 DEFAULT NULL )
    RETURN VARCHAR2;

パラメータ

パラメータ 説明
p_idx フォーム要素名。たとえば、1はF01、2はF02です。通常、P_IDXパラメータは指定した列の定数です。
p_value フォーム要素の現行の値。
p_on_value ユーザーが「オン」オプションを選択した場合のアイテムの値。
p_on_label 「オン」オプションの表示テキスト。
p_off_value ユーザーが「オフ」オプションを選択した場合のアイテムの値。
p_off_label 「オフ」オプションの表示テキスト。
p_item_id <input>タグのHTML属性のID。一意になるように、一部の文字列と行番号との連結を試みます。
p_item_label アイテムに対して作成された非表示のラベル。
p_attributes フォーム・アイテムで使用する追加のHTML属性。

次の例では、APEX_ITEM.SWITCHを使用して、次に示す条件でYes/Noのフリップ・トグル・アイテムを生成する方法を示します。

  • フォーム配列要素F01が生成される(p_idxパラメータ)。
  • 各要素の初期値はNに等しくなります(p_valueパラメータ)。
  • 各行に対してHTML ID属性が生成され、現在の行番号が一意に識別されます(p_item_idパラメータ)。行2に対しては'IS_MANAGER_2'のIDが1つ生成されます。
  • 各行に対してHTMLラベル要素が生成される(p_item_labelパラメータ)。
SELECT
  ename "Name",
  APEX_ITEM.SWITCH ( 
       p_idx => 1,
       p_value => 'N',
   p_item_id => 'IS_MANAGER_'||rownum,
       p_item_label => apex_escape.html(ename)||': Is Manager' )
"Is Manager"
FROM emp;