6.28 INSTALLプロシージャ

このプロシージャは、アプリケーションをインストールします。APEX_APPLICATION_INSTALL_INSTALL.SET%プロシージャを使用すると、インストール・パラメータを構成できます。

構文

PROCEDURE INSTALL (
    p_source             IN apex_t_export_files    DEFAULT NULL,
    p_overwrite_existing IN BOOLEAN                DEFAULT FALSE );

パラメータ

パラメータ 説明
p_source

ソース・コード。通常のOracle APEXアプリケーションの場合は単一レコードが含まれ、エクスポート時に分割されたアプリケーションの場合は複数レコードが含まれる(名前、内容)という表。

複数のアプリケーションを渡すことはサポートされていません。

null (デフォルト)の場合は、以前にGET_INFOに渡されたソースをインポートします。

p_overwrite_existing FALSE (デフォルト)の場合は、既存のアプリケーションを上書きするのではなく、エラーが発生します。

発生値

  • WWV_FLOW_IMP_PARSER.RUN_STMT_ERROR: 無効な文がソースに含まれています。
  • SECURITY_GROUP_ID_INVALID: 現在のワークスペースはインストール・ワークスペースと競合しています。
  • WWV_FLOW_API.FLOW_ID_RESERVED_FOR_OTHER_WORKSPACE: そのアプリケーションIDは別のワークスペースで使用されます。
  • WWV_FLOW_API.FLOW_ID_RANGE_RESERVED: このアプリケーションIDは内部使用のために予約されています。
  • WWV_FLOW_API.FLOW_ID_OUT_OF_RANGE: インストールに使用されたアプリケーションIDが有効範囲内ではありません。
  • APPLICATION_ID_RESERVED: そのアプリケーションIDは現在のワークスペースで使用中であり、p_overwrite_existingがfalseに設定されています。

リモートURLからアプリケーションをフェッチし、ワークスペースEXAMPLEで新しいIDと新しいコンポーネントIDオフセットを使用してそれをインストールします。

DECLARE
    l_source apex_t_export_files;
    l_info   apex_application_install.t_file_info;
BEGIN
    l_source := apex_t_export_files (
                    apex_t_export_file (
                         name     => 'f100.sql',
                         contents => apex_web_service.make_rest_request (
                                          p_url         => 'https://www.example.com/apps/f100.sql',
                                          p_http_method => 'GET' )));

    apex_util.set_workspace('EXAMPLE');
    apex_application_install.generate_application_id;
    apex_application_install.generate_offset;
    apex_application_install.install (
         p_source => l_source );
END;