MatchingMapの地図は、レコードページに配置したボタンから起動して利用します。

MatchingMapでは、求職者と求人の組み合わせに対して複数の地図設定を持つことができますが、地図を表示する際にどの設定を使用するかはボタンに設定するURLパラメータに指定します。
さらに、各種URLパラメータを利用して、地図の縮尺や検索範囲の初期値などさまざまなカスタマイズが可能です。


1. 地図を起動するボタンを作成する
取引先を例に地図を開くボタン、以下の例では「付近の求職者」を追加する手順について解説します。
①「設定」の「オブジェクトマネージャ」を開き、MatchingMapの地図を表示するオブジェクトを選択します。
② 「ボタン、リンク、およびアクション」を開き、「新規ボタンまたはリンク」をクリックし「新規ボタンまたは新規リンク」の編集ページを開きます。
③以下の通り入力します。
③-1 表示ラベル、「付近の求職者」「付近の求人施設」適当なボタン名を入力します。
③-2 名前、「NearByJobSeeker」、「NearByAccount」など適当な値を入力します。
③-3 表示の種類は「詳細ページボタン」を選択します。
③-4 動作は「新規ウィンドウに表示」のままにします。
③-5 内部ソースは「URL」のままにします。
③-6 URLに以下の値を入力します。
/apex/matchingmap__index?id={!<選択しているオブジェクト>.Id}&mapid=<使用する地図設定の地図名>
取引先の場合は、「<選択しているオブジェクトの>」は「Account」に置き換えます。
/apex/matchingmap__index?id={!Account.Id}&mapid=near_by_job_seekers
地図名は、「地図表示設定」の「基本設定」の「地図名」に指定した値を指定します。

地図名の右側にボタンに使用するURLが表示されているので、右のアイコンをクリックしてコピーしたものを使うこともできます。

③-7 [構文を確認]をクリックして入力したURLに誤りが無いことを確認します。
③-8 [保存]をクリックします。
以下の図は取引先の入力例です。


2. 作成したボタンをレコードページに配置する
1. で作成したボタンをレコードページに配置するには以下の2つの方法があります。
2-1. ページレイアウトに配置
①「設定」の「オブジェクトマネージャ」を開き、MatchingMapの地図を表示するオブジェクトを選択します。
② 「ページレイアウト」を開き、使用しているページレイアウトを開きます。
③ 「モバイルおよび Lightning のアクション」を選択して、追加した「付近の求職者」または「付近の求人施設」ボタンを「Salesforce モバイルおよび Lightning Experience のアクション」の適当な場所にドラッグします。

※ Classicの場合は、「ボタン」を選択して「付近の求職者」または「付近の求人施設」ボタンを「カスタムボタン」にドラッグします。
④ 「保存」をクリックします。
2-2. Lightningアプリケーションビルダーで配置 (Lightningページに配置)
① Lightningアプリケーションビルダーは、ボタンを配置するレコードページの右上の歯車のメニューより「編集ページ」を選択すると開きます。
② 「強調表示パネル」コンポーネントを選択します。「動的アクションへのアップグレード」というメッセージが出ている場合は、「アップグレードに関するお問い合わせ」をクリックすます。(すでに「アクション」のセクションが表示されている場合は⑤に進んで下さい)

③ 既存のページレイアウトからアクションをコピーする場合は左の「移行」を、新規にアクションを追加する場合は「スクラッチから開始」を選択して「次へ」をクリックします。

④ 「移行」を選択した場合は、アクションをコピーするページレイアウトを選択して「完了」を、「スクラッチから開始」を選択した場合はそのまま「完了」をクリックします。

⑤ 「アクションを追加」をクリックして、「カスタムアクション」から作成したボタンを選択します。

④ 「完了」をクリックすると選択したボタンが追加されます。アクションの表示順序はドラッグして並び替えることができます。
④ 右上の「保存」をクリックします。
※ アクションの設定をページレイアウトに戻したい場合は、「強調表示パネル」コンポーネントを削除してから再度追加し直します。

3. ルート検索に交通手段の初期値を渡すには
地図上でスポットを選択したポップアップで「ルート検索」ボタンをクリックするとGoogleMapのルート検索を利用できます。(参照: 「MatchingMap - 利用者向けガイド MatchingMap 地図の画面構成」)
GoogleMapのルート検索には、交通手段による絞り込み機能がありますが、付近の求人地図であれば求職者レコードの交通手段項目の値を初期値として渡すように設定することができます。
設定手順は以下のとおりです。
オブジェクトに交通手段項目を準備
パッケージに含まれるサンプルオブジェクト「求職者」にはすでに「交通手段」(matchingmap__TravelMode__c)項目が追加されています。
「交通手段」は以下の選択値を持つ選択リスト項目です。

