28.1 GET_APPLICATIONファンクション

このファンクションは、指定されたアプリケーションをエクスポートし、オプションでアプリケーション定義を複数のファイルに分割します。オプションのp_with_% parametersを使用して、エクスポートに追加情報を含めることができます。

構文

APEX_EXPORT.GET_APPLICATION (
    p_application_id            IN NUMBER,
    p_type                      IN t_export_type    DEFAULT c_type_application_source,
    p_split                     IN BOOLEAN          DEFAULT FALSE,
    p_with_date                 IN BOOLEAN          DEFAULT FALSE,
    p_with_ir_public_reports    IN BOOLEAN          DEFAULT FALSE,
    p_with_ir_private_reports   IN BOOLEAN          DEFAULT FALSE,
    p_with_ir_notifications     IN BOOLEAN          DEFAULT FALSE,
    p_with_translations         IN BOOLEAN          DEFAULT FALSE,
    p_with_pkg_app_mapping      IN BOOLEAN          DEFAULT FALSE,
    p_with_original_ids         IN BOOLEAN          DEFAULT FALSE,
    p_with_no_subscriptions     IN BOOLEAN          DEFAULT FALSE,
    p_with_comments             IN BOOLEAN          DEFAULT FALSE,
    p_with_supporting_objects   IN VARCHAR2         DEFAULT NULL,
    p_with_acl_assignments      IN BOOLEAN          DEFAULT FALSE,  
    p_components                IN apex_t_varchar2  DEFAULT NULL,
    p_with_audit_info           IN t_audit_type     DEFAULT NULL,
    p_with_runtime_instances    IN apex_t_varchar2  DEFAULT NULL )
    RETURN apex_t_export_files;

パラメータ

パラメータ 説明
p_application_id アプリケーションID。
p_split TRUEの場合、定義を個別の要素に分割して、各要素を別々のファイルに格納できます。FALSEの場合、結果は単一のファイルです。
p_type

実行するエクスポート・タイプのカンマ区切りのリストは、次のとおりです。

  • APPLICATION_SOURCE: 渡された他のパラメータを使用してAPEXアプリケーションをエクスポートします。
  • EMBEDDED_CODE: SQL、PL/SQL、Javascriptなどのコードをエクスポートします。EMBEDDED_CODEが選択されている場合、APEXは他のすべてのオプションを無視します。
  • CHECKSUM-SH1: IDに関係ない、様々なインスタンスおよびワークスペースにわたり比較できる、SHA1チェックサムをエクスポートします。
  • CHECKSUM-SH256: IDに関係ない、様々なインスタンスおよびワークスペースにわたり比較できる、SHA-256チェックサムをエクスポートします。
  • READABLE_YAML: 読取り可能なアプリケーション・メタデータをYAML形式でエクスポートします。

パラメータp_typeAPPLICATION_SOURCEが含まれ、CHECKSUM-SH1またはCHECKSUM-SH256が含まれている場合、APEXは、アプリケーション・ソース・ファイルの末尾、または分割エクスポートの場合は最上位のinstall.sqlファイルの末尾に、全体のチェックサムを含むコメントを含む行を追加します。

p_with_date TRUEの場合、結果にエクスポートの日時が含まれます。
p_with_ir_public_reports TRUEの場合、ユーザーが保存したパブリック・レポートが含まれます。
p_with_ir_private_reports TRUEの場合、ユーザーが保存したプライベート・レポートが含まれます。
p_with_ir_notifications TRUEの場合、レポート通知が含まれます。
p_with_translations TRUEの場合、アプリケーション翻訳のマッピング、および翻訳リポジトリから取得したすべてのテキストが含まれます。
p_with_pkg_app_mapping

ノート: このパラメータは廃止されています。

TRUEの場合、インストール済のパッケージ・アプリケーションがパッケージ・アプリケーション定義への参照とともにエクスポートされます。FALSEの場合、それらは通常のアプリケーションとしてエクスポートされます。

p_with_original_ids TRUEの場合、アプリケーションのインポート時のIDでエクスポートされます。
p_with_no_subscriptions FALSEの場合、コンポーネントにはサブスクリプション参照が含まれます。
p_with_comments TRUEの場合、開発者コメントが含まれます。
p_with_supporting_objects

Yの場合、サポートされているオブジェクトがエクスポートされます。

Iの場合、インポート時に自動的にインストールされます。

Nの場合、サポートされているオブジェクトはエクスポートされません。

NULLの場合、アプリケーションの「エクスポートに含める」デプロイ値が使用されます。

p_with_acl_assignments TRUEの場合、ACLユーザー・ロール割当てがエクスポートされます。
p_components NULL以外の場合、指定されたコンポーネントのみがエクスポートされます(配列要素の形式はtype:nameである必要があります。たとえば、PAGE:42またはMESSAGE:12345)。

エクスポート可能なコンポーネントについては、ビューAPEX_APPL_EXPORT_COMPSを参照してください。

%を使用して、指定されたタイプのすべてのコンポーネントをエクスポートすることを指定します。たとえば、LOV:%は、アプリケーションに含まれるすべてのLOVをエクスポートします。

p_with_audit_info

含める監査情報の詳細を指定します:

  • NULL: エクスポートでは、すべての監査情報が除外されます。
  • NAMES_AND_DATES: エクスポートには、「作成日」、「作成者」、「更新日」、「更新者」の値(存在する場合)が含まれます。
  • DATES_ONLY: エクスポートには、「作成日」および「更新日」の値(存在する場合)が含まれます。ユーザー名は除外されます。
p_with_runtime_instances ランタイム・インスタンス・データをエクスポートするコンポーネントを含む配列。たとえば、WORKFLOWを指定すると、すべてのワークフロー・インスタンスがアプリケーションとともにエクスポートされます。

戻り値

apex_t_export_fileの表。コール元がp_split=>trueをファンクションに渡す場合を除き、結果は単一のファイルになります。

例1

このSQLclコード・フラグメントは、アプリケーション100の定義をファイルf100.sqlにスプールします。

variable name varchar2(255)
variable contents clob
DECLARE
   l_files apex_t_export_files;
BEGIN
   l_files := apex_export.get_application(p_application_id => 100);
   :name := l_files(1).name;
   :contents := l_files(1).contents;
END;
/
set feed off echo off head off flush off termout off trimspool on
set long 100000000 longchunksize 32767
col name new_val name
select :name name from sys.dual;
spool &name.
print contents
spool off

例2

次の例は、p_type => 'APPLICATION_SOURCE,CHECKSUM-SH1'でエクスポートされたinstall.sqlファイルを示しています

prompt --install
@@application/set_environment.sql
@@application/delete_application.sql
...snip...
@@application/deployment/buildoptions.sql
@@application/end_environment.sql
-- Application Checksum SH1:jpcliMUZZDVVBI1MKpyyAfPBDww=