Skip to main content

SLAM_load_bulk

Performance Tip: By default, Speediful enables parallel data loading with Bulk v1 API. This parallelizes the loading operation on the Salesforce server. It can lead to dramatic time reductions in loading operations vs serial loading. However, judicious use is advised, as this option can potentially be detrimental to overall throughput when loading to objects with lengthy triggered business process flows or to junction objects. To disable parallel loading, set @bulk_parallel = 0 or consider using SLAM_lockbuster

Parameters:

NameTypeDefaultDescription
@sObjectNVARCHARRequiredSalesforce object name to load data into
@tableNVARCHARRequiredSource SQL table containing data to load
@operationNVARCHARRequiredOperation type ('insert', 'update', 'upsert', 'delete', 'hardDelete')
@bulk_parallelBIT1Enable parallel batch processing when set to 1. Serial mode when 0
@batch_sizeINT10000Number of records per batch (max 10000)
@externalIdNVARCHARNULLExternal ID field name (required for upsert operations)
@failure_thresholdDECIMAL(5,2)100Allowable failure rate (0-100) before raising an error

Usage Examples:

Insert new Account records with minimal parameters:

EXEC dbo.SLAM_load_bulk
@sObject = 'Account',
@table = 'Account_insert',
@operation = 'insert'

Upsert Contact records using external ID with parallel processing:

EXEC dbo.SLAM_load_bulk
@sObject = 'Contact',
@table = 'Contact_upsert',
@operation = 'upsert',
@externalId = 'External_Contact_Id__c',
@bulk_parallel = 1,
@batch_size = 5000

Skip the recycle bin with hardDelete:

EXEC dbo.SLAM_load_bulk
@sObject = 'Task',
@table = 'Task_hardDelete',
@operation = 'hardDelete',
@batch_size = 2500