14.6 ADD_HIGHLIGHTプロシージャ

このプロシージャは、ハイライト・コレクションにハイライトを追加します。ハイライト・コレクションは、行または行の列を強調表示するためにEXPORTコールに渡すことができます。ハイライト・コレクションが渡されなかった場合(または空のハイライト・コレクションが渡された場合)、ハイライトはエクスポートにレンダリングされません。

このプロシージャにはハイライト列が必要です。値は、ハイライトを適用する必要がある場合はID、それ以外の場合はNULLです。

構文

PROCEDURE ADD_HIGHLIGHT (
  p_highlights        IN OUT NOCOPY t_highlights,
  p_id                IN            pls_integer,
  p_value_column      IN            apex_exec.t_column_name,
  p_display_column    IN            apex_exec.t_column_name DEFAULT NULL,
  p_text_color        IN            t_color                 DEFAULT NULL,
  p_background_color  IN            t_color                 DEFAULT NULL );

パラメータ

パラメータ 説明
p_highlights ハイライト・コレクション。
p_id ハイライトのID。
p_value_column ハイライトIDを確認する列の名前。
p_display_column ハイライトを表示する列の名前。行のハイライトを空のままにします。
p_text_color テキストの16進数の色コード(#FF0000)。
p_background_color 背景の16進数の色コード(#FF0000)。

DECLARE
    l_highlights     apex_data_export.t_highlights;
    l_context        apex_exec.t_context;
    l_export         apex_data_export.t_export;
BEGIN
    apex_data_export.add_highlight(
        p_highlights          => l_highlights,
        p_id                  => 1,
        p_value_column        => 'HIGHLIGHT1',
        p_display_column      => 'SAL',
        p_text_color          => '#FF0000' );

    l_context := apex_exec.open_query_context(
        p_location    => apex_exec.c_location_local_db,
        p_sql_query   => 'select empno, 
                                ename, 
                                sal,
                                case when sal >= 3000 then 1 end as HIGHLIGHT1
                            from emp' );

    l_export := apex_data_export.export (
                        p_context      => l_context,
                        p_format       => apex_data_export.c_format_pdf,
                        p_highlights   => l_highlights );

    apex_exec.close( l_context );

    apex_data_export.download( p_export => l_export );

EXCEPTION
    when others THEN
        apex_exec.close( l_context );
        raise;
END;