Force.com Adapter Actions
Deletes the record in ForceCom. Returns a success boolean.
Property | Value | Description |
---|---|---|
connection* | expression, variable | the ForceCom connection object |
id* | text, expression, variable | The Id of the ForceCom record to delete. |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Example
# Delete the incident if(incident){ deleted = deleteForceComRecord(sessionForce, newIncidentId) if(deleted){ log("incident deleted") } else { log("Unable to delete incident", "ERROR") } } else { }
Deletes the records in ForceCom. Returns a result object containing the fields 'id','success', and 'errors', which are either single entries or arrays.
Property | Value | Description |
---|---|---|
connection* | expression, variable | the ForceCom connection object |
ids* | text, expression, variable | The Ids of the ForceCom records to delete. |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Example
deleted = deleteForceComRecords(sessionForce, [idToDeleteA, idToDeleteB])
Gets a given ForceCom Record.
Property | Value | Description |
---|---|---|
connection* | expression, variable | the ForceCom connection object |
objectType* | text, expression, variable | The ForceCom object type |
id* | text, expression, variable | The Id of the ForceCom record. |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Example
records = getForceComRecords(sessionForce, "Account", "Id, Name, OwnerId"
Get multiple ForceCom Records matching the given filter, or all records if no filter is supplied.
Property | Value | Description |
---|---|---|
connection* | expression, variable | the ForceCom connection object |
objectType* | text, expression, variable | The ForceCom object type |
filter | text, expression, variable | The filter used to limit results. Can either be an encoded query as specified by ForceCom, or a Record example object. |
fields | text, expression, variable | The fields returned in the query. Defaults to all fields. |
limit | expression, variable | The maximum number of records to return. Defaults to all objects. |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Example
records - getForceComRecords(sessionForce, "Account", query, "Id, Name, OwnerId")
Opens a connection to a ForceCom Server.
Property | Value | Description |
---|---|---|
username* | text, expression, variable | Username for authentication to the ForceCom web service |
password* | password, string, expression, variable | Password for authentication to the ForceCom web service. When authenticating through the API or client it is necessary to append the security token to the password in the form passwordSecurityToken. The security token is a case-sensitive, alphanumeric string and it can be obtained through the Salesforce UI Personal Settings through Reset Your Security Token or by changing the Salesforce password. |
apiVersion | text, expression, variable | API Version to use |
options | expression, variable | A record or JavaScript object with a field for each additional option. The currently defined fields are connectTimeout and socketTime which require a numeric value from 1 to 2147483647 (0x7FFFFFFF) that represents the number of milliseconds for the timeout, and 0 representing no timeout. |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Example
# Open Connections { sessionAD = openADConnection(Global.idautoHost, Global.idautoPort, Global.idautoSSL, Global.idautoUser, <Password>) sessionForce = openForceComConnection(Global.forceUser, <Password>) if(!sessionAD || !sessionForce){ # --- Error making connections. Terminating process. return null } else { } }
Open ForceCom Record Iterator.
Property | Value | Description |
---|---|---|
connection* | expression, variable | the ForceCom connection object |
objectType* | text, expression, variable | The ForceCom object type |
filter | text, expression, variable | The filter used to limit results. Can either be an encoded query as specified by ForceCom, or a Record example object. |
fields | text, expression, variable | The fields returned in the query. Defaults to all fields. |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Example
records = openForceComRecordIterator(sessionForce, "Contact", filter)
Creates or updates the record in ForceCom. Returns the id of the object, or null on failure.
Property | Value | Description |
---|---|---|
connection* | expression, variable | the ForceCom connection object |
record* | text, expression, variable | A Record object containing the fields you want to save. If 'Id' is set, an update will be performed, otherwise a create will be performed. |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Example
result = saveForceComRecord(sessionForce, recordForce)
Creates or updates multiple records in ForceCom. Returns a result object containing the fields 'id','success', and 'errors', which are either single entries or arrays.
Property | Value | Description |
---|---|---|
connection* | expression, variable | the ForceCom connection object |
records* | text, expression, variable | An array of Record objects containing the fields you want to save. If 'Id' is set for a given Record, an update will be performed, otherwise a create will be performed. |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Example
results = saveForceComRecords(sessionForce, records)
Example
# open csv file containing new leads csvInput = openDelimitedTextInput("data/leads.csv", "FirstName,LastName,Email,Company") # open session to Force.com to access Salesforce app sessionSalesforce = openForceComConnection("user@example.com", <Password> , { socketTimeout: 10000 }) # loop through new leads forEach(csvRecord, csvInput) { # check for existing lead with same email address existing = getForceComRecords(sessionSalesforce, "Lead", { Email: "'" + csvRecord["Email"] + "'" }) if (existing & amp; & amp; existing[0]) { # lead exists, update the other fields record = createRecord(true) setRecordFieldValue(record, "type", "Lead") setRecordFieldValue(record, "Id", existing[0]["Id"]) copyRecordFields(csvRecord, record, "FirstName, LastName, Company") updatedId = saveForceComRecord(sessionSalesforce, record) if (updatedId) { log("Updated existing lead for: " + toJSON(csvRecord), "INFO") } else { log("Error updating existing lead for: " + toJSON(csvRecord), "ERROR") } } else { # lead doesn 't exist, so add record = createRecord(true) setRecordFieldValue(record, "type", "Lead") copyRecordFields(csvRecord, record, "FirstName, LastName, Email, Company") createdId = saveForceComRecord(sessionSalesforce, record) if (createdId) { log("Added new lead for: " + toJSON(csvRecord), "INFO") } else { log("Error updating existing lead for: " + toJSON(csvRecord), "ERROR") Go } } } close(sessionSalesforce) close(csvInput)