Loader

Provide your data in a SQL table and point to Salesforce via a configured Environment, choosing one of the supported operations. Success is logged in the required Error field, or any failures passed back via the Salesforce api are also provided in the Error field.

In the case of Inserts, the newly created Id is helpfully populated into the Id column. Similarly in the case of Upsert-Inserts – i.e. if no match is found via the specified External Id and an Insert occurs, the new Id will also be provided in the Id column.

Features

  • Full unlimited schema support within the same Database (not reliant on having to use dbo)
  • Specify Batchsize
  • Optionally include Soft Deleted (isDeleted = 1/True) records and Archived (isArchived = 1/True) records
  • Load Files & Notes to the Content Model support or optionally direct from Base64 SQL datatype data
  • Choose Boolean fields as string, varchar(5) (True/False) or bit (1/0)
  • Standard, History, Custom (__c) object and field support
  • Default SQL-Sales BULK or ODBC connection options from client SSMS to SQL Server
  • Use the default SOAP API or Bulk API Version1 or Version 2
  • Verifies your SQL table payload with your permissions to the target object

Basic Insert as an Example

This example creates a load table called “Account_TestLoad_Insert”. The Id and Error columns are mandatory, as this is an Insert there is nothing to add into Id, but it needs to be provided, as the resultant created record Id will be passed back on creation. All load operations require the Error column, whether success or failure, to guide and inform you.

drop table if exists Account_TestLoad_Insert
create table Account_TestLoad_Insert
(Id nchar(18)
,Error nvarchar(255)
,Name nvarchar(255))

insert Account_TestLoad_Insert
(Name)

select 'Test1 for SQL-Sales'
union select 'Test2 for SQL-Sales'

Running the Example

exec ss_Loader 'Insert','DEMO','Account_TestLoad_Insert'
SQL-SALES Insert run date: 2023-11-04 ---------------------------
18:35:30: Using Env|Schema: DEMO|dbo
18:35:30: Starting Loader for Account batchsize 200
18:35:30: SSId added to Account_TestLoad_Insert
18:35:33: Connection method BULK & SOAP API
18:35:33: Columns checked against Salesforce metadata
18:35:38: Load complete: Success:2 Failure:0
-----------------------------------------------------------------

The created Id for an insert is automatically passed back to the load table

Operations Supported

SOAP APIBULK API v1BULK API v2
InsertBulkAPIv1InsertBulkAPIv2Insert
UpdateBulkAPIv1UpdateBulkAPIv2Update
DeleteBulkAPIv1DeleteBulkAPIv2Delete
Undeleten/an/a
UpsertBulkAPIv1UpsertBulkAPIv2Upsert
n/aBulkAPIv1HarddeleteBulkAPIv2Harddelete