アウトライン・ロード・ユーティリティを使用して、メタデータをリレーショナル・データ・ソースにエクスポートできます。
注: | アウトライン・ロード・ユーティリティを使用してリレーショナル・データ・ソースにデータをエクスポートすることはできません。 |
この機能を使用するユーザーは、リレーショナル・データベース、SQLクエリー言語、およびJDBC接続プロパティをよく理解していることをお薦めします。Planningアプリケーションの場合、これらのプロパティの例は、システム・データベースのHSPSYS_DATASOURCEテーブルにあり、これはデフォルトでは、EPM Systemコンフィグレータで「Planning」の「データベースの構成」を選択するときに作成するリレーショナル・データベースにあります。
アウトライン・ロード・ユーティリティを使用してリレーショナル・データ・ソースにエクスポートするときには、次のコマンドライン・パラメータを使用できます:
/ER[:RDBConnectionPropertiesFileName]
/ERA
/REQ:exportQueryOrKey
/REC:catalog
/RED:driver
/RER:url
/REU:userName
/REP:password
注: | /ERパラメータと/REQパラメータは、どちらか一方しか選択できません。 |
これらのパラメータの詳細は、アウトライン・ロード・ユーティリティのコマンド・ライン・パラメータを参照してください。
エクスポート・クエリーは、INSERT INTO<tableName>[ (column1, column2, ...)] VALUES (property1, property2,...)という形式になります
次に注意してください:
<tableName>は、エクスポートした値が挿入されるテーブルの名前です
(column1, column2, …)は、オプションで指定する列の名前で、値(プロパティ)はテーブルに挿入されます
(property1, property2, …)は厳密には値ではなく、メンバー・プロパティ名(列ヘッダー)です
注: | ヘッダー・レコードとは異なり、メンバー名は次元名ではなく'Member'で指定されます。 |
例:
Planningのエンティティ次元に、「e1's description」という説明を持つ「e1」と、「e11's description」という説明を持つ「e11」との2つのメンバーがあると仮定します。E1はエンティティの下にあり、e11はe1の下にあります。したがって、プランニング次元は次のようになります:
エンティティ
e1
e11
宛先テーブルmy_tableに、column1、column2、column3の3つの列があると仮定します
Insert into my_table values (Member, Parent, Description)を実行すると、my_tableに次の行が追加されます:
E1 e1's description Entity E11 e2's description e1
これは、次と同じです:
Insert into my_table (column1, column2, column3) values (Member, Parent, Description)
注: | テーブルには、指定したプロパティの数以上の列がある必要があります。 |
クエリーに指定できる特殊な演算子として、<columns>と<properties>の2つがあります。<columns>は、テーブルのすべての列名に拡張されます。<properties>は、エクスポートされる次元のすべてのプロパティに拡張され、これは/Mスイッチで示されます。
Insert into my_table values (<properties>)
これはすべてのエンティティ・プロパティをmy_tableにロードします。
これは、次と同じです:
Insert into my_table (column1, column2, ….. column23) values (<properties>)
my_tableの列の数がプロパティの数と等しい場合、次のクエリーは同じ結果になります:
Insert into my_table (<columns>) values (<properties>)
テーブル列の名前を使用してメンバー・プロパティを抽出することもできます。たとえばsample_tableには、Member、Parent、Descriptionの列があります。次のクエリーは、最初の例と同じ結果になります:
Insert into sample_table values (<columns>) Insert into sample_table (<columns>) values (<columns>)
例: リレーショナル・データ・ソースにメタデータをエクスポートするプロパティ・ファイル
/A:App1 /U:admin /ERA /D:Entity /REQ:ENTITY_EXPORT_QUERY1 ENTITY_EXPORT_QUERY1=INSERT INTO DataTable_Entity1 VALUES (Member, Parent, Description, Color) #ENTITY_EXPORT_QUERY1=Insert into PS3ORA.DataTable_Entity1 (Member, Parent, Description, Color) values (Member, Parent, Description, Color)
例: アウトラインからリレーショナル・データ・ソースに別名とともにエクスポートするプロパティ・ファイル
/A:expe /U:admin /ERA /D:Entity /REQ:ENTITY_EXPORT_QUERY1 /C2A:(Member, reallyLongAliasNameForMemberColumnWhichWillReceiveEntityNameFromProperty) ENTITY_EXPORT_QUERY1=Insert into test (reallyLongAliasNameForMemberColumnWhichWillReceiveEntityNameFromProperty, Parent) values (Member, Parent)
前の例について、次のように仮定します:
「Test」テーブルにはMemberとParentの2つの列があり、テーブルは空です。
エンティティ次元には、ルート(Entity)の下に1つのメンバーe1があります。
前のクエリーを実行すると、「テスト」テーブルには1つのエントリが追加されます: