Module: SfCli::Sf::Data::DeleteBulk
- Included in:
- Core
- Defined in:
- lib/sf_cli/sf/data/delete_bulk.rb
Instance Method Summary collapse
-
#delete_bulk(file:, sobject:, timeout: nil, target_org: nil) ⇒ Object
delete records using Bulk API 2.0.
Instance Method Details
#delete_bulk(file:, sobject:, timeout: nil, target_org: nil) ⇒ Object
delete records using Bulk API 2.0
file — a CSV file, which is written record IDs to delete
sobject — Object Type (ex. Account)
timeout — max minutes to wait for the job complete the task.
target_org — an alias of paticular org, or username can be used
# start a delete job
jobinfo = sf.data.delete_bulk sobject: :TestCustomObject__c, file: 'delete.csv' # this returns immediately
jobinfo.id # => "750J4000003g1OaIAI" it's job ID
# you can check if the delete job completed
sf.data.delete_resume job_id: jobinfo.id
# Or, you can wait for the job completion with one try.
result = sf.data.delete_bulk sobject: :TestCustomObject__c, file: 'delete.csv', timeout: 5 # wait within 5 minutes
For more command details, see the command reference
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/sf_cli/sf/data/delete_bulk.rb', line 28 def delete_bulk(file:, sobject:, timeout: nil, target_org: nil) flags = { :"file" => file, :"sobject" => sobject, :"wait" => timeout, :"target-org" => target_org, } action = __method__.to_s.tr('_', ' ') json = exec(action, flags: flags, redirection: :null_stderr) job_info = ::SfCli::Sf::Data::JobInfo.new(**json['result']['jobInfo']) return job_info unless json['result']['records'] ::SfCli::Sf::Data::BulkResultV2.new( job_info: job_info, records: ::SfCli::Sf::Data::BulkRecordsV2.new(**json['result']['records']) ) end |