module Quickbooks::Base::Finders
Public Instance Methods
display_name_sql(display_name, options = {})
click to toggle source
# File lib/quickbooks/base/finders.rb, line 24 def display_name_sql(display_name, options = {}) options[:select] ||= 'Id, DisplayName' where = qbuilder.clause("DisplayName", "=", display_name) sql_builder(where, options) end
find_by_display_name(display_name, options = {})
click to toggle source
# File lib/quickbooks/base/finders.rb, line 30 def find_by_display_name(display_name, options = {}) sql = display_name_sql(display_name, options) service = determine_service(options[:entity]) service.query(sql) end
find_by_id(id, model = nil)
click to toggle source
# File lib/quickbooks/base/finders.rb, line 5 def find_by_id(id, model = nil) if model new_service = service_for(model) new_service.fetch_by_id(id) else @service.fetch_by_id(id) end end
qbuilder()
click to toggle source
# File lib/quickbooks/base/finders.rb, line 14 def qbuilder Quickbooks::Util::QueryBuilder.new end
sql_builder(where, options = {})
click to toggle source
# File lib/quickbooks/base/finders.rb, line 18 def sql_builder(where, options = {}) options[:entity] ||= entity options[:select] ||= '*' "SELECT #{options[:select]} FROM #{qbo_case(options[:entity])} WHERE #{where}" end