activesalesforce 0.1.9 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README CHANGED
@@ -18,14 +18,13 @@
18
18
 
19
19
  4. edit database.yml
20
20
 
21
- adapter: salesforce
22
- url: <salesforce api server url goes here>
21
+ adapter: activesalesforce
22
+ url: https://www.salesforce.com/services/Soap/u/7.0
23
23
  username: <salesforce user name goes here>
24
24
  password: <salesforce password goes here>
25
25
 
26
26
  5. proceed using standard Rails development techniques!
27
27
 
28
- NOTE: To use a custom object append the word Custom to the name of the object instead of __c, e.g. FlipflapOnTheDuckmill would be FlipflapOnTheDuckmillCustom
29
28
 
30
29
  == Description of contents
31
30
 
@@ -42,8 +42,8 @@ module ActiveRecord
42
42
  @@cache = {}
43
43
 
44
44
  # Establishes a connection to the database that's used by all Active Record objects.
45
- def self.salesforce_connection(config) # :nodoc:
46
- puts "Using Salesforce connection!"
45
+ def self.activesalesforce_connection(config) # :nodoc:
46
+ puts "Using ActiveSalesforce connection!"
47
47
 
48
48
  url = config[:url]
49
49
  username = config[:username]
@@ -121,7 +121,7 @@ module ActiveRecord
121
121
 
122
122
 
123
123
  def adapter_name #:nodoc:
124
- 'Salesforce'
124
+ 'ActiveSalesforce'
125
125
  end
126
126
 
127
127
 
@@ -167,9 +167,9 @@ module ActiveRecord
167
167
  log(sql, name)
168
168
 
169
169
  # Check for SELECT COUNT(*) FROM query
170
- matchCount = sql.match(/SELECT COUNT\(\*\) FROM/i)
171
- if matchCount
172
- sql = "SELECT id FROM#{matchCount.post_match}"
170
+ selectCountMatch = sql.match(/SELECT COUNT\(\*\) FROM/i)
171
+ if selectCountMatch
172
+ soql = "SELECT id FROM#{selectCountMatch.post_match}"
173
173
  end
174
174
 
175
175
  raw_table_name = sql.match(/FROM (\w+)/i)[1]
@@ -179,7 +179,8 @@ module ActiveRecord
179
179
 
180
180
  column_names = api_column_names(table_name)
181
181
 
182
- soql = sql.sub(/SELECT \* FROM/i, "SELECT #{column_names.join(', ')} FROM")
182
+ # Always (unless COUNT*)'ing) select all columns (required for the AR attributes mechanism to work correctly
183
+ soql = sql.sub(/SELECT .+ FROM/i, "SELECT #{column_names.join(', ')} FROM") unless selectCountMatch
183
184
 
184
185
  soql.sub!(/ FROM \w+/i, " FROM #{entity_def.api_name}")
185
186
 
@@ -231,7 +232,7 @@ module ActiveRecord
231
232
  result << row
232
233
  end
233
234
 
234
- if matchCount
235
+ if selectCountMatch
235
236
  [{ :count => result.actual_size }]
236
237
  else
237
238
  result
metadata CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.8.11
3
3
  specification_version: 1
4
4
  name: activesalesforce
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.1.9
7
- date: 2006-02-05 00:00:00 -05:00
6
+ version: 0.2.0
7
+ date: 2006-02-06 00:00:00 -05:00
8
8
  summary: ActiveSalesforce is an extension to the Rails Framework that allows for the dynamic creation and management of ActiveRecord objects through the use of Salesforce meta-data and uses a Salesforce.com organization as the backing store.
9
9
  require_paths:
10
10
  - lib