Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/binarymuse/dataloaderb
Easily create, run, and extend Apex Data Loader processes on Windows via Ruby
https://github.com/binarymuse/dataloaderb
Last synced: 29 days ago
JSON representation
Easily create, run, and extend Apex Data Loader processes on Windows via Ruby
- Host: GitHub
- URL: https://github.com/binarymuse/dataloaderb
- Owner: BinaryMuse
- License: mit
- Created: 2011-02-22T07:15:04.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2011-02-22T07:16:18.000Z (over 13 years ago)
- Last Synced: 2024-04-09T01:05:25.017Z (7 months ago)
- Language: Ruby
- Homepage:
- Size: 107 KB
- Stars: 3
- Watchers: 3
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
dataloaderb: Create and Run Apex Data Loader Processes on Windows
=================================================================dataloaderb is a library designed to help create and run Apex Data Loader processes without messing with tedious XML configuration.
Specify your processes via clean Yaml files and point the `ProcessRunner` at them. The runner will create the XML on the fly and pass the appropriate options to the Apex Data Loader.
Extend the default `ProcessRunner` to do additional logging, reporting, or cleanup!
More info coming soon.
Example
-------This is just a loose spec of what the code might could should look like; things may change!
`runner.rb`:
# run several processes via a block
ProcessRunner.new("C:/salesforce/dataloader/bin") do |runner|
runner.run "processes/firstUpsert.yml"
runner.run "processes/secondUpsert.yml"
runner.run "processes/thirdUpsert.yml"
end# or run without a block
runner = ProcessRunner.new("C:/salesforce/dataloader/bin")
['firstUpsert.yml', 'secondUpsert.yml', 'thirdUpsert.yml'].each do |process|
runner.run "processes/#{process}"
end`processes/firstUpsert.yml`:
id: 'firstUpsert'
description: 'Upsert of some data somewhere'
properties:
# endpoint config
sfdc.endpoint: 'https://www.salesforce.com'
sfdc.username: '[email protected]'
sfdc.password: 'xxxxxxxxxxxxxxxxxxxxxxxxx'
process.encryptionKeyFile: 'C:/salesforce/dataloader/enc_pass.key'# operation config
sfdc.timeoutSecs: '600'
sfdc.loadBatchSize: '100'
sfdc.externalIdField: 'Custom_Field__c'
sfdc.entity: 'Account'
process.operation: 'upsert'
process.mappingFile: '//shared/salesforce/upserts/first.Mapping.sdl'
dataAccess.name: '//shared/salesforce/upserts/first.csv'
dataAccess.type: 'csvRead'# logging config
sfdc.debugMessages: 'true'
process.statusOutputDirectory: '//shared/salesforce/upserts/first/lastrun'# misc config
process.enableLastRunOutput: 'false'
process.initialLastRunDate: '2010-01-01T00:00:00.000-0800'