Infrastructure Studio では、複数の場所で[テスト式]ダイアログ ボックスを使用できます。 このダイアログ ボックスを使用して、URL、ツールチップ、フィーチャ ラベル値を指定します。 たとえば、次のようなラベル文字を指定する文字式を作成できます。
<State_Name>: <Population>
ここで、<State_Name> と <Population> は、各フィーチャのこれらのプロパティの値に置き換えられます。たとえば、California: 33,871,648 などです。
[テスト式]ダイアログ ボックスには、[ビルダ]、[詳細]という 2 つのモードがあります。 [ビルダ]モードでは、有効な構文を使用する式だけを作成できます。 [詳細]モードでは、[ビルダ]で処理されない構文でも、その構文を使用する式を作成できます。 フィルタの条件が有効でない場合は、[詳細]モードから[ビルダ]モードへは移行できません。 さらに、画層のデータ ソースにない関数またはプロパティの名前が含まれる場合、ビルダでは有効な構文を使用する式を使用できません。
文字式を作成するには
詳細は、「数式を作成する」を参照してください。
[詳細]モードで複数のコンポーネントを結合するには、concat を使用します。 次に例を示します。
concat(State_Name, concat(‘: ‘,Population))
[詳細]モードでは、スペースは無視されます。ただし、定数を指定するシングル クォーテーションでスペースを囲むと無視されません。
次の関数は、各フィーチャの特定の情報を提供する URL 式の作成に役立ちます。 たとえば、フィーチャをクリックすると、リンクによってブラウザのウィンドウが開かれ、フィーチャのプロパティが表示されます。
関数 | 説明 |
---|---|
MAPNAME() | 現在のセッションのランタイム マップの名前 |
SESSION() | 現在のセッション ID |
LAYERID() | URL に関連付けられたフィーチャの画層 ID |
FEATURECLASS() | URL に関連付けられたフィーチャのクラス名 |
FEATUREID() | URL に関連付けられたフィーチャの ID |
URLENCODE(string) | 入力された文字列を URL エンコードする |
この種の式を作成するには、[詳細]モードで[テスト式]ダイアログ ボックスを使用する必要があります。 上記の例では、次の式が必要な識別情報を含むフィーチャの URL の例となります。
concat(concat( concat('Hyperlink.php?FeatureID=', URLENCODE(FEATUREID())), concat('&FeatureClass=', URLENCODE(FEATURECLASS()))), concat('&LayerID=', URLENCODE(LAYERID())))
フィーチャの URL 式でこれらの関数を使用する場合、必ず URLENCODE を使用してすべての URL パラメータ値が正しくエンコードされることようにしてください。