Salesforce Analytics Cloud コネクタ

Salesforce Analytics Cloud 用 Anypoint コネクタでは、Salesforce 外部データ API を使用して Salesforce Analytics Cloud アプリケーションに接続できます。このコネクタでは、Salesforce Analytics Cloud システムに対するデータセットの作成、削除、入力を行う便利なメソッドが公開されています。オンプレミスかクラウドかに関係なく、多種多様なデータソースから Analytics Cloud にデータを読み込むことができます。このコネクタで、.csv ファイル以外も利用できるようになります。

前提条件

このドキュメントは、読者が Mule、Anypoint コネクタ、Anypoint Studio、Mule の概念、Mule フローの要素、グローバル要素に精通していることを前提としています。

対象リソースへの接続をテストするには、ログイン情報が必要です。

ハードウェアとソフトウェアの要件および互換性に関する情報は、「コネクタリリースノート」を参照してください。

Maven でこのコネクタを使用するには、Anypoint Exchange の [Dependency Snippets (連動関係スニペット)] で pom.xml の連動関係情報を確認してください。

このコネクタの新機能

このコネクタは、Mule 4 で初めてリリースされます。

Design Center で接続の接続

  1. Design Center で、[Set Up (セットアップ)] > [Upload (アップロード)] をクリックし、ファイルシステムにあるこのコネクタのドライバを参照して選択し、アップロードします。 または、すでにアップロードされているドライバを検索して選択します。

  2. トリガをクリックします。トリガ時にこのコネクタを選択することで、グローバル要素を作成できます。 グローバル要素が不要な場合は、HTTP リスナまたはスケジューラトリガを使用できます。

  3. コネクタ用に省略可能なグローバル要素を作成する場合、次のオプションから選択できます。詳細は、後続のセクションで説明します。また、Salesforce ドキュメントへのリンクがこのドキュメントの「関連情報」セクションに記載されています。

    • 基本ユーザ名とパスワード認証の必須パラメータ

    • OAuth 2.0 設定の必須パラメータ

    • OAuth 2.0 JWT ベアラー設定の必須パラメータ

    • OAuth 2.0 SAML ベアラー設定の必須パラメータ

      グローバル種別の選択
  4. プラス記号を選択して、コンポーネントを追加します。

  5. コンポーネントとしてコネクタを選択します。

  6. 次の項目を設定して外部データを新しい dataSet にアップロードし、操作の処理を開始します。

    • Type (タイプ) - 挿入するレコードのタイプ。作成するデータセットのスキーマを表す JSON ファイルをアップロードする必要があります。

    • Records (レコード) - DataSense 式、挿入するレコード

    • Operation (操作) - DataSet にデータを読み込むときに使用する操作

    • Description (説明)

    • Label (表示ラベル)

    • Data Set Name (データセット名)

      アップロードして処理を開始

基本ユーザ名とパスワード認証の必須パラメータ

  • Username (ユーザ名): Sales Analytics ユーザ名を入力します。

  • Password (パスワード): 対応するパスワードを入力します。

  • Security Token (セキュリティトークン): 対応するセキュリティトークンを入力します。

基本認証

OAuth 2.0 設定の必須パラメータ

  • Consumer Key (コンシューマキー) - Salesforce 接続アプリケーションのコンシューマキー。

  • Consumer Secret (コンシューマシークレット) - Salesforce にアクセスするためのコネクタのコンシューマシークレット。

OAuth 認証

OAuth 2.0 JWT ベアラー設定の必須パラメータ

  • Consumer Key (コンシューマキー) - Salesforce 接続アプリケーションのコンシューマキー。

  • Keystore File (キーストアファイル) - 「キーストアファイルの生成」を参照してください。

  • Store Password (ストアのパスワード) - キーストアのパスワード。

  • Principal (ユーザ) - 使用する Salesforce ユーザ名。

JWT ベアラー設定

OAuth 2.0 SAML ベアラー設定の必須パラメータ

  • Consumer Key (コンシューマキー) - Salesforce 接続アプリケーションのコンシューマキー。

  • Keystore File (キーストアファイル) - 認証時にデータへの署名に使用するキーストアへのパス* Java キーストア形式のみが許可されます。

  • Store Password (ストアのパスワード) - キーストアのパスワード

  • Principal (ユーザ) - 目的の Salesforce ユーザのユーザ名

