2016-08-24 5 views
1

Webアプリケーション内でPL/SQLを使用しています。ユーザがOWA_UTIL.ident_arrのNULLのようなデフォルトは何ですか?

  • これらのオプションのいずれも、または
  • これらのオプションのいずれか、又は
  • を選択しなくてもよい

    <label><input type="checkbox" name="included_colors" value="red"> Red</label> 
    <label><input type="checkbox" name="included_colors" value="green"> Green</label> 
    <label><input type="checkbox" name="included_colors" value="red"> Purple</label> 
    

    :HTMLフォームの一つは、他の入力要素のうち、チェックボックス基を有します

  • 複数のオプション。ユーザーが1つまたは複数のオプションをチェックした場合、すべてが素晴らしい作品、

    PROCEDURE report(
        included_colors IN owa_util.ident_arr, /*<<<<<<< checkboxes */ 
        region    IN VARCHAR2 DEFAULT NULL 
    ) 
    

受信手順は、チェックボックスのためのowa_util.ident_arrデータ型マッピングを指定します。この「署名」を、持っています。 オプションのユーザーをチェックし、いずれも、Oracleはこのエラーを返していない場合:

PLS-00306: WRONG NUMBER OR TYPE OF ARGUMENTS IN CALL TO 'REPORT'

私は NULLのような可能性を回避するために提出フォーム(すなわち、<input type="hidden" name="included_colors" value="ignore_me" />)に隠しフィールドを追加しますが、その可能性いくつかの望ましくない下流の結果があります。

OWA_UTIL.vc_arrのデフォルト値はnull_vc_arrです。 OWA_UTIL.ident_arrのNULLのようなデフォルトは何ですか?

は私がnull_ident_arrを試してみました...何の喜び:

PLS-00201: identified 'NULL_IDENT_ARR' must be declared

答えて

3

はタイプowa_util.ident_arrのパッケージ変数を宣言していないし、そのようデフォルト値を使用します。

create or replace package test_array as 

    null_ident_arr owa_util.ident_arr; 

    procedure report(
     included_colors IN owa_util.ident_arr default null_ident_arr, /*<<<<<<< checkboxes */ 
     region    IN VARCHAR2 DEFAULT NULL 
); 
end test_array; 
/
+0

私はそれを見ていますが、私の心はこの解決策から100万マイル離れていました。ありがとう、マーティン。 –

+1

@JeromyFrenchあなたは大歓迎です:-) –

関連する問題