アウトライン・ロード・ユーティリティを使用して、メタデータをリレーショナル・データ・ソースにエクスポートできます。
注意: | アウトライン・ロード・ユーティリティを使用してリレーショナル・データ・ソースにデータをエクスポートすることはできません。 |
この機能を使用するユーザーは、リレーショナル・データベース、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:AliasLabel AliasLabel:(AliasTableName, Alias: reallyLongAliasTableName30Char) ENTITY_EXPORT_QUERY1=Insert into Test(Member, Parent, AliasTableName) values (Member, Parent, Alias: reallyLongAliasTableName30Char)
前の例について、次のように仮定します:
「Test」表にはMember、Parent、AliasTableNameの3つの列があり、表は空です。
エンティティ・ディメンションには、ルート(Entity)の下に1つのメンバーe1があります。
前の問合せを実行すると、「Test」表には1つのエントリが追加されます:
注意: | /C2Aまたはラベル・スイッチ(あるいはその両方)を使用して、Oracleリレーショナル表の30文字の列名制限に対処できます。たとえば、別名: reallyLongAliasTableName30Charは30文字よりも長く、Oracleリレーショナル表の列名として使用できません。 |