SLAM_query_soap
Overview
This command uses the Salesforce SOAP API to query the object. The SOAP API is suited to smaller volumes of records (either smaller tables or selective filtering). If an sObject name is provided instead of a SOQL query, all fields and records will be returned for that object.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
@query | NVARCHAR | Required | sObject name or SOQL query string. When just an sObject name is passed, queries all records & fields |
@table | VARCHAR | Required | Target SQL table name for results |
@batch_size | INT | 2000 | Number of records per batch (maximum 2000 for SOAP API) |
@queryall | BIT | 0 | When 1, includes deleted/archived records |
@exists_action | VARCHAR(20) | SLAM_Settings.default_exists_action | Controls the behavior when the destination table name, specified by @table is already used. If NULL, uses the value from SLAM_Settings.default_exists_action (defaulted to 'drop' during initial setup).Valid options:
|
Usage Examples
Retrieve all records and fields from the Account object:
EXEC dbo.SLAM_query_soap
@query = 'Account',
@table = 'Account_query'
Query with custom batch size for performance tuning:
EXEC dbo.SLAM_query_soap
@query = 'SELECT Id, Name, StageName, Amount, Owner.Name FROM Opportunity WHERE StageName = ''Closed Won''',
@table = 'Opportunity_query',
@batch_size = 1000
Retrieve deleted records, with batch size of 500:
EXEC dbo.SLAM_query_soap
@query = 'SELECT Id, Name, Email, Status, IsDeleted FROM Lead',
@table = 'Lead_queryall',
@batch_size = 500,
@queryall = 1