求職者または求人施設オブジェクトに設定したオブジェクトに交通手段を保持する項目がない場合は、上記と同じ選択値を持つ選択リスト項目を追加してください。
地図を開くボタンに交通手段の値を設定する
①「設定」の「オブジェクトマネージャ」を開き、MatchingMapの地図を表示するオブジェクトを選択します。
② 「ボタン、リンク、およびアクション」を開き、「新規ボタンまたはリンク」をクリックし「新規ボタンまたは新規リンク」の編集ページを開きます。
③ URLにパラメータ「travelmode」を追加します。
設定形式:
/apex/matchingmap__index?id={!<選択しているオブジェクト>.Id}&travelmode={!<選択しているオブジェクト>.<作成した項目名>__c}
以下の図は付近の求人の入力例です。

④「保存」をクリックします。

4. 地図の縮尺の初期値を指定するには
地図の縮尺の初期値を設定できます。指定しない場合のデフォルト値は12です。
設定方法は以下のとおりです。
①「設定」の「オブジェクトマネージャ」を開き、MatchingMapの地図を表示するオブジェクトを選択します。
② 「ボタン、リンク、およびアクション」を開き、「新規ボタンまたはリンク」をクリックし「新規ボタンまたは新規リンク」の編集ページを開きます。
③ URLにパラメータ「zoom」に1から21の数値を設定します。
※ 縮尺の値は、値が大きい方が縮尺が大きくなります(ズームします)。デフォルトの12から大きくしたり小さくしたり調整し、適切な値を指定してください。
設定形式:
/apex/matchingmap__index?id={!<選択しているオブジェクト>.Id}&zoom={縮尺}
以下の例では、縮尺を14に設定しています。

④「保存」をクリックします。

5. 検索対象範囲の最大半径を指定するには
地図上に表示するスポットの検索対象とする半径を設定することができまます。
半径のデフォルトは100kmです。

最大半径の同心円は赤で示され、半径を超えるレコードは地図に読み込まれなくなります。主に、都市部などレコード数が多い地域で、最大半径を小さくして地図に読み込まれるレコードを絞る際に使用します。
設定方法は以下のとおりです。
①「設定」の「オブジェクトマネージャ」を開き、MatchingMapの地図を表示するオブジェクトを選択します。
② 「ボタン、リンク、およびアクション」を開き、「新規ボタンまたはリンク」をクリックし「新規ボタンまたは新規リンク」の編集ページを開きます。
③ URLにパラメータ「radius」を追加します。最大半径はkm単位の数値を指定します。
設定形式:
/apex/matchingmap__index?id={!<選択しているオブジェクト>.Id}&radius={最大半径}
設定例:
以下の例は、最大半径50kmを直接指定しています。
/apex/matchingmap__index?id={!Account.Id}&radius=50
また、以下の図では付近の求人の入力例で、求職者の都道府県によって最大半径を変えています。

④「保存」をクリックします。

6. フィルターの初期値を指定するには
地図を開くボタンに設定するURLのパラメータにフィルターの初期値を設定できます。
例えば、以下の「付近の求人」地図では、求職者が希望する「職種」と「募集雇用形態」をフィルターの初期値としてセットし、あらかじめ表示するスポットを絞り込んでいます。

