マップデータレイヤの構成
マップコンポーネントに配置するデータレイヤごとに、レイヤ上で使用する位置またはポイントの値、およびその他の必要な値を生成する外部 WebFOCUS リクエストを作成します。このリクエストは、これらの値を XML フォーマットでブラウザに提供する必要があります。このリクエストをマップコンポーネントに追加するには、[リクエストとデータソース] パネルを使用します。
最初のレイヤは自動的に定義されます。別のデータレイヤを追加するには、下図のようにレイヤテキストボックス上部の [新規レイヤ] をクリックし、[データレイヤ] を選択します。
[ESRI オブジェクトの設定] パネルの上部セクションで、レイヤの地理的役割、外部リクエスト (特定のポイント (地点) の値を取得するリクエスト)、属性を構成します。
[ESRI オブジェクトの設定] パネルのレイヤ設定は次のとおりです。
説明 レイヤの一意の名前です。
ボックスのタイプ VARCHAR2(20) テキストフィールド
必須/任意 必須
値の入力 ユーザ
制限事項 最大長 20 バイト。特殊文字の「' " ¥ / * + ? ^ $ [ ] ( ) { } < > | & ,」を使用することはできません。
例 Customer
説明 位置またはポイントを提供するリクエストの名前です。
ボックスのタイプ ドロップダウンリスト
必須/任意 必須
値の入力 システム定義
制限事項 [リクエストとデータソース] パネルで、ブラウザに XML フォーマットで値を出力する外部 WebFOCUS プロシジャを事前に定義します。
例 customer_locations
説明 地理検索フィールドです。デフォルト設定では、58 の世界行政区画で郵便番号レベルまでの地理的役割の統合リストが利用できます。
ボックスのタイプ ドロップダウンリスト
必須/任意 必須
値の入力 定義済みシステム
制限事項 選択可能なオプションは次のとおりです。
- XY 座標
注意:緯度と経度のフィールドには、数値データタイプを割り当てる必要があります。
- City
- Continent
- Country
- County
- Geometry Line
- Postal Code
- State
- カスタム地理的役割、ベースマップ、コンテキストレイヤを追加することができます。地理的役割は、既存の ESRI マップに対しても、WebFOCUS Reporting Server にアップロードするシェープファイルに対しても定義することができます。詳細は、地理情報の構成を参照してください。ユーザ独自のカスタム区画は、ArcGIS Online または Esri on Premise 認証情報が認証された後にのみ使用可能になります。
例 LATITUDE/LONGITUDE
説明 リクエスト内で地理的役割の値を提供するフィールドです。
ボックスのタイプ ドロップダウンリスト
必須/任意 必須
値の入力 定義済みシステム
制限事項 リクエストで使用されているフィールドを指定する必要があります。
例 LATITUDE/LONGITUDE
説明 他のリクエストのパラメータとして使用されるフィールドです。
ボックスのタイプ リストボックス
必須/任意 必須 (XY 座標の場合)、任意 (それ以外の場合)
値の入力 システム定義
制限事項 リクエストで使用されているフィールドを指定する必要があります。
例 ID_CUSTOMER
説明 リクエストで使用されているフィールドのリストです。ここで選択したフィールドは、[ポップアップ有効] 表示オプションが [オン] に設定されている場合に、ポイントまたは位置のクリック時にポップアップ表示されます。Shift キーまたは Ctrl キーを使用して複数のフィールドを選択することができます。最下部の緑色ボタンをクリックして選択項目を適用するか、赤色ボタンをクリックして選択項目をキャンセルします。下図は、選択ダイアログボックスを示しています。
注意:ポップアップにフィールド名の代わりにカスタム名を表示するには、マスターファイルの TITLE 属性でカスタム名を定義しておく必要があります。TITLE 属性にカンマ (,) を含めることはできません。リクエストに AS 名を使用して作成されたカスタム名は、情報ウィンドウではサポートされません。
ボックスのタイプ リストボックス
必須/任意 任意
値の入力 システム定義
制限事項 リクエストで使用されているフィールドを指定する必要があります。
例 COGS_US
XY 座標マップレイヤの構成
次の例では、外部 WebFOCUS リクエスト (customer_locations.fex) から取得される経度と緯度のポイント値を使用してマップレイヤを構成します。
リクエストは、レポートキャンバスで作成することも、テキストエディタでリクエストコードを入力して作成することもできます。レポートキャンバスで WebFOCUS レポートリクエストを作成する方法についての詳細は、レポートの作成を参照してください。
以下は、customer_locations プロシジャのコードを示しています。経度と緯度の値を返す 2 つのフィールドの名前は、LONGITUDE と LATITUDE にする必要があります。また、これらの地点の値を返すリクエストには、ユニーク ID フィールドが含まれている必要があります (この例では ID_CUSTOMER)。これらの値は、XML フォーマットでブラウザに返される必要があります。このプロシジャをテキストエディタに貼り付けて、「customer_locations.fex」という名前で保存します。
TABLE FILE WF_RETAIL_LITE
PRINT ID_CUSTOMER
COGS_US
QUANTITY_SOLD
COMPUTE LONGITUDE/D12.2 =CUSTOMER_LONGITUDE;
COMPUTE LATITUDE/D12.2 = CUSTOMER_LATITUDE;
BY STATE_PROV_NAME
BY ID_CUSTOMER NOPRINT
WHERE COUNTRY_NAME EQ 'United States';
ON TABLE PCHOLD FORMAT XML
END
下図のように、最初に [リクエストとデータソース] パネルを使用して、外部 WebFOCUS プロシジャ (customer_locations.fex) を HTML ページに追加します。
次に [設定] パネルを使用して、マップレイヤを構成します。このレイヤではデフォルトの表示オプションとシンボルを使用するため、[ESRI オブジェクトの設定] パネルの上部セクションのみを構成します。
各レイヤには、デフォルト名が付けられています。レイヤ名を変更するには、デフォルト名を選択し、新しい名前を上書き入力します。リクエストで経度と緯度の値を提供する際に使用する地理的役割は [XY 座標] です。下図は、レイヤ名が変更された後の構成済み [Customers] レイヤと、構成済み地理的役割を示しています。
注意:[レイヤ設定] で [XY 座標] の [空間座標システム] の値が 4326 以外に設定されている場合は、社内でホストされているジオメトリサービスを使用してください。この場合は、オンザフライ投影の機能が必要になります。ジオメトリサービスについての詳細は、「http://server.arcgis.com/en/server/latest/publish-services/linux/about-the-geometry-service.htm」を参照してください。
HTML ページを実行します。下図は、出力結果を示しています。
米国州マップレイヤの構成
次の例では、米国州 (名前) を使用してマップレイヤを構成します。
リクエストは、レポートキャンバスで作成することも、テキストエディタでリクエストコードを入力して作成することもできます。レポートキャンバスで WebFOCUS レポートリクエストを作成する方法についての詳細は、レポートの作成を参照してください。
以下は、米国州の州名を返す WebFOCUS プロシジャのコードを示しています。このプロシジャをテキストエディタに貼り付けて、「customer_states.fex」という名前で保存します。
TABLE FILE WF_RETAIL_LITE SUM QUANTITY_SOLD BY STATE_PROV_NAME WHERE COUNTRY_NAME EQ 'United States' ON TABLE PCHOLD FORMAT XML END
最初に [リクエストとデータソース] パネルを使用して、外部 WebFOCUS プロシジャ (customer_states.fex) を HTML ページに追加します。
次に [設定] パネルを使用して、マップレイヤを構成します。このレイヤではデフォルトの表示オプションとシンボルを使用するため、[ESRI オブジェクトの設定] パネルの上部セクションのみを構成します。
各レイヤには、デフォルト名が付けられています。レイヤ名を変更するには、デフォルト名を選択し、新しい名前を上書き入力します。リクエストで米国州名を提供する際に使用する地理的役割は [state ()] です。リクエストで地理的役割に対応するフィールドは STATE_PROV_NAME です。リクエストでは、COUNTRY_NAME が「United States of America」である場合にのみ州が画面表示されます。このため、[設定] パネルの [Country] にユーザ定義の値として「United States of America」を選択することができます。下図は、構成済みの [CustState] レイヤを示しています。
HTML ページを実行します。下図は、出力結果を示しています。
ジオメトリラインレイヤの構成
ESRI マップでは、ポリゴンやポイントの描画のほか、ジオメトリラインを描画することができます。地理オブジェクトの形状や位置を表す際にラインを使用します。たとえば、送電線、車道、管路、ルートをラインで表現します。ラインは、2 つ以上のポイントを結合して描画されます。ESRI マップの [設定] パネルでは、ラインに使用される地理的役割は「ジオメトリライン」 (Geometry line) と呼ばれます。
ジオメトリラインを作成するためのリクエストには、「201709_citibike_tripdata」という名前の .csv ファイルを使用します。このファイルには、各ステーション間の自転車移動に関する情報が含まれています。下図は、このファイルの部分データを示しています。
マスターファイルには、次の一時項目 (DEFINE) が含まれます。これは、GIS_POINT および GIS_LINE の機能を利用して、ジオメトリポイントやジオメトリラインを作成します。
DEFINE WKID/A10='4326';
TITLE='WKID', $
DEFINE START_STATION_POINT/A200=GIS_POINT(WKID, START_STATION_LONGITUDE, START_STATION_LATITUDE); GEOGRAPHIC_ROLE=GEOMETRY_POINT, $
DEFINE END_STATION_POINT/A200=GIS_POINT(WKID, END_STATION_LONGITUDE, END_STATION_LATITUDE); GEOGRAPHIC_ROLE=GEOMETRY_POINT, $
DEFINE CONNECTION_LINE_A/A200=GIS_LINE(START_STATION_POINT, END_STATION_POINT); GEOGRAPHIC_ROLE=GEOMETRY_LINE, $
マップには次のリクエストが使用されます。
TABLE FILE 201709_citibike_tripdata SUM TRIPDURATION FST.GENDER FST.BIKE_PATH_ID AS 'BIKE_PATH_ID' FST.START_STATION_NAME AS 'start station name' FST.END_STATION_NAME AS 'end station name' BY CONNECTION_LINE_A WHERE END_STATION_LATITUDE NE 0; WHERE END_STATION_LONGITUDE NE 0; WHERE START_STATION_NAME EQ 'Newport Pkwy' ON TABLE PCHOLD FORMAT XML END
下図は、ジオメトリラインの地理的役割にこのリクエストを使用する [ESRI 設定] パネルを示しています。ここでは、デフォルトのレイヤ表示およびシンボルの設定が適用されています。
下図は、出力結果を示しています。