This document gives the basic knowledge on deleting records form SFDC (Salesforce.com) tables using SAP Data Services.
SAP BODS does have a direct ‘delete data from table before loading’ option to Delete the data from Salesforce.com tables like for other database tables. And also it is not possible to use script with sql() for SFDC tables. For this we can follow the classic way of approach to delete the data from database tables as mentioned in http://wiki.scn.sap.com/wiki/pages/viewpage.action?pageId=272794261.
For this approach we need to take help of Map Operation platform transform provided in SAP Data Services. A job is developed in which a dataflow is built to delete the whole data from SFDC table as in the below figure,
In the above dataflow to delete all records from SFDC table,
- Make the SFDC table from which we wanted to delete records as both source and target objects.
- Place a Map Operation transform in between the tables and in the Map Operation tab –
1. Change the ‘Normal’ input row type to ‘Delete’ output row type and
2. Change all other input row types to ‘Discard’ output row type.
To delete only some number of records, we should filter out those records before sending to map operation transformation (either by a filter / joining condition etc.,) as in below example dataflow.
Hope this one helps