Module: SfCli::Sf::Data::UpsertResume
- Included in:
- Core
- Defined in:
- lib/sf_cli/sf/data/upsert_resume.rb
Instance Method Summary collapse
-
#upsert_resume(job_id:, timeout: nil, target_org: nil) ⇒ Object
resume a bulk upsert job you previously started with Bulk API 2.0 and return a bulk result object.
Instance Method Details
#upsert_resume(job_id:, timeout: nil, target_org: nil) ⇒ Object
resume a bulk upsert job you previously started with Bulk API 2.0 and return a bulk result object.
job_id — job ID you want to resume
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 upsert job
jobinfo = sf.data.upsert_bulk sobject: :TestCustomObject__c, file: 'upsert.csv' # this returns immediately
jobinfo.id # => "750J4000003g1OaIAI" it's job ID
# the job has already started asynchronously.
# So you should check its progress.
# if you want to wait for the job complete the task, try 'timeout' option.
result = sf.data.upsert_resume job_id: jobinfo.id
puts 'yey!' if result.job_info.completed? # the job has completed
To know more about a job result, take a look at SfCli::Sf::Data module
For more command details, see the command reference
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/sf_cli/sf/data/upsert_resume.rb', line 29 def upsert_resume(job_id:, timeout: nil, target_org: nil) flags = { :"job-id" => job_id, :"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 |