Class: Readiness::Salesforce::Queries

Inherits:
Client
  • Object
show all
Defined in:
lib/support_readiness/salesforce/queries.rb

Overview

Defines the class Queries within the module Readiness::Salesforce.

Author:

  • Jason Colyer

Since:

  • 1.0.12

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Client

auth_error, bad_request_error, convert_actions, convert_conditions, convert_standard_names_to_ids, convert_ticket_form_agent_conditions, convert_ticket_form_brands, convert_ticket_form_end_user_conditions, convert_ticket_form_names_to_ids, convert_view_names_to_ids, convert_view_restrictions, covert_ticket_form_field_ids, create_package!, erb_renderer, handle_request_error, not_found_error, not_processible_error, put_into_archive, recursively_deflate_directory, timestamp_filename, to_clean_json, to_clean_json_with_key, to_hash, to_nearly_clean_json, to_nearly_clean_json_with_key, to_param_string, write_entries

Constructor Details

#initialize(syntax = '') ⇒ Queries

Creates a new Readiness::Salesforce::Queries instance

Examples:

require 'support_readiness'
query = Readiness::Salesforce::Queries.new
query.syntax = 'SELECT Name FROM Account LIMIT 5'
pp query
# => #<Readiness::Salesforce::Queries:0x00007f5383091ab8 @syntax="SELECT Name FROM Account LIMIT 5">
require 'support_readiness'
query = Readiness::Salesforce::Queries.new('SELECT Name FROM Account LIMIT 5')
pp query
# => #<Readiness::Salesforce::Queries:0x00007f5383091ab8 @syntax="SELECT Name FROM Account LIMIT 5">

Parameters:

  • syntax (String) (defaults to: '')

    The query syntax to use

Author:

  • Jason Colyer

Since:

  • 1.0.12



32
33
34
# File 'lib/support_readiness/salesforce/queries.rb', line 32

def initialize(syntax = '')
  @syntax = syntax
end

Instance Attribute Details

#syntaxObject

Since:

  • 1.0.12



13
14
15
# File 'lib/support_readiness/salesforce/queries.rb', line 13

def syntax
  @syntax
end

Class Method Details

.run!(client, query) ⇒ Array

Runs a SOQL query. This will exit on error

Examples:

config = Readiness::Salesforce::Configuration.new
config.api_version = '58.0'
config.client_id = ENV.fetch('SFDC_CLIENTID')
config.client_secret = ENV.fetch('SFDC_CLIENTSECRET')
config.password = ENV.fetch('SFDC_PASSWORD')
config.security_token = ENV.fetch('SFDC_SECURITYTOKEN')
config.username = ENV.fetch('SFDC_USERNAME')
client = Readiness::Salesforce::Client.new(config)
query = Readiness::Salesforce::Queries.new('SELECT Name FROM Account LIMIT 5')
results = Readiness::Salesforce::Queries.run!(client, query)
pp results.map { |a| a.Name }
# => ["Account 1", "Account 2", "Account 3", "Account 4", "Account 5"]

Parameters:

Returns:

  • (Array)

Author:

  • Jason Colyer

Since:

  • 1.0.12



57
58
59
# File 'lib/support_readiness/salesforce/queries.rb', line 57

def self.run!(client, query)
  client.connection.query(query.syntax)
end