SAML ベアラー設定

キーストアファイルの生成

キーストアは、認証時にデータへの署名に使用するキーストアへのパスです。Java キーストア形式のみが許可されます。

キーストアファイルを生成する手順は、次のとおりです。

  1. Mule ワークスペースに移動し、コマンドプロンプト (Windows) またはターミナル (Mac) を開きます。

  2. keytool -genkeypair -alias salesforce-cert -keyalg RSA -keystore salesforce-cert.jks」と入力して Enter キーを押します。

  3. 次の詳細を入力します。

    • キーストアのパスワード。

    • 自分の名と姓。

    • 自分の組織単位。

    • 市区郡の名前、都道府県、および 2 文字の国コード。

      システムが、ワークスペースに非公開/公開キーペアが含まれる Java キーストアファイルを生成します。

  4. コネクタ設定でキーストアのファイルパスを指定します。

    keytool -exportcert -alias salesforce-cert -file salesforce-cert.crt -keystore salesforce-cert.jks」と入力して Enter キーを押します。

    システムが、キーストアからワークスペースに公開キーをエクスポートします。これは、Salesforce インスタンスに入力する必要がある公開キーです。

  5. キーストア (salesforce-cert.jks) と、 公開キー (salesforce-cert.crt) の両方のファイルがワークスペースにあることを確認します。

Anypoint Studio 7 での接続

このコネクタを Anypoint Studio で使用するには、まず Exchange からダウンロードして必要に応じて設定します。

Studio でのコネクタのインストール

  1. [Add Module (モジュールの追加)] をクリックし、このコネクタを検索します。

  2. [Add (追加)]、[Finish (完了)] をクリックします。

Studio での設定

  1. コネクタを Studio キャンバスにドラッグアンドドロップします。

  2. コネクタのグローバル要素を作成するには、次の項目を設定します。

    • 基本認証:

      • Username (ユーザ名): Salesforce ユーザ名を入力します。

      • Password (パスワード) - 対応するパスワードを入力します。

      • Security Token (セキュリティトークン): 対応するセキュリティトークンを入力します。

        基本認証
    • OAuth 2.0:

      • Consumer Key (コンシューマキー) - Salesforce 接続アプリケーションのコンシューマキー。

      • Consumer Secret (コンシューマシークレット) - Salesforce にアクセスするためのコネクタのコンシューマシークレット。

        OAuth 認証
    • OAuth 2.0 JWT:

      • Consumer Key (コンシューマキー) - Salesforce 接続アプリケーションのコンシューマキー。

      • Keystore File (キーストアファイル) - 「キーストアファイルの生成」を参照してください。

      • Store Password (ストアのパスワード) - キーストアのパスワード。

      • Principal (ユーザ) - キーストアのパスワード。

        OAuth 2.0 JWT 認証
    • OAuth 2.0 SAML:

      • Consumer Key (コンシューマキー) - Salesforce 接続アプリケーションのコンシューマキー。

      • Keystore File (キーストアファイル) - 「キーストアファイルの生成」を参照してください。

      • Store Password (ストアのパスワード) - キーストアのパスワード。

      • Principal (ユーザ) - キーストアのパスワード。

        OAuth 2.0 SAML 認証
  3. 次の項目を設定して外部データを新しい dataSet にアップロードし、操作の処理を開始します。

    • Type (タイプ) - 挿入するレコードのタイプ。作成するデータセットのスキーマを表す JSON ファイルを選択します。

    • Records (レコード) - DataSense 式 - 挿入するレコード。

    • Operation (操作) - データセットにデータを読み込むときに使用する操作。

    • Description (説明)

    • Label (表示ラベル)

    • Data Set Name (データセット名)

      外部データのアップロード

ユースケース: Studio

このユースケースは、Salesforce Analytics コネクタの使用方法の例を示しており、次のようにエンドツーエンドのフローが含まれます。

  • HTTP リスナで表されるトリガ。

  • ユーザ名、パスワード、セキュリティトークンが含まれる Salesforce Analytics 設定。

  • 使用するパラメータを含む Sales Analytics 操作。

