SalesforceEinsteinWriter
Short Description
SalesforceEinsteinWriter writes data to Salesforce Einstein Analytics data sets. In version 5.13, SalesforceWaveWriter was renamed to SalesforceEinsteinWriter.
Component | Data output | Input ports | Output ports | Transformation | Transf. req. | Java | CTL | Auto-propagated metadata |
---|---|---|---|---|---|---|---|---|
SalesforceEinsteinWriter |
database |
1 |
2 |
⨯ |
⨯ |
⨯ |
⨯ |
⨯ |
Ports
Port type | Number | Required | Description | Metadata |
---|---|---|---|---|
Input |
0 |
✓ |
For records to be inserted |
Input 0 |
Output |
0 |
⨯ |
Successful load information |
Output 0 |
1 |
⨯ |
Unsuccessful load information |
Output 1 |
Metadata
SalesforceEinsteinWriter does not propagate metadata.
SalesforceEinsteinWriter has metadata templates on its output ports.
Field number | Field name | Data type | Description |
---|---|---|---|
1 |
Status |
string |
Status of successfully finished load |
Field number | Field name | Data type | Description |
---|---|---|---|
1 |
Status |
string |
Status of an unsuccessfully finished load. |
2 |
StatusMessage |
string |
A more descriptive message. |
SalesforceEinsteinWriter Attributes
Attribute | Req | Description | Possible values |
---|---|---|---|
Basic |
|||
Connection |
yes |
Salesforce connection. |
|
Dataset Name |
yes |
Name of the data set. The Dataset Name should contain only alpha-numeric characters and underscore, and it should start with a letter. |
E.g. flowers |
Dataset Label |
Label of data set to be displayed in Einstein platform. This property is only used when a dataset is initially created. |
E.g. Nice flowers |
|
Operation |
Operation to be performed on data set |
Overwrite (default) | Append | Delete | Upsert |
|
Unique ID field |
(yes) |
An input field that is considered as a unique identifier. It will be used to match records in the Upsert operation or select records to delete in the Delete operation. Mandatory for Delete and Upsert operations. Forbidden for Append operation. |
|
Advanced |
|||
Metadata JSON |
JSON specifying structure of the loaded dataset. |
||
Metadata JSON File URL |
An external file with the JSON metadata of the dataset. |
||
Metadata JSON File URL Charset |
Character set of Metadata JSON File. |
E.g. UTF-8 |
|
Result polling interval (seconds) |
The time between two checks of result of data upload. |
Details
SalesforceEinsteinWriter loads records into Einstein Analytics (formerly known as Wave). See Explore Data and Take Action with Einstein Analytics
Supported Operations
Overwrite - creates a new dataset or overwrites an existing one.
Append - appends records into an existing dataset.
Delete - deletes records from an existing dataset. The records to be deleted are selected using the Unique ID field property.
Upsert - inserts or updates records in an existing dataset. The records are matched using the Unique ID field property to decide whether to update or insert.
Examples
Writing records to Salesforce Einstein
This example shows the basic use case of writing records to Salesforce Einstein. A new data set in Einstein Analytics will be created.
Insert data records containing properties on different car types into Einstein Analytics as "car properties" data set.
Solution
In SalesforceEinsteinWriter set Connection, Dataset Name and Dataset Label.
Attribute | Value |
---|---|
Connection |
A Salesforce Connection |
Dataset Name |
car_properties |
Dataset Label |
car properties |
Note that Dataset name contains an underscore character as it should not contain a space character.
Best Practices
If you use Metadata JSON File URL attribute, explicitly specify Metadata JSON File URL Charset.
Insert all date fields in UTC timezone. If the timezone of the input fields is different, the values are automatically converted to UTC before upload. This is necessary to ensure correct upload.
You can specify format of date fields inserted to Einstein by changing Format property on the input metadata field. For a list of supported date formats, see External Data Metadata Format Reference
Notes and Limitations
Metadata JSON is generated automatically based on CloverDX metadata on input edge. You can override this behavior by specifying the JSON yourself. Documentation on all possible properties usable in the JSON metadata is available here: External Data Metadata Format Reference
Usage of API calls
The component uses several Salesforce API calls during its run:
-
Login
-
Start the upload job.
-
Upload the data. A single API call is necessary for every 10MB of data.
-
Close the upload job.
-
Get job completion status. This call is repeated in interval specified by the Result polling interval attribute until the job is completed.
Compatibility
Version | Compatibility Notice |
---|---|
4.5.0-M1 |
SalesforceWaveWriter is available since 4.5.0-M1. It uses Salesforce SOAP API version 37.0. |
4.5.0-M2 |
SalesforceWaveWriter uses Salesforce SOAP API version 39.0. |
5.2.0 |
SalesforceWaveWriter uses Salesforce SOAP API version 45.0. |
5.3.0 |
SalesforceWaveWriter uses Salesforce SOAP API version 46.1. |
5.13.0 |
SalesforceWaveWriter was renamed to SalesforceEinsteinWriter. |