delete
Deletes one or more individual objects from your organization's data.
Syntax
DeleteResult[] = sfdc.delete(ID[] ids);Usage
Use delete to delete one or more existing objects, such as individual accounts or contacts, in your organization's data. The delete call is analogous to the DELETE statement in SQL.
Rules and Guidelines
When deleting objects, consider the following rules and guidelines:
- Your client application must be logged in with sufficient access rights to delete individual objects within the specified object. For more information, see Factors that Affect Data Access.
- In addition, you might also need permissions to access this object's parent object. For special access requirements, see the object's description in Chapter 5: sforce Objects.
- To ensure referential integrity, the delete call supports cascading deletions. If you delete a parent object, you delete its children automatically, as long as each child object can be deleted. For example, if you delete a Case, the sforce API automatically deletes any CaseComment, CaseHistory, and CaseSolution objects associated with that case. However, if a CaseComment is not deletable or is currently being used, then the delete call on the parent Case will fail.
- Certain objects cannot be deleted via the sforce API. To delete an object via the delete call, its object must be configured as deletable (
deletable=True). To determine whether a given object can be deleted, your client application can invoke the describeSObject call on the object and inspect its deletable property.Basic Steps for Deleting Objects
Deleting objects involves the following basic steps:
- Determine the ID of each object that you want to delete. For example, you might call query to retrieve a set of records that you want to delete based on specific criteria.
- Construct an ID[] array and populate it with the IDs of each object that you want to delete. You can specify the IDs of different objects. For example, you could specify the ID for an individual Account and an individual Contact in the same array.
- Process the results in the DeleteResult[] object to verify whether the objects have been successfully deleted.
Sample Code-Java
public void deleteSample() { // Create an array of IDs to hold the IDs of the records to delete ID[] ids = new ID[2]; // Add the IDs to the ID array ids[0].setValue("001x00000000JerAAE"); ids[1].setValue("001x00000000JesAAE"); // Invoke the delete call DeleteResult[] deleteResults = binding.delete(tasks); // Process the results for (int i=0;i<deleteResults.length;i++) { DeleteResult deleteResult = deleteResults[i]; // Determine whether delete succeeded or had errors if (deleteResult.isSuccess()) { // Get the id of the deleted record deleteResult.getId(); } else { // Handle the errors Error[] errors = deleteResult.getErrors(); } } }Sample Code-C#
private void deleteAccount() { // Delete call takes an string array of Ids as parameter String[] IDs = new Sring[] {""}; // Invoke the delete call, saving the result in a DeleteResult object DeleteResult[] deleteResults = binding.delete(IDs); // Determine whether the delete call succeeded or failed if (deleteResults[0].success) { // Delete operation succeeded System.Diagnostics.Trace.WriteLine("Deleted: " + deleteResults[0].id); } else { // Delete operation failed System.Diagnostics.Trace.WriteLine("Couldn't delete because: " + deleteResults[0].errors[0].message); } }Arguments
Name Type Description ids ID[]
Response
Fault
See Also
|
© Copyright 2000-2003 SalesForce.com, Inc. |