以下の例には、次のコンポーネントが含まれます。

  • HTTP Listener - HTTP 要求からデータを受け入れます。

  • Transform Message - Salesforce Analytics コネクタで要求されるレコード入力データを提供します。

%dw 2.0
---
output application/java
[
	{
		"Id": 1,
		"Country": "Country",
		"City": "City",
		"Year": 428742153,
		"Distance": 284644936,
		"Currencies":
		[
			"EUR",
			"USD"
		],
		"CreationDate": "20/12/2017" as Date {format: "dd/MM/yyyy"}
	},
	{
		"Id": 2,
		"Country": "Country",
		"City": "City",
		"Year": 1432651434,
		"Distance": 1336594394,
		"Currencies":
		[
			"EUR",
			"USD",
			"HUF"
		],
		"CreationDate": "20/12/2017" as Date {format: "dd/MM/yyyy"}
	}
]
  • Salesforce Analytics コネクタ - Salesforce に接続し、データを Salesforce Analytics にプッシュする操作を実行します。

ユースケース

ユースケース: XML

次の XML コードを Anypoint Studio に貼り付けて、前のセクションで説明したフローを試してください。 ここでも、作成するデータセットのスキーマを記述した metadata.json ファイルを指定する必要があります。

<?xml version="1.0" encoding="UTF-8"?>

<mule xmlns:salesforce-analytics="http://www.mulesoft.org/schema/mule/salesforce-analytics"
xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core"
xmlns:http="http://www.mulesoft.org/schema/mule/http"
xmlns:file="http://www.mulesoft.org/schema/mule/file"
xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core
http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/file
http://www.mulesoft.org/schema/mule/file/current/mule-file.xsd
http://www.mulesoft.org/schema/mule/http
http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core
http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/salesforce-analytics
http://www.mulesoft.org/schema/mule/salesforce-analytics/current/mule-salesforce-analytics.xsd">
 	<configuration-properties file="mule-app.properties" />
	<http:listener-config name="HTTP_Listener_config" doc:name="HTTP Listener config" >
		<http:listener-connection host="0.0.0.0" port="8081" />
	</http:listener-config>
	<salesforce-analytics:salesforce-analytics-config
	  name="Salesforce_Analytics_Salesforce_Analytics"
	  doc:name="Salesforce Analytics Salesforce Analytics" >
		<salesforce-analytics:basic-connection username="${salesforce.username}"
		   password="${salesforce.password}" securityToken="${salesforce.securityToken}"
		   url="${salesforce.url}"/>
	</salesforce-analytics:salesforce-analytics-config>
	<flow name="upload-all-in-one-with-append" >
		<http:listener doc:name="Listener" config-ref="HTTP_Listener_config" path="append"/>
		<ee:transform doc:name="Transform Message" >
			<ee:message >
				<ee:set-payload ><![CDATA[%dw 2.0
output application/java
---
[
	{
		"Id": 1,
		"Country": "Country",
		"City": "City",
		"Year": 428742153,
		"Distance": 284644936,
		"Currencies":
		[
			"EUR",
			"USD"
		],
		"CreationDate": "20/12/2017" as Date {format: "dd/MM/yyyy"}
	},
	{
		"Id": 2,
		"Country": "Country",
		"City": "City",
		"Year": 1432651434,
		"Distance": 1336594394,
		"Currencies":
		[
			"EUR",
			"USD",
			"HUF"
		],
		"CreationDate": "20/12/2017" as Date {format: "dd/MM/yyyy"}
	}
]]]></ee:set-payload>
			</ee:message>
		</ee:transform>
		<salesforce-analytics:upload-external-data-into-new-data-set-and-start-processing
		  doc:name="Upload external data into new data set and start processing"
		  config-ref="Salesforce_Analytics_Salesforce_Analytics" operation="APPEND"
		  description="${allInOne.dataSetDescription}" label="${allInOne.dataSetLabel}"
		  dataSetName="${allInOne.dataSetName}" edgemartContainer="${allInOne.dataSetContainerName}"
		  type="metadata.json" notificationSent="ALWAYS" notificationEmail="${notification.email}"/>
	</flow>
</mule>

関連情報

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub