Mapデータ領域は、以下の2種類のデータを使用します。
空間データ
空間データは、マップ要素を定義する座標の集合です。各マップレイヤーは、多角形、線、ポイントのいずれかのタイプの空間データを持つ必要があります。
空間データはマップに埋め込むか、マップレイヤーにリンクします。両者の唯一の違いは、空間データをマップに埋め込んだ場合、プロジェクト間またはマシン間でレポートを移動するときに他のファイルの所在を確かめなくてよいことです。
-
埋め込み空間データ:
埋め込み空間データは以下のものを参照できます。
- 埋め込みシェープファイルまたはデータセット: [レイヤーデータ]プロパティ設定ダイアログで[レポートに埋め込まれたデータ]オプションを使用するかマップウィザードで[シェープファイルを読み込む]オプションを使用してシェープファイルから空間データをインポートすると、シェープファイルがマップに埋め込まれます。同様に、レポートデータセットを使用してマップレイヤーに空間データを提供している場合、レイヤーペインに表示される[空間データの埋め込み]オプションを使用して空間データをマップに埋め込むことができます。空間データをマップに埋め込む方法については、レイヤーの使用を参照してください。
- カスタムデータ: 空のレイヤーをマップに追加し、LayerDesignerコレクションエディターで空間データを手動で入力すると、入力したデータが自動的にマップに埋め込まれます。
-
外部空間データ:
外部空間データは以下のものを参照できます。
- リモートまたはローカルのシェープファイル: [レイヤーデータ]プロパティ設定ダイアログで[シェープファイル(.shp)へのリンク]オプションを使用するか[プロパティ]ウィンドウでFileプロパティを使用してローカルまたはリモートのシェープファイルの場所を指定すると、シェープファイルがマップレイヤーにリンクされます。ただし、シェープファイルは引き続き外部ソースとして参照されるので、レポートをプロジェクト間またはマシン間で移動するときはシェープファイルも一緒に移動する必要があります。
- レポートデータセット: レポートデータセットを使用して空間データをマップレイヤーに提供する場合に空間データを埋め込まないとき、それは引き続き外部ソースとして参照されます。したがって、レポートをプロジェクト間またはマシン間で移動するときは依存データベースファイルも一緒に移動する必要があります。
ActiveReportsでは、いくつかの方法で空間データをマップに追加できます。マップウィザードを使用してシェープファイルからデータを追加する方法と、[レイヤーデータ]プロパティ設定ダイアログのオプションを使用する方法があります。また、[プロパティ]ウィンドウから空間データを追加することもできます。
マップウィザードを使用して空間データを追加するには
- Visual Studioのツールボックスから、Mapコントロールをドラッグしてデザイナ面にドロップします。
- [マップテンプレートの選択]ウィザードが表示されたら、[シェープファイルを読み込む]を選択します。
- [開く]ダイアログが表示されたら、.shpファイルと.dbfファイルを含むフォルダーに移動して.shpファイルを選択し、[マップの解像度]スライダーを使用してベクトルデータを単純化してから、[開く]をクリックします。
この方法を使用すると、シェープファイルに保存された空間データが自動的にインポートされ、関連するレイヤーがマップコントロールに追加されます。
[レイヤーデータ]プロパティ設定ダイアログを使用して空間データを追加するには
[レイヤーデータ]プロパティ設定ダイアログには、空間データを追加するために以下のオプションが用意されています。[レイヤーデータ]プロパティ設定ダイアログの詳細については、「マップ」を参照してください。
|
-
[レポートに埋め込まれたデータ]: このオプションは、シェープファイルから空間データを追加する場合に使用します。必要に応じて、カスタムの空間データフィールドを追加することもできます。
[レポートに埋め込まれたデータ]オプションを使用してシェープファイルから空間データを追加するには
- [レイヤーデータ]プロパティ設定ダイアログの[全般]ページで[レポートに埋め込まれたデータ]オプションを選択し、[ファイルの選択]ボタンをクリックします。
- [ファイルを開く]ダイアログが表示されたら、.shpファイルと.dbfファイルを含むフォルダーに移動します。
- .shpファイルを選択し、[マップの解像度]スライダーを使用してベクトルデータを単純化してから、[開く]をクリックします。シェープファイルから追加された空間データフィールドがフィールドリストに読み込まれます。
- フィールドリストで、[追加](+)ボタンをクリックして空の空間データフィールドを追加します。
- 新しく追加した空間データフィールドをリストで選択し、[フィールド名]にフィールドの名前を入力します。
- [フィールドの型]で、新しく追加した空間データフィールドの型を設定します。
- [OK]をクリックしてダイアログを閉じます。
|
メモ: レイヤー上の新しい空間データフィールドを適用するためには、追加されたマップレイヤーの[LayerDesignerコレクションエディター]ダイアログで、多角形、ポイント、線などの各マップ要素で使用する新しい空間データフィールドの値を提供する必要があります。 |
-
[シェープファイル(.shp)へのリンク]: このオプションは、単にシェープファイルから空間データを追加するだけで、変更も追加も加えない場合に使用します。
[シェープファイル(.shp)へのリンク]オプションを使用してシェープファイルから空間データを追加するには
- [レイヤーデータ]プロパティ設定ダイアログの[全般]ページで[シェープファイル(.shp)へのリンク]オプションを選択し、[ファイルの選択]ボタンをクリックします。
- [ファイルを開く]ダイアログが表示されたら、.shpファイルと.dbfファイルを含むフォルダーに移動します。
- .shpファイルを選択して[開く]をクリックします。
- [OK]をクリックしてダイアログを閉じます。
-
[データセットの空間フィールド]: このオプションは、空間データフィールドが格納されたデータセットがあり、そのデータセットからマップに空間データを提供する場合に使用します。分析データの一致フィールドを設定することなく、データセットのデータフィールドを直接使用してマップレイヤー上にデータを表示できます。したがって、これは分析データ用と空間データ用のデータセットを別々に設定できる追加オプションにもなります。
データセットから空間データを追加するには
- [レイヤーデータ]プロパティ設定ダイアログの[全般]ページで[データセットの空間フィールド]オプションを選択します。
- [データセット]に、データセットの名前を設定します。
-
[フィールド名]に、空間データを含むデータフィールド名を入力します。
|
注意: 空間データフィールドの名前だけを入力してください。カッコや"="記号は含めないでください。 |
- [OK]をクリックしてダイアログを閉じます。
-
[分析データ領域の空間フィールド]: このオプションは、分析データをレイヤーに追加するために使用するデータセットと同じデータセット内の空間データフィールドを使用する場合に使用します。このオプションを使用するには、まず分析データのデータセットを設定してから、そのデータセット内の空間データフィールドを使用して空間データをマップレイヤーに提供する必要があります。
分析データから空間データを追加するには
-
Mapコントロールで分析データを構成します。分析データの追加方法については、下記のドロップダウンセクションを参照してください。
- [レイヤーデータ]プロパティ設定ダイアログの[全般]ページで[分析データ領域の空間フィールド]オプションを選択します。
-
[フィールド名]に、空間データを含むデータフィールド名を入力します。
|
注意: 空間データフィールドの名前だけを入力してください。カッコや"="記号は含めないでください。 |
- [OK]をクリックしてダイアログを閉じます。
[プロパティ]ウィンドウを使用して空間データを追加するには
以下の手順は、少なくとも1つのマップデータレイヤーを含むMapコントロールがすでにデザイナ面に配置されていることを前提とします。Mapコントロールにレイヤーを追加する方法については、レイヤーの使用を参照してください。
- Mapコントロールを選択して[プロパティ]ウィンドウに移動し、Layers(コレクション)プロパティをクリックしてから、表示された省略記号ボタンをクリックします。
-
[LayerDesignerコレクションエディター] が表示されたら、[メンバー]リストで使用するマップデータレイヤーを選択し、 SpatialData プロパティを展開します。
-
[Type]で、以下のサポートされているオプションからレイヤーの空間データソースを選択します。
- [Embedded]: このオプションは、カスタムの空間データをマップデータレイヤーに追加する場合に使用します。そのためには、まずMapFieldDefinitionDesignerコレクションエディターを使用して埋め込み空間データ用の空間データフィールドを追加します。MapFieldDefinitionDesignerコレクションエディターにはFieldDefinitionsプロパティからアクセスできます。次に、使用するレイヤーに応じてPolygonDesignerコレクションエディター、PointsDesignerコレクションエディター、LineDesignerコレクションエディターのいずれかを使用して、空間データ(ポイント、多角形、または線)を追加します。これらのコレクションエディターには、SpatialData - Polygonsプロパティ、SpatialData - Pointsプロパティ、またはSpatialData - Linesプロパティからアクセスできます。
-
[File]: このオプションはシェープファイルから空間データを追加する場合に使用します。 Sourceプロパティを使用して、シェープファイルの場所を指定します。
|
メモ: 指定した場所には形状形式(.shp)ファイルと属性形式(.dbf)ファイルが存在している必要があります。 |
- DataSet: このオプションは、空間データフィールドが格納されたデータセットがあり、そのデータセットからマップに空間データを提供する場合に使用します。このオプションは、[レイヤーデータ]プロパティ設定ダイアログの[データセットの空間フィールド]オプションと同等です。SpatialData - DataSetNameプロパティを使用してデータセットの名前を指定し、SpatialData - SpatialFieldプロパティを使用して空間データを含むデータフィールドを指定します。
- DataRegion: このオプションは、空間データフィールドが格納されたデータセットがあり、そのデータセットからマップに空間データを提供する場合に使用します。このオプションは、[レイヤーデータ]プロパティ設定ダイアログの[分析データ領域の空間フィールド]オプションと同等です。LayerData - DataSetNameプロパティを使用してデータセットの名前を指定し、SpatialData - VectorDataプロパティを使用して空間データを含むデータフィールドまたは式を指定します。
- [OK]をクリックしてダイアログを閉じます。
分析データ
分析データは、マップ上で可視化するデータ(都市の観光名所や地域別の製品売上など)です。分析データは、[レイヤーデータ]プロパティ設定ダイアログの[一致させるフィールド]ボックスで一致フィールドを指定することにより、マップ要素に関連付けることができます。[レイヤーデータ]プロパティ設定ダイアログの[一致させるフィールド]ボックスでは、1つ以上のフィールドを使用できます。つまり、空間データフィールドごとに一意の分析データフィールドを指定する必要があります。分析データを指定するかどうかは任意です。
以下のタイプのデータソースから分析データを取得できます。
- データセットフィールド: データセットのフィールド。
- 空間データソースフィールド: 空間データソースのフィールド。たとえば、ESRIシェープファイルに分析データと空間データの両方が含まれている場合がよくあります。空間データソースのフィールド名は、フィールドのドロップダウンリストで#記号が付いています。
- マップ要素の埋め込みデータ: 多角形、線、またはポイントをレポートに埋め込んだ後、マップ要素のデータフィールドを選択してカスタム値を定義できます。
Mapコントロールに分析データを追加するには
マップに分析データを追加するには、以下の手順に従います。これらの手順は、すでにページレイアウトテンプレートをレポートに追加し、データ接続を適切に設定していることを前提とします。詳細については、プロジェクトにレポートを追加するおよびデータソースとの接続を参照してください。
- マップコントロールに空間データを追加します。マップコントロールに空間データを追加する方法については、上記のドロップダウンセクションを参照してください。
- [レイヤーデータ]プロパティ設定ダイアログで、[分析データ領域の空間フィールド]ページに移動します。
- [データセット]ドロップダウンリストから使用するデータセットを選択し、[一致させるフィールド]フィールドの横の[追加](+)ボタンをクリックします。そうすると、空の一致フィールド式が作成され、[空間フィールド]および[分析フィールド]プロパティが有効になります。
-
[空間フィールド] および [分析フィールド] オプションで、空間データベースおよび分析データベース内の同じデータを含むデータフィールドを設定します。そうすると、一致フィールド式が構築され、分析データがマップレイヤー上のマップ要素に関係付けられます。
|
メモ: 分析データの空間データフィールドを使用する場合(すなわち、分析データをマップレイヤー上に可視化する場合)は、必ず[一致させるフィールド]フィールドを設定する必要があります。これらのフィールドを設定することで、レポート処理時に分析データと空間データを関係付けることができます。 |
- [OK]をクリックしてダイアログを閉じます。