フィルターの実行は、地図に読み込まれたれコードが対象となります。つまり、Salseforceのサーバーからブラウザに読み込まれたレコードに対して表示/非表示を切り替えます。
読み込まれるレコード数を調整したい場合は、radiusまたはlimitパラメータを使用ください。
設定方法は以下のとおりです。
①「設定」の「オブジェクトマネージャ」を開き、MatchingMapの地図を表示するオブジェクトを選択します。
② 「ボタン、リンク、およびアクション」を開き、「新規ボタンまたはリンク」をクリックし「新規ボタンまたは新規リンク」の編集ページを開きます。
③ URLにパラメータ「filters」を追加し、各フィルター初期値として「{項目のAPI参照名}={初期値}」のような項目と値のペアをカンマ区切りで指定します。
設定形式:
/apex/matchingmap__index?id={!<選択しているオブジェクト>.Id}&filters={項目1 API参照名}={項目1 初期値},{項目2 API参照名}={項目2 初期値}
項目のデータ型ごとに設定形式がことなります。以下を参照ください。
選択リスト
<API参照名>=値1;値2;値3
初期表示でチェックを入れる値をセミコロン区切りで指定します。
除外をする選択値を指定したい場合は以下のように指定します。
<API参照名>_ex=値1;値2;値3
除外の適用は、フィルター項目設定の「除外フィルターを利用する」を有効にしているかどうかで動作が異なります。
「除外フィルターを利用する」が無効に設定されている場合は、パラメータに列挙した値以外の選択値にチェックが入った状態になります。また、チェックを入れる値を指定するパラメータと除外を指定するパラメータは同時に指定することはできません。同時に指定した場合は除外するパラメータが優先されます。
「除外フィルターを利用する」が有効に設定されている場合は、パラメータに列挙した値は「除外された値」としてセットされます。
テキスト
<API参照名>=値1
除外ワード
<API参照名>_ex=値1;値2
複数ワードを指定する場合は、セミコロン区切りで指定します。
数値
<API参照名>_from=10,<API参照名>_to=100
範囲検索なので最小値「<API参照名>_from」、最大値「<API参照名>_to」を個別に指定できます。
日付
<API参照名>_from=2020-10-01,<API参照名>_to=2020-11-01
範囲検索なので最小値「<API参照名>_from」、最大値「<API参照名>_to」を個別に指定できます。
日付のフォーマットは、「YYYY-MM-DD」です。
チェックボックス
<API参照名>=true
または
<API参照名>=false
設定例
求人施設の「募集有無 (matchingmap__IsHiring__c)」項目の値がチェックあり、「募集職種 (matchingmap__JobType__c)」項目の値「介護事務・事務」または「医療事務」を指定する場合は以下のように指定します。
/apex/matchingmap__index?id={!matchingmap__MM_JobSeeker__c.Id}&filters=matchingmap__IsHiring__c=true,matchingmap__JobType__c=介護事務・事務;医療事務
1ヶ月以内に更新された求人のみを表示する場合は以下のように指定します。

④「保存」をクリックします。
7. フィルター項目の開閉状態を指定するには
フィルターの各項目はデフォルトでは、すべて開いた状態で表示されますが、使用頻度の低い項目は閉じた状態で表示するように指定することができます。

設定は、フィルターの初期値と同様にボタンに設定したURLにパラメータを追加します。
①「設定」の「オブジェクトマネージャ」を開き、MatchingMapの地図を表示するオブジェクトを選択します。
② 「ボタン、リンク、およびアクション」を開き、「新規ボタンまたはリンク」をクリックし「新規ボタンまたは新規リンク」の編集ページを開きます。
③ URLにパラメータ「filters」を追加し、表示時に閉じて表示する項目ごとに「{項目のAPI参照名}_collapse=true」のような値をカンマ区切りで指定します。
設定形式:
/apex/matchingmap__index?id={!<選択しているオブジェクト>.Id}&filters={項目1 API参照名}_collapse=true,{項目2 API参照名}_collapse=true
設定例:
以下の設定は、求人施設が取引先オブジェクトの場合に「種別 (Type)」と「業種 (Industry)」のフィルターを閉じた状態で表示します。
/apex/matchingmap__index?id={!matchingmap__MM_JobSeeker__c.Id}&filters=Type_collapse=true,Industry_collapse=true
④「保存」をクリックします。
8. 地図に読み込むレコード件数の最大値を指定するには
MatchingMapの地図で、読み込み可能な最大レコード数の初期値は10,000レコードです。
この値は、limitパラメータで緩和することができます。
設定は、フィルターの初期値と同様にボタンに設定したURLにパラメータを追加します。
①「設定」の「オブジェクトマネージャ」を開き、MatchingMapの地図を表示するオブジェクトを選択します。
② 「ボタン、リンク、およびアクション」を開き、「新規ボタンまたはリンク」をクリックし「新規ボタンまたは新規リンク」の編集ページを開きます。
③ URLにパラメータ「limit」を追加します。レコード数を指定します。
※ limitパラメータの値は2000を超える値を指定してください、2000未満の値を指定しても2000レコードとして扱われます。
※ Salseforceの制限により、地図に読み込み可能なレコードのリストの最大サイズは15Mバイトです。limitの値を大きくしすぎると、応答サイズが15Mバイトを超えている旨のエラーが表示されます。応答サイズは、リストとフィルターに使用する項目数に依存しますので、エラーが発生しない程度の適度な値を試しながら設定値を決定してください。
設定形式:
/apex/matchingmap__index?id={!<選択しているオブジェクト>.Id}&limit={レコード数}
設定例:
最大取得レコード数を15,000とする場合
/apex/matchingmap__index?id={!<選択しているオブジェクト>.Id}&limit=15000
④「保存」をクリックします。