15.7 ADD_ERRORプロシージャのシグネチャ5

このプロシージャは、テキストを共有コンポーネントで定義したとおりに表示するために使用される、表形式のフォームのエラー・スタックにエラー・メッセージを追加します。このエラー・メッセージはすべての表示位置に表示できます。検証または処理時にコールして、1つ以上のエラーをエラー・スタックに追加することができます。

ノート:

このプロシージャは、Application Expressアプリケーションが最後の検証または処理を行う前にコールする必要があります。そのようにしないと、apex_error.c_on_error_pageの表示位置が指定されている場合を除いて、エラーは無視されます。

構文

APEX_ERROR.ADD_ERROR (
    p_error_code          IN VARCHAR2,
    p0                    IN VARCHAR2 DEFAULT NULL,
    p1                    IN VARCHAR2 DEFAULT NULL,
    p2                    IN VARCHAR2 DEFAULT NULL,
    p3                    IN VARCHAR2 DEFAULT NULL,
    p4                    IN VARCHAR2 DEFAULT NULL,
    p5                    IN VARCHAR2 DEFAULT NULL,
    p6                    IN VARCHAR2 DEFAULT NULL,
    p7                    IN VARCHAR2 DEFAULT NULL,
    p8                    IN VARCHAR2 DEFAULT NULL,
    p9                    IN VARCHAR2 DEFAULT NULL,
    p_escape_placeholders IN BOOLEAN  DEFAULT TRUE,
    p_additional_info     IN VARCHAR2 DEFAULT NULL,
    p_display_location    IN VARCHAR2,
    p_region_id           IN NUMBER,
    p_column_alias        IN VARCHAR2 DEFAULT NULL,
    p_row_num             IN NUMBER );

パラメータ

表15-5 ADD_ERRORプロシージャのシグネチャ5のパラメータ

パラメータ 説明

p_error_code

共有コンポーネントのテキスト・メッセージの名前。

p0からp9

テキスト・メッセージに定義された%0から%9までのプレースホルダの値。

p_escape_placeholders

TRUEに設定すると、p0からp9で指定された値はsys.htf.escape_scでエスケープされてから、テキスト・メッセージのプレースホルダを置換します。FALSEに設定すると、値はエスケープされません。

p_additional_info

エラーがエラー・ページに表示される場合に必要なその他のエラー情報。

p_display_location

エラー・メッセージの表示位置を指定します。p_display_locationに定義された定数を使用します。結果の型に使用される定数および属性を参照してください。

p_region_id

現在ページの表形式フォーム・リージョンのID。IDは、ビューAPEX_APPLICATION_PAGE_REGIONSから読み取ることができます。

p_column_alias

apex_error.c_inline_with_fieldまたはapex_error.c_inline_with_field_and_notifが表示位置として使用されている場合に強調表示される、p_region_idに定義された表形式フォームの列エイリアス名。

p_row_num

エラーが発生した表形式フォームの行数。

この例では、テキスト・メッセージに格納されているカスタム・エラー・メッセージをエラー・スタックに追加する方法を示しています。表形式フォームのCUSTOMER_ID列が強調表示されます。エラー・メッセージは通知にインラインで表示されます。この例は、検証または処理の際に使用できます。

apex_error.add_error (
    p_error_code       => 'INVALID_CUSTOMER_ID',
    p0                 => l_customer_id,
    p_display_location => apex_error.c_inline_with_field_and_notif,
    p_region_id        => l_region_id,
    p_column_alias     => 'CUSTOMER_ID',
    p_row_num          => l_row_num );