Typically only used internally by functions when control parameters are passed
through via dots (...), but it can be called directly to control the behavior
of API calls. This function behaves exactly like glm.control
for the glm
function.
Usage
sf_control(
AllOrNoneHeader = list(allOrNone = FALSE),
AllowFieldTruncationHeader = list(allowFieldTruncation = FALSE),
AssignmentRuleHeader = list(useDefaultRule = TRUE),
DisableFeedTrackingHeader = list(disableFeedTracking = FALSE),
DuplicateRuleHeader = list(allowSave = FALSE, includeRecordDetails = FALSE,
runAsCurrentUser = TRUE),
EmailHeader = list(triggerAutoResponseEmail = FALSE, triggerOtherEmail = FALSE,
triggerUserEmail = TRUE),
LocaleOptions = list(language = "en_US"),
MruHeader = list(updateMru = FALSE),
OwnerChangeOptions = list(options = list(list(execute = TRUE, type =
"EnforceNewOwnerHasReadAccess"), list(execute = FALSE, type = "KeepAccountTeam"),
list(execute = FALSE, type = "KeepSalesTeam"), list(execute = FALSE, type =
"KeepSalesTeamGrantCurrentOwnerReadWriteAccess"), list(execute = FALSE, type =
"SendEmail"), list(execute = FALSE, type = "TransferAllOwnedCases"), list(execute =
TRUE, type = "TransferContacts"), list(execute = TRUE, type = "TransferContracts"),
list(execute = FALSE, type = "TransferNotesAndAttachments"),
list(execute =
TRUE, type = "TransferOpenActivities"), list(execute = TRUE, type =
"TransferOrders"), list(execute = FALSE, type = "TransferOtherOpenOpportunities"),
list(execute = FALSE, type = "TransferOwnedClosedOpportunities"), list(execute =
FALSE, type = "TransferOwnedOpenCases"), list(execute = FALSE, type =
"TransferOwnedOpenOpportunities"))),
QueryOptions = list(batchSize = 500),
UserTerritoryDeleteHeader = list(transferToUserId = NA),
BatchRetryHeader = list(`Sforce-Disable-Batch-Retry` = FALSE),
LineEndingHeader = list(`Sforce-Line-Ending` = NA),
PKChunkingHeader = list(`Sforce-Enable-PKChunking` = FALSE),
api_type = NULL,
operation = NULL
)
Arguments
- AllOrNoneHeader
list
; containing theallOrNone
element with a value ofTRUE
orFALSE
. This control specifies whether a call rolls back all changes unless all records are processed successfully. This control is available in SOAP, REST, and Metadata APIs for the following functions:sf_create
,sf_delete
,sf_update
,sf_upsert
,sf_create_metadata
,sf_delete_metadata
,sf_update_metadata
,sf_upsert_metadata
. For more information, read the Salesforce documentation here.- AllowFieldTruncationHeader
list
; containing theallowFieldTruncation
element with a value ofTRUE
orFALSE
. This control specifies the truncation behavior for some field types in SOAP API version 15.0 and later for the following functions:sf_create
,sf_update
,sf_upsert
. For more information, read the Salesforce documentation here.- AssignmentRuleHeader
list
; containing theuseDefaultRule
element with a value ofTRUE
orFALSE
or theassignmentRuleId
element. This control specifies the assignment rule to use when creating or updating an Account, Case, or Lead for the following functions:sf_create
,sf_update
,sf_upsert
. For more information, read the Salesforce documentation here.- DisableFeedTrackingHeader
list
; containing thedisableFeedTracking
element with a value ofTRUE
orFALSE
. This control specifies whether the changes made in the current call are tracked in feeds for SOAP API calls made with the following functions:sf_create
,sf_delete
,sf_update
,sf_upsert
. For more information, read the Salesforce documentation here.- DuplicateRuleHeader
list
; containing theallowSave
,includeRecordDetails
, andrunAsCurrentUser
elements each with a value ofTRUE
orFALSE
. This control specifies how duplicate rules should be applied when using the following functions:sf_create
,sf_update
,sf_upsert
. For more information, read the Salesforce documentation here.- EmailHeader
list
; containing thetriggerAutoResponseEmail
,triggerOtherEmail
, andtriggerUserEmail
elements each with a value ofTRUE
orFALSE
. This control determines if an email notification should be sent when a request is processed by SOAP API calls made with the following functions:sf_create
,sf_delete
,sf_update
,sf_upsert
,sf_reset_password
. For more information, read the Salesforce documentation here.- LocaleOptions
list
; containing thelanguage
element. This control specifies the language of the labels returned by thesf_describe_objects
function using the SOAP API. The value must be a valid user locale (language and country), such asde_DE
oren_GB
. For more information, read the Salesforce documentation here. The list of valid user locales is available here.- MruHeader
list
; containing theupdateMru
element with a value ofTRUE
orFALSE
. This control indicates whether to update the list of most recently used items (TRUE
) or not (FALSE
) in the Recent Items section of the sidebar in the Salesforce user interface. This works for SOAP API calls made with the following functions:sf_create
,sf_update
,sf_upsert
,sf_retrieve
,sf_query
. For more information, read the Salesforce documentation here.- OwnerChangeOptions
list
; containing theoptions
element. This control specifies the details of ownership of attachments and notes when a record’s owner is changed. This works for SOAP API calls made with the following functions:sf_update
,sf_upsert
. For more information, read the Salesforce documentation here.- QueryOptions
list
; containing thebatchSize
element. This control specifies the batch size for query results . This works for SOAP or REST API calls made with the following functions:sf_query
,sf_retrieve
. For more information, read the Salesforce documentation here.- UserTerritoryDeleteHeader
list
; containing thetransferToUserId
element. This control specifies a user to whom open opportunities are assigned when the current owner is removed from a territory. This works for thesf_delete
function using the SOAP API. For more information, read the Salesforce documentation here.- BatchRetryHeader
list
; containing theSforce-Disable-Batch-Retry
element. When you create a bulk job, the Batch Retry control lets you disable retries for unfinished batches included in the job. This works for most operations run through the Bulk 1.0 API (e.g.sf_create(., api_type = "Bulk 1.0")
) or creating a Bulk 1.0 job withsf_create_job_bulk
. For more information, read the Salesforce documentation here.- LineEndingHeader
list
; containing theSforce-Line-Ending
element. When you’re creating a bulk upload job, the Line Ending control lets you specify whether line endings are read as line feeds (LFs) or as carriage returns and line feeds (CRLFs) for fields of type Text Area and Text Area (Long). This works for most operations run through the Bulk APIs and/or creating a Bulk job from scratch withsf_create_job_bulk
. However, note that as ofreadr v1.3.1
all CSV files end with the line feed character ("\n") regardless of the operating system. So it is usually best to not specify this argument. For more information, read the Salesforce documentation here.- PKChunkingHeader
list
; containing theSforce-Enable-PKChunking
element. Use the PK Chunking control to enable automatic primary key (PK) chunking for a bulk query job. This works for queries run through the Bulk 1.0 API either viasf_query(., api_type = "Bulk 1.0")
) orsf_query_bulk
. For more information, read the Salesforce documentation here.- api_type
character
; one of"REST"
,"SOAP"
,"Bulk 1.0"
, or"Bulk 2.0"
indicating which API to use when making the request.- operation
character
; a string defining the type of operation being performed (e.g. "insert", "update", "upsert", "delete", "hardDelete", "query", "queryall").
Examples
if (FALSE) { # \dontrun{
this_control <- sf_control(DuplicateRuleHeader=list(allowSave=TRUE,
includeRecordDetails=FALSE,
runAsCurrentUser=TRUE))
new_contact <- c(FirstName = "Test", LastName = "Contact-Create")
new_record <- sf_create(new_contact, "Contact", control = this_control)
# specifying the controls directly and are picked up by dots
new_record <- sf_create(new_contact, "Contact",
DuplicateRuleHeader = list(allowSave=TRUE,
includeRecordDetails=FALSE,
runAsCurrentUser=TRUE))